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