- •Структура uml. Строительные блоки uml. Общие механизмы uml. Архитектура языка.
- •Унифицированный процесс разработки (up). Аксиомы up (итерация и инкремент). Структура up. Фазы up.
- •Метамодель требований предъявляемых к по. Моделирование прецедентов.
- •Обобщение актеров. Обобщение прецедентов. Отношения «include» и «extend».
- •Выявление классов анализа. Деятельность up: анализ прецедента. Основные и альтернативные потоки анализа прецедента.
- •Отношения между: а) актерами и прецедентами б) прецедентами и прецедентами (обобщение, «include» и «extend») в) актерами и актерами (обобщение).
- •Архитектурный анализ. Пакеты и пространства имен. Вложенные пакеты. Зависимости пакетов.
- •Вложенные пакеты:
- •Реализация прецедентов. Элементы прецедента. Взаимодействия. Линии жизни. Сообщения. Диаграммы взаимодействия (коммуникационные диаграммы).
- •Диаграммы взаимодействий.
- •Проектирование класса, атрибуты, операции. Наследование, шаблоны, вложенные классы.
- •Отношения уровня проектирования. Агрегация и композиция.
- •Отношения классов уровня анализа. Ассоциации: один-к-одному, один-ко-многим, многие-к-одному, многие-ко-многим.
- •Подсистемы. Подсистемы и интерфейсы. Шаблон «Facade».
- •Трехуровневая архитектура системы (схема архитектуры). Преимущества и недостатки интерфейсов.
- •Диаграммы взаимодействия при проектировании прецедента (добавить курс «uml» в бд ).
- •Диаграммы состояний объекта.
Выявление классов анализа. Деятельность up: анализ прецедента. Основные и альтернативные потоки анализа прецедента.
Классы анализа – это классы, которые:
• представляют четкую абстракцию предметной области (problem domain);
• должны проецироваться на реальные бизнес_понятия (и быть аккуратно поименованы соответственно этим понятиям).
Рабочий поток анализа в UP включает следующие деятельности:
• Архитектурный анализ
• Анализ прецедента
• Анализ класса
• Анализ пакета
Цели разработчика при реализации прецедентов во время фазы анализа следующие:
• Выяснить, взаимодействие каких классов анализа обеспечивает поведение, определенное прецедентом; во время реализации прецедентов могут быть обнаружены новые классы анализа.
• Выяснить, какими сообщениями должны обмениваться экземпляры этих классов для реализации заданного поведения. Как будет показано в этой главе, это выявит:
• ключевые операции, необходимые классам анализа;
• ключевые атрибуты классов анализа;
• важные отношения между классами анализа.
У каждого прецедента есть основной поток и может быть множество альтернативных потоков. Они являются альтернативными путями в прецеденте, которые перехватывают ошибки, ответвления и прерывания основного потока.
Отношения между: а) актерами и прецедентами б) прецедентами и прецедентами (обобщение, «include» и «extend») в) актерами и актерами (обобщение).
Отношения – это семантические (значимые) связи между элементами модели. Отношения – это способ объединения сущностей в UML. Нам уже встречались некоторые типы отношений:
• между актерами и прецедентами (ассоциация);
• между прецедентами и прецедентами (обобщение, «include», «extend»);
• между актерами и актерами (обобщение).
К ним относятся:
• обобщение актеров – отношение обобщения между обобщенным актером и конкретным актером;
• обобщение прецедентов – отношение обобщения между обобщенным прецедентом и специализированным прецедентом;
• «include» (включить) – отношение между прецедентами, которое позволяет одному прецеденту включать в себя поведение другого;
• «extend» (расширить) – отношение между прецедентами, которое позволяет одному прецеденту расширять свое поведение одним или более фрагментами поведения другого.
Архитектурный анализ. Пакеты и пространства имен. Вложенные пакеты. Зависимости пакетов.
В архитектурном анализе взаимосвязанные классы анализа объединяются в ряд пакетов анализа. Затем организуются разделы и уровни. Каждый пакет анализа на определенном уровне – это раздел.
Одна из целей архитектурного анализа – попытаться минимизировать число взаимосвязей в системе. Сделать это можно тремя способами:
• сократить до минимума зависимости между пакетами анализа;
• сократить до минимума число открытых элементов в каждом пакете анализа;
• максимально увеличить число закрытых элементов в каждом пакете анализа.
Пакет – это UML_механизм группировки сущностей.
• Пакеты служат многим целям:
• группируют семантически взаимосвязанные элементы;
• образуют «семантическую границу» в модели;
• обеспечивают элементы управления конфигурацией;
• в проектировании они обеспечивают элементы для распараллеливания работы;
• предоставляют инкапсулированное пространство имен, в котором все имена должны быть уникальными – чтобы организовать доступ к элементу пространства имен, необходимо указать и имя
элемента, и имя пространства имен