Кто такой Systems architect?

Возник вопрос. Что это за фрукт? Везде пишут абстракциями. Так чем же он должен заниматься?

Было бы интересно видеть статью об этой профессии.


Ну а самое главное — что должно быть на выходе? Какой-то документ? Архитектура? В каком виде? До какой глубины должен быть продуман дизайн продукта?


Я видел людей, называющих себя system architect и получающих за это большие деньги, работа которых заканчивалась парой-тройкой картинок наподобие таких:

Three-tier_architecture.ru.svg
Figure97a.jpg


Неужели это всё?


Должен ли он рисовать UML-диаграммы? Если да, то с какой детализацией?


Если судить с аналогией с Архитектурой, то Архитектор — тот кто полностью спроектировал дом, а еще лучше — мост? Вплоть до кол-ва кирпичей, материала, физических вложений? Должен ли такой архитектор знать сопромат, чтобы его мост не разрушился? Да и вообще… программисты — кто они тогда в такой аналогии? Строители, которые должны хорошо класть кирпичи, или кто-то больше?
  • Вопрос задан
  • 22848 просмотров
Пригласить эксперта
Ответы на вопрос 6
@s0rr0w
Архитектор — это человек, который выбирает способ решения задачи.

Допустим, нужно выбрать базу данных для хранения. Задача архитектора — определиться с выбором, это будет MySQL, PostrgeSQL, Oracle, MS SQL или что-то более экзотическое, а может и NO SQL; выбрать объем допустимых фич, которые можно использовать; определиться с форматами хранения данных; сформировать основные принципы формирования структур таблиц. Т.е. фактически все до конечной реализации в коде.

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

Архитектор может разрабатывать API у всевозможных систем.
Ответ написан
Комментировать
charon
@charon
моё понимание: системный архитектор в разработке ПО — это такой работник, который выбирает способ воплощения сложных фантазий заказчика и главное держит всю систему в голове в целом, не давая ей развалиться, когда разработчики начинают свою работу. Большинство задач заказчика не стоят внимания архитектора, но когда требуются радикальные изменения в фундаментальных частях системы, то необходима консультация архитектора. UML-диаграммы — да, должен рисовать. Архитектор должен находить общий язык с программистами на любом языке и технологии, а более универсального языка, чем UML, пока для этого не придумали.
Ответ написан
Комментировать
Funcraft
@Funcraft
Я извиняюсь, что не совсем по теме, но вы сейчас получили стопку мнений, не подкреплённых ни стандартами, ни какими-то документами. Т.е. чёткого представления также, скорее всего не получите.

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

Грубовато получилось, но смысл, думаю, передал.
Ответ написан
Wott
@Wott
Результатом работы должен быть документ — system design или что-то похожее.
В нем должно быть описано как устроена система с точностью до очевидного ( вообще или для разработчиков в данной команде ). Это может быть и схема типа того что в топике, если указанные кружочки и квадратики известные команде кирпичики. Но вообще должен содержать
1. общую схему компонент
2. описание компонент — технологии, вендор, критичные параметры, необходимые фичи
3. описание взаимодействия компонент, если надо диаграммы
4. расчеты производительности, нагрузки, предельные параметры
5. расширяемость. возможные пути улучшения критичных параметров
и по хорошему каждое утверждение или выбор должны быть обоснованы, если не навязаны сверху
Ответ написан
javax
@javax
Software Architect, Java Developer since 1996
Ну вот я архитектор.
Вначале проекта вместе с опытными программистами придумал архитектуры приложения, high level design, определил основные технологии.

Что то решал сам, что то вместе с опытными программистами.

Сейчас пишу код вместе со всеми, но в основном разные части инфраструктуры, занимаюсь производительностью
Ответ написан
@SerP1983
Мне вот это описание понравилось. Только по этой ссылке software architect описывается. Кто-нибудь сможет пояснить разницу между system и software архитектором?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы