Вам понравился закон Брукса! 🥰
А ведь он такой не единственный. Есть еще, например, закон Конвея, которым со мной любезно поделилась Лена Гылыжова (опять).
И звучит он так:
«Любой программный продукт отражает организационную структуру, его создавшую».
Как и закон Брукса, закон Конвея удивительным образом применим не только в программировании, но и в других сферах деятельности. Иные источники утверждают, что с его помощью можно даже описать работу правительств. Настолько он емкий.
Но как работает? 🤔
Давайте представим: есть компания, разрабатывающая ПО и различные девайсы. И, допустим, команды поделены по принципу:
⁃ Одни занимаются мобилками
⁃ Вторые делают планшеты
⁃ Третьи клепают компы
Каждая команда работает в своей зоне ответственности. И на выходе телефоны получаются в форме слона, планшеты — в форме гуся, а компы вообще изображают хурму. Внутри — разные шрифты, меню устроены по-разному, телефоны не умеют снижать яркость экрана, а планшеты — умеют… Ну и так далее. Девайсы работают, ПО внутри тоже, но верится с трудом, что это все один бренд.
Такого не увидишь, например, в Apple. Дело в том, что команды внутри «яблока» разделены не по принципу «вы делаете айфон, а мы — айпад». Они организованы вокруг функциональных знаний: дизайна, разработки, маркетинга и так далее. Это обеспечивает единство и дизайна, и интерфейсов, и эксплуатации, и общего уровня качества всех девайсов компании.
А теперь тезис: организации, проектирующие системы, ограничены дизайном, который копирует структуру коммуникаций в этой организации. Чтобы отдельно взятый модуль ПО работал, несколько авторов должны часто общаться друг с другом. Поэтому структура ПО отражает социальные границы организации, которая это самое ПО выпустила.
Такие дела, господа. Может, вам приходит на ум еще какой-нибудь яркий пример, кроме Apple? Пишите! 🤩