Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
uml.docx
Скачиваний:
1
Добавлен:
26.09.2019
Размер:
328.34 Кб
Скачать
  1. Подсистемы. Подсистемы и интерфейсы. Шаблон «Facade».

Подсистема – это компонент, действующий как единица декомпозиции большой системы. Подсистемы изображаются как компонент со стереотипом «subsystem». Подсистема – это логическая конструкция, используемая для декомпозиции большой системы в управляемые части. Экземпляры самих

подсистем не могут создаваться во время выполнения, но могут создаваться экземпляры их содержимого.

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

Сокрытие сложных подсистем за хорошо структурированным простым интерфейсом известно как шаблон Фасад (Faсade) Структурирование системы

в подсистемы помогает снизить сложность. Общая цель проектирования – свести до минимума общение и зависимости между подсистемами. Один из способов достижения этой цели – введение фасадного объекта, предоставляющего единственный упрощенный интерфейс для наиболее общих возможностей подсистемы.Шаблон Фасад обеспечивает возможность сокрытия информации и разделения задач – сложные детали внутренней работы подсистемы можно спрятать за простым интерфейсом.

  1. Трехуровневая архитектура системы (схема архитектуры). Преимущества и недостатки интерфейсов.

Проектирование с использованием интерфейсов позволяет сократить число зависимостей между классами, подсистемами и компонентами и, следовательно, предоставляет возможность управлять количеством взаимосвязей в модели. Связанность (coupling) на самом деле является злейшим врагом разработчика объектов, поскольку высоко взаимосвязанные системы тяжело понимать, обслуживать и развивать. Соответствующее использование интерфейсов может помочь сократить связанность и разбить модель на связные подсистемы.

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

  1. Диаграммы взаимодействия при проектировании прецедента (добавить курс «uml» в бд ).

Проектная реализация прецедента – это взаимодействие проектных объектов и проектных классов, реализующих прецедент. Между аналитической и проектной реализациями прецедента установлено отношение «trace». Проектирование реализации прецедента определяет решения уровня реализации и реализует нефункциональные требования. Проектная реализация прецедента состоит из:

• проектных диаграмм взаимодействий;

• диаграмм классов, включающих участвующие в ней проектные

классы.

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]