![]() КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Отношения между структурами
Все вышеперечисленные структуры предполагают различные представления и подходы к проектированию системы; все они эффективны и полезны сами по себе. В то же время они не самостоятельны. Элементы одной структуры связаны с элементами прочих, и на эти отношения следует обратить внимание. В частности, модуль в структуре декомпозиции может декларироваться как отдельный компонент, как часть отдельного компонента или как несколько компонентов в рамках одной из структур «компонент и соединитель», отражая, таким образом, своего представителя периода прогона. Как правило, между структурами устанавливаются отношения «многие ко многим». Иногда в рамках отдельных проектов одна структура считается основной, а остальные структуры, если это возможно, определяются в ее категориях. Часто, хотя и не всегда, в качестве доминантной структуры выступает декомпозиция модулей. Объясняется это вполне разумно — декомпозиция модулей порождает структуру проекта. В главе 4 представлены сценарии, которые помогают развивать отдельные структуры и их связи с другими структурами. К примеру, если разработчик программного обеспечения желает внести в клиент-серверную структуру системы какие-то изменения, он должен учитывать представления процессов и размещения: дело в том, что клиент-серверные механизмы, как правило, задействуют процессы и потоки, а физическое распределение реализует различные механизмы управления, которые оказываются необходимы в случае локализации упомянутых процессов на одной машине. При необходимости изменения механизмов управления оценить степень их корректировки помогают представление декомпозиции модулей и многоуровневое представление. Не все системы гарантируют учет различных архитектурных структур. Чем крупнее система, тем существеннее различие между этими структурами; впрочем, если речь идет о небольшой системе, обойтись, как правило, можно минимальными средствами. Вместо нескольких структур «компонент и соединитель» хватит одной. Если процесс в системе всего один, то структуру процессов можно свести к единичному узлу, который по мере проектирования не нужно будет сопровождать. Если распределение не планируется (все операции будут производиться на одном процессоре), необходимость в структуре размещения отпадает. Структуры — это основные базовые точки конструирования архитектуры. Отдельные структуры отвечают за те или иные атрибуты качества. Они выражают принцип разделения задач при создании архитектуры (а также при ее последующем анализе и изложении для заинтересованных лиц). На материале главы 9 мы покажем, что структуры, отобранные архитектором на роль отправных точек конструирования, одновременно обеспечивают основу для документирования архитектуры. Какие структуры выбрать? Мы привели краткий обзор ряда полезных архитектурных структур, однако на самом деле их значительно больше. С какими из них архитектору имеет смысл работать? Какие архитектор должен задокументировать? Ну конечно, не все. Недостатка в советах не наблюдается. В 1995 году Филипп Крюхтен (Philippe Kruchten) [Kruchten 95] опубликовал очень важную статью, в которой понятие архитектуры описывается в категориях составляющих ее структур; в ней же он советует сосредоточиться на четырех структурах. Для того чтобы удостовериться, что структуры не конфликтуют друг с другом, а, вместе взятые, действительно описывают удовлетворяющую всем требованиям систему, Крюхтен посоветовал обратиться к основным элементам Use Case. Этот метод, получивший название «4+1», стал довольно популярен, а впоследствии выступил в роли концептуальной основы рационального унифицированного процесса (Rational Unified Process, RUP). О каких именно представлениях рассуждает Крюхтен? ♦ Логическое представление. Элементы — это «ключевые абстракции», которые в контексте объектно-ориентированной технологии декларируются в качестве объектов и классов объектов. Это — модульное представление. ♦ Процесс. Это представление связывается с параллелизмом и распределением функций. Оно тождественно представлению «компонент и соединитель». ♦ Разработка. Это представление отражает организацию программных модулей, библиотек, подсистем и единиц разработки. Речь идет о представлении распределения, которое отображает программное обеспечение на среду разработки. ♦ Физическое представление. Отображая прочие элементы на узлы обработки и связи, оно также относится к представлению распределения (которое иногда называют представлением размещения). Примерно в то же время, когда свою работу выпустил Крюхтен, другие исследователи — Сони, Норд и Хофмайстер [Soni 95] — опубликовали весьма заметную статью, в которой описывали структуры, довольно популярные среди архитекторов их компании. Речь шла о концептуальном представлении, представлениях соединения модулей и исполнения, а также о кодовом представлении. Они, опять же, точно соответствуют моделям модулей, распределения и «компоненту и соединителю». За ними последовали другие работы, и список доступных структур стал быстро расширяться. Использовать все эти структуры, конечно, не стоит, хотя, с другой стороны, они по большей части присутствуют в конструируемых системах. Не забывайте, что от архитектора, помимо прочего, требуется понимать, каким образом различные структуры обеспечивают реализацию атрибутов качества; именно из этого соответствия и следует исходить, составляя перечень подходящих структур. В главе 9, рассуждая об архитектурном представлении, мы намерены более полно раскрыть суть этого принципа.
Дата добавления: 2015-04-25; Просмотров: 579; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |