Вопросы реализации шаблона типового сайта диссертационного совета СевКавГТУ. Разработка базы данных для шаблона сайта с помощью фреймворка Django и Aptana Studio 3. Обоснование требований к техническому обеспечению. Расчет цены программного продукта.
Аннотация к работе
В первом разделе пояснительной записки проводится результаты предпроектного обследования Северо-Кавказского государственного технического университета, г. Во втором разделе пояснительной записки рассмотрены вопросы реализации шаблона типового сайта диссертационного совета СЕВКАВГТУ. При разработке базы данных для шаблона типового сайта диссертационного совета использовался фреймворк Django, а система была реализованы в среде программирования Aptana Studio 3. Производится обоснование требований к техническому обеспечению, гарантирующих нормальную работу типовых сайтов диссертационных советов СЕВКАВГТУ. Университет реализует образовательные программы высшего и послевузовского профессионального образования по многим направлениям подготовки; осуществляет подготовку, переподготовку и повышение квалификации работников высшей квалификации, научных и научно-педагогических работников; выполняет фундаментальные и прикладные научные исследования по широкому спектру наук; является ведущим научным и методическим центром в области своей деятельности.Система управления комплексом типовых сайтов должна обеспечивать следующие функциональные возможности: - добавление новых объектов в базу данных (БД); При добавлении базы данных выбор общих характеристик (наименование, код) объекта возлагается на оператора. Система управления комплексом типовых сайтов обеспечивает обновление существующих соединителей за счет объектно-ориентированной структуры программного комплекса - перекомпоновка без изменения базовых объектов программного комплекса. Работы по созданию системы выполняются на основе утвержденного «Технического задания». Разрабатываются основные положения проектируемой системы, принципы ее функционирования и взаимодействия с другими системами, определяется структура системы, разрабатываются проектные решения по обеспечивающим частям системы.Откроется среда программирования Aptana Studio 3 (рисунок 2.2) и в ней необходимо создать проект PYDEV Django Project, выбрав в главном меню среды File-New - Project (рисунок 2.3). Member id Первичный ключ Целое число Идентификатор члена совета last_name Нет Строка Фамилия first_name Нет Строка Имя middle_name Нет Строка Отчество degree Нет Строка Ученая стпень academic_title Нет Строка Ученое звание post Нет Строка Должность specialty_code Нет Строка Шифр специальности и отрасли науки в совете works_list Нет Текст Основные работы, опубликованные в рецензируемых журналах за последние 2 года status Внешний ключ Целое число Должность в совете email Нет Строка Адрес электронной почты phones Нет Строка Номера телефонов site_id Внешний ключ Целое число Идентификатор сайта WORKMEMBER id Первичный ключ Целое число Идентификатор работы member Внешний ключ Целое число Член диссертационного совета title Нет Строка Название работы file Нет Строка Адрес файла site_id Внешний ключ Целое число Идентификатор сайта Specialty id Первичный ключ Целое число Идентификатор специальности name Нет Строка Название code Нет Строка Шифр file_1 Нет Строка Программа вступительных экзаменов file_2 Нет Строка Программа кандидатского минимума site_id Внешний ключ Целое число Идентификатор сайта Synopsis id Первичный ключ Целое число Идентификатор автореферата title Нет Строка Начало обновления author Нет Строка Диссертант specialty Внешний ключ Целое число Специальность degree Внешний ключ Целое число Соискание на степень manager Нет Текст Научный руководитель opponents Нет Текст Официальные оппоненты leading_org Нет Текст Ведущая организация address Нет Текст Адрес по которому состоится защита datetime Нет Дата/время Дата и время защиты file Нет Строка Адрес файла publication_date Нет Дата Дата публикации на сайте site_id Внешний ключ Целое число Идентификатор сайтаДля разработки была выбрана среда программирования Aptana Studio 3, потому что она является бесплатным программным продуктом и существует поддержка фреймворка Django.Коэффициент «p» коррекции программы, учитывающий новизну проекта, количественно характеризует увеличение объема работ по реализации программного продукта, возникающего за счет внесения изменений в алгоритм или в тексте программы по результатам ее тестирования и отладки, с учетом коррекций требований к прецедентам, поддерживаемым программным продуктом, со стороны заказчика. Затраты труда на изучение задачи ТИ, чел.-ч., с учетом уточнения описания и квалификации программиста могут быть определены по формуле: ТИ = Db/(SUKK), (3.3) где D - общее число строчек кода в тексте программы, ед.; Затраты труда на составление типовых сайтов по готовой блок-схеме ТП, чел.-ч., определяется по формуле: ТП = D/(SПKK), (3.5) где D - общее число строчек кода в тексте программы, ед.; Затраты труда на подготовку документации по задаче ТД, чел.-ч., определяются по формуле: ТД = ТДР ТДО, (3.7) где ТДР - затраты труда на подготовку материалов в рукописи, чел.-ч.; Таким образом, подставив численные значение затраты труда на подготовку материалов в рукописи ТДР, чел.-ч., и затраты труда на редактирование, печать и офор
Введение
Актуальность разработки шаблона типового сайта диссертационного совета СЕВКАВГТУ, г. Ставрополь обусловлена тем, что процесс публикации информации о деятельности диссертационных советов в сети интернет занимает большие материальные и временные затраты.
Целью дипломного проекта является сокращение временных затрат ученых секретарей на распространение информации о деятельности диссертационных советов.
Дипломный проект состоит из введения, трех разделов, основной части пояснительной записки, заключения, библиографического списка и приложений.
В первом разделе пояснительной записки проводится результаты предпроектного обследования Северо-Кавказского государственного технического университета, г. Ставрополь. Выявляются проблемные ситуации, возникающие при функционировании университета, формулируются задачи дипломного проектирования.
Во втором разделе пояснительной записки рассмотрены вопросы реализации шаблона типового сайта диссертационного совета СЕВКАВГТУ. При разработке базы данных для шаблона типового сайта диссертационного совета использовался фреймворк Django, а система была реализованы в среде программирования Aptana Studio 3. Производится обоснование требований к техническому обеспечению, гарантирующих нормальную работу типовых сайтов диссертационных советов СЕВКАВГТУ.
В четвертом разделе был проведен расчет цены программного продукта (комплекс типовых сайтов диссертационных советов СЕВКАВГТУ) и анализ экономической эффективности его использования.
В заключении рассмотрены основные итоги дипломного проектирования и намечены перспективные направления дальнейшего развития его темы.
1. Результаты предпроектного обследования ФГБОУ ВПО «Северо-Кавказский Государственный Технический Университет». Формулировка задач проектирования шаблон сайт фреймворк диссертационный
1.1 Результаты предпроектного обследования
1.1.1 Объекты и методы проведения предпроектного обследования
В рамках темы дипломного проекта объектами обследования являются: ? центр ИТ-инфраструктуры и телекоммуникаций СЕВКАВГТУ;
? организационно-функциональная структура СЕВКАВГТУ;
? организация документооборота СЕВКАВГТУ.
Обследование учреждения производится путем опроса сотрудников центра ИТ-инфраструктуры и телекоммуникаций СЕВКАВГТУ.
Основными целями выполнения предпроектного обследования являются: ? изучение предметной области;
? анализ проблемных ситуаций, возникающих при функционировнии действующих систем информирования о деятельности диссертационных советов СЕВКАВГТУ.
1.1.2 Программа проведения обследования
Программа обследования ВУЗА представлена в таблице 1.1.
Таблица 1.1 - Программа обследования учреждения
Наименование вопроса Источник информации Получатель информации
1 2 3
Общая характеристика Директор ЦИТИТ Проектировщик Марченко Ф.С.
Организационная структура Аналогично Аналогично
Цели деятельности Аналогично Аналогично
Наличие проблемных ситуаций в деятельности СЕВКАВГТУ Аналогично Аналогично
Цели деятельности ЦИТИТ Аналогично Аналогично
Наличие проблемных ситуаций в деятельности ЦИТИТ Аналогично Аналогично
Наличие средств вычислительной техники и программного обеспечения в ЦИТИТ Заместитель директора ЦИТИТ Аналогично
В результате прохождения преддипломной практики были поэтапно изучены и проанализированы такие вопросы, как общая структура СЕВКАВГТУ, организационная структура, цели его функционирования, документооборот.
1.1.3 Результаты предпроектного обследования и их анализ
Общая характеристика учреждения Северо-Кавказский государственный технический университет создан в 1971 году постановлениями Совета Министров СССР на базе филиала Краснодарского политехнического института в г. Ставрополе под наименованием Ставропольский политехнический институт, переименованного в Ставропольский государственный технический университет приказом Государственного комитета Российской Федерации по высшему образованию. Ввиду того, что Ставропольский технический университет являлся одним из ведущих вузов региона, единственным по своему профилю на Северном Кавказе, приказом Министерства образования Российской Федерации он переименован в Северо-Кавказский государственный технический университет.
Полное наименование университета: федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Северо-Кавказский государственный технический университет». Сокращенное наименование СЕВКАВГТУ.
Место нахождения СЕВКАВГТУ: Россия, Ставропольский край, г. Ставрополь, проспект Кулакова, дом 2. Почтовый адрес: Россия, 355029.
СЕВКАВГТУ является государственным образовательным учреждением высшего профессионального образования федерального подчинения. Университет реализует образовательные программы высшего и послевузовского профессионального образования по многим направлениям подготовки; осуществляет подготовку, переподготовку и повышение квалификации работников высшей квалификации, научных и научно-педагогических работников; выполняет фундаментальные и прикладные научные исследования по широкому спектру наук; является ведущим научным и методическим центром в области своей деятельности.
Организационная структура. В структуру вуза входят: учебные, в том числе лицей-интернат для одаренных детей Ставропольского края, научные, научно-исследовательские, хозяйственные, производственные и вспомогательные структурные подразделения, пользующиеся по доверенности университета правомочиями юридического лица и действующие на основании положений, принятых Ученым Советом СЕВКАВГТУ и утвержденных приказом ректора. Создание (ликвидация) структурных подразделений осуществляется самим университетом по решению Ученого совета. Структурному подразделению могут быть предоставлены по доверенности ректора полные или частичные правомочия юридического лица на срок не более трех лет. В доверенности указываются предоставленные структурному подразделению правомочия. Вопрос о досрочном прекращении действия доверенности или продлении ее на очередной срок решается ректором.
Функциональная структура. Управление в любой организации - это процесс взаимодействия между управляющей, управляемой системами (субъектом и объектом управления) и внешней средой. Управляющая система представляет собой совокупность тех органов и лиц, которые осуществляют целенаправленное воздействие с учетом информации о состоянии объекта управления и внешней среды. Управляемая система является тем объектом, на который направлены определенные управленческие воздействия с целью улучшения функционирования управляемого объекта, придания ему конкретных форм развития в интересах достижения намеченного результата [1].
Конкретная функциональная структура управления определяется в зависимости от сочетания двух основных типов руководства - линейного (ректор, проректора) и функционального (специализация глав отделов) [2].
При анализе процесса функционирования объекта ввиду его сложности производят, обычно, разбиение системы на части. Такое разбиение называется декомпозицией. Разбивать систему на части можно до тех пор, пока выделенный элемент не перестает выполнять в системе каких-либо функций.
В основу декомпозиции могут быть положены различные основания, например: временное, пространственное, информационное, функциональное и другие.
Лучше всего делить систему на подсистемы по функциональному признаку, то есть на основе выполняемых системой функций, а также существующей линейной структуры управления. Функциональная иерархия предполагает специализацию по отдельным функциям управления на всех уровнях этой иерархии [3].
В составе учреждения целесообразно выделить четыре области управления: ? управление планированием;
? управление учебным процессом;
? управление обеспечением;
? управление научной деятельностью.
Функциональные задачи и подзадачи организации представлены в таблице 1.2.
Рисунок 1.1 - Схема организационной структуры СЕВКАВГТУ
Таблица 1.2 - Функциональные области и процессы в них протекающие
Номер и название функциональной области Функциональные процессы
1. Управление планированием 1.1 Прогнозирование спроса на выпускаемых специалистов
1.2 Внесение изменений в сроки, периоды обучения, графики проведения экзаменов и зачетов
1.3 Составление требований к подготовке специалистов
2. Управление учебным процессом 2.1 Составление расписания занятий
2.2 Распределение нагрузки преподавателям
2.3 Разработка учебно-методических пособий
2.4 Организационно-воспитательная деятельность
2.5 Организация учебного процесса
3. Управление обеспечением 3.1 Управление кадрами
3.2 Управление материальными средствами
3.3 Делопроизводство
4. Управление научной деятельностью 4.1 Организация и планирование научно-исследовательских работ по инновационной деятельности и проведения фундаментальных и поисковых исследований
4.2 Организация семинаров, конференций
4.3 Создание наиболее благоприятных условий при подготовке специалистов и создании кандидатских и докторских диссертаций
Организационно-управленческая модель организации (таблица 1.3), представлена в виде таблицы-матрицы, в которой имеются следующие обозначения: Х - полное участие в процессе;
/ - частичное участие в процессе;
0 - ответственность за выполнение процесса.
Таблица 1.3 - Организационно-управленческая модель ВУЗА
Функциональные области Управление планированием Управление учебным процессом Управление обеспечением Управление научной деятельностью
Цели функционирования. В результате проведенного обследования СЕВКАВГТУ были выделены основные цели, средства их достижения и сформулированы критерии эффективности применяемых мер. Главной целью функционирования является подготовка высококвалифицированных специалистов для удовлетворения потребности общества в высококвалифицированных кадрах, разработка и внедрение результатов научных исследований, проведение семинар и научных конференций. Правильно построенное дерево целей в дальнейшем легко может быть преобразовано в план-график или диаграмму Ганта [4].
Данные по целям приведены в таблице 1.4. В таблице указаны подцели основанные на главной цели. Результатом объединения указанных целей является дерево целей, представленное на рисунке 1.2.
Таблица 1.4 - Цели деятельности ВУЗА, средства достижения и критерии оценки уровня достижения цели
Цель Средства достижения Критерий эффективности
1 2 3
Ц1 - улучшение качества образования Ц11 - совершенствование учебно-технологической базы Ц12 - совершенствование научно-методической базы Ц13 - совершенствование программ обучения Ц14 - внедрение новых и улучшение существующих средств контроля качества образования Ц15 - поощрение лучших студентов Ц16 - подбор профессорско-преподавательского состава Ц17 - проведение работ по повышению квалификации специалистов Проведение и победы в региональных, федеральных и международных олимпиадах, участие в конференциях, хозяйственно-договорных тематиках Увеличение количества договоров о проведении производственной практики и договоров о сотрудничестве с университетом сторонних организаций на 20%
Ц2 - выполнение научно-исследовательских и опытно-конструкторских работ, проведение фундаментальных научных исследований Ц21 - привлечение студентов и сотрудников университета к НИР Ц22 - стимулирование проведения НИР Увеличение числа завоеванных грантов, проводимых научных хозяйственно-договорных тематик, внедренных результатов НИР, Ц2 - продолжение Ц24 - финансирование НИР Ц25 - сотрудничество с НИИ, КБ и сторонними организациями количества публикаций и участий в научных конференциях
Ц3 - эффективная организация деятельности университета Ц31 - обеспечение университета необходимыми ресурсами и средствами Ц32 - совершенствование структуры управления университетом Уменьшение затрат университета, управление и согласование обеспечивающей образовательный процесс деятельности
Ц4 - развитие социальной и материальной инфраструктуры университета Ц41 - развитие жилищно-коммунального хозяйства Ц42 - рациональная организация труда и отдыха Ц43 - повышение благосостояния коллектива Снижение текучести кадров на 15%
Результатом объединения указанных целей является дерево целей, представленное на рисунке 1.2.
Документооборот. Документооборот в ВУЗЕ, осуществляется в виде потоков документов между теми людьми, которые анализируют и производят информацию или принимают решения (ректор, главный инженер, специалисты и квалифицированные служащие) и пунктами технической обработки документов в учреждении (секретарь, канцелярия, архив).
Задача служб организации заключается в том, чтобы документы во время своего движения не терялись и вовремя поступали в очередные пункты обработки. Эта задача решается с помощью многолетним опытом выверенной и системы организации документооборота, которая изложена в нормативных документах [5].
Все внутренние документы регистрируются, размножаются секретарем (или в канцелярии) и направляются в структурные подразделения для исполнения.
Документы, поступающие из внешней среды, а также составляемые учреждением для использования подразделениями составляют внешний документооборот. Схема движения этих документов в учреждении отражена в таблице 1.5.
Рисунок 1.2 - Дерево целей ВУЗА
Определены следующие этапы обработки внутренних документов: 1. Составляется служебная записка на имя председателя диссертационного совета с обоснованием необходимости актуализации информации в рамках комплекса типовых сайтов диссертационных советов от ученого секретаря диссертационного совета.
2. Далее председатель диссертационного совета составляет служебную записку на имя проректора СЕВКАВГТУ по НИИИД с просьбой о необходимости публикации информации в рамках комплекса диссертационных советов СЕВКАВГТУ.
3. Затем проректор СЕВКАВГТУ по НИИИД перенаправляет служебную записку на имя директора ЦИТИТ.
4. Далее директор ЦИТИТ отдает распоряжение на исполнение в службу технической поддержки комплекса диссертационных советов СЕВКАВГТУ.
5. Служба технической поддержки передает данные учетной записи редактора типового сайта ученому секретарю диссертационного совета под личную роспись.
Наличие средств вычислительной техники и программного обеспечения. В процессе работы используется как системное, так и прикладное программное обеспечения, которые представляет собой комплекс программных средств общего и прикладного характера, необходимых для выполнения различных задач: 1. Общее программное обеспечение (операционные системы, сервисные средства и утилиты, инструментальные средства разработки, тесты и техническое обслуживание).
2. Общее программное обеспечение (операционные системы, сервисные средства и утилиты, инструментальные средства разработки, тесты и техническое обслуживание).
3. Прикладное программное обеспечение (офисные программы, коммуникационные программы, предметно-ориентированные программы).
Основными операционными системами на ПК является Linux и Windows 7. На серверах чаще всего используются операционные системы Linux дистрибутивов Debian и Suse.
Таблица 1.5 - Схема документооборота учреждения
Наименование документа Ученый секретарь диссертационного совета Председатель диссертационного совета Директор ЦИТИТ Сотрудник ЦИТИТ Проректор
Служебная записка
Распоряжение
Задание
Извещение
Отчет
Таблица 1.6 - Технические характеристики ПК
Техническая характеристика или периферийное устройство Условное обозначение
1.1.4 Анализ проблемных ситуаций и обоснование путей их решения
После изучения информационной подсистемы ВУЗА были выявленные следующие недостатки: ? отсутствие систематизации сведений о деятельности диссертационных советов в сети интернет;
? отсутствие эффективных механизмов для оперативного ввода информации представителями диссертационных советов.
Разрабатываемый комплекс предусматривает создание унифицированных форм для заполнения сведений о диссертационном совете, а также автоматизированный контроль корректности, точности и полноты их заполнения. Так же для решения проблемы оперативного ввода информации предусматривается редакторский интерфейс который обеспечивает работу сайта без необходимости специальный знаний в области веб-технологий и не требует от пользователя знаний HTML.
1.2 Формулировка задач проектирования
1.2.1 Общие сведения
Полное наименование проекта - шаблон типового сайта диссертационного совета ФГБОУ ВПО «Северо-Кавказский государственный технический университет».
Наименование организации разработчика - ФГБОУ ВПО «Северо-Кавказский государственный технический университет», факультет информационных технологий и телекоммуникаций, кафедра прикладной информатики, студент группы ПИБ-081 Марченко Федор Сергеевич.
Наименование организации заказчика - ФГБОУ ВПО «Северо-Кавказский государственный технический университет».
Перечень документов, на основе которых создается система: ? распоряжение проректора СЕВКАВГТУ по НИИИД о создании комплекса типовых сайтов диссертационных советов;
? отчет о преддипломной практике студента группы ПИБ-081 Марченко Ф.С.;
? информация, предоставленная руководителем практики.
Источники финансирования - заработная плата техника ЦИТИТ СЕВКАВГТУ.
Порядок оформления и предъявления заказчику результатов работ по созданию комплекса типовых сайтов диссертационных советов, реализованного в виде интернет-портала в электронном формате.
1.2.2 Назначение, цели создания типовых сайтов диссертационных советов
Типовые сайты предназначены для предоставления полной и наиболее актуальной информации о подготовке и повышении квалификации научных кадров СЕВКАВГТУ.
Веб-интерфейс программы должен позволять управлять содержимым базы данных в соответствии с требованиями, изложенными в данном техническом задании.
Вывод
1. СЕВКАВГТУ является одним из крупнейших университетов в Северо-Кавказском Федеральном округе и занимает первое место по выпуску высококвалифицированных работников.
2. В ходе предпроектного обследования учреждения была изучена организационная структура учреждения, документооборот, произведен анализ целей, изучена функциональная модель учреждения и технические средства функционирующие на нем и выявлено, что организационная структура СЕВКАВГТУ является линейной.
3. Анализ проблемных ситуаций выявил, что действующая в учреждении информационная система не эффективно работает. Для разрешения проблемной ситуации снижения трудозатрат сотрудников учреждения, занимающихся оформлением и ведением документации, связанной с публикацией информации о деятельности диссертационных советов СЕВКАВГТУ в сети интернет невозможно использовать готовый программный продукт, так как на рынке лицензионного программного обеспечения отсутствуют программы для решения необходимых задач. По этой причине требуется разработать комплекс типовых сайтов, позволяющий осуществлять простой и быстрый способ публикации в сети интернет информации о деятельности диссертационных советов СЕВКАВГТУ.
4. Были сформированы требования для реализации комплекса типовых сайтов. Комплекс позволяет создавать быстро и оперативно редактировать сайты диссертационных советов СЕВКАВГТУ.
2. реализация шаблона типового сайта диссертационного совета СЕВКАВГТУ г. Ставрополь
2.1 Обоснование выбора среды разработки интерактивных сервисов
В качестве средства Web-разработки выбран фреймворк Django 1.4. Основные его преимущества: 1. Является свободно распространяемым программным обеспечением.
2. Имеет открытый исходный код.
3. Позволяет делать несколько приложений для одного проекта.
4. Использует язык программирования Python.
5. Имеет встроенный интерфейс администратора.
6. Обладает объектно-реляционным отображением (ORM - Object Role Model) и интерфейсом прикладного программирования (API - Application Programming Interface) доступа к базам данных с поддержкой транзакций.
Разработка приложения осуществлялась в среде программирования Aptana Srudio 3. Данная среда программирования была выбрана по следующим причинам: 1. Является свободно распространяемым программным обеспечением.
2. Поддерживается операционной системой Linux.
3. Имеется поддержка юнит-тестов.
4. Имеется поддержка систем контроля версий.
5. Имеется поддержка фреймворка Django.
2.2 Создание проекта PYDEV Django Project и его приложений в среде программирования Aptana Studio 3
Для создания проекта необходимо запустить среду программирования Aptana Studio 3.
После запуска Aptana Studio 3 на экране появится диалоговое окно выбора рабочего каталога (рисунок 2.1).
Рисунок 2.1 - Диалоговое окно выбора рабочего каталога
После выбора рабочего каталога среды необходимо нажать кнопку ОК.
Откроется среда программирования Aptana Studio 3 (рисунок 2.2) и в ней необходимо создать проект PYDEV Django Project, выбрав в главном меню среды File-New - Project (рисунок 2.3).
В открывшемся диалоговом окне выбора типа проекта (рисунок 2.4), необходимо указать тип проекта «PYDEV Django Project» и перейти к настройкам проекта - кнопка Next.
Откроется первое диалоговое окно настройки проекта (рисунок 2.5), в котором необходимо ввести название проекта и перейти далее - кнопка Next.
Откроется второе диалоговое окно настройки проекта (рисунок 2.6), в котором предлагается подключение создаваемого проекта к уже существующим и осуществляется переход к следующему диалоговому окну настройки приложения - кнопка Next.
Рисунок 2.2 - Окно среды программирования Aptana Studio 3
Рисунок 2.3 - Меню создания проекта в среде программирования Aptana Studio 3
В третьем диалоговом окне настройки проекта необходимо выбрать версию фреймворка Django и указать используемую систему управления базами данных, название базы данных, адрес и порт сетевого ресурса базы данных, имя пользователя и пароль (рисунок 2.7). После ввода для окончания создания проекта необходимо нажать кнопку Finish.
После создания проекта необходимо создать Django-приложение. В навигаторе среды программирования в контекстном меню проекта необходимо выбрать Django - Create application (рисунок 2.8).
Рисунок 2.4 - Диалоговое окно выбора типа проекта
Откроется диалоговое окно, в котором вводится название приложения (рисунок 2.9).
Рисунок 2.5 - Первое диалоговое окно настройки проекта
Рисунок 2.6 - Второе диалоговое окно настройки проекта
Рисунок 2.7 - Третье диалоговое окно настройки проекта
Рисунок 2.8 - Контекстное меню для создания Django приложения
Рисунок 2.9 - Диалоговое окно ввода имени приложения
2.3 Создание логической модели базы данных
При создании логической модели базы данных для шаблона типового сайта диссертационного совета СЕВКАВГТУ г. Ставрополь используется среда программирования Aptana Studio 3.
2.3.1 Определение сущностей модели базы данных
На основе анализа предметной области выделяются сущности, представленные в таблице 2.1.
Таблица 2.1 - Перечень сущностей предметной области
Идентификатор сущности Назначение сущности
SUBSITE Справочник «Типовые сайты»
Post Справочник «Должностей совета»
Member Справочник «Членов совета»
WORKMEMBER Справочник «Работ членов совета»
Degree Справочник «Ученых степеней»
Specialty Справочник «Специальностей»
Synopsis Справочник «Авторефератов»
ADMINPROFILE Хранение информации об администраторах сайтов
Для внесения в логическую модель базы данных шаблона типового сайта диссертационного совета СЕВКАВГТУ в Aptana Studio 3, необходимо в приложении PYDEV Django Project проекта открыть файл с названием models.py и создать классы с именами сущностей, наследовав их от класса Model модуля Django.db.models.
2.3.2 Определение атрибутов сущностей базы данных
После того как определены сущности, следующим шагом в разработке логической модели базы данных, является определение атрибутов этих сущностей. Перечень выделенных сущностей, их атрибутов с характеристиками приведены в таблице 2.2.
Таблица 2.2 - Атрибуты сущностей базы данных
Сущность Атрибут Ключ Тип Назначение
1 2 3 4 5
SUBSITE id Первичный ключ Целое число Идентификатор сайта domain Нет Строка Имя домена name Нет Строка Название сайта name_code Нет Строка Шифр совета logo Нет Строка Логотип совета email Нет Строка Адрес электронной почты phones Нет Строка Номер телефона совета email_feedback Нет Целое число Адрес электронной почты для уведомлений
Post id Первичный ключ Целое число Идентификатор должности name Нет Строка Название должности description Нет Строка Описание
Member id Первичный ключ Целое число Идентификатор члена совета last_name Нет Строка Фамилия first_name Нет Строка Имя middle_name Нет Строка Отчество degree Нет Строка Ученая стпень academic_title Нет Строка Ученое звание post Нет Строка Должность specialty_code Нет Строка Шифр специальности и отрасли науки в совете works_list Нет Текст Основные работы, опубликованные в рецензируемых журналах за последние 2 года status Внешний ключ Целое число Должность в совете email Нет Строка Адрес электронной почты phones Нет Строка Номера телефонов site_id Внешний ключ Целое число Идентификатор сайта
WORKMEMBER id Первичный ключ Целое число Идентификатор работы member Внешний ключ Целое число Член диссертационного совета title Нет Строка Название работы file Нет Строка Адрес файла site_id Внешний ключ Целое число Идентификатор сайта
Degree id Первичный ключ Целое число Идентификатор группы name Нет Строка Название ученой степени site_id Внешний ключ Целое число Идентификатор сайта
Specialty id Первичный ключ Целое число Идентификатор специальности name Нет Строка Название code Нет Строка Шифр file_1 Нет Строка Программа вступительных экзаменов file_2 Нет Строка Программа кандидатского минимума site_id Внешний ключ Целое число Идентификатор сайта
Synopsis id Первичный ключ Целое число Идентификатор автореферата title Нет Строка Начало обновления author Нет Строка Диссертант specialty Внешний ключ Целое число Специальность degree Внешний ключ Целое число Соискание на степень manager Нет Текст Научный руководитель opponents Нет Текст Официальные оппоненты leading_org Нет Текст Ведущая организация address Нет Текст Адрес по которому состоится защита datetime Нет Дата/время Дата и время защиты file Нет Строка Адрес файла publication_date Нет Дата Дата публикации на сайте site_id Внешний ключ Целое число Идентификатор сайта
ADMINPROFILE id Первичный ключ Целое число Идентификатор профиля пользователя user Внешний ключ Целое число Пользователь sites Внешний ключ Целое число Сайт к которому относится пользователь
2.3.3 Определение связей между сущностями базы данных информационной системы
Анализ данных таблицы 2.2 позволяет сделать вывод о том, что в логической модели базы данных имеются независимые и зависимые сущности. Признаком того, что сущность является зависимой, служит наличие среди ее атрибутов внешних ключей. Более подробные сведения о взаимосвязи зависимых и независимых сущностях приведены в таблице 2.3.
Таблица 2.3 - Данные о взаимодействии сущностей базы данных для шаблона типового сайта диссертационного совета СЕВКАВГТУ
Зависимая сущность Наследуемый (внешний) ключ Независимая сущность Тип связи Кратность связи
1 2 3 4 5
Member status Post не идентифицирующая 1:N
Synopsis specialty Specialty Аналогично 1:N degree Degree Аналогично 1:N
WORKMEMBER member Member Аналогично 1:N
ADMINPROFILE sites SUBSITE Аналогично M:N
Member site Аналогично Аналогично 1:N
WORKMEMBER Аналогично Аналогично Аналогично 1:N
Degree Аналогично Аналогично Аналогично 1:N
Specialty Аналогично Аналогично Аналогично 1:N
Synopsis Аналогично Аналогично Аналогично 1:N
Из анализа таблицы 2.3 можно сделать следующие выводы: 1. Количество родительских сущностей - пять (Post, Member, Specialty, Degree, SUBSITE).
2. Количество дочерних сущностей - шесть (Member, WORKMEMBER, Synopsis, ADMINPROFILE, Degree, Specialty).
3. Количество не идентифицирующих связей между сущностями - десять.
4. Во всех типах связи наследуемый ключ не может принимать пустые значения типа Null.
5. Кратность связей в рассмотренных случаях составляет 1:N (один-ко-многим) и M:N (многие-ко-многим).
2.3.4 Ввод атрибутов и первичных ключей сущностей логической модели базы данных
Для задания атрибутов и первичных ключей необходимо в приложении PYDEV Django Project проекта в файле models.py указать каждому классу соответствующие ему атрибуты.
2.4 Создание физической модели базы данных для шаблона типового сайта диссертационного совета СЕВКАВГТУ
Фреймворк Django обладает мощным средством объектно-реляционных проекций (Object-Relation Mapping, ORM), которое позволяет создавать и использовать базы данных, не используя SQL. Механизмы ORM генерируют код Python в SQL запросы и выполняют их, скрыв от пользователя, что позволяет создавать приложения с реляционными базами данных без знаний SQL. Сам код Python для создания базы данных находится в файле приложения models.py, в котором указывается имя таблицы как имя класса, наследованного от класса Model модуля djnago.db.models, переменные объявленные в классе являются полями базы данных, где значение этих переменных задают параметры полей, таких как тип, длина, значение по умолчанию. В классах могут определяться методы, которые буду влиять на сохранение или отображение данных.
2.4.1 Генерирование SQL-сценария создания базы данных информационной системы средствами Django ORM
Для генерирования SQL-сценария создания базы данных необходимо в среде программирования Aptana Studio 3 вызвать контекстное меню проекта и выбрать Django-Sync DB, после чего произойдет генерация SQL-сценария и его выполнение.
Если необходимо только просмотреть сгенерированный SQL-сценарий, то необходимо в консоли операционной системы перейти в каталог PYDEV Django Project проекта и выполнить команду «./manage.py sqlall appname», где appname- имя приложения, после чего произойдет вывод SQL-сценария.
2.5 Реализация шаблона типового сайта диссертационного совета СЕВКАВГТУ
Разработанная система управления комплексом типовых сайтов диссертационных советов построена на основе архитектуры клиент - сервер, где сервером является Web-сервер, а клиентом браузер. Сервер генерирует html код и передает его клиенту. Фреймворк Django для генерирования html кода использует шаблонную систему, которая разделяет представление генерируемого документа от данных. Шаблонная система для фильтрации данных использует теги и фильтры, которые представляют собой набор функций и операторов. Данные шаблонная система получает из функций представления, которые хранятся в файле views.py приложения проекта.
2.5.1 Разработка главной страницы сайта диссертационных советов
На главной странице сайта диссертационных советов приводится список всех созданных типовых сайта с краткой информацией о диссертационном совете его логотипом, перечнем специальностей совета и ссылкой для перехода на главную страницу сайта диссертационного совета (рисунок 2.11).
Данные каждого диссертационного совета выбираются из базы данных.
После выбора диссертационного совета осуществляется переход на главную страницу его сайта с подробной информацией о совете (рисунок 2.12).
2.5.2 Реализация формы создания типового сайта
В форму создания типового сайта (рисунок 2.13) вводится доменное имя сайта, имя сайта, шифр диссертационного совета, телефоны диссертационного совета, адрес электронной почты, адрес электронной почты для уведомлений и загружается логотип диссертационного совета. При нажатии на кнопку сохранить на сервер отправляется POST запрос. Сервер получает данные, передает их в скрипт сохранения, в котором находится функция по обработке запросов. Функция посредством Django ORM осуществляет добавление новой информации в базе данных и возвращает его результат, передавая в шаблонную систему для отображения клиенту.
Если заполнены не все обязательные поля, выделенные жирным шрифтом, то выводится соответствующее сообщение с выделением полей нуждающихся в заполнение. Если процедура добавления пошла успешно, то осуществляется переход на страницу со списком уже существующих типовых сайтов.
2.5.3 Реализация интерфейса для предоставления списка авторефератов в библиотечный каталог СЕВКАВГТУ
Для запроса списка новых авторефератов предусматривается интерфейс который по средствам GET запроса осуществляет поиск новых авторефератов с возможностью получения полного списка авторефератов за указанный месяц и возможностью получения списка добавленных авторефератов с момента получения библиотечной подсистемой списка в последний раз, указав ключ последнего полученного автореферата.
Список авторефератов предоставляется в формате XML, для получения списка необходимо в адресной строке браузера указать URL следующего вида «http:// имя_доменя/library/abstracts/? year=2012&month=5&begin=c81e728d9d4c2f636f067f89cc14862c», где «year», «month» и «begin» параметры предназначенные для фильтрации списка (рисунок 2.14).
2.5.4 Реализация представления и единых указателей ресурсов
Для передачи данных в шаблонную систему используется скрипт представления данных под названием views.py, который хранится в каталоге приложения. В этом скрипте описаны функции, которые отвечают за передачу данных в представление. Каждая функция имеет обязательный параметр request, в котором хранится объект запроса, и различные необязательные параметры. Список единых указателей ресурсов хранится в файле urls.py в каталоге приложения. В нем описаны указатели ресурсов, при которых будет выполняться соответствующая им функция представления данных. Для описания единых указателей ресурсов используются регулярные выражения, которые являются компактным методом определения шаблонов в тексте.
2.5.5 Установка разработанного проекта на Web-сервер
Для использования разработанного проекта необходим Web-сервер поддерживающий интерфейс FASTCGI. Интерфейс FASTCGI - клиент-серверный протокол взаимодействия Web-сервера и приложения, дальнейшее развитие технологии CGI. По сравнению с CGI является более производительным и безопасным. Так как на серверах СЕВКАВГТУ уже имеется установленный Web-сервер Nginx, поддерживающий интерфейс FASTCGI, то разработанный проект будет установлен на него. Nginx является свободным программным обеспечение, распространяемым по лицензии BSD. Для установки разработанного сервиса достаточно внести изменения в конфигурационный файл Web-сервера /etc/nginx/nginx.conf (приложение Б) и скопировать каталог проекта в каталог Web-севрера /var/www/nginx/.
После внесение изменений в конфигурационный файл необходимо перезагрузить Web-сервер командой /etc/init.d/nginx restart и разработанная система готова к использованию.
В настоящее время разработанная система установлена на оборудовании СЕВКАВГТУ и находится в состоянии тестирования.
2.6 Требования к техническому обеспечению
2.6.1 Общие требования
Для нормальной работы с системой управления комплексом типовых сайтов диссертационных советов СЕВКАВГТУ на стороне клиента достаточно наличия любого Web-браузера и выхода в интернет со скоростью 33,6 Кбит/сек или доступа к корпоративной информационной сети СЕВКАВГТУ.
Для нормальной работы с системой управления комплексом типовых сайтов диссертационных советов СЕВКАВГТУ на стороне сервера необходимо наличие операционной системы Linux, системы управления базами данных MYSQL, Web-сервера Nginx, среды исполнения языка программирования Python и фреймворка Djnago.
2.6.2 Требования к центральному процессору
В результате контрольных прогонов для работы с системой управления комплексом типовых сайтов диссертационных советов СЕВКАВГТУ достаточно сервера с тактовой частотой центрального процессор 100 МГЦ. Обоснование: при более низкой тактовой чистоте центрального процессора быстродействие шаблона типового сайта диссертационного совета СЕВКАВГТУ является неудовлетворительным, например, время выполнения запроса к базе данных увеличивается до 10 минут.
Для персонального компьютера клиента с операционной системой Microsoft Windows XP необходим центральный процессор с минимальной тактовой частотой 233 МГЦ. Обоснование: данное требование сформулировано фирмой Microsoft, как минимальное при установке Microsoft Windows XP. Web-браузер Internet Explorer 6 предустановлен в операционной системе Microsoft Windows XP и не требует дополнительных ресурсов центрального процессора.
2.6.3 Требования к оперативному запоминающему устройству
Необходимый размер оперативного запоминающего устройства (ОЗУ) WОЗУ рассчитаем по формуле
WОЗУ = WОЗУ1 WОЗУ2 WОЗУ3, (2.1) где - минимально необходимый размер ОЗУ, требуемый для работы операционной системы (ОС), Мбайт;
- объем ОЗУ, требуемый системе управления, Мбайт;
WОЗУ3 - минимальных требований со стороны дополнительных программных модулей, обеспечивающих работу программного продукта, Мбайт
Значение параметра для серверной версии операционной системы определяется, как 16 Мбайт. Обоснование: данное требование сформулировано разработчиками Linux дистрибутива Debian, как минимальное при установке Linux Debian.
Значение параметра в рассматриваемом случае определяется необходимостью загрузки в оперативную память сервера шаблона типового сайта диссертационного совета СЕВКАВГТУ и составляет 2,15 Мбайт оперативной памяти.
Значение параметра WОЗУ3 в рассматриваемом случае определяется, как сумма требуемой оперативной памяти для прогрммных модулей, обеспечивающих работу шаблона типового сайта диссертационного совета СЕВКАВГТУ. Для СУБД MYSQL необходимо минимум 64Мбайт, для Web-сервера Nginx 12 Мбайт, для Python 1 Мбайт, для фреймворка Django 1 Мбайт тогда WОЗУ3 = 64 12 1 1 = 78 Мбайт.
Таким образом, воспользовавшись формулой (2.1) получаем
WОЗУ = 16 2,15 78= 96,15 Мбайт.
Для персонального компьютера клиента размер оперативного запоминающего устройства определяется в зависимости от установленной операционной системы и Web-браузера. Значение параметра для Microsoft Windows XP определяется, как 64 Мбайт. Обоснование: данное требование сформулировано фирмой Microsoft, как минимальное при установке Microsoft Windows XP. Web-браузер Internet Explorer 6 предустановлен в операционной системе Microsoft Windows XP и не требует дополнительной оперативной памяти.
Делаем следующий вывод - для нормальной работы интерактивных сервисов на сервере под управлением операционной системы Linux будет достаточно 96,15 Мбайт оперативной памяти. Для обеспечения комфортных условий работы информационной подсистемы рекомендуется использовать ОЗУ размером 200 Мбайт и более. Для персонального компьютера клиента с установленной операционной системой Microsoft Windows XP необходимо 64 Мбайт оперативной памяти.
2.6.4 Требования к наличию сводного места на жестком диске
Свободное пространство на жестком диске для клиентского ПК должно хватать на установку браузера. Компания Microsoft, для браузера IE 8, рекомендует не менее 150 Мбайт. Определить минимально необходимое свободное пространство можно, используя формулу следующим соотношением
, (2.2) где, W1, W2 - размер пространства, которое занимает инсталляция, Мбайт.
Для сервера объем свободного места должен быть не менее 347 Мб на приложения (MYSQL требует 211 Мбайт без базы данных, HTTP-сервер требует 35 Мбайт и python, 101 Мб), плюс предполагаемый объем данных в базе (с учетом возможности добавления новых данных примерно составляет от 50 Мбайт) и объем для дампа базы данных от 50 Мбайт. Таким образом, учитывая все параметры, получается минимального пространства должно быть не менее 447 Мбайт.
2.6.5 Требования к монитору
Для работы с системой управления комплексом типовых сайтов диссертационных советов СЕВКАВГТУ на клиенте достаточно монитора с разрешением 1024х768 или выше. Это связано с отображением большого количества данных и множества графических материалов. При разрешении меньше указанного сформированные данные будут не полностью помещены на экране, что затруднит восприятие информации.
Для работы интерактивных сервисов на стороне сервера, монитор не нужен.
2.6.6 Требования к принтеру
Система управления комплексом типовых сайтов диссертационных советов СЕВКАВГТУ предоставляют версию для печати, которая требует принтер с разрешение не меньше 300 точек / дюйм. При меньшем разрешении данные будут пропечатывать нечетко, поскольку размер текста в документа рассчитан на современные принтеры с поддержкой разрешения 300 разрешением 300 точек / дюйм и выше.
2.7 Результаты тестирования типовых сайтов
Типовые сайты диссертационных советов СЕВКАВГТУ г. Ставрополь прошли тестирование в условиях запуска тестовой версии. В результате тестирования установлено, что они в полном объеме удовлетворяет требованиям заказчика. В настоящее время, разработанные интерактивные сервисы, готовы к внедрению в практику работы СЕВКАВГТУ, и находится в стадии опытной эксплуатации.1. Результатом проектирования логической модели базы данных является созданная реляционная база данных под управлением СУБД MYSQL.
2. Для разработки была выбрана среда программирования Aptana Studio 3, потому что она является бесплатным программным продуктом и существует поддержка фреймворка Django.
3. В результате тестирования шаблона типового сайта диссертационного совета СЕВКАВГТУ установлено, что он в полном объеме удовлетворяет требованиям заказчика.
4. Размер каталога проекта составляет 568,3 Кбайт.