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