Написать нам
Категория: Кодирование
04.02.2020

Solution Architect: Кто Это и Какие у Него Обязанности

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



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



Поэтому, в любой компании, которая нацелена на развитие, развита архитектура решений. Это практика проектирования, описания и управления решениями в зависимости от задач и проблем бизнеса.



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

Из чего состоит архитектура программного продукта



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







В первой из них основной фокус – построение экосистемы и решение стратегических проблем высшего уровня (объединение ключевых требований, анализ потоков данных и т.д.). Бизнес архитектура приводит к понимаю того, какие техническая средства необходимы для поддержания программного продукта.



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



Технологическая архитектура включает в себя инженерные проблемы. Иными словами, это аппаратная составляющая программного продукта. Она описывает системное ПО, стандарты на программно-аппаратные средства, системы управления и т.д.



Исходя из этого мы видим, что в ИТ архитектуре есть три соответствующих уровня должностей – Enterprise Architect (EA), Solution Architect (SA) и Technical Architect (TA).

Роль архитектора решений



Можно совсем кратко описать разницу в работе трех архитекторов:







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





Роль архитектора решений в структуре проекта


От действий архитектора решений зависит скорость разработки программного продукта, а это самое важное. Почему? Чем быстрее будет выполнена задача, тем меньше будет затрачено средств. Из этого вытекает второй пункт, за который отвечает архитектор решений – решить проблему в рамках бюджета.



Кроме того, именно архитектор решений отвечает за соблюдение всех требований в ходе разработки. Он же должен изучить ограничения проекта, чтобы проанализировать допустимые альтернативы и снизить риски.



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

Какими навыками должен обладать архитектор решений



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



Экспертная коммуникация. Роль SA – обеспечить выполнение проекта в срок. Поэтому он должен быть в состоянии четко донести технические аспекты, риски, проблемы и преимущества каждого решения.



SA – это центральный элемент для всех сторон, вовлеченных в решение, от бизнес-аналитиков и до разработчиков. Соответственно, он должен уметь объяснить выбранные подходы на всех уровнях. При этом, ему необходимо обладать человеческими качествами для предоставления советов и объяснений, ведения переговоров и оказания положительного влияния.



Управление рисками. Как снизить риски? Необходимо уметь пользоваться тестами производительности, безопасности, взаимодействия с пользователем и другими. Если SA не способен проанализировать показатели подобных тестов, то его работа окажется безуспешной.



Технические знания. SA не сможет дать совет или объяснить какое-то решение, если он не обладает достаточными знаниями в технических аспектах проекта. Такая должность подразумевает понимание всех технических дисциплин, которые задействованы в разработке.



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



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



Аналитические навыки. Разработка решений требуют понимания того, как связаны различные части бизнеса. Потому SA должен разобраться в корпоративной стратегии и реализовать все бизнес-процессы, которые определяют способы достижения целей компании. Таким образом, архитектор решений постоянно должен проводить аналитическую работу на разных уровнях бизнеса.

Обязанности архитектора решений



В общем, архитектор решений – это человек, который отвечает не только за разработку, но и за практическую реализацию идей. Он должен иметь четкое представление о продукте и понимать, какую пользу этот продукт принесет бизнесу. Кроме того, архитектор решений транслирует это видение всей команде разработчиков кода, чтобы они могли создать программный продукт.



Как уже было сказано, эта должность является связующим звеном. Соответственно, архитектор решений действует на всех уровнях разработки программного продукта:



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


  2. Реализация. Эта стадия охватывает весь процесс разработки ПО, включая написание спецификаций и проведения тестирования. Сначала SA работает с технической командой, чтобы продумать все возможные варианты воплощения идеи в жизнь. Потом он работает с бизнес-аналитиком, чтобы помочь преобразовать требования заинтересованных сторон в функционал программного продукта. Наконец, SA участвует в принятии сложных технических решений, которые могут повлиять на эффективность проекта.


  3. Поддержка. Архитектор решений также отвечает за постоянное обслуживание готовой системы. Так, он является гарантом того, что существует безопасная и стабильная среда для правильной работы ПО. Архитектор решений также следит за тем, чтобы продукт был актуальным с точки зрения ценности для бизнеса.




Одной из наиболее важных задач архитектора решений является удовлетворение требований заинтересованных сторон. Как правило, продукт имеет целый ряд таких участников, среди которых есть как технические, так и нетехнические специалисты. Цель SA – обеспечить учет и реализацию всех их требований. Заинтересованные стороны должны регулярно получать информацию о процессах разработки продукта, затратах и бюджетировании. Именно эти задачи и возлагаются на архитектора решений.
Написать нам
Имя*:
Email*:
Сообщение: