Тайная жизнь слов. Архитектура, архитектоника, дизайн

Поясняющее вступление.
В течение своей жизни мы постоянно оперируем различными терминами. При этом, различия и противоречия в трактовках, истории применения и происхождения — порождают массу недоразумений, и вместе с этим, содержат много любопытного.

Знакомство с историей происхождение и употребления терминов могут пролить свет на любопытные грани смыслов.
Рассмотрим термины Архитектура и Дизайн в контексте информационных систем.

Значение и история.

Архитектура — у термина есть два исторических трактования: «основа строения» или «мастерство главного строителя». Таким образом в фокус попадают правила и личность их провозглашающая.

Архитектоника — наука об основах строительного дизайна, категоризированных принципах и подходах. Суть в именно в наукообразии. Роль личности не акцентируется. Редко применяется в практической литературе. Редкость упоминания этого термина делает размышления о его смысловых оттенках бесполезными.

Дизайн — план и/или соглашение о построении объектов и систем. Или процесс создания этого самого плана. Агент, формирующий дизайн — дизайнер так-же рассматривается, но однозначных утверждений о его главенстве не делается.

Политические различия

Архитектура исторически авторитарна. В строительстве, Архитектура достаточно тесно исторически связанна с особой ролью архитектора. В одном из древнейших правовых документов — Кодексе Хаммурапи — однозначно определяется персональная ответственность строителя за качество постройки:

Если строитель построил человеку дом и свою работу сделал непрочно, а дом, который он построил, рухнул и убил хозяина, то этот строитель должен быть казнен

Дизайн — более открыт в вопросах политики. Послание

Дизайн — это борьба за власть

встречается достаточно часто; вместе с этим, в русле размышлений о дизайне редко встретишь попытку выделить некоторую единственно-верную политическую модель.

Различия в подходах

Архитектура рассматривает проблематику в разрезе соответствия (фундаментальным?) принципам (догмам?). В этом смысле разница между двумя архитекторами — в том, как они формируют и трактуют свой список правил. Архитектурное сообщество раз за разом пытается создать каталогизированный набор готовых решений, паттернов, фреймворков, библиотек. Единая стройная система предписаний — в корне архитектурного подхода. «Правильный» способ построения систем — главный предмет бесед об Архитектуре

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

Различие в результатах

Архитектура порождает системы мировозрений. Сложные решения уже готовые для использованния и переиспользованния созданы в огромных количествах.

Вместе с этим, со временем, количество концепций, которые предлагается систематизировать — неумолимо возрастает:
10 нормальных форм реляционных СУБД,
9 паттернов GRASP,
5 принципов SOLID,
40+ паттернов Enterprise Application Architecture,
и так далее.

При этом стоить помнить, что все эти принципы, не обязательно теория, в научном (см. фальсифицируемость) смысле этого слова. Нечетких, открытых для интерпретации терминов и подходов достаточно. Авторы трактатов об Архитектуре достаточно редко утруждают себя обоснованием сделанного выбора.

В сообществе можно заметить формирование сравнительно изолированных непересекающихся групп, сконцентрированных вокруг авторитетных ораторов. Системы мировозрений основанные на различных недоказуемых утверждениях часто находятся в состоянии «холодной войны» — фундаментальные противоречия совмещенны с неспособностью опровергнуть оппонента.

Есть мнение, что архитектурные дебаты похожи на тайные речи жрецов.

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

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

Размышления о дизайне тяжело включить в свою каждодневную практику — что-то вам подойдет, что-то — провалится. Различия в контексте приведут к различиям в результате. Есть над чем подумать, но нечего завтра показать клиенту.

Многократные эксперименты с отбрасываемым результатом — поиск, сомнение, многовариантность — норма рассуждений о дизайне.

Итог
Несмотря на существенные различия между указанными смысловыми оттенками дизайна и архитектуры — оба термина активно используются до стадии смешения и взаимозамещения в дискуссиях о построении информационных систем.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

О, это концептуальный заход. :)

Я бы не был так пренебрежителен, в отношении архитектоники, т.к. это «мета». А уже всякие конкретные архитекторские задумки/решения/шаблоны — укладываются в ту или иную «мету».

В принципе, как о самолётах говорят: «чем самолёт эстетически-красивее — тем лучше летает». Примерно это же можно сказать и об архитектуре/коде. Код-уродец далеко не улетит...

И за эту эстетичность отвечает «мета». При этом, «меты» истребителя и, скажем, аэробуса различны (разные самолёты могут быть красивы, по-своему) — соответственно, в проектировании используются различные архитектуры, полее подходящие для той или иной «мета»

Да я не пренебрежителен, просто термин практически не встречается в разрезе информационных систем — не видно смысловых оттенков и коннотаций которые можно обсудить.
... когда-нибудь, архитектоника Wolfram Language будет «горячей» темой, но эти времена не настали)

Такие дела)

термин практически не встречается в разрезе информационных систем

Это потому, что кодерки (в основном) слишком примитивны и заточены на технику.

Уже на архитектуру, нужно смотреть «издалека». А на архитектонику — совсем «издалека». На такое кодерков не хватает. :)

Так и не понял из статьи в чем отличие; то ли я тупой, то ли автор писать не умеет.
Соглашусь только с тем, что архитектор должен брать ответственность за программный проект. Или кто-то должен. У меня в мире софта складывается впечатление, что большинство просто не считают ответственность вообще частью работы инженера.

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

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

Згідно з новою Книжкою Боба Мартіна «Clean Architecture: A Craftsman’s Guide to Software Structure and Design»
www.amazon.com/...​e-Structure/dp/0134494164
Архітектура і дизайн це тотожні поняття, в першому ж розділі він говорить, що різниці нема, взагалі.

Итог
Несмотря на существенные различия между указанными смысловыми оттенками дизайна и архитектуры

різниці нема, звісно, якщо ми говоримо про створення програмний продуктів.

А вот и Дядя Боб — он как раз из когорты относительно категоричных и приземленных товарищей архитекторов.
Раз в 5 лет он приносит «Еще Раз Обновленный Завет».
Светлое будущее, желательно с одним языком для всех.
Размышления вращаются вокруг компьютеров, языков программирования.
Всем SOLID.
При этом, тех, кто решит копнуть глубже, ждут сюрпризы при попытке расшифровать, например первую букву аббревиатуры — SRP
Новые идеи приветствуются, но я из тех, кто искренне надеется, что дяди Бобы не будут доминировать в дискурсе — это уже было с Мартином Фаулером, пожалуй, хватит.

Из альтернативных повествований стоит упомянуть Фредерика Брукса Младшего The Design of Design: Essays from a Computer Scientist.
Вам прийдется очень постараться чтобы найти в этой книге «самый правильный способ написания кода». Никаких пространных размышлений о языках и базах данных. Читатель ждущий предписаний, инструкций — найдет книгу пустой (каковой она не является); ищущий новой перспективы — не уйдет обделенным.

Сорян, але все ж до Боба Мартіна в мене більше довіри ніж до вас)

А вот и Дядя Боб — он как раз из когорты относительно категоричных и приземленных товарищей архитекторов.

Це трохи смішно читати, мужик працює овер 50 років в галузі і всякого бачив, на базі чого і сформулював best practices.

Раз в 5 лет он приносит «Еще Раз Обновленный Завет».
Светлое будущее, желательно с одним языком для всех.

Неправда, хз чого у вас склалось таке враження.

Ви пишете якісь дивні речі, які більше до філософії ніж до технології. В чому взагалі ідея цієї теми?

Сорян, але все ж до Боба Мартіна в мене більше довіри ніж до вас)

Я, собственно, не в обиде ;) - только это не я, а вы перевели беседу в плоскость веры.

Неправда, хз чого у вас склалось таке враження.

Ну, я слушаю и читаю Дядю Боба на протяжении лет. Фразу о том, что «нам бы остановиться с языками и сосредоточится на инструментах и IDE» он произносил не раз.

... більше до філософії ніж до технології

Так это — очевидно. Просто описал забавный нюанс в разнице между подходами.
Собственно, сравнив книжку Архитектора Дяди Боба и Дизайнера Фредерика Брукса — вы наверняка увидите именно то, что я описал: Архитектурщика сфокусированного на конкретных паттернах, и Дизайнера сфокусированного на «философии», как вы это называете.
Ну и Брукс тоже не примусы починял всю свою жизнь, если уж говорить об авторитетах.

Единственное замечание — не торопитесь считать «технологический» подход превосходящим «философский».

Если кто-то не считает интересной «философию» — эт не проблема)

TL;DR
Архитектура — стратегические решения
Дизайн — тактические

Автор подобных текстов должен прыгнуть в Апофету.

«...дабы дурь каждого видна была»

По-моему, срачи вокруг понятий в быту не нужны.
Если две стороны приблизительно понимают что каждый имеет ввиду под словом «абырвалг» — этого достаточно. Даже если значение отличается от словарного.

Если две стороны приблизительно понимают друг-друга, то это — праздник)

Підписатись на коментарі