Студопедия — Архитектурные образцы и стили
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Архитектурные образцы и стили






Архитектурный образцы (стили) в программном обеспечении — это аналоги архитектурных стилей, применяемых в строительстве зданий (например, известны готический стиль, стиль эпохи Возрождения, античные стили). Любой архитектурный образец состоит из нескольких ключевых характеристик и правил, которые в сочетании обеспечивают архитектурную целостность. Архитектурный образец определяется:

4* набором типов элементов (например, репозитария данных или компонента, вычисляющего математическую функцию);

♦ топологической схемой элементов, обозначающей взаимосвязь между ними;

♦ набором семантических ограничений (например, фильтры в составе стиля «каналы и фильтры» — это преобразователи данных; они постепенно преобразуют входящие потоки в выходящие, но при этом не располагают контролем над восходящими и нисходящими потоками элементов);

♦ набором механизмов взаимодействия (например, вызовов подпрограмм, событий-подписчиков, досок объявлений), регламентирующих координацию элементов в рамках установленной топологии.

Совсем недавно Мэри Шоу (Магу Shaw) и Дэвид Гарлан (David Garlan) попытались классифицировать набор архитектурных образцов, которые тогда назывались архитектурными стилями, или идиомами. Усилиями сообщества программных инженеров на основе результатов их исследований были сформулированы архитектурные образцы — по аналогии с образцами проектирования и образцами кодирования.

В своей работе [Shaw 96] Мэри Шоу выдвинула гипотезу о существовании высокоуровневых абстракций сложных систем, которые на тот момент не изучались и не классифицировались, — впрочем, аналогичная ситуация в тот момент складывалась во многих других инженерных дисциплинах.

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

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

вторичный стиль независимых элементов. У самих событийных систем два вторичных образца: неявный и явный вызов.

Какая связь между архитектурными образцами и тактиками? Как мы уже говорили, любую тактику следует рассматривать как фундаментальный «строительный блок» проектного решения, из которого, в свою очередь, выводятся архитектурные образцы и стратегии.

Заключение

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

Мы представили ряд распространенных тактик реализации шести проанализированных в главе 4 атрибутов качества: готовности, модифицируемости, производительности, безопасности, контролепригодности и практичности. Все рассмотренные тактики открыты и пользуются широкой известностью.

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

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

Дополнительная литература

Подробный анализ проблем безопасности содержится в работе [Ramachandran 02]; сведения о связи между практичностью и программно-архитектурными образцами есть в издании [Bass 01а], а о методиках обеспечения готовности в распределенных системах — в исследовании [Jalote 94]. [McGregor 01] — добротный источник информации о контролепригодности.

Двухтомный справочник по архитектурным образцам — [Buschmann 96] и [Schmidt 00] — содержит данные по образцам MVC и РАС (том 1) и программной архитектуре, ориентированной на образцы (том 2).

Дискуссии по поводу симплекс-архитектуры обеспечения готовности ведутся по адресу http://www.sei.cmu.edu/sirnplex/.

В работе [Bachmann 02] применение тактик рассматривается как основа для анализа модифицируемости и производительности; [Chretienne 95] содержит данные о концепциях теории планирования; в работе [Briand 99] предлагается обзор метрик сцепления.

Существует документация по различным образцам: «Модель-представление- контроллер» [Gamma 95], «Представление-абстракция-управление» [Buschmann 96], «Seeheim» [Plaff 85] и «Arch/Slinky» [UIMS 92].

Дискуссионные вопросы

1. Возьмем популярный веб-сайт — например, Amazon или eBay. Какие тактики имеет смысл рассмотреть при выборе архитектурных образцов и стратегий, реализующих требования к производительности, которые вы должны были перечислить в ответе на вопрос 3 в главе 4?

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

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

 

 







Дата добавления: 2015-04-16; просмотров: 633. Нарушение авторских прав; Мы поможем в написании вашей работы!



Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

СПИД: морально-этические проблемы Среди тысяч заболеваний совершенно особое, даже исключительное, место занимает ВИЧ-инфекция...

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

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

Опухоли яичников в детском и подростковом возрасте Опухоли яичников занимают первое место в структуре опухолей половой системы у девочек и встречаются в возрасте 10 – 16 лет и в период полового созревания...

Способы тактических действий при проведении специальных операций Специальные операции проводятся с применением следующих основных тактических способов действий: охрана...

Искусство подбора персонала. Как оценить человека за час Искусство подбора персонала. Как оценить человека за час...

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия