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

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

Введение. Вероятно, вы уже привыкли к тому, что архитектура рассматривается нами как нечто подконтрольное архитектору






Вероятно, вы уже привыкли к тому, что архитектура рассматривается нами как нечто подконтрольное архитектору. Мы показали, как путем принятия архитектурных решений (а в части 3 речь пойдет об анализе этих решений) реализуются задачи и требования, предъявляемые к разрабатываемой системе. Но есть и альтернативный вариант развития событий. Предположим, что перед нами существующая система, архитектура которой нам неизвестна. Возможно, разработчики архитектуры решили не утруждаться ее документированием. Может быть, документация утеряна. Наконец, возможен и такой вариант, при котором после Ряда модификаций исходная архитектура уже не соответствует фактическому Состоянию системы. Что делать с сопровождением такой системы? Как контролировать ее развитие, как сохранить соответствие ее архитектуры (что бы она собой ни представляла) предъявленным к системе требованиям по качеству?

Ответы на перечисленные вопросы дает представленная в настоящей главе методика реконструкции архитектуры (architecture reconstruction), которая позволяет восстановить «фактическую» (as-built) архитектуру реализованной системы исходя из ее современного состояния. Для этого с помощью определенных инструментальных средств, которые собирают информацию о системе, последовательно строят и группируют уровни абстракции, проводится детальный анализ системы. Если инструменты успешно справляются со своей задачей, в конечном итоге мы получаем архитектурное отображение, дающее возможность строить о системе некие умозаключения. Иногда сгенерировать сколько-нибудь пригодное отображение не удается. В частности, это характерно для устаревших систем, в которых связного архитектурного решения не предполагалось изначально (впрочем, такой вывод полезен сам по себе).

Реконструкция архитектуры является интерпретирующим, интерактивным и итеративным процессом; она состоит из многочисленных операций и не является автоматической. В ее проведении должны принимать участие специалист по обратной разработке и, поскольку архитектурные конструкции не находят явного отражения в исходном коде, архитектор (или иной специалист, обладающий достаточными знаниями об архитектуре). В языках программирования отсутствуют конструкции, соответствующие «уровню», «соединителю» и прочим архитектурным элементам; следовательно, вычленить их из файла с исходным кодом непросто. Что касается архитектурных образцов, то они, если и используются, редко каким-либо образом обозначаются. Архитектурные конструкции отражаются в реализации через самые разнообразные механизмы — как правило, это коллекции функций, классов, файлов, объектов и т. д. Во время первоначальной разработки системы осуществляется отображение ее высокоуровневых проектных/архитектурных элементов на элементы реализации. Таким образом, при реконструкции этих элементов требуется провести обратное отображение, а для этого необходимы определенные познания в области архитектуры. Не менее важную роль играет владение конструктивными методиками компиляторов и утилитами наподобие grep, sed, awk, peri, python и lex/yacc.

Существует несколько вариантов применения результатов архитектурной реконструкции. Если документация отсутствует или устарела, то на базе восстановленного архитектурного отображения систему можно документировать заново (см. главу 9). Кроме того, после реконструкции фактической (as-built) архитектуры ее можно сравнить с проектной (as-designed) архитектурой. По итогам этой проверки мы можем убедиться в том, что специалисты по сопровождению (или, если уж на то пошло, разработчики) следуют «заповедям» архитектуры и не подрывают ее основ, разрушая абстракции, сводя воедино разные уровни, нарушая принцип информационной закрытости и т. д. По результатам реконструкции можно проводить архитектурный анализ (см. главы 11 и 12) или приводить систему в соответствие с новой версией архитектуры. Наконец, полученное отображение помогает выявлять элементы, допускающие повторное использование, и определять линейки продуктов на основе архитектуры (см. главу 14).

Методика архитектурной реконструкции нашла применение в самых разных проектах — oт измерителей магнитного резонанса до автоматических телефон-коммутаторов и от вертолетных навигационных систем до засекреченных "|,lN Л, NASA. Помимо прочего, она использовалась для:

+ повторного документирования архитектур систем физического моделирования;

+ выявления архитектурных зависимостей во встроенных системах управления горным оборудованием;

+ опенки соответствия реализации наземной станции из системы спутниковой связи эталонной архитектуре;

+ описания различных систем в автомобильной промышленности.







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



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

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

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

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

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

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

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

Вопрос. Отличие деятельности человека от поведения животных главные отличия деятельности человека от активности животных сводятся к следующему: 1...

Расчет концентрации титрованных растворов с помощью поправочного коэффициента При выполнении серийных анализов ГОСТ или ведомственная инструкция обычно предусматривают применение раствора заданной концентрации или заданного титра...

Психолого-педагогическая характеристика студенческой группы   Характеристика группы составляется по 407 группе очного отделения зооинженерного факультета, бакалавриата по направлению «Биология» РГАУ-МСХА имени К...

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