Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

PETROV / ____. ____ ____. ______ _6 [2013-2014]

.pdf
Скачиваний:
34
Добавлен:
10.02.2015
Размер:
3.59 Mб
Скачать

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Концептуальное моделирование и практика DDD

Концептуальное моделирование ИС тесно связано с практикой проблемно-ориентированного проектирования (англ. domain-driven design, DDD),

которая в свою очередь используется при условии:

применении ОО-подхода к анализу и разработке ПО;

наличия доступа к ЭПО (напр. при внутренней разработке);

следовании итерационной модели разработки.

Результатом применения DDD является эффективная

организация онтологии и качественная концептуальная модель предметной области, абстрактная настолько,

насколько это необходимо.

41

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Элементы DDD: предметные области, модели и языки

Предметная область (англ. domain) — часть реального мира, область знаний или сфера деятельности, требующая автоматизации в рассматриваемом контексте

Модель (англ. model) — абстрактное представление фрагмента предметной области, отвечающее стандартным требованиям к моделям: полнота, целостность, актуальность и пр.)

Язык описания (англ. description language) — формальный инструмент описания области знаний посредством ее модели. В DDD конечным языком документирования

предметной области является язык программирования.

42

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Принципы DDD

Сознательное произвольное ограничение предметной области и использование ее понятий как «общеупотребительного» языка (англ. ubiquitous language)

Изоляция фрагментов предметной области в целях ее декомпозиции на более простые и управляемые ограниченные контексты (англ. bounded context), имеющие собственные общеупотребительные языки

Раздельное моделирование и составление карты контекстов (англ. context map) для повышения эффективности разработки и развертывания системы, представимой в виде слабо связанных групп классов.

43

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Карта DDD по Э. Эвансу

44

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Статическое представление концептуальной модели

Статическое представление концептуальной модели на языке UML принимает вид

диаграмм классов, которые:

отражают интересующие «вещи» в реальном мире;

описывают атрибутный состав классов (объектов);

описывают связи между классами (объектами).

45

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Стереотипы и профили

Стереотип (англ. stereotype) — общепринятый в языке UML способ создания новых элементов диаграмм на основе существующих элементов:

стереотипы в UML применимы не только к классам, но и к пакетам, компонентам, сообщениям и т.д.

Связанные группы стереотипов, расширяющие ту или иную часть UML для определенных целей, носят название профилей (англ. profile). Примеры стереотипов классов:

46

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

Стереотипы в профилях UML

В UML Profile for Software Development Process введены три вида аналитических классов: управляющий, сущностный и граничный.

В UML Profile for Business Modeling введены собственные виды классов: исполнитель, исполнитель варианта использования и внутренний исполнитель.

47

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

UML Profile for SW Development Process: управляющий класс

Управляющий класс — класс (обычно активной) сущности,

контролирующей взаимодействие набора объектов:

как правило, обладает поведением, соответствующим одному варианту использования системы (ВИС);

время жизни такого класса обычно укладывается в период выполнения ВИС, в котором тот занят.

ControlClass

На диаграмме, раскрывающей реализацию ВИС, рекомендуется наличие хотя бы 1 управляющего класса. 48

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

UML Profile for SW Development Process: граничный класс

Граничный класс — класс, лежащий на периферии системы, но в пределах нее:

взаимодействует с действующими лицами вне системы, а также объектами всех трех видов аналитических классов: граничными, сущностными, управляющими — в пределах системы.

BoundaryClass

49

Методы исследования и моделирования информационных процессов и технологий (10 семестр )

UML Profile for SW Development Process: сущностный класс

Сущностный класс — пассивный класс, который выступает инициатором взаимодействия с другими классами самостоятельно, а чаще всего лишь получает сообщения

в общем случае является персистентным и соответствует таблице БД;

может участвовать в реализации множества ВИС;

время жизни объекта такого класса обычно превышает длительность единичного взаимодействия.

EntityClass

50