Студопедия — ДОКУМЕНТАЦИЯ КАК ВВЕДЕНИЕ В ПРОГРАММНУЮ АРХИТЕКТУРУ
Студопедия Главная Случайная страница Обратная связь

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

ДОКУМЕНТАЦИЯ КАК ВВЕДЕНИЕ В ПРОГРАММНУЮ АРХИТЕКТУРУ






Однажды мне довелось делать презентацию атрибутного метода проектирования (Attribute Driven Design, ADD; см. главу 7). Заказчики — представители одного из подразделений крупной производственной компании — видели в действии большинство наших разработок: метод анализа компромиссных архитектурных решений (АТАМ, см. главу 11), реконструкцию (глава 10), а также наши предложения по линейкам продуктов (глава 14). Закончив вещать, я, весьма довольный собой, ждал реакции.

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

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

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

Представители заказчика высказали иную точку зрения. Документирование программной архитектуры они рассматривали как идеальное упражнение для разработчиков. По их мысли, если уж разработчикам все равно приходится заниматься документацией, то почему бы не составить для нее шаблон? В процессе заполнения им бы пришлось документировать разные представления (кстати, одной из наших задач было выбрать наиболее полезные для заказчика представления) и обсуждать пути удовлетворения проектируемым артефактом тех или иных задач по качеству. Таким образом, по мере составления документации они смогли бы углублять свои знания в области архитектуры.

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

-LJB

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

Таблица 9.1. Заинтересованные лица и их коммуникативные потребности, удовлетворяемые архитектурой1

 

Заинтересованные лица Способы применения
Архитектор и представляющие заказчика разработчики требований Обсуждение конфликтующих требований и поиск компромиссов
Архитектор и проектировщики составляющих систему элементов Разрешение состязаний за ресурсы, составление бюджета производительности и других бюджетов потребления ресурсов периода прогона
Конструкторы Установление жестких ограничений применительно к нисходящим операциям разработки (и допустимых вольностей)
Тестировщики и сборщики Регламентация корректного поведения совмещаемых элементов при тестировании методом «черного ящика»
Специалисты по сопровождению Выявление областей влияния предполагаемых изменений
Проектировщики сторонних систем, взаимодействующих с рассматриваемой системой Установление набора предоставляемых и требуемых операций, а также определение протокола их исполнения
Специалисты по атрибутам качества Разработка модели, выступающей в качестве основы для функционирования аналитических инструментов: частотно-монотонного анализа возможности планирования в реальном времени, моделирования, имитационных генераторов, программ доказательства теорем, верификаторов и т. д. Подобные средства оперируют информацией о потреблении ресурсов, политиках планирования, зависимостях и т. п. Информации, содержащейся в документации архитектуры, должно быть достаточно для оценки различных атрибутов качества: безопасности, производительности, практичности, готовности и модифицируемости. Для анализа каждого из этих атрибутов характерны индивидуальные информационные потребности
Руководители   Руководители линеек продуктов   Группа контроля качества Формирование групп разработчиков согласно установленному распределению функций, планирование и распределение ресурсов проекта, контроль действий, выполняемых различными группами   Установление принадлежности или отклонения потенциального члена семейства продуктов от их области действия; при необходимости — определение степени отклонения Подготовка к проверке соответствия, призванной подтвердить соблюдение конструкторами архитектурных директив

 







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



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

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

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

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

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

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Разработка товарной и ценовой стратегии фирмы на российском рынке хлебопродуктов В начале 1994 г. английская фирма МОНО совместно с бельгийской ПЮРАТОС приняла решение о начале совместного проекта на российском рынке. Эти фирмы ведут деятельность в сопредельных сферах производства хлебопродуктов. МОНО – крупнейший в Великобритании...

ОПРЕДЕЛЕНИЕ ЦЕНТРА ТЯЖЕСТИ ПЛОСКОЙ ФИГУРЫ Сила, с которой тело притягивается к Земле, называется силой тяжести...

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