Моделирование проекта
Если команда работает над большим проектом совместно с другими командами, исправление проблем, возникающих при интеграции кода, может оказаться дорогостоящим.Чтобы предотвратить возникновение таких проблем, команда разработчиков может с помощью моделей изучить принципы взаимодействия между компонентами и интеграции компонентов, прежде чем начинать написание кода.
Компоненты приложения
Схемы компонентов показывают взаимосвязь между различными частями приложения или компонента.Тип каждой части — еще меньший компонент.Компонентом может быть любая составляющая — от отдельного объекта до сложной системы, а связи между компонентами могут представлять вызовы методов, оповещения о событиях, вызовы веб-служб и т. д.
На поверхности компонента находятся его предоставляемые и требуемые интерфейсы.Предоставляемыми называются интерфейсы, которые могут использоваться другими компонентами.Требуемыми называются интерфейсы, соединяющий компонент с другими компонентами, от которых он зависим.
С помощью требуемых интерфейсов можно представить компонент, отделяемый как от использующих его компонентов, так и от используемых им.Четкое понимание этих принципов разделения необходимо, чтобы команда могла протестировать изолированный компонент, подсоединив макеты объектов к требуемым интерфейсам.
Четкое описание требуемых интерфейсов часто обеспечивает гибкость схемы и четкость ее разделения на элементы.После реализации компонентов их легко совместить в систему, что повышает гибкость возможностей реагирования на изменения требований.
Модели компонентов на каждой итерации должны быть детализированы настолько, насколько это полезно, не более.Дополнительные сведения см. в разделе UML-схемы компонентов: правила работы.
Взаимодействие между частями
Используйте схемы последовательностей для описания и обсуждения принципов действия компонента.Обозначьте каждый порт и каждую часть компонента линией жизни.На схеме можно показать, как внутренние части компонента взаимодействуют на соединениях между ними при получении сообщения на одном из портов родительского компонента.
Дополнительные сведения см. в разделе UML-схемы последовательностей: правила работы.
Интерфейсы компонентов
Составьте схемы классов, показывающие, какие типы доступны в интерфейсах между компонентами.
Начните с указания методов каждого интерфейса.
Затем укажите типы параметров и возвращаемых значений интерфейсов.Изобразите свойства в виде связей.
Если интерфейс отправляет XML-код или другие структуры данных, может иметь смысл изобразить эту структуру с помощью схемы классов UML.
Эти схемы бывают полезны при обсуждении поведения компонентов.Они также помогают при обсуждениях отделить поведение компонента, видимое извне, от его внутренней реализации.
Шаблоны разработки
С помощью моделей также удобно описывать многократно используемые шаблоны проектирования.Как и в случае, например, с шаблоном Observer ("наблюдатель"), используемым во множестве различных приложений, во многих проектах возникают конфигурации объектов, имеющие полезные свойства.С помощью схем классов и последовательностей можно описывать взаимодействие между классами.