Архите́ктор програ́ммного обеспече́ния (ПО) — проектная роль в разработке ПО, профессия, возможно — должность.
Ключевая обязанность архитектора — проектирование архитектуры ПО, то есть принятие ключевых проектных решений относительно внутреннего устройства программной системы и её технических интерфейсов.
Проектирование архитектуры ПО является частным случаем проектирования ПО.
В проектирование архитектуры ПО входят следующие задачи:
определение архитектурного шаблона/парадигмы
разбиение на технические подсистемы/слои/компоненты/модули
определение языковой парадигмы для каждого из них
выбор средств исполнения
разработка ключевых технических сценариев взаимодействия компонентов
определение протоколов взаимодействия компонентов (проектирование технических интерфейсов)
определение форматов хранения и передачи данных
подбор технических средств и шаблонов для реализации подсистем.
Кроме того, в круг полномочий архитектора ПО входит:
рецензирование требований
разработка нефункциональных требований
участие в совещаниях с заказчиком
стратегическое планирование технического развития системы