Jump to content

  • Log in with Facebook      Sign In   
  • Create Account

Photo

Диплом


  • Please log in to reply
87 replies to this topic

#41 krol Posted 26 September 2005 - 21:10 PM

krol
  • Свои
  • 1196 posts
  • Денис Королев

Создание интерфейса взаимодействия элементов сайта 304.ru. Интеграция пользовательской базы.

Надо оценить объёмы работы. Может её там на неделю, а может - на несколько лет...

Прочитать сообщение



Всем привет. ДН прислал ссылку на эту тему, вижу знакомые темы. Ну поехали...

Народ, кто думает, что это на неделю -- я вот только что из института приехал. И так каждый день. Угадайте, чем мы там занимаемся? :) Правильно. Интегрируем. Не в смысле матанализа, а весь зоопарк наших цифровых ресурсов приводим к общему знаменателю. И надо сказать, за год работы, в течение которого за первую половину мы этот зоопарк создавали, а за вторую пытались его как-то обуздать, пришли к неутешительным, но совершенно очевидным выводам (выводы я озвучивал еще в феврале, но некоторые их еще до сих пор не осознали):

1. Много ресурсов -- это хорошо. Это просто замечательно! Особенно учитывая феноменальную особенность менталитета типового студента (я буду что-то делать в своем проекте, а с этими, теми или даже воооон с теми упырями я работать не буду, они не идейные, куда им до меня!), лучше разбивать проектные группы на максимально автономные и малочисленные, легко контролируемые и, при необходимости, замещаемые подразделения, не завязанные друг на друга. Оптимально -- 2-3 человека на самостоятельный проект, на выходе у них должен быть некий продукт, пусть небольшой, но вполне законченный. Модуль, дизайн, сайт целиком, не важно, важно -- законченный и без пересечений с другими на этапе работы. Результаты их трудов уже можно перемешивать и править по вкусу.

2. Чтобы перемешивать результаты трудов, они должны быть совместимыми. Тут мы вспоминаем про стандарты и про процессный подход вообще. В двух словах: пусть делают, что хотят, но на входе и выходе должно быть то, что ожидается. Не совсем, конечно, так грубо, но идея именно такая: мы не смотрим за процедурами, мы регулируем процесс целиком. Если есть два модуля, то общаться они должны по строго определенному формату/протоколу, крайне желательно, чтобы этот протокол был стандартным. Например, список пользователей можно хранить в одном месте, чтобы все программы, которым он нужен, туда обращались. Для этого можно использовать что угодно, но вообще есть стандартный протокол -- LDAP. Ну и т.д. При таком подходе всегда можно обеспечивать независимое развитие и взаимозаменяемость проектных групп, что особенно важно при большой текучести кадров (для образовательных учреждений это норма).

3. При проектировании любого веб-ресурса невредно придерживаться классического принципа CMS: разделения контента, дизайна и программной части. Мне кажется, тут ближе всего к истине подошли идеи XML/XSL/JAVA -- взаимная независимость и вдобавок еще и платформенная независимость. Что такое платформенная зависимость, Степа может рассказать в исторической лекции "о базе выпускников с использованием MS Access" ;)



Возвращаясь к теме. Я так понял, захотелось собрать воедино разные составляющие 304й? Форум, вики, фотогалерею, сайт со ссылками и файлами? Собственно этим и еще кое чем я занимаюсь (точнее, не столько занимаюсь, сколько руковожу, делают все уже давно студенты). Задача, которая казалась такой простой, на деле упирается в феноменальную кривизну реализации конкретных программ.
Могу кратенько, минут за сорок, описать разворачиваемую у нас на кафедре систему, вы в ней отчасти узнаете то, к чему через некоторое время может прийти 304. Просто у меня это профильная тема, а у ДНа и Степы -- работа для души, соответственно, я за последнее время получил не только технические ресурсы, но и административные, что позволяет развернуться более широко.

1. Сначала был сайт. И на нем был форум. Сайт был на Постнюке, форум был PHPBB2, интегрированный в Постнюк. Поскольку форум был подключаемый в виде модуля, ничего с объединением делать не приходилось, хотя вопли программистов, залезавших в код, были слышны далеко.

2. Постнюк -- штука мощная. Навесить на нее можно много и она это выдержит. Но. Работает она крайне медленно, а любая попытка что-то поправить будет сопровождаться полным переписыванием исправляемого модуля и нескольких с ним связанных. Читаем -- долго и криво. Охотников это делать было мало, поэтому концепцию сменили: одна задача -- один проект. Знакомо? Правильно, юникс. Там так и есть. И все можно связать.

3. Как сделать много разных проектов и при этом не потерять контроль над системой? Как это сделано в государстве? Единое финансовое пространство. А как сделать в вычислительной системе? Что там самое дорогое и важное? Пользователи. Трогательная забота об них родимых. То есть, мы объявляем, что "пользователь получает единый логин на все цифровые ресурсы от сайта до почты и локальной сети (домен), соответственно стеной встает вопрос: как это реализовать? И не просто, как реализовать, а как реализовать в том зоопарке, который мы имеем и можем заиметь: винды, линуксы всех мастей, сайты на самых разных системах и самых разных производителей, софт разноперый... никакими там корпоративными стандартами на ПО и не пахнет.

Не буду пересказывать всю мучительную историю развития идеи, но пришли вот к чему:


Есть пользователь. Он логинится на любом из существующих ресурсов.
Ресурс (например, сайт) обращается к своей базе пользователей.

Откуда база берет информацию о пользователях? Обычно, она попадает туда от админа или самого пользователя: при регистрации на ресурсе (сайт, ActiveDirectory и т. д.) Мы не можем себе позволить такую халяву, нам надо оторваться от конкретных реализаций. Так что берем за жабры Гугл и через некоторое время понимаем: есть такой протокол X.500. Нет, это круто, возьмем попроще: LDAP. Это упрощенная версия, нам и этой за глаза хватит.
Кто знает более-менее базы данных, вспомнит, что они бывают реляционные и иерархические. Вот ЛДАП -- иерархическая БД. Дерево. И у него есть все свойства этого типа баз. В частности, неспособность поддерживать свою целостность самостоятельно. В большинстве случаев, одна и та же запись там может оказаться востребованной в нескольких ветвях. Ну и ладно, выкрутимся. Действительно, в деревьях удобно представлять данные для программ, запросы быстро выполняются и все такое, поэтому посадим хоть целый лес этих деревьев и будем их "поливать" из реляционной базы данных, которая будет стоять за этим лесом. И там-то мы и будем хранить в едином месте всю информацию.
Что мы этим добились? Во-первых, всем угодили. Вот появляется какая-нибудь экзотическая программа, которая хочет, чтобы ей подавали данные в таком-то виде и никак иначе. А все остальные уже привыкли получать по-другому. Ну и ладно. Строим еще одно дерево под новую программу. Вообще, каждому проекту по своему ЛДАП дереву.
Получается, надо плодить копии одной и той же информации. Нехорошо. Особенно кусается, что надо копировать в кучу мест пароли. А если присмотреться:
а. Пароли мы храним открытыми, а вот передаем -- шифрованными. Каждому дереву в том виде, в каком ему удобно.
б. Сервер БД (мы ставим сейчас Оракл) ставится таким образом, чтобы он взаимодействовал с ЛДАП-серверами только по шифрованным или обособленным каналам и не был доступен из Интернет. Если система распределенная и нужно разместить ЛДАП на удаленном сервере -- организуется VPN туннель и далее по тексту.
в. Допускается только односторонняя передача данных -- от базы к каталогу ЛДАП. Обратное недопустимо. Если пользователь хочет поменять свой пароль или еще какую информацию -- для этого есть администратоский интерфейс, там в соответствии с правами, он может поправить что нужно, но не через LDAP. Так мы закрываем подавляющее большинство дыр, в первую очередь, оберегаемся от кривости "внешнего" софта, где могут быть дыры при авторизации на LDAP сервере.
Кстати, следующим этапом у нас по плану работа с RADIUS сервером, но нам это по причине наличия радиосети и потенциально мы хотим использовать несколько линий dial-in. К вашей теме это вроде не относится.


Материалы по теме:

Раздел форума "Электронная кафедра". http://forum.auditor...48e5787290c2490


Указатель по электронным интернет-ресурсам. В разработке пока, так что там свалка, но пощелкаете, найдете что-нибудь. http://auditory.ru/

Вообще, централизованно поддерживаются следующие сервисы:

-- кафедральный домен (AD)
-- центральный сайт http://eva.miem.edu.ru

-- учебный домен 2 уровня auditory.ru
-- почтовый сервер http://mail.auditory.ru с кучей сервисов, включая FTP и HTTP для пользователей.
-- форум http://forum.auditory.ru
-- фотогалерея http://photo.auditory.ru
-- База знаний на движке wiki (в работе) http://wiki.auditory.ru
-- система дистанционного тестирования http://testing.auditory.ru
-- радиосеть Wi-Fi: http://wi-fi.auditory.ru
-- WAP сайт -- http://wap.auditory.ru (временно отключен на модернизацию).



Из этого всего сейчас обеспечена интеграция форума, почты, домена в локальной сети, идут работы над фотогалереей и Вики.
Остальное из интернет не очень видно или оно совсем не готово к употреблению. Есть голосовая IP связь, строится пиринговая сеть, помнится, были подвижки IRC поднять, но заглохло, строим систему управления вузом (ERP), систему накопления, анализа и хранени контента (накопление трудов студентов и сотрудников и хранение библиотечных материалов, анализ сдаваемых работ на идентичность). А в планах... у... видеовещание, конференции, электронные подписи, система локализации студентов по RFID (вместо перекличек), локализованное громкоговорящее оповещение (где засекли, на тот динамик и прокричали), дальше больше, еще больше, получается "Большой брат", фантазия есть, додумаете.


Вот так мы строим ядро системы и обвешиваем его разными вкусняшками. Если будет интересно, могу в следующей серии рассказать, как строится все остальное, могу для желающих даже устроить экскурсию по МИЭМу с тыканьем пальцами в вайфайные точки под потолком и серверы на шкафу и в кучу всяких скриптов, если интересно -- пишите, устрою.


Напоследок: объединять ресурсы не только хорошо, но и жизненно необходимо с какого-то момента. Параллельно с этим я провожу достаточно жесткую политику упорядочивания имен. ВСЕ без исключения пользователи получили в принудительном порядке имена типа имя.фамилия латиницей, а еще, НИКАКАЯ отчетность не может быть сдана, минуя электронную систему (пока почту, потом будет поумнее система). Иначе все это будет полумерой. Игрушкой, хотя и прикольной. Мне для проведения такой работы понадобилось дорасти до зам. зав. кафедры по ИТ (в корпоративном эквиваленте это CIO). Чтобы что-то двигать дальше, придется забраться еще выше. Оцените свои силы, это очень непростая работа и не в программировании дело. Если вы ограничиваете задачу только втыканием нескольких сайтов в одно пространство имен пользователей, то это одно, если доводите идею до логического конца, то там вам на диссер насобирается? причем не на один, это я по своему опыту говорю :) Летом у нас пачками пойдут студенческие дипломы по этой теме, я уж постарался, народу там крутится уйма. :)


Близко к вашей теме?
С уважением, Денис Королев.
http://auditory.ru

#42 merlina Posted 27 September 2005 - 3:51 AM

merlina
  • Свои
  • 3355 posts
  • Софья Махлина
оооой... я потом прочитаю, ладно? а то времени сейчас маловато. Кстати, а вот например если Настя возьмется за дизайн 304ой - можно нас объединить и создать один диплом? или лучше не надо?

#43 DNAlh Posted 27 September 2005 - 4:21 AM

DNAlh
  • Борцы со злом
  • 48512 posts
  • Дмитрий Алхазашвили

Всем привет. ДН прислал ссылку на эту тему, вижу знакомые темы.  Ну поехали.

Прочитать сообщение


Кроль, просто нет слов! Респектище тебе огромный! Предлагаю тебе здесь работать местным эмулятором Гиглавого! ;) Во всяком случае проблему ты можешь увидеть и описать не хуже.

DN

#44 DNAlh Posted 27 September 2005 - 4:23 AM

DNAlh
  • Борцы со злом
  • 48512 posts
  • Дмитрий Алхазашвили

Кстати, а вот например если Настя возьмется за дизайн 304ой

Прочитать сообщение


На этот раз, насколько я понимаю, речь идет все-таки о Насте Жижченко? ;)

можно нас объединить и создать один диплом? или лучше не надо?

Прочитать сообщение


Думаю, лучше пусть это будут два смежных, но все-таки разных диплома.

DN

#45 Natuccia Posted 27 September 2005 - 5:27 AM

Natuccia
  • Свои
  • 6207 posts
  • Наташа Налютина

Был бы человек хороший...


Ну это вообще всегда самое главное.
natuccia.gif

#46 Ste! Posted 27 September 2005 - 7:17 AM

Ste!

    [везде]сущий выдумщик!

  • Свои
  • 15192 posts
  • Степан Чижов

Всем привет. ДН прислал ссылку на эту тему, вижу знакомые темы.  Ну поехали...

Народ, кто думает, что это на неделю -- я вот только что из института приехал. И так каждый день. Угадайте, чем мы там занимаемся? :) Правильно. Интегрируем. Не в смысле матанализа, а весь зоопарк наших цифровых ресурсов приводим к общему знаменателю. И надо сказать, за год работы, в течение которого за первую половину мы этот зоопарк создавали, а за вторую пытались его как-то обуздать, пришли к неутешительным, но совершенно очевидным выводам (выводы я озвучивал еще в феврале, но некоторые их еще до сих пор не осознали):

Прочитать сообщение


О! Именно то, что я хотел от тебя заполучить =)

Спасибо, Денис =)

Конечно тут работа не на неделю. Хотя нет - всё зависит от того как поставить задачу. Прелесть в том, что задачу можно поставить очень интересно и огрести работы дикое количество =)

#47 Ste! Posted 27 September 2005 - 7:45 AM

Ste!

    [везде]сущий выдумщик!

  • Свои
  • 15192 posts
  • Степан Чижов

Народ, кто думает, что это на неделю -- я вот только что из института приехал. И так каждый день. Угадайте, чем мы там занимаемся? :) Правильно. Интегрируем.

Прочитать сообщение


И верно, и нет. Во-первых, наши масштабы чуть меньше ваших. Во-вторых, всё зависит от постановки задачи. Никто не заставит Соню взять непосильную задачу, но взять какую-либо часть - вот это то, что нужно.

пришли к неутешительным, но совершенно очевидным выводам (выводы я озвучивал еще в феврале, но некоторые их еще до сих пор не осознали):

1. Много ресурсов -- это хорошо. Это просто замечательно! Особенно учитывая феноменальную особенность менталитета типового студента (я буду что-то делать в своем проекте, а с этими, теми или даже воооон с теми упырями я работать не буду, они не идейные, куда им до меня!),

Прочитать сообщение


Много ресурсов нам не светит =)

лучше разбивать проектные группы на максимально автономные и малочисленные, легко контролируемые и, при необходимости, замещаемые подразделения, не завязанные друг на друга. Оптимально -- 2-3 человека на самостоятельный проект, на выходе у них должен быть некий продукт, пусть небольшой, но вполне законченный. Модуль, дизайн, сайт целиком, не важно, важно -- законченный и без пересечений с другими на этапе работы. Результаты их трудов уже можно перемешивать и править по вкусу.

Прочитать сообщение


Да. Именно так. Модульная система и максимальная независимость разработок друг от друга.

2. Чтобы перемешивать результаты трудов, они должны быть совместимыми. Тут мы вспоминаем про стандарты и про процессный подход вообще.

<...>
<skipped>
<...>

При таком подходе всегда можно обеспечивать независимое развитие и взаимозаменяемость проектных групп, что особенно важно при большой текучести кадров (для образовательных учреждений это норма).

Прочитать сообщение


Угу

3. При проектировании любого веб-ресурса невредно придерживаться классического принципа CMS: разделения контента, дизайна и программной части. Мне кажется, тут ближе всего к истине подошли идеи XML/XSL/JAVA -- взаимная независимость и вдобавок еще и платформенная независимость. Что такое платформенная зависимость, Степа может рассказать в исторической лекции "о базе выпускников с использованием MS Access" ;)

Прочитать сообщение


Но не следует забывать и о том, какие ресурсы нам доступны. Если мы зароемся вглубь работы результат которой можно ожидать только через несколько лет - это просто не наш вариант, в силу особенностей написания дипломной работы в Лицее.

Возвращаясь к теме. Я так понял, захотелось собрать воедино разные составляющие 304й? Форум, вики, фотогалерею, сайт со ссылками и файлами?

Прочитать сообщение


Именно

Собственно этим и еще кое чем я занимаюсь (точнее, не столько занимаюсь, сколько руковожу, делают все уже давно студенты). Задача, которая казалась такой простой, на деле упирается в феноменальную кривизну реализации конкретных программ.
Могу кратенько, минут за сорок, описать разворачиваемую у нас на кафедре систему

<...>
<skipped>
<...>

Не буду пересказывать всю мучительную историю развития идеи, но пришли вот к чему:
Есть пользователь. Он логинится на любом из существующих ресурсов.
Ресурс (например, сайт) обращается к своей базе пользователей.

Прочитать сообщение


Именно так

Откуда база берет информацию о пользователях?

<...>
<skipped>
<...>

Близко к вашей теме?

Прочитать сообщение


Близко. Но у нас, слава Богу, задачи стоят уже =)
Хотя вопрос объединения базы пользователей - один из довольно важных, нам тоже необходимо решить. Скажем так, его нужно решить в первую очередь =)

#48 merlina Posted 27 September 2005 - 12:16 PM

merlina
  • Свои
  • 3355 posts
  • Софья Махлина
уфф.... я пока почти ничего не понимаю, это нормально?

#49 Ste! Posted 27 September 2005 - 12:40 PM

Ste!

    [везде]сущий выдумщик!

  • Свои
  • 15192 posts
  • Степан Чижов

уфф.... я пока почти ничего не понимаю, это нормально?

Прочитать сообщение


Ничего. Растолкуем.

#50 KiberGus Posted 27 September 2005 - 13:01 PM

KiberGus
  • Genius loci
  • 6561 posts
  • Алексей Гусейнов

уфф.... я пока почти ничего не понимаю, это нормально?

Прочитать сообщение

Нормально. В лицее эту инфу не дают или дают самые начала. Но лицейской подготовки вполне достаточно чтобы найти документацию и ее понять. Просто готовься к тому, что прийдется разбираться в большом количестве стандартов и подходов к созданию систем. Если, конечно, возьмешься за эту работу.

PS В карточках пользователей неправильная кодировка.

Edited by KiberGus, 27 September 2005 - 13:11 PM.

Зато, обладая единственной в мире подводной орбитальной группировкой спутников глонасс...
gentoo.gif

#51 Ste! Posted 27 September 2005 - 13:26 PM

Ste!

    [везде]сущий выдумщик!

  • Свои
  • 15192 posts
  • Степан Чижов

Просто готовься к тому, что прийдется разбираться в большом количестве стандартов и подходов к созданию систем. Если, конечно, возьмешься за эту работу.

Прочитать сообщение


Ну да. Примерно так.

PS В карточках пользователей неправильная кодировка.

Прочитать сообщение


Где? У меня всё ок.

#52 merlina Posted 27 September 2005 - 13:42 PM

merlina
  • Свои
  • 3355 posts
  • Софья Махлина
нет, то есть суть я уловила, но вот эти протоколы, способы реализации всей этой штуки я не очень поняла. Ну ничего=) учиться будем=)

#53 DNAlh Posted 27 September 2005 - 15:15 PM

DNAlh
  • Борцы со злом
  • 48512 posts
  • Дмитрий Алхазашвили

Ну ничего=) учиться будем=)

Прочитать сообщение


Отлично! Начинать можешь уже сейчас. ;)

DN

#54 KaRa Posted 27 September 2005 - 19:04 PM

KaRa
  • Свои
  • 1467 posts
  • Анастасия Жижченко
А можно я к вам подойду завтра узнаю?..

#55 Ste! Posted 27 September 2005 - 19:10 PM

Ste!

    [везде]сущий выдумщик!

  • Свои
  • 15192 posts
  • Степан Чижов

Гм, извините, что вклиниваюсь, но у меня такой вопрос: а какая работа есть для менеджеров??? мне уже поздно метаться, но просто из любопытства...
=)))

Прочитать сообщение


Работа с огромными объёмами документов. Структуризация, добывание, оформление =)

Если я правильно понимаю =)

#56 merlina Posted 27 September 2005 - 19:11 PM

merlina
  • Свои
  • 3355 posts
  • Софья Махлина
*тихо* в общем, занудство какое-то=))))))

#57 Ste! Posted 27 September 2005 - 19:13 PM

Ste!

    [везде]сущий выдумщик!

  • Свои
  • 15192 posts
  • Степан Чижов

*тихо* в общем, занудство какое-то=))))))

Прочитать сообщение


Я бы так не сказал. Подробности, я надеюсь, даст ДН =)

#58 merlina Posted 27 September 2005 - 19:14 PM

merlina
  • Свои
  • 3355 posts
  • Софья Махлина
он мне говорил нечто про разработку грамотного контента

#59 Sun-я Posted 27 September 2005 - 19:15 PM

Sun-я
  • Свои
  • 3799 posts
  • Саня Черепова

Работа с огромными объёмами документов. Структуризация, добывание, оформление =)

Если я правильно понимаю =)

Прочитать сообщение



Эх... жаль, что мне уже поздно... я бы взялась...она конечно, не особо сложная и нудноватая...
А вообще - хорошая работа... только непонятно, а почему она именно менеджерская??? вроде экономики там не то чтобы очень...

С нами сила Алхазашвили!


#60 Guest_Guest_* Posted 29 September 2005 - 20:48 PM

Guest_Guest_*
  • Гости

Кроль, просто нет слов! Респектище тебе огромный! Предлагаю тебе здесь работать местным эмулятором Гиглавого! ;) Во всяком случае проблему ты можешь увидеть и описать не хуже.


ДН, вам одного Гиглавого мало? :) Мне казалось, он замечательно со своей ролью справлялся, мне до него далеко, только учусь. Кстати, у него есть чему поучиться, он нам в 94 году расписал в деталях технический прогресс так, что до сих пор сбывается. Некоторые вещи он упустил, конечно, но большинство из той научной фантастики стало реальностью. К слову, большинство нововведений, которые я провожу в институте, заимствованы из лицейской практики, как я ее помню. Хотя и несколько преобразованно, но все же, образец прослеживается. Отчасти, потому, что институт имел предпосылки к этому (есть пересечения в модели управления, причем, модель осознанная, специально выяснял политику у руководства). Так что, лицеисты, запоминайте лучшее и делайте так же там, куда попадете. =)

Что касается проблем -- я тоже заметил, что их не все видят. Но они иногда не просто видны, а аж бросаются в глаза и больно царапаются. Даже рассказывать не хочу, буквально вчера получил подтверждение плачевности текущего состояния дел (обратная связь -- великое дело!), ткнул пальцем в сторону лицея и сказал "вот когда у нас так хотя бы будет, тогда и будем что-то от людей ожидать".


В общем, если хотите, устрою вам экскурсию по тому, "как у нас" -- не вопрос. Если что интересно -- пишите, отвечу по мере возможности. Я вот только не очень понимаю, до какой степени у вас стоит задача интегрироваться? А то вещать я могу много и на разные темы, это у меня работа такая, но вот в тему ли? :) У меня есть одно существенное отличие от степиной информационной системы (а это уже не сайт, система сайтов, как минимум): я имею очень крепкие корни в организации, в интересах которой что-то делаю. Ресурсы (какие есть, конечно), статус, перспективу расширения влияния, некоторое финансирование. Чтобы стоять, надо держаться корней (с) БГ. :)




1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users