Как же хороший архитектор справляется со всеми этими требованиями? Ранее мы уже упоминали о необходимости деления системы на структуры, каждая из которых определяет конкретные отношения среди определенных типов компонентов. Основная задача архитектора – структурировать систему таким образом, чтобы каждая структура помогала ответить на определяющие вопросы одного из концептуальных требований. Ключевые структурные решения разделяют продукт на компоненты и определяют отношения между этими компонентами (Bass, Clements, and Kazman 2003; Booch, Rumbaugh, and Jacobson 1999; IEEE 2000; Garlan and Perry 1995). Для любого продукта существует много структур, которые необходимо спроектировать. Каждая структура проектируется по отдельности, чтобы она могла рассматриваться как отдельное концептуальное требование. В нескольких ближайших разделах рассматриваются некоторые структуры, которые могут использоваться для требований из списка. Например, структуры сокрытия информации показывают, как система делится на рабочие задания. Они также могут использоваться в качестве плана изменений: для каждого предполагаемого изменения указывается, в какие модули эти изменения будут вноситься. Для каждой структуры описываются компоненты и отношения между ними, определяющие структуру. Для концептуальных требований из нашего списка самыми важными мы считаем именно перечисленные ниже структуры.
No related posts.