Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 11 лет назад пользователемВладислава Якунькина
1 Объектно-ориентированный анализ и дизайн Copyright © Мухортов В. В., Няньчук-Татарский Н. А., Copyright © ООО «Интекс»,
2 Классы Class – набор объектов с общей структурой и поведением Interface – базовый класс, задающий только поведение, имеет стереотип > Abstract class – базовый класс, не имеющий экземпляров Parameterized class – параметризованный класс, шаблон Instantiated class – депараметризованный шаблон
3 Примеры классов
4 Атрибуты классов Attribute – атрибут (поле) Class attribute – атрибут класса (static) Derived attribute – производный ( вычислимый) атрибут Export control – доступ (public, protected, private) Containment – способ включения (value, reference) Syntax: :
5 Атрибуты классов name, birth_date – аттрибуты age – производный аттрибут (вычисляется через birth_date)
6 Атрибуты классов name, birth_date и age - атрибуты класса
7 Методы(операции) Method (operation) – метод Class method – метод класса (static) Export control – public, protected, private Syntax: name( ) : Parameter: parameter_name : type
8 Диаграмма классов - определяет типы объектов системы и статические связи между ними
9 Отношения между классами Зависимость Ассоциация Агрегация (отношение часть-целое) Композиция (отношение часть-целое c контролем жизненного цикла) Генерализация (наследование) Реализация (выполнение контракта)
10 Ассоциация (Association) Ассоциация - отношение взаимодействия Обладает 2-мя ролями Роль обладает множественностью (1, n, *, 0..n, 1..n, 1..*) Пример: сотрудник может занимать несколько должностей, на одной должности находится не более одного сотрудника
11 Ассоциация Ассоциация может иметь выделенное направление Должность связана базовым тарифом оплаты Тариф оплаты никак не связан с конкретной должностью
12 Агрегация (Aggregation) Агрегация – отношение часть-целое
13 Композиция (Composition) Композиция – частный случай агрегации Жизненный цикл частей и целого совпадают Отделы не существуют без компании Часть принадлежит только одному целому
14 Зависимость (Dependency)
15 Генерализация (Generalization) Генерализация (наследование, обобщение) – отношение частное-общее
16 Реализация (Realization) Реализация – отношение выполнения соглашения Треугольник и квадрат реализуют алгоритм вращения, специфицированный абстрактной сущностью «Фигура»
17 Диаграммы пакетов Package – пакет. Общий механизм организации элементов модели в группы Имеет имя Определяет пространство имен Может быть импортирован другим пакетом
18 Пример: постановка задачи Исходные данные: Есть класс Service с некоторым полезным методом do (): ResultSet Цель: Обеспечить удаленному клиенту прозрачный доступ к этому методу
19 Диаграмма пакетов
21 пакет: service
22 пакет: service::local
23 пакет: service::server
24 пакет: service::agent
25 стереотипы пакетов system – вся система subsystem – подсистема facade – представление другого пакета Например, пакет внешних интерфейсов подсистемы framework – набор шаблонов stub – заместитель другого пакета Созданный, например, для тестирования
26 Диаграммы взаимодействия Последовательностей - Sequence diagrams Коопераций (Коллабораций) - Collaboration diagrams Отражают динамические аспекты поведения объектов Семантически эквивалентны Содержат: Объекты Связи Сообщения Потоки данных
27 Диаграмма последовательностей
28 Диаграмма коопераций
29 Цели фазы анализа и дизайна Задачи: Трансформировать требования собранные на предыдущем этапе в дизайн системы Проработать архитектуру системы Адаптировать дизайн к среде исполнения Модели: Аналитическая модель (Analysis model) Design model
30 Аналитическая модель Абстрактная модель системы, описывающая ее в терминах use-case realization. Язык реализации классов не фиксируется. Обычно не сопровождается. Элементы analysis model: Use-case realization – реализация use-case, набор activity, state, collaboration и class диаграмм Boundary class – класс, разграничивающий actor-ов и систему Control – класс, управляющий другими классами Entity – класс, моделирующий информацию, используемую в системе
31 Boundary class -Класс, разграничивающий (под-)систему и окружение. UML: class со стереотипом > Примеры: классы пользовательского интерфейса, классы интерфейсов систем и устройств 3 представления boundary class в Rational Rose
32 Control -Класс, управляющий другими классами. Можно сказать, что control исполняет use-case UML: class со стереотипом > 3 представления control class в Rational Rose
33 Entity -Класс, моделирующий информацию, используемую в системе UML: class со стереотипом > 3 представления entity class в Rational Rose
34 Проверка контрактов
35 Диаграмма классов
36 Заключение контракта
37 Диаграмма классов
38 Диаграмма взаимодействия
39 Ограничения на связи From\To (navigability) BoundaryEntityControl Boundary communicate subscribe communicate Entity communicate subscribe Control communicate subscribe communicate
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.