пятница, 25 сентября 2026 г.

[prog.question] А что сейчас понимают под "архитектурой программного обеспечения"?

В контексте пришествия ИИ в разработку софта регулярно приходится слышать о том, что мол человеку не придется больше писать код, это как раз будет делать ИИ-шка, но вот за человеком останется архитектура программного обеспечения.

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

Как бы вопрос не праздный, поскольку последние лет 10, а может и побольше, мне приходится, в основном, колупаться в коде: искать проблемы, что-то переписывать, что-то дописывать, что-то выбрасывать и т.д, и т.п. Но уже давно не доводилось заниматься проектированием "по большому", типа того, что здесь у нас будет такая-то СУБД и в ней будет храниться то-то и то-то, здесь у нас будет такой компонент, который с БД будет общаться напрямую, а здесь вот такой компонент, который будет общаться не с БД, а с первым компонентом, а здесь у нас будет вот такой компонент, который будет вот так-то следить за первыми двумя компонентами, а здесь будет еще вот это и вот это... В последние годы если что-то и приходится проектировать, так это небольшие библиотеки или даже отдельные классы, которые упрощают те или иные задачи.

Складывается впечатление, что под "архитектурой ПО" подразумевается рисование квадратиков и связей между ними, как это принято делать на system design interview, где соискателя просят "спроектировать" очередной клон Facebook-а или YouTube.

Если я прав, то непонятно почему кто-то надеется, что ИИ не заберет эту задачу у человека точно так же, как забирает обычное кодирование.

В общем, кому не жаль времени, просвятите, пожалуйста, старого пердуна отставшего от трендов лисапедостроителя, что же сейчас попадает под термин "архитектура ПО" и понимается под "проектирование архитектуры"?

Комментариев нет: