· На качественном уровне оценить предлагаемые программные продукты на предмет пригодности;
· Оценка технических характеристик отобранных систем;
· Оценка производительности программных продуктов.
К числу основных показателей пригодности программных продуктов относятся:
· вид программного продукта;
· категории пользователей (профессиональные программисты, администраторы БД, квалифицированные пользователи, разрабатывающие приложения, конечные пользователи, различные комбинации перечисленных категорий);
· удобство и простота использования (понятные процедуры установки программных продуктов, удобный и унифицированный интерфейс конечного пользователя, простота выполнения обычных операций: создания БД, навигации, модификации, подготовки данных, выполнения запросов и отчетов и ряда других; наличие интеллектуальных подсистем подсказок, помощи в процессе работы и обучения, включая примеры);
· модель представления данных. Наиболее распространенной является реляционная модель данных. Перспективными являются модели с объектной ориентацией, поскольку они обладают большими возможностями отражения семантики предметной области;
· качество средств разработки. При оценке качества средств разработки учитывается следующее: возможности создания пользовательских интерфейсов, мощность языка создания программ, автоматизация разработки различных объектов: экранных форм, отчетов, запросов. Предпочтение отдается системам, имеющим полнофункциональные генераторы и обеспечивающим удобство работы пользователя;
· качество средств защиты и контроля корректности базы данных. Доступ к функциям защиты должен предусматриваться на уровне средств разработки программ и на уровне пользователя. К важнейшим функциям контроля корректности относятся: обеспечение уникальности записей БД по первичному ключу, автоматический контроль целостности связей между таблицами во время выполнения операций обновления, вставки и удаления записей, проверка корректности значений в БД;
· качество коммуникационных средств. При оценке качества коммуникационных средств обращают внимание на следующие свойства программных продуктов:
· поддержку сетевых протоколов,
· поддержку стандартных интерфейсов с БД,
· наличие средств групповой работы с информацией БД,
· способность использовать и модифицировать БД других форматов без импортирования или преобразования;
· фирма – разработчик. Солидность фирмы-разработчика пакета, как правило, дает следующие преимущества:
· высокое качество продукта,
· наличие документации и методических материалов
· наличие «горячей линии» для консультаций по возникающим проблемам
При выборе продукта следует обратить внимание на дату его появления. В качестве показателей «благополучия» можно использовать: твердое финансовое положение, перспективная динамика развития аппаратно-программных средств, годовой оборот, численность состава, объем продаж и т.д. - стоимость. На стоимость программных продуктов в основном влияют вид программного продукта и фирма – разработчик. Стоимость полнофункциональных СУБД обычно колеблется в пределах $ 500 - $ 1000. Общая стоимость включает в себя стоимость прикладного инструментария, средств настройки конфигурации системы, администрирования БД и сопровождения. Иногда общая стоимость крупных систем, построенных на базе реляционных БД, достигает миллионов долларов. Основным фактором, определяющим общую стоимость системы, чаще всего является число поддерживаемых пользователей.
На уровне технических характеристик разнообразие СУБД еще больше, чем на качественном уровне. К техническим характеристикам относятся:
· общие параметры (операционная среда, потребность в оперативной памяти, ограничения на максимальный объем БД и др.);
· ограничения на операции над данными;
· типы данных;
· возможности средств формулировки и выполнения запросов;
· работа в многопользовательских средах;
· инструментальные средства разработки приложений;
· импорт и экспорт.
Оценка производительности производится методом тестирования с помощью эталонных тестов из набора 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]
Понятие жизненного цикла является одним из базовых понятий методологии проектирования информационных систем. Жизненный цикл информационной системы представляет собой непрерывный процесс, начинающийся с момента принятия решения о создании информационной системы и заканчивается в момент полного изъятия ее из эксплуатации.
Жизненный цикл информационной системы охватывает все стадии и этапы ее создания, сопровождения и развития:
· исследование предметной области с последующим формированием функциональной и информационной моделей объекта, для которого предназначена информационная система;
· проектирование системы, заключающееся в разработке проектных решений, удовлетворяющих всем требованиям ТЗ;