Гибкая архитектура - Википедия - Agile Architecture

Гибкая архитектура означает, как предприятие / система / архитекторы программного обеспечения применять архитектурную практику в гибкая разработка программного обеспечения. Ряд комментаторов выявили противоречие между традиционной архитектурой программного обеспечения и гибкими методами по оси адаптации (принятие архитектурных решений до последнего возможного момента) и ожиданием (предварительное планирование) (Kruchten, 2010).[1]

Уотерман, Нобель и Аллан (2015)[2] исследовали противоречия между тратой слишком мало времени на проектирование предварительной архитектуры, увеличением риска и тратой слишком большого количества времени, что отрицательно сказывается на предоставлении ценности клиенту. Они определяют шесть факторов, которые могут повлиять на гибкую архитектуру: нестабильность требований, технический риск, ранняя ценность, командная культура, гибкость и опыт клиентов. С этими силами можно бороться с помощью шести стратегий: реагирование на изменения, устранение рисков, возникающая архитектура, масштабный дизайн заранее и использование. рамки и архитектуры шаблонов.

Было сделано несколько попыток определить, что составляет гибкий подход к архитектуре. Согласно Безопасный framework, принципы гибкой разработки архитектура находятся:[3]

  1. Появляется дизайн. Архитектура это сотрудничество. (преднамеренная архитектура)
  2. Чем больше система, тем длиннее взлетно-посадочная полоса (архитектурная взлетно-посадочная полоса)
  3. Создайте простейшую архитектуру, которая может работать (установленные принципы проектирования)
  4. В случае сомнений закодируйте или смоделируйте его (модели шипов, прототип, предметная область и варианты использования)
  5. Они строят это, они тестируют (дизайн для проверки)
  6. Нет монополии на инновации (команды, хакатоны) - кнопка «Нравится» в Facebook была задумана как часть хакатона.
  7. Реализуйте архитектурный поток (архитектурные эпосы и канбан портфолио) - портфолио, через которое проходит Канбан воронка, обзор, анализ, портфель невыполненных работ и внедрение

На Архитектура предприятия уровень, Скотт Эмблер (2016)[4] предлагает следующие принципы

  • Эволюционное сотрудничество окончено чертеж
  • Коммуникация важнее совершенства
  • Активное участие заинтересованных сторон
  • Корпоративные архитекторы являются активными участниками команд разработчиков
  • Разрешение на инспекцию (экземпляры)
  • Модели высокого уровня (чем сложнее, тем абстрактнее)
  • Сохраняйте детали с помощью рабочего кода
  • Бережливое руководство и правила, а не бюрократические процедуры
  • Создайте команду опытных корпоративных архитекторов

Святослав Котусев выделяет следующие измерения «маневренности». Архитектура предприятия:[5]

  1. Гибкость стратегического планирования,[6][7] включая такие аспекты, как (а) общее количество времени и усилий, затрачиваемых на стратегическое планирование, (б) объем организации, охватываемый стратегическим планированием, (в) временной горизонт стратегического планирования и (г) то, как точно определяется желаемое будущее
  2. Ловкость инициативной доставки,[6][7] включая такие аспекты, как (а) логический поток реализации инициативы и (б) объем артефактов EA, разработанных для инициатив, т. е. обзоры решений и проекты решений[8][9]
  3. Гибкость распределения финансов, включая такие аспекты, как (а) состав корпоративных инвестиционных портфелей ИТ и (б) структура процессов бюджетирования
  4. Гибкость управления архитектурой, включая такие аспекты, как (а) формальность процессов принятия решений и (б) соблюдение утвержденных планов.
  5. Гибкость архитектурной функции, включая такие аспекты, как (а) соотношение архитекторов в общей численности ИТ-персонала и (б) степень участия архитекторов в ИТ-проектах.
  6. Гибкость других элементов, включая такие аспекты, как (а) уровень технической стандартизации и (б) сложность используемых программных инструментов.

Рекомендации

  1. ^ Крухтен, П. (2010). Архитектура программного обеспечения и гибкая разработка программного обеспечения - столкновение двух культур? Материалы 32-й Международной конференции ACM / IEEE по программной инженерии
  2. ^ Уотерман, Нобель и Аллан. (2015). Сколько впереди? Обоснованная теория гибкой архитектуры. В материалах 37-й Международной конференции по программной инженерии
  3. ^ Леффингуэлл, Дин (10.07.2008). «Гибкая архитектура - теперь официальный документ». Масштабирование гибкости программного обеспечения. Получено 2017-02-06.
  4. ^ Эмблер, С. (2016). Гибкая архитектура предприятия - дисциплинированные и прагматичные стратегии. [видео] Получено с: https://www.youtube.com/watch?v=AaIiG73QE3c
  5. ^ «Что такое гибкая архитектура предприятия?», Котусев С., июнь 2020 г.
  6. ^ а б «Практика корпоративной архитектуры на странице», Котусев, С., ноябрь 2019 г.
  7. ^ а б «Процессный взгляд на практику архитектуры предприятия», Котусев, С., сентябрь 2019 г.
  8. ^ «Архитектура предприятия на странице», Котусев, С., декабрь 2018 г.
  9. ^ «Восемь важных артефактов архитектуры предприятия», Котусев С., Февраль 2017 г.