Курсовая работа: Основные этапы объектно-ориентированного проектирования
- количество классов в домене должно быть не менее одного.
2.1 Типы доменов
В соответствии с той ролью, которую каждый домен играет в законченной системе, домены подразделяются на:
- прикладные;
- сервисные;
- архитектурные;
- реализации.
Прикладной домен – это предметная область с точки зрения конечного пользователя. Она обычно рассматривается в контексте анализа требований: что надо делать пользователю данного приложения. Для каждого проекта существует один прикладной домен.
Сервисный домен обеспечивает общие механизмы и сервисные функции, необходимые для поддержки прикладного домена. В таблице2приведены типичные сервисные домены.
Таблица 2 - Типичные сервисные домены
Домен | Описание |
Процесс ввода - вывода | Обеспечивает организацию сигналов, составляющих интерфейс с оборудованием (считывает данные, управляет силовыми приводами и т.п.) |
Сигналы | Получает сообщения о вызывающих беспокойство условиях и аномалиях. Представляет эти сообщения оператору для принятия соответствующих мер. |
Пользовательский интерфейс | Формирует и обновляет изображение на экране. Взаимодействует с оператором. |
Гистограммирование | Отображает данные, подготавливает отчеты. |
Регистрация тенденций | Записывает последовательные значения выбранных атрибутов в течение определенного периода времени, отображает в виде графиков тенденции в изменении значений. |
История | Запись и сохранение всех инцидентов с указанием времени на протяжении всего выполнения производственного процесса. |
Архивирование данных | Создает с указанием времени долговечный снимок определенных наборов данных. |
Архитектурный домен обеспечивает общие механизмы и структуры для управления данными и управления приложением как единым целым. Классы в архитектурном домене представляют абстрактные структуры данных и модули кода. Архитектурный домен служит ряду целей:
- обеспечение однородности структуры программного обеспечения. Это достигается путем:
1) организации и доступности данных;
2) регулирования каналов управления;
3) структуры прикладного и сервисного кода;
4) взаимодействия между различными модулями кода.
В любом случае цель заключается в том, чтобы ограничить сложность системы использованием стандартных структур и способов выполнения многократно используемых функций;
- управление инициализацией и закрытием системы, переход к резервной при отказах;
- обеспечение мобильности – в архитектурный домен должны выноситься все процедуры и функции, зависящие от конкретной платформы. В случае переноса приложения на другую платформу переделке будет подвергаться только архитектурный домен;
- выполнение измерений в работающей системе – реализуется путем добавления специальных контрольных точек.
Домены реализации включают в себя языки программирования, операционные системы и общие библиотеки объектов. Обеспечивает концептуальные сущности, в которых будет реализована вся система.
2.2 Пакеты (домены) в языке UML
Пакет (package ) — основной способ организации элементов модели в языке UML. Каждый пакет владеет всеми своими элементами, т. е. теми элементами, которые включены в него.
Для графического изображения пакетов на диаграммах применяется специальный графический символ — большой прямоугольник с небольшим прямоугольником, присоединенным к левой части верхней стороны первого. Внутри большого прямоугольника может записываться информация, относящаяся к данному пакету. Если такой информации нет, то внутри большого прямоугольника записывается имя пакета, которое должно быть уникальным в пределах рассматриваемой модели (рисунок1, а). Если же такая информация имеется, то имя пакета записывается в верхнем маленьком прямоугольнике (рисунок1, б).
Рисунок 1 -Графическое изображение пакета в языке UML
Иерархическая вложенность пакетов в среде MSVisio 2002 задается с помощью проводника модели (ModelExplorer), в окне которого отображается дерево всех элементов, создаваемой модели приложения (рисунок2).
Рисунок 2 -Общий вид окна проводника модели в MSVisio 2002
2.3Управление большим доменом
В [7] маленьким считается домен, состоящий из 50 или менее классов. В этом случае он может анализироваться как единичный модуль. Домены с большим количеством объектов должны быть расчленены, для того, чтобы можно было успешно выполнить анализ.
При разделении доменов необходимо расчленить информационную модель так, чтобы кластеры остались неповрежденными. Под кластером понимается группа объектов с большим количеством взаимных связей. При этом определение каждого объекта должно быть единственным. Каждая часть информационной модели становится отдельным подпакетом.