Техническое проектирование
Техническое проектирование состоит в отображении архитектуры системы в среду функционирования и определении всех конструкций композиций компонентов архитектуры.
На этом этапе происходит привязка проекта к техническим особенностям платформы реализации: СУБД, ОС, коммуникации, скорость реагирования системы на внешние условия т.п.
Объекты модели анализа требований согласовываются с учетом перечисленных выше особенностей, формализуются все стимулы, которые посылают или получают объект, и все операции, которые являются ответом на указанные стимулы.
Любой аспект привязки может потребовать построения вспомогательных интерфейсных или управляющих объектов и корректировки существующих. Более того, может оказаться возможность использования готовых подсистем, устройство которых отличается от подсистем, которые были до сих пор определены на основании анализа требований. В этом случае вносятся соответствующие корректировки в модель анализа требований и в архитектуру системы.
Следующим шагом проектирования может быть учет определенных свойств, которые определяют возможность системы функционировать в другой среде, и обладать качеством, сформулированным заказчиком.
Переносимость системы. Под этим термином понимают возможность изменять определенные используемые сервисные системы (ОС, системы коммуникаций в сетях, СУБД, и т.п.) путем локальной настройки соответствующих модулей. Обычно речь идет о переносимости относительно конкретного типа сервисных систем, например, переносимость относительно СУБД, переносимость относительно системы файлов и т.п.
Для реализации таких свойств определяются объекты, которые взаимодействуют с сервисными системами, относительно которых декларируется переносимость. Любой определенный таким образом объект заменяется на объект, который взаимодействует не непосредственно с сервисной системой, а с некоторым абстрактным объектом-посредником, который осуществляет трансформацию абстрактного интерфейса в интерфейс конкретной сервисной системы. Объект-посредник при этом имеет свойство настраиваться на конкретную сервисную систему.