Organization: A Tool for Software Architects • Eberhard Wolff • GOTO 2021
Интересное выступление с goto конференции, посвященное связи архитектуре и тому, как она связана с происходящим в организации. Автор для начала рассказывает про закон Конвея "Организации проектируют системы, которые копируют структуру коммуникаций в этой организации" (1967 год). А дальше рассказывает про обратный маневр Конвея (2012 год), который собственно и показывает как можно использовать организацию как инструмент для архитекторов:) Дальше история развивается в сторону customer-supplier взаимодействия команд внутри компании - это один из паттернов взаимодействия команд, который разбирается в DDD, подробнее можно почитать в моем кратком саммари книги Влада Хононова "What is DDD". Дальше автор доклада делает следующие выводы и задает следующие вопросы
- Organization must be defined -> coarse-grained architecture
- Managers work on organization & (organization = architecture) -> (architects == managers)? - но тут автор отвечает, что в законе Конвея не про оргсхему, а про коммуникации в организации
- Communiction is a tool for architects - вывод из предыдущего размышления. Тут же появляется история про CoP (Community of Practiice), которое у нас в Tinkoff реализуется через институт профессий, у которых есть свои лидеры, общие встречи, задачи улучшения общих инструментов и практик
Дальше автор рассказывает про книгу "Accelerate", из которой он делает вывод, что на замену старому подходу к архитектуре, где все решения принимает архитектор, должен прийти новый, где "what is important is enabling teams to make changes to their products or services without depending on other teams or systems". В этой концепции architec enable others:) Потом автор вспоминает про концепцию коллаборативных игр и конкретно игру "Pandemic", где все участники уж точно в одной лодке и побеждают или проигрывают вместе - так должно быть и в IT проектах:)
Где-то в середине выступления автор доходит до слайда Architects shouldn't do architecture! Вместо этого он предлагает архитектору помогать распространению знаний и дальнейшему их adoption в рамках работы. Дальше пример с проведением вокршопов с kata/dojo и дальше поддержки команд, что пробуют новое. Преимуществами воркшопа автор называет
- распространение знаний о новых техниках
- распространение знаний о вызовах и решениях
- улучшение коллаборации команд
Ну и заканчивается все обсуждением культурных вопросов и проблем
- Когда на обсуждении новой идеи люди говорят "Well, just tell us how you want us to work" - здесь проблема с тем, что так не работает, работа над новой идеей - это совместная работа и если люди просто спрашивают "что им нужно делать", то значит они не купили вашу идею
- Шаринг бизнес-целей и стратегии с архитекторами, например по причине секретности - ну тут сложно что-то улучшать, если не понятна цель
- Социальные организации не являются детерминисткими - наши действия не всегда приводят к предсказуемому результату. Автор приводит пример с неудавшейся реорганизацией, которая не повлияла на потоки коммуникации
В заключении автор заканчивает следующими тезисами
- establishing communication = supporting architecture
- training + consulting = fine-grained architecture
#Architecture #SoftwareArchitecture #Architect #Conference #SoftwareDevelopment #Software #Management