183715 (596702), страница 8
Текст из файла (страница 8)
На уровне технических характеристик разнообразие СУБД еще больше, чем на качественном уровне. К техническим характеристикам относятся:
-
общие параметры (операционная среда, потребность в оперативной памяти, ограничения на максимальный объем БД и др.);
-
ограничения на операции над данными;
-
типы данных;
-
возможности средств формулировки и выполнения запросов;
-
работа в многопользовательских средах;
-
инструментальные средства разработки приложений;
-
импорт и экспорт.
Оценка производительности производится методом тестирования с помощью эталонных тестов из набора AS3AP (ANSI SQL Standard Scalable and Portable). В них контролируется широкий спектр часто встречающихся операций БД и моделируются однопользовательские и многопользователь-ские среды.
Ниже, в таблице 1.10. приведена сравнительная таблица трех распространенных систем управления базами данных, конкурирующих на рынке программного обеспечения по основным показателям.
Таблица 1.8 Сравнение СУБД
Показатели | Microsoft SQL Server 2008 | MySQL 5.1 | PostgreSQL 8.4 |
Поддерживаемые операционные системы | Windows Desktop/Server | Windows Desktop/Server , Linux, Unix, Mac | Windows1 Desktop/S22erver, Linux, Unix, 2Mac |
Условии лицензирования | Коммерческий продукт с закрытым исходным кодом. Есть бесплатная версия с ограничением оперативной памяти до 4 Гб. | Коммерческая лицензия и GNU GPL. | Лицензия BSD Open Source. |
Наличие предустановленных драйверов в ОС семейства Windows | Да | Нет | Нет |
Наличие драйверов ODBC, JDBC, ADO.NET | Да | Да | Да |
Поддержка репликации | Да, встроенная и разных типов. Но внесение структурных изменений после начала репликаци — очень сложный процесс. | Да, включая mater-master репликацию. | Да, но с помощью сторонних продуктов с открытым исходным кодом. Репликация всех типов. |
Возможность писать хранимые функции на разных языках программирования | Да, теоретически на любом языке, поддерживающим CLR, например VisualBasic.NET, C#, IronPython, но сначала надо скомпилировать код в библиотеку dll. | Нет (кроме C и Pl/SQL) | Да, наиболее полная поддержка из всех рассматриваемых. |
Возможность создавать пользовательские аггрегированные функции | Да — любой .NET язык, кроме TRANSACT SQL. | Да, только на С | Да — на PL language и встроенных C, SQL, PLPgSQL. |
Поддержка даты и времени | Да | Да (но без временной зоны) | Да |
Аутентификация | Средствами БД и ActiveDirectory | Средствами БД | Много разных методов, включающих предыдущие |
Разграничение доступа к столбцам | Да | Да | Да |
Поддержка DISTINCT ON | Нет | Нет | Да |
Поддержка WITH ROLLUP | Да | Да | Да |
Поддержка WITH CUBE | Да | Нет | Нет |
Поддержка функций OVER..PARTITION BY | Да | Нет | Да, причем лучше, чем в MS SQL |
Поддержка рекурсивных запросов | Да | Нет | Да |
Производительность планировщика запросов для сложных запросов | Средняя (умеет параллельные запросы «из коробки») | Очень хорошая | Плохая |
Таким образом, для проекта, рассматриваемого в данном дипломном проекте наиболее приемлема СУБД MS SQL.
Для реализации приложения пользователя выбран язык программирования ASP.
ASP (англ. Active Server Pages — «активные серверные страницы») — технология, разработанная компанией Microsoft, позволяющая легко создавать приложения для World Wide Web. ASP работает на платформе операционных систем линии Windows NT и на веб-сервере Microsoft IIS. ASP не является языком программирования — это лишь технология предварительной обработки, позволяющая подключать программные модули во время процесса формирования веб-страницы. Относительная популярность ASP основана на простоте используемых языков сценариев (VBScript или JScript) и возможности использования внешних COM-компонентов.
Технология ASP получила своё развитие в виде ASP.NET — новой технологии создания веб-приложений, основанной на платформе Microsoft .NET.
ASP.NET — технология создания веб-приложений и веб-сервисов от компании Майкрософт. Она является составной частью платформы Microsoft .NET и развитием более старой технологии Microsoft ASP. На данный момент последней версией этой технологии является ASP.NET 4.0b.
ASP.NET внешне во многом сохраняет схожесть с более старой технологией ASP, что позволяет разработчикам относительно легко перейти на ASP.NET. В то же время внутреннее устройство ASP.NET существенно отличается от ASP, поскольку она основана на платформе .NET и, следовательно, использует все новые возможности, предоставляемые этой платформой.
Хотя ASP.NET берёт своё название от старой технологии Microsoft ASP, она значительно от неё отличается. Microsoft полностью перестроила ASP.NET, основываясь на Common Language Runtime (CLR), который является основой всех приложений Microsoft .NET. ASP.NET имеет преимущество в скорости по сравнению со скриптовыми технологиями, так как при первом обращении код компилируется и помещается в специальный кэш, и впоследствии только исполняется.
Вместе с тем следует учитывать, что указанное преимущество не всегда может быть реализовано. Это связано с тем, что на скорость работы реального проекта влияют множество факторов. [11]
-
2. Проектная часть
-
-
2.1 Разработка проекта автоматизации
-
-
2.1.1 Этапы жизненного цикла проекта автоматизации
-
-
Понятие жизненного цикла является одним из базовых понятий методологии проектирования информационных систем. Жизненный цикл информационной системы представляет собой непрерывный процесс, начинающийся с момента принятия решения о создании информационной системы и заканчивается в момент полного изъятия ее из эксплуатации.
Жизненный цикл информационной системы охватывает все стадии и этапы ее создания, сопровождения и развития:
-
исследование предметной области с последующим формированием функциональной и информационной моделей объекта, для которого предназначена информационная система;
-
проектирование системы, заключающееся в разработке проектных решений, удовлетворяющих всем требованиям ТЗ;
-
разработку системы (в том числе программирование и тестирование прикладных программ на основании проектных спецификаций подсистем, выделенных на стадии проектирования);
-
тестирование информационной системы и выявление сбоев с последующим их устранением;
-
эксплуатацию системы и ее сопровождение;
-
развитие системы.
Жизненный цикл протекает в соответствии с выбранной моделью ЖЦ.
Существует целый ряд стандартов, регламентирующих ЖЦ ПО, а в некоторых случаях и процессы разработки.
Среди наиболее известных стандартов можно выделить следующие:
-
ГОСТ 34.601-90 - распространяется на автоматизированные системы и устанавливает стадии и этапы их создания. Кроме того, в стандарте содержится описание содержания работ на каждом этапе. Стадии и этапы работы, закрепленные в стандарте, в большей степени соответствуют каскадной модели жизненного цикла .
-
ISO/IEC 12207:1995 - стандарт на процессы и организацию жизненного цикла. Распространяется на все виды заказного ПО. Стандарт не содержит описания фаз, стадий и этапов .
-
Custom Development Method (методика Oracle) по разработке прикладных информационных систем - технологический материал, детализированный до уровня заготовок проектных документов, рассчитанных на использование в проектах с применением Oracle. Применяется CDM для классической модели ЖЦ (предусмотрены все работы/задачи и этапы), а также для технологий "быстрой разработки" (Fast Track) или "облегченного подхода", рекомендуемых в случае малых проектов.
-
Rational Unified Process (RUP) предлагает итеративную модель разработки, включающую четыре фазы: начало, исследование, построение и внедрение. Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей на базе UML.
-
Microsoft Solution Framework (MSF) сходна с RUP, так же включает четыре фазы: анализ, проектирование, разработка, стабилизация, является итерационной, предполагает использование объектно-ориентированного моделирования. MSF в сравнении с RUP в большей степени ориентирована на разработку бизнес-приложений.
-
Extreme Programming (XP). Экстремальное программирование (самая новая среди рассматриваемых методологий) сформировалось в 1996 году. В основе методологии командная работа, эффективная коммуникация между заказчиком и исполнителем в течение всего проекта по разработке ИС, а разработка ведется с использованием последовательно дорабатываемых прототипов.
-
Стандарт ISO/IEC серии 15288
В стандарте ISO/IEC 12207 не предлагается конкретной модели жизненного цикла и методов разработки, его рекомендации являются общими для любых моделей жизненного цикла. Под моделью обычно понимается структура, определяющая последовательность выполнения и взаимосвязи процессов, действий и задач на протяжении жизненного цикла.
В настоящее время существует две основные модели жизненного цикла – это каскадная и спиральная модели. В каскадной модели процесс разработки идет поэтапно, шаг за шагом. Переход к следующему этапу происходит только после завершения предыдущего. В спиральной модели разработка проходит по нарастающей. На начальном этапе разрабатывается система с высоким уровнем абстракции, а на последующих витках эта разработка все больше и больше конкретизируется. Для жизненного цикла текущего проекта была выбрана каскадная модель, так как для разрабатываемой системы больше подходит поэтапная разработка. Переход к следующему этапу происходит только после завершения всех работ на предыдущем этапе (Рис. 2.1), включая подготовку полного пакета документации, достаточной для того, чтобы разработка могла быть продолжена другой группой разработчиков и есть возможность планирования сроков завершения работ и затрат на их выполнение.
Рисунок 2.1 Каскадная схема разработки ПО.
Каскадный метод хорошо подходит для построения систем, где в самом начале разработки можно достаточно точно и полно сформулировать все требования, с тем, чтобы предоставить разработчикам свободу реализовывать их как можно лучше с технической точки зрения. Однако в случае, если в середине разработки вскрываются ошибки, допущенные в начале, то приходится прибегать к энтраверсии проекта и реальная схема каскадной модели приобретает другой вид (Рис. 2.2). Таким образом, каскадный метод более всего подходит к конкретной разработке.
Рисунок 2.2 Реальный процесс разработки ПО по каскадной схеме.
2.1.2 Ожидаемые риски на этапах жизненного цикла и их описание
Любой проект по созданию информационной системы предприятия всегда включает множество задач, связанных с общим управлением проектом, разработкой ПО, проектированием ИС, внедрением, каждая из которых сама по себе является проектом с присущими ему особенностями. Поэтому в ходе разработки существуют различные риски.
Риски заказчика связаны с неполным достижением целей проекта и не эффективно израсходованными средствами, а риски исполнителя - с возможностью резкого превышения фактической себестоимости работ по сравнению с плановой. Необходимость ведения параллельных и подчас принципиально отличающихся по своему характеру работ приводит к тому, что многократно возрастает уровень риска проекта.
Наиболее характерные риски и методы из минимизации приведены в таблице 2.1
Таблица 2.1 Возможные риски проекта и способы их минимизации
Виды рисков/варианты менеджмента рисков | Снижение видов риска | Снижение вероятности возникновения риска |
Риски, связанные с масштабом проекта | Детальный анализ каждого этапа работ, взаимодействия участников, организации работ | Детально проработанная программа качества, отработанное управление конфигурацией проекта, специальные процедуры взаимодействия участников |
Риски, связанные с недостаточным опытом в сфере ИТ | Проведение обучения пользователей, включая руководство, соблюдение технологий работы | Разработка и утверждение концепции проекта на возможно более ранней его стадии |
Технические риски проекта | Строгий отбор проектной команды по квалификационным критериям. Обучение участников проекта технологии проектных работ, инструментальным средствам | Использование стандартов предприятия на проектные работы, разработка стандартов проекта |
Организационные риски проекта | Обучение участников проекта (курс "управление проектом"), тренинги команды, как можно более полная формализация деятельности | Включение в команду администратора проекта, детальное распределение ролей в проекте |
Операционные риски проекта | Многократное тестирование созданных продуктов, тщательная экспертиза документов | Строгое выполнение процедур программы качества |
2.2 Информационное обеспечение задачи
-
-
2.2.1 Информационная модель и её описание
Информационная модель представляет собой схему движения входных, промежуточных и результативных потоков и функций предметной области. Кроме того, она объясняет, на основе каких входных документов и какой нормативно-справочной информации происходит выполнение функций по обработке данных и формирование конкретных выходных документов. Информационная модель представлена на рис. 2.3.
Рисунок 2.3 Информационная модель системы