АРХИТЕКТУРА С ТОЧКИ ЗРЕНИЯ УПРАВЛЕНИЯ

АРХИТЕКТУРА С ТОЧКИ ЗРЕНИЯ УПРАВЛЕНИЯ

Наиболее важным техническим продуктом проекта ПО является архитектура: инфраструктура, управление и интерфейсы данных, которые позволяют компонентам ПО функционировать в качестве единой системы, а разработчикам ПО эффективно трудиться в единой команде. Организация выверенного и точного взаимодействия между группами людей — это проблема на все времена для любой организации. Когда в средства взаимодействия входят множество языков и межгрупповые различия в грамотности, проблема взаимодействия может стать чрезвычайно сложной и даже неразрешимой. Для того чтобы команде разработчиков сопутствовал успех, взаимодействие в рамках проекта — как это отражено в архитектуре ПО — должно быть и выверенным, и точным.
С точки зрения управления существуют три различных аспекта архитектуры:.
1. Архитектура (неосязаемое понятие проекта) — это разработка программной системы в отличие от разработки компонента. В нее входят все виды работ, необходимые для определения полной спецификации рабочих продуктов. Принимаются значимые решения по вопросам покупки/создания, и все компоненты, изготовляемые на заказ, усовершенствуются таким образом, чтобы можно было с уверенностью оценить затраты на каждый отдельный компонент и затраты на создание/сборку.
2.
Базовая архитектура (осязаемые рабочие продукты) — это часть информации, распределенной по всем комплектам продуктов, касающимся разработки, достаточная, чтобы все заинтересованные стороны могли убедиться в том, что общая концепция системы (функции и качество) может быть реализована в рамках бизнес-плана (затраты, прибыль, время, технология, люди).
3.
Описание архитектуры (представление архитектуры в виде, пригодном для человеческого восприятия, что является одним из компонентов базовой архитектуры) — это организованное подмножество.
• информации, извлеченное из проектных моделей,. В него входит дополнительная специальная нотация (текстовая и графическая), которая необходима для прояснения информации, содержащейся в моделях. Описание архитектуры устанавливает соответствие того, как неосязаемое понятие реализуется в осязаемых материалах.
Эти определения довольно абстрактны, поскольку архитектура принимает различные формы в разных системных областях. В частности, число различных представлений и уровень детализации каждого представления могут варьироваться в широких пределах. Архитектура краткой справки, например, имеет более простую форму, чем архитектура полнометражного художественного фильма, хотя оба продукта могут являться различными формами представления биографии. Архитектура планера имеет более простую форму, чем архитектура тяжелого реактивного лайнера, хотя оба продукта — летательные аппараты. Похожим образом архитектура ПО системы контроля за движением в воздушном пространстве существенно отличается от программной архитектуры какого-либо маленького инструмента, предназначенного для разработки.
Важность архитектуры ПО и ее тесная связь с современными процессами разработки ПО могут быть сформулированы следующим образом:.
■ Создание устойчивой архитектуры ПО — значимая контрольная точка проекта, когда должны быть приняты все важные решения о покупке/создании. Это событие в жизненном цикле представляет собой переход от стадии разработки проекта, характеризующейся большой степенью неопределенности, к стадии производства, характеризующейся управлением по предсказуемому плану разработки.
■ Представление архитектуры является основой для достижения компромиссов между проблемной областью (требования и ограничения) и областью решений (рабочий продукт).
■ Архитектура и процесс заключают в себе множество важных (с высокой степенью риска и компромиссов) взаимоотношений между людьми, командами, организациями и посредниками.
■ Слабая архитектура и неразвитый процесс часто представляются как причины, по которым проект потерпел неудачу.
■ Развитый процесс, понимание основных требований и наглядная архитектура являются важными предпосылками для предсказуемого планирования.
■ Разработка архитектуры и описание процесса являются интеллектуальными шагами, которые приводят к решению проблемы без нарушения ограничений; они требуют творческого подхода и не могут быть автоматизированы.