Объектно- ориентированный подход к проектированию систем
Структурная декомпозиция на основе объектно-ориентированного подхода отличается от функционально-ориентированного подхода лучшей способностью отражать динамическое поведение системы в зависимости от возникающих событий. В этом плане модель проблемной области рассматривается как совокупность взаимосвязывающих во времени объектов. Тогда конкретный процесс обработки информации формируется в виде последовательности взаимодействия объектов. Конечным результатом процесса должно стать множество классов объектов с присоединенными методами обработки атрибутов.
Язык UML
Унифицированный язык моделирования UML(Unified Modeling Language) является средством представления информации о системе. Он состоит из нотаций (обозначений) и правил их применения.
Система в UML имеет 5 представлений:
1. Представление использования - основная часть модели описания системы.
2. Логическое представление – описание функциональных возможностей системы
3. Компонентное представление – описание структуры и взаимосвязей модулей системы
4. Представление взаимодействия процессов – описание согласованных действий модулей системы.
5. Представление распределения – описание физической архитектуры системы
Каждое представление состоит из диаграмм, которые строятся из своих нотаций.
Диаграмма использования
Для представления использования они имеют вид:
- Актер (Субъект) как внешняя сущность, взаимодействующая с системой; им может быть как человек, так и другая система;
- Прецедент (Аспект) использования как определенное средство, предоставляемое системой;
- Односторонняя ассоциация как взаимодействие, направленное от одних субъектов и аспектов к другим;
- Двухсторонняя ассоциация;
- Специализация (обобщение) в зависимости от направления стрелки от одного субъекта или аспекта к другому:
Пример описания системы «Общежитие»
Логическое представление
Логическое представление включает в себя описание:
· статической структуры (классов, объектов и связей между ними, внутренней структуры классов, интерфейсов);
· динамики взаимодействия (обмен сообщениями между объектами)
Диаграмма классов
Классы – группы объектов с свойствами (атрибутами: Фамилия, год р.,паспорт), поведением - методы (операциями: добавить клиента, получить товар), отношениями с другими объектами и семантикой. Класс- шаблон для создания объектов.
Объект имеет три характеристики: состояние, поведение, индивидуальность. Состояние – открыт или закрыт для записи. Поведение - как реагирует на запрос – удалить или добавить (аномалии по Миронову). Индивидуальность объекта – уникален или нет).
В основе построения таблиц для реляционной БД. Выделяют классы отражающие сущность, управляющие классы и граничные классы.
На диаграмме классов изображается набор классов с описанием их внутренней структуры (полей, поведением - методов, ограничений) и отношений между ними. Каждое отношение имеет специальное обозначение.
· Класс – описание класса. Поля и методы в определенном формате, их спецификаторы указываются с помощью специальных значков. Синтаксис описания:
<имя_атрибута>: <тип >=<начальное значение >{<свойство>}
< имя_метода> (<список_аргументов >):<тип_ возвращаемого_ значения>{<свойство>}
Между классами существуют отношения. Самый простой вид отношений ассоциация.
1-1 определяют отношения «один- к –одному»;
1-* определяют отношения «один-ко-многим»;
*-* определяют отношения «многие-ко-многим», которое приводится к двум отношениям «один-ко-многим» введением промежуточной сущности (объекта);
· Интерфейс – предоставляет системе для использования классы, пакеты и компоненты
При описании класса обязательными являются: Имя атрибута, имя поведения. Перед описанием атрибутом и описанием поведения ставится значок (необязательный):
|
|
|
|
Диаграммы объектов представляют собой пример диаграммы классов с двумя особенностями: вместе с именем класса указывается имя объекта, показывает количество экземпляров класса реально используемых в системе.
Диаграмма состояний –используется для описания состояний объектов и переходов объектов из одних состояний в другие при возникновении определенных событий. Диаграмма состояний дополняет описание класса. Изменение состояния объекта называется переходом из состояния в состояние. Переход может сопровождаться выполнением некоторого действия. Диаграммы состояний м.б. составлены только для классов, имеющих четко определенные состояния, переход между которыми влияет на дальнейшее поведение класса. Можно создать диаграмму состояний, которая описывает поведение отдельного класса или системы в целом.