Лекция 35. Объектно-ориентированное проектирование ЭИС

Структурная декомпозиция ЭИС на основе объектно-ориентированного подхода отличается от функционально-ориентированного подхода лучшей способностью отражать динамическое поведение системы в зависимости от возникающих событий. В этом плане модель проблемной области рассматривается как совокупность взаимодействующих во времени объектов. Тогда конкретный процесс обработки информации формируется в виде последовательности взаимодействий объектов. Одна операция обработки данных может рассматриваться как результат одного взаимодействия объектов.

Конечным результатом процесса объектно-ориентированного проектирования должно стать множество классов объектов с присоединенными методами обработки атрибутов. Если в функциональном подходе модели данных и операций разрабатываются относительно независимо друг от друга и только координируются между собой, то объектно-ориентированный подход предполагает совместное моделирование данных и процессов. При этом модели проблемной области в репозитории постепенно уточняются.

В связи с этим система объектно-ориентированных моделей последовательно разворачивается по направлению от модели общего представления функциональности ЭИС к модели динамического взаимодействия объектов, на основе которой могут быть сгенерированы классы объектов в конкретной программно-технической среде.

В настоящее время для объектно-ориентированного моделирования проблемной области широко используется унифицированный язык моделирования UML (Unified Modeling Language), который разработан группой ведущих компьютерных фирм мира OMG (Object Management Group) [89] и фактически является стандартом по объектно-ориентированным технологиям. Язык UML Реализован многими фирмами - производителями программного обеспечения в рамках CASE-технологий, например Rational *ose (Rational), Natural Engineering Workbench (Software AG), ARIS Toolset (IDS prof. Scheer) и др.

Система объектно - ориентированных моделей в соответствии с нотациями UML включает в себя следующие диаграммы:

диаграмму прецедентов использования (Use-case diagra которая отображает функциональность ЭИС в виде совокупности выполняющихся последовательностей транзакций;

диаграмму классов объектов (Class diagram), которая отображает структуру совокупности взаимосвязанных классов объектов аналогично ER-диаграмме функционально - ориентированного подхода;

диаграммы состояний (Statechart diagram), каждая из которых, отображает динамику состояний объектов одного класса и связанных с ними событий;

диаграммы взаимодействия объектов (Interaction diagram) каждая из которых отображает динамическое взаимодействие объектов в рамках одного прецедента использования;

диаграммы деятельностей (Activity diagram), которые отображают потоки работ во взаимосвязанных прецедентах использования (могут декомпозироваться на более детальные диаграммы);

диаграммы пакетов (Package diagram), которые отображают распределение объектов по функциональным или обеспечивающим подсистемам (могут декомпозироваться на более детальные диаграммы);

диаграмму компонентов (Component diagram), которая отображает физические модули программного кода;

диаграмму размещения (Deployment diagram), которая отображает распределение объектов по узлам вычислительной сети.