- •Проектная часть
- •1.1 Описание объекта автоматизации
- •1.2 Описание процесса сертификации программных продуктов
- •1.3 Обзор существующих систем поддержки процесса сертификации программных продуктов
- •1.4 Формирование требований к информационной системе
- •1.4.1 Назначение и задачи системы
- •1.4.2 Функциональные требования
- •1.5 Выбор средств разработки системы для поддержки сертификации
- •2 Технологическая часть
- •2.1 Проектирование системы
- •2.2 Разработка структуры базы данных
- •2.3 Структура веб-интерфейса системы
- •2.4 Разработка сайта
- •3 Эксплуатационная часть
- •3.1 Тестирование
- •3.2 Руководство администратора
- •3.3 Руководство пользователя
- •3.4 Руководство программиста
- •Список использованных источников
- •Приложение а
- •Приложение б
1.4 Формирование требований к информационной системе
1.4.1 Назначение и задачи системы
Система поддержки сертификации программных продуктов предназначена для выполнения следующих задач:
- управление пользователями системы;
- поддержка процесса распределения задач сертификации между экспертами;
- поддержка процесса проведения сертификационных испытаний;
- поддержка процесса формирования отчетов о сертификации программных средств;
- учет объектов сертификации.
Целями создания системы поддержки сертификации являются:
- сокращение времени проведения сертификационных испытаний и оформления Сертификата;
- предоставление руководству актуальной и оперативной информации по работе экспертов сертификации.
1.4.2 Функциональные требования
С разрабатываемой системой предполагается работа следующих групп пользователей:
- заказчик;
- администратор центра сертификации;
- эксперт по сертификации;
- руководство;
- системный администратор.
Каждой группе пользователей должен быть предоставлен ограниченный функционал исходя из задач, которые пользователь должен выполнять в системе.
Системному администратору доступен функционал, связанный с поддержкой системы:
- создание и изменение учетных записей пользователей;
- наделение пользователей системы определенными полномочиями;
- полное удаление ошибочно созданных заявок на сертификацию из системы;
- редактирование ключевых справочников системы.
Администратор центра сертификации должен иметь возможность выполнять следующие функции:
- отклонение или прием заявки на сертификацию программного продукта;
- оформление договора на проведение сертификационных испытаний;
- назначение экспертов на каждый этап сертификации;
- назначение даты проведения сертификационных этапов;
- изменение перечня и последовательности действий по согласованию с клиентом;
- формирование печатной формы сертификата и передача ее заказчику;
- закрытие заявки и помещение ее в архив.
Экспертам по сертификации доступны возможности просмотра закрепленных за ними новых заявок для целей проведения ими сертификационных испытаний. Кроме этого, эксперт имеет возможность отражения в заявках результатов испытаний.
Руководство центра сертификации должно иметь доступ к следующим функциям:
- просмотр отчета по заявкам на сертификацию программного обеспечения (ПО), находящимся в работе;
- просмотр отчета по закрытым заявкам на сертификацию;
- формирование аналитических отчетов по сертификации ПО в разрезе различных показателей.
Система должна быть настраиваемой и гибкой. В системе должны быть предусмотрены следующие настраиваемые справочники:
- справочник пользователей;
- справочник заявок на сертификацию;
- справочник сертификационных этапов и испытаний;
- справочник Сертификатов, выданных по завершению проведения сертификационных испытаний.
Все операции, производимые в системе, должны накапливаться в базе данных. Система должна обеспечивать авторизацию пользователей по логину и паролю, а также разграничение прав доступа пользователей на основе матричной модели безопасности.
1.5 Выбор средств разработки системы для поддержки сертификации
Для реализации задачи принято решение разработать систему в виде Интернет-портала. Это позволит пользователям системы оперативно получать доступ к информации о новых заявках на сертификацию ПО с любого компьютера, у которого есть доступ к сети Интернет. Кроме этого, заказчику будет удобно оформлять заявку и пересылать необходимые сопутствующие документы также через сеть Интернет.
В качестве среды разработки выбрана IDE Microsoft Visual Studio 2015. Язык программирования C#, платформа .NET Framework 4.5 [9]. Выбор среды разработки объясняется следующим:
- отсутствует необходимость приобретения коммерческой лицензии, если разработка является учебной;
- наличие современного набора классов отвечающего всем требованиям проектирования пользовательских приложений.
Реализация интерфейса и бизнес-логики интернет-портала будет выполняться с использованием технологии ASP.NET MVC 5.
Архитектура для web-приложений ASP.NET MVC на сегодняшний день стала фактическим стандартом разработки. Помимо этого, ASP.NET MVC инкапсулирована в Visual Studio Community 2015, который в настоящее время бесплатен, а это является одним из существенных факторов при выборе средств разработки системы поддержки сертификации.
В качестве систем хранения данных целесообразно использование реляционной базы данных. Наиболее распространенными реляционными СУБД являются:
- Microsoft SQL Server ;
- Firebird;
- Oracle;
- MySQL.
- SQLite.
Сравнительные характеристики наиболее распространенных на сегодняшний день реляционных СУБД приведены в таблице 1.
Таблица 1 – Сравнительные характеристики реляционных СУБД
СУБД/Характеристики |
MS QL Server Express |
Oracle |
MySQL |
Firebird |
SQLite |
Обрабатываемые объёмы данных |
Большие |
Большие |
Средние |
Большие |
Неболь- шие |
Быстродействие |
Высокое |
Высокое |
Среднее |
Высокое |
Среднее |
Требовательность к ресурсам |
Средняя |
Высокая |
Низкая |
Средняя |
Низкая |
Масштабируемость |
Высокая |
Высокая |
Высокая |
Высокая |
Низкая |
Стоимость |
Бесплатно |
Лицензия на 1 процессор 5800$ |
Бесплатно |
Бесплатно |
Бесплатно |
Проектируемая система предполагает работу c достаточно большими объемами данных (количество разрабатываемых программ в России достаточно велико). При этом важным критерием является масштабируемость и возможно средняя стоимость решения. Исходя из этих критериев, согласно таблице 1, для решения поставленной задачи можно выбрать две СУБД:
- MS SQL Server Express;
- FireBird.
Firebird обладает хорошей масштабируемостью данной СУБД (от локального приложения до кластера серверов) и простотой установки серверной части, а также отсутствием необходимости приобретения лицензии, т.к. продукт распространяется по свободной лицензии.
В качестве преимуществ Firebird также можно отметить многоверсионную архитектуру, обеспечивающую параллельную обработку оперативных и аналитических запросов, компактность, высокая эффективность и мощная языковая поддержка для хранимых процедур и триггеров.
Microsoft SQL Server Express также бесплатен. Но по функциональным возможностям он намного шире чем Firebird. Например, поддерживает аналитические и оконные функции в SQL и т.п. Существенным фактором является еще и то, что СУБД SQL Server Express легко интегрируется с платформой .NET Framework без каких-либо дополнительных библиотек. Исходя из сказанного, в качестве СУБД выбрана Microsoft SQL Server Express [10].
Для создания базы данных был выбран язык структурированных запросов SQL, поскольку он имеет следующие преимущества:
- независимость от конкретных СУБД;
- переносимость с одной вычислительной системы на другую.
- язык запросов SQL используется в СУБД, предназначенных для различных вычислительных систем: от персональных компьютеров и рабочих станций до локальных сетей, мини-компьютеров и больших ЭВМ;
- однопользовательские приложения на основе SQL могут быть перенесены в более крупные системы;
- возможность различного представления данных. С помощью SQL создатель базы может сделать так, что различные пользователи базы данных будут видеть различные представления её структуры и содержимого;
- полноценность как языка, предназначенного для работы с базами данных. Первоначально SQL был задуман как язык интерактивных запросов, но сейчас он вышел далеко за рамки чтения данных;
- наличие стандартов (наличие стандартов и набора тестов для выявления совместимости и соответствия конкретной реализации SQL общепринятому стандарту только способствует «стабилизации» языка);
- декларативность (с помощью SQL программист описывает только то, какие данные нужно извлечь или модифицировать);
- возможность совместного использование данных несколькими пользователями, работающими параллельно.
Для проектирования структуры базы данных целесообразно использование CASE-средств, т.к. данный подход упрощает разработку и построение оптимальной структуры для хранения данных.
Для доступа к данным целесообразнее выбрать технологию Entity Framework 6. Entity Framework представляет специальную объектно-ориентированную технологию на базе Framework.NET для работы с данными. Если традиционные средства ADO.NET позволяют создавать подключения, команды и прочие объекты для взаимодействия с базами данных, то Entity Framework представляет собой более высокий уровень абстракции, который позволяет абстрагироваться от самой базы данных и работать с данными независимо от типа хранилища.
Центральной концепцией Entity Framework является понятие сущности. Сущность представляет набор данных, ассоциированных с определенным объектом. Поэтому данная технология предполагает работу не с таблицами, а с объектами и их наборами. Сущности могут быть связаны ассоциативной связью один-ко-многим, один-ко-одному и многие-ко-многим, подобно тому, как в реальной базе данных происходит связь через внешние ключи.
Важным компонентом проектируемого программного обеспечения является компонент генерации отчетных форм. Существуют различные способы реализации задачи по генерации отчетов:
- формирование отчетных форм в виде HTML-страниц;
- формирование отчетных форм с использованием технологий OLE для приложений Microsoft Office;
- формирование отчетных форм с помощью стороннего компонента – генератора отчетов.
В качестве решения для генерации отчетов выбран третий способ. В качестве генератора отчетов принято решения использовать компоненты FastReport .NET.
Для разработки пользовательского интерфейса интернет-приложения будут использоваться библиотеки ExtJS и JQuery [11].
Полный перечень программных средств, используемых для реализации информационной системы, приведет в таблице ниже.
Таблица 2 – Программные средства, используемые для решения задачи
Категория программных средств, выполняемые задачи |
Используемые программные средства |
Проектирование ИС |
Star UML 5.0 [12] CA ERWin Data Modeler 9.0 [13] |
Среда разработки |
Microsoft Visual Studio 2015 |
Язык программирования, платформа разработки |
C#, ASP .NET MVC 5 |
СУБД |
Microsoft SQL Server Express 2014 |
Генератор отчетов |
FastReport .NET 2014 |
Компоненты пользовательского интрерфейса |
библиотеки ExtJS, JQuery |
Технология доступа к данным |
Entity Framework 6 |
