Дипломная работа: Разработка системы управления конфигурациями информационных систем

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рисунок 3.1. Схема базы данных

Для представления значений полей, содержимое таблиц БД представлено в табл. 3.1-3.6. Переведем все эти таблицы в SQL.

Таблица 3.1. Поля таблицы MigrationHistory

Название поля

Тип

Описание

MigrationId

nvarchar

Идентификатор

ContextKey

nvarchar

Ключ контекста

Model

varbinary

Модель

ProductVersion

nvarchar

Версия продукта

Таблица 3.2. Поля таблицы AspNetUserRoles

Название поля

Тип

Описание

UserId

nvarchar

Идентификатор пользователя

RoleId

nvarchar

Идентификатор роли

Таблица 3.3. Поля таблицы AspNetRoles

Название поля

Тип

Описание

Id

nvarchar

Идентификатор роли

Name

nvarchar

Наименование роли

Таблица 3.4. Поля таблицы Users

Название поля

Тип

Описание

Id

nvarchar

Идентификатор

Email

nvarchar

Почтовый адрес

EmailConfirmed

bit

Совпадение почтовых адресов

PasswordHash

nvarchar

Хэш пароля

LockoutEndDateUtc

datetime

Время выхода

LockoutEnabled

bit

Выход из системы

AccessFailedCount

int

Количество неудачных входов

UserName

nvarchar

Имя пользователя

Таблица 3.5. Поля таблицы AspNetUserClaims

Название поля

Тип

Описание

Id

int

Идентификатор запроса пользователя

UserId

nvarchar

Идентификатор пользователя

ClaimType

nvarchar

Тип запроса

ClaimValue

nvarchar

Значение запроса

Таблица 3.6. Поля таблицы UserLogins

Название поля

Тип

Описание

LoginProvider

nvarchar

Логин провайдера

ProviderKey

nvarchar

Ключ провайдера

UserId

nvarchar

Идентификатор пользователя

Таблица 3.7. Поля таблицы ConfigutationItemsModels

Название поля

Тип

Описание

Id

int

Идентификатор КЕ

Name

nvarchar

Наименование КЕ

Таблица 3.8. Поля таблицы ConfigutationItemsLinks

Название поля

Тип

Описание

Id

int

Идентификатор связи

ConfigurationId

int

Идентификатор конфигурации

ConfigurationItemId

int

Идентификатор конфигурационной единицы

В общем случае модели данных разрабатываются таким образом, чтобы не зависеть от конкретной базы данных. Поэтому разработанную физическую модель данных можно применить к любой СУБД. В нашем случае это будет Miсrоsоft SQL Server 2014.

Таблица 3.9. Поля таблицы ConfigurationsModels

Название поля

Тип

Описание

Id

int

Идентификатор

Name

nvarchar

Наименование конфигурации

StatusId

int

Идентификатор статуса

Comment

nvarchar

Комментарий к конфигурации

InfoInstallFile

nvarchar

Файл со стратегией установки

InfoInstallUrl

nvarchar

Ссылка на стратегию установки

InfoTestFile

nvarchar

Файл с отчётом о тестировании

InfoTestUrl

nvarchar

Ссылка на отчёт о тестировании

InfoCreatingName

nvarchar

Имя образа

InfoCreatingDate

datetime

Дата создания образа

InfoCreating

Comment

nvarchar

Комментарий к созданию образа

InfoTeachCount

nvarchar

Список учебных и рабочих мест для развёртывания

InfoTeachInstallDate

datetime

Дата развёртывания

InfoTeachComment

nvarchar

Комментарий к развёртыванию

InfoAuditCount

nvarchar

Список учебных и рабочих мест для аудита

InfoAuditInstallDate

datetime

Дата проведения аудита

InfoAuditComment

nvarchar

Комментарий к аудиту

Таблица 3.10. Поля таблицы ConfigurationStatusModels

Название поля

Тип

Описание

Id

int

Идентификатор статуса

Key

int

Ключ

Name

nvarchar

Наименование статуса

Таблица 3.11. Поля таблицы ConfigurationQueries

Название поля

Тип

Описание

Id

int

Идентификатор запроса

ConfigurationId

int

Идентификатор конфигурации

UserId

int

Идентификатор пользователя

Sign

nvarchar

Статус запроса

Таблица 3.12. Поля таблицы ConfigurationPlans

Название поля

Тип

Описание

Id

int

Идентификатор CM-плана

Link

nvarchar

Ссылка на CM-план

4. Реализация системы

4.1 Реализация пользовательских интерфейсов

Разрабатываемая информационная система имеет три категории пользователей - это инженер по конфигурациям, поставщик требований и поставщик запросов на изменение. Каждая из ролей имеет свой набор функциональных возможностей.

Первая форма при входе в систему - это форма авторизации в системе. Авторизация происходит по логину и паролю. Информация о роли пользователя уже хранится в системе. Внешнее представление данной формы представлено на рис. 4.1.

Рисунок 4.1. Окно авторизации

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

Рисунок 4.2. Главное окно системы

Данная форма даёт возможность просмотра существующих конфигураций. Для работы с какой-либо конфигурацией необходимо использовать кнопки справа. Напротив каждой из конфигураций указан статус конфигурации - текущее положение конфигурации в жизненном цикле. Статус изменяется системой автоматически и не может быть изменён вручную. Вверху имеется кнопка позволяющая создать новую конфигурацию, при нажатии на которую появляется новая форма. При нажатии на главной форме на кнопку создания новой конфигурации, откроется форма, представленная на рисунке 4.3. Необходимо ввести название новой конфигурации и произвести сохранение, после чего можно выйти обратно в главную форму.

Рисунок 4.3. Форма добавления конфигурации

При выборе в главном окне кнопки «Составы» осуществляется переход на библиотеку конфигурационных единиц (рис. 4.4).

Рисунок 4.4. Форма, отображающая конфигурационные единицы

Этот список можно пополнить новыми конфигурационными единицами, нажав соответствующую кнопку вверху страницы, после чего откроется новая форма (рис. 4.5).

Рисунок 4.5. Форма, отображающая конфигурационные единицы

Проекты конфигураций просматриваются по нажатию кнопки «Элементы состава». Список отображает нахождение конфигурационной единицы в составе конфигурации (рис. 4.6).

Рисунок 4.6. Форма проектов конфигураций

Кнопка «Создать» открывает новую форму и позволяет добавить одну конфигурационную единицу в состав любой из конфигураций (рис. 4.7).

Рисунок 4.7. Форма добавления конфигурационной единицы в проект

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

Рисунок 4.8. Форма запросов

Окно создания нового запроса выглядит следующим образом (рис. 4.9).

Рисунок 4.9. Форма создания запроса

При переходе по кнопке "Стратегия установки" появляется форма, изображённая на рисунке 4.10. Данная форма позволяет создать или изменить ссылку на стратегию установки.

Рисунок 4.10. Окно стратегии установки конфигурации

При переходе по кнопке "Отчёт о тестировании" появляется форма, изображённая на рисунке 4.11. Данная форма позволяет создать или изменить ссылку на отчёт о тестировании.

Рисунок 4.11. Окно отчёта о тестировании конфигурации

После заполнения форм «Стратегия установки» и «Отчёт о тестировании» в окне о конфигурации активируется кнопка "Отчёт о создании образа конфигурации". При переходе по этой кнопке появляется окно, представленное на рисунке 4.12.

Рисунок 4.12. Окно отчёта об создании образа конфигурации

После заполнения данной форму статус у конфигурации изменяется на "Изготовлено". В окне о конфигурации активируется кнопка "Отчёт о развёртывании". При переходе по данной кнопке появляется окно, представленное на рисунке 4.13.

Рисунок 4.13. Окно отчёта о развёртывании конфигурации

После заполнения данной форму статус у конфигурации изменяется на "Эксплуатируется". В окне о конфигурации активируется кнопка "Отчёт о проведении аудита". При переходе по кнопке "Отчёт о проведении аудита" появляется окно, представленное на рисунке 4.14.

Рисунок 4.14. Окно отчёта о проведении аудита конфигурации

После заполнения статус у конфигурации изменяется на "Выведено из эксплуатации".

Реализация компонентов

После этапа проектирования следует этап реализации и тестирования координатора бизнес-процессов. Инструментальными средствами выступили Visual Studio на языке высокого уровня С#. Возможности среды и языка очень велики, так что выбор инструментария можно считать эффективным.

Система выполнена с помощью ASP.NET MVC Framework - фреймворка для создания веб-приложений, который реализует шаблон Model-View-Controller.

Model-View-Controller (MVC, «Модель-Представление-Контроллер», «Модель-Вид-Контроллер») является схемой разделения данных приложения, пользовательского интерфейса и управляющей логики на три отдельных компонента: модель, представление и контроллер таким образом, что модификация каждого компонента может осуществляться независимо.

Модель (Model) предоставляет данные и реагирует на команды контроллера, изменяя своё состояние.

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

Контроллер (Controller) интерпретирует действия пользователя, оповещая модель о необходимости изменений.

По результатам данного этапа будут сформированы руководства пользователя и программиста.

Для более удобного доступа к данным используется фреймворк Entity Framework. Этот фреймворк позволяет абстрагироваться от структуры конкретной базы данных и вести все операции с данными через модель. Создается контекст данных для облегчения доступа к БД на основе некоторой модели. В соответствующую папку добавляются классы, описывающие модели каждой из сущностей системы. После завершения работы с моделями, необходимо создать контроллеры, которые будут связывать модели и пользовательские интерфейсы.

Например, для создания контроллера для Конфигурации получаем из базы данных список идентификаторов объектов Configurations. Далее мы создаем объект Id в объекте ViewBag и присваиваем ему этот список (рис. 4.15). Объект ViewBag является таким объектом, который передается в представление. И мы можем определить в этом объекте любую переменную и передать ей некоторое значение, а затем в представлении извлечь это значение.

Рисунок 4.15. Контроллер ConfigurationController

Создание конфигурации определяется в контроллере следующим образом (см. рис. 4.16).

Рисунок 4.16. Контроллер ConfigurationController