- •Разработка модели информационной системы средствами uml
- •6.050102 “Компьютерная инженерия”
- •Чернигов чгту 2011
- •3.6.4 Пример выполнения 39
- •3.7.4 Пример выполнения 42
- •3.8 Контрольные вопросы 42
- •Введение. Этапы разработки проекта
- •1 Постановка задачи (системный анализ)
- •1.1 Пример. Описание предметной области
- •2 Анализ требований
- •2.2 Диаграммы потоков данных
- •2.3 Пример выполнения анализа требований для икс видеотека
- •2.4 Контрольные вопросы
- •3 Проектирование
- •3.1 Построение диаграммы вариантов использования
- •3.1.1 Отношение расширения
- •3.1.2 Отношение обобщения
- •3.1.3 Отношение включения
- •3.1.4 Пример построения диаграммы вариантов использования
- •3.1.5 Диаграмма анализа бизнес-процессов
- •Бизнес-процесс
- •Ресурс и информация
- •Событие
- •3.2.2 Линия жизни объекта
- •3.2.3 Фокус управления
- •3.2.4 Сообщения
- •3.2.5 Пример построения диаграммы последовательности
- •3.3 Диаграмма классов
- •3.3.1 Класс
- •3.3.2 Отношения между классами
- •Отношение зависимости
- •Отношение ассоциации
- •Отношение агрегации
- •Отношение композиции
- •Отношение обобщения
- •3.3.3 Объекты
- •3.3.4 Шаблоны или параметризованные классы
- •3.3.5 Рекомендации по построению диаграмм классов
- •3.3.6 Пример выполнения
- •3.4 Диаграммы поведения
- •3.4.1 Диаграмма состояний
- •Состояние
- •Переход
- •3.4.2 Диаграмма деятельности (activity diagram)
- •3.4.3 Пример выполнения
- •3.4.4 Рекомендации по построению диаграмм поведения Диаграмма состояний
- •Диаграмма деятельности
- •3.5 Диаграммы взаимодействия
- •3.6.1 Диаграмма кооперации (collaboration diagram)
- •Кооперация
- •3.6.2 Пример выполнения
- •3.6 Представление компонентов
- •3.6.1 Компоненты
- •3.6.2 Зависимости
- •3.6.3 Рекомендации по построению диаграммы компонентов
- •3.6.4 Пример выполнения
- •3.7 Представление размещения
- •3.7.1 Узел
- •3.7.2 Соединения
- •3.7.3 Рекомендации по построению диаграммы развертывания
- •3.7.4 Пример выполнения
- •3.8 Контрольные вопросы
- •Рекомендованная литература
1 Постановка задачи (системный анализ)
Проведение системного анализа предполагает обследование системы. Основная задача обследования — оценка реального объема проекта, его целей и задач, а также получение определений сущностей и функций на высоком уровне.
На этом этапе привлекаются высококвалифицированные бизнес-аналитики; этап предполагает тесное взаимодействие с основными пользователями системы и бизнес-экспертами. Основная задача взаимодействия — получить как можно более полную информацию о системе (полное и однозначное понимание требований заказчика) и подготовить информацию в формализованном виде для последующего проведения этапа анализа. Таким образом определяются основные требования к проектируемой системе.
1.1 Пример. Описание предметной области
Предприятие «ВИДЕОТЕКА» получает запросы на фильмы от клиентов и ленты, возвращаемые клиентами. Запросы рассматриваются администрацией предприятия с использованием информации о клиентах и фильмах. При этом проверяется и обновляется список арендованных лент, а также проверяются записи о членстве в библиотеке. Администрация контролирует также возвраты лент, используя информацию о фильмах и список арендованных лент, который обновляется. Обработка запросов на фильмы и возвратов лент включает следующие действия: если клиент не является членом библиотеки, он не имеет права на аренду. Если требуемый фильм имеется в наличии, администрация информирует клиента об арендной плате. Однако, если клиент просрочил срок возврата имеющихся у него лент, ему не разрешается брать новые фильмы. Когда лента возвращается, администрация рассчитывает арендную плату плюс пени за несвоевременный возврат.
Предприятие получает новые ленты от своих поставщиков. Когда новые ленты поступают в библиотеку, необходимая информация о них фиксируется. Информация о членстве в библиотеке содержится отдельно от записей об аренде лент.
Администрация библиотеки регулярно готовит отчеты за определенный период времени о членах библиотеки, поставщиках лент, выдаче определенных лент и приобретенных фильмах.
2 Анализ требований
Этап анализа предполагает подробное исследование бизнес-процессов (функций, определенных на этапе системного анализа) и информации, необходимой для их выполнения (сущностей, их атрибутов и связей (отношений)). На этом этапе создается информационная модель системы.
Вся информация о системе, собранная на этапе системного анализа, формализуется и уточняется на этапе анализа требований. Особое внимание следует уделить полноте переданной информации, анализу информации на предмет отсутствия противоречий, а также поиску неиспользуемой вообще или дублирующейся информации.
Аналитики собирают и фиксируют информацию в двух взаимосвязанных формах:
функции — информация о событиях и процессах, которые происходят в бизнесе;
сущности — информация о вещах, имеющих значение для организации и о которых что-то известно.
Двумя классическими результатами анализа являются:
иерархия функций, которая разбивает процесс обработки на составные части (что делается и из чего это состоит);
модель «сущность-связь» (Entry Relationship model, ER-модель), которая описывает сущности, их атрибуты и связи (отношения) между ними.
Эти результаты являются необходимыми, но не достаточными. К достаточным результатам следует отнести диаграммы потоков данных.
Ниже мы рассмотрим наиболее часто применяемые методологии структурного анализа:
диаграммы «сущность-связь» (Entity-Relationship Diagrams, ERD), которые служат для формализации информации о сущностях и их отношениях;
диаграммы потоков данных (Data Flow Diagrams, DFD), которые служат для формализации представления функций системы.
2.1 ER-диаграммы
Данная нотация была предложена П. Ченом (P. Chen) и Р. Баркером (R. Barker). Диаграммы "сущность-связь" (ERD) предназначены для графического представления моделей данных разрабатываемой программной системы и предлагают некоторый набор стандартных обозначений для определения данных и отношений между ними. С помощью этого вида диаграмм можно описать отдельные компоненты концептуальной модели данных и совокупность взаимосвязей между ними, имеющих важное значение для разрабатываемой системы.
Основными понятиями данной нотации являются понятия сущности и связи. При этом под сущностью (entity) понимается произвольное множество реальных или абстрактных объектов, каждый из которых обладает одинаковыми свойствами и характеристиками. В этом случае каждый рассматриваемый объект может являться экземпляром одной и только одной сущности, должен иметь уникальное имя или идентификатор, а также отличаться от других экземпляров данной сущности.
Примерами сущностей могут быть: банк, клиент банка, компьютер, терминал. Каждая из сущностей может рассматриваться с различной степенью детализации и на различном уровне абстракции, что определяется конкретной постановкой задачи. Для графического представления сущностей используются специальные обозначения (рисунок 2.1).
Рисунок 2.1 – Графические изображения для обозначения сущностей
Связь (relationship) определяется как отношение или некоторая ассоциация между отдельными сущностями. Примерами связей могут являться родственные отношения типа "отец-сын" или производственные отношения типа "начальник-подчиненный". Другой тип связей задается отношениями "иметь в собственности" или "обладать свойством". Различные типы связей графически изображаются в форме ромба с соответствующим именем данной связи (рисунок 2.2).
Графическая модель данных строится таким образом, чтобы связи между отдельными сущностями отражали не только семантический характер соответствующего отношения, но и дополнительные аспекты обязательности связей, а также кратность участвующих в данных отношениях экземпляров сущностей.
Рисунок 2.2 – Графические изображения для обозначения связей
