Поделиться через


Моделирование проекта

Если команда работает над большим проектом совместно с другими командами, исправление проблем, возникающих при интеграции кода, может оказаться дорогостоящим. Чтобы предотвратить возникновение таких проблем, команда разработчиков может с помощью моделей изучить принципы взаимодействия между компонентами и интеграции компонентов, прежде чем начинать написание кода.

Компоненты приложения

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

На поверхности компонента находятся его предоставляемые и требуемые интерфейсы. Предоставляемыми называются интерфейсы, которые могут использоваться другими компонентами. Требуемыми называются интерфейсы, соединяющий компонент с другими компонентами, от которых он зависим.

Схема компонентов UML с частями

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

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

Модели компонентов на каждой итерации должны быть детализированы настолько, насколько это полезно, не более. Для получения дополнительной информации см. UML-схемы компонентов: правила работы.

Взаимодействие между частями

Используйте схемы последовательностей для описания и обсуждения принципов действия компонента. Обозначьте каждый порт и каждую часть компонента линией жизни. На схеме можно показать, как внутренние части компонента взаимодействуют на соединениях между ними при получении сообщения на одном из портов родительского компонента.

Для получения дополнительной информации см. UML-схемы последовательностей: правила работы.

Интерфейсы компонентов

Составьте схемы классов, показывающие, какие типы доступны в интерфейсах между компонентами.

  • Начните с указания методов каждого интерфейса.

  • Затем укажите типы параметров и возвращаемых значений интерфейсов. Изобразите свойства в виде связей.

  • Если интерфейс отправляет XML-код или другие структуры данных, может иметь смысл изобразить эту структуру с помощью схемы классов UML.

Эти схемы бывают полезны при обсуждении поведения компонентов. Они также помогают при обсуждениях отделить поведение компонента, видимое извне, от его внутренней реализации.

Шаблоны разработки

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

См. также

Основные понятия

Моделирование архитектуры программной системы