<<
>>

Объектно-ориентированный подход

Вспомним понятие класса.

Класс – множество однотипных объектов, у которых есть:

- свойства

- методы

Для описания свойств системы используется специальный язык UML (Unified Modeling Language) под управлением Rational Rose.

Язык UML

Этот язык хорошо описывает проект и архитектуру создаваемой системы.

Архитектура создаваемой системы описывается следующими документами (или артефактами, как они называются в Rational Rose):

1. Представление условий использования (взаимодействие системы с пользователем);

2. Логическое представление (структура системы, например диаграмма классов);

3. Компонентное представление системы (размещение логических элементов системы по программным исполняемым модулям и физическим БД);

4. Представление о размещении (привязка компонент к конкретным аппаратным средствам);

Для изображения каждого типа схем в UML есть специальные графические средства, которые позволяют строить диаграммы.

Рассмотрим подробно все типы графических средств UML.

Представление об условиях использования системы

Иначе это называется прецедентами использования системы пользователем.

Основной прецедент – типовой алгоритм взаимодействия пользователя с системой.

Вспомогательный прецедент – нетиповые алгоритмы взаимодействия пользователя с системой.

ГОСТов на описание прецедентов нет.

Этот артефакт составляется системным аналитиком.

Рассмотрим пример артефакта описания прецедента использования системы.

Прецедент – «Покупка товара»

Шага

Действующий субъект Система Ограничения
1. Прецедент начинается, когда продавец нажимает кнопку «Новая продажа» Для продавца открывается окно «Новая продажа» и включается сканер Общее время отклика < 1 сек
2. Продавец сканирует товары и вводит количество Отображает наименование и цену товара Общее время отклика на сканирование 1 товара < 1 сек
3. Продавец щелкает кнопку «Итого» Вычисляет и отображает стоимость
4. Продавец считывает дисконтную карту Если карта действительна*, то распечатывается чек со скидками, обновляется состав товара в магазине и сумма дохода.

Это конец условия использования

* Если дисконтная карта не действительна, то действует другой, вспомогательный прецедент.

Диаграмма прецедента использования на языке UML.

Условные обозначения:

Условное обозначение Расшифровка
1.

Актер (либо пользователь, либо внешняя система)
2.

Прецедент использования

Пример:

Диаграммы прецедентов определяют основные требования к системе, определяет функциональные требования к системе.

Прочие функциональные требования – дополнительные требования по быстродействию, объему памяти и другие специфические количественные требования.

Для описания дополнительных требований специальных формализмов нет, в ряде случаев при описании требований используют ограничения.

Диаграммы логического представления.

Диаграммы класса

Условные обозначения:

1. класс
2. Отношение ассоциаций
3. Отношение обобщения Пример:

Свойства летательного аппарата наследуются самолетом.

4. Отношение агрегации Пример:

5. Отношение зависимости Независимый класс (элемент) может разрабатываться независимо от зависимого класса (элемента).
6. Отношение включения (физического) Один класс входит в состав другого более сложного класса.
7. Отношение реализации Пример:

Для выполнения методов используется класс – справочник.

Пример диаграммы класса:

Предметная область: покупатель хочет приобрести товар.

Введем классы в ПО:

1. Продукт и его запасы в магазине

2. Заказ его составляющие

3. Клиент:

- Юридическое лицо

- Физическое лицо

1
1

1

Эта диаграмма является базовой. В основе получения программного кода лежит именно диаграмма класса.

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

Классы, относящиеся к одной подобласти предметной области, могут быть объединены в пакеты.

1

Между пакетами могут существовать отношения, в основном это отношения зависимостей.

Эти отношения между пакетами описываются в рамках диаграммы пакетов.

Пример диаграммы пакетов:

Диаграмма состояния класса

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

Условные обозначения:

1. Вершина
2. Конечная вершина
3. Состояние
4. Переход

Построим граф перехода для объекта «строка заказа»

Для случая, когда заказ может быть удовлетворен или неудовлетворен.

На стрелке указывается

- Условие перехода

- Действие, сопровождающее переход.

Практически на стрелке записывается продукция.

Граф состояний определяет диаграмму поведения одного объекта.

Диаграмма взаимодействия

(объектов разных классов при исполнении одного прецедента)

Существует 2 типа диаграммы взаимодействия:

1. Диаграмма последовательности взаимодействия

Условные обозначения:

Актёр

Класс типа «сущность» (классы баз данных)
Класс типа «экранная форма»
Управляющие классы

При построении диаграммы следует помнить, что время на диаграмме течёт сверху вниз.

Пример:

Оформляется и исполняется заказ на закупку:

1. Кооперативная диаграмма

Пример:

1

4
5
2

3

6

Нумеровка на диаграмме соответствует последовательности действий.

Диаграмма деятельности

С её помощью описываются процессы, происходящие в системе с учётом их параллелизма.

Пример использования операторов fork (распараллеливание) и join (объединение):

Пример:

Человек испытывает жажду и хочет выпить кофе.

Диаграмма компонентов

Показывает, как выглядит система на физическом уровне.

В одном компоненте могут быть файлы c расширением *.exe или более сложные структуры. Внутри компонента могут находиться один или более классов.

Условное обозначение компонентов:

Диаграмма размещения

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

<< | >>
Источник: Клебанов Б.И.. Автоматизированные системы управления предприятием. Курс лекций. Часть 1. 2004

Еще по теме Объектно-ориентированный подход: