Архитектурой называют основные принципы построения сложной системы: компьютера, компьютерной сети, автоматизированной системы, базы данных и пр. Проектирование системной архитектуры называют архитектурным или концептуальным проектированием системы.
Существует несколько парадигм архитектурного проектирования информационных систем:
1. Объектно-ориентированная (ООА, Object-Oriented Architecture);
2. Компонентно-ориентированная (CBA, Component-Based Architecture);
3. Сервисно-ориентированная (SOA. Service-Oriented Architecture) .
Объектно-ориентированный подход основан на идеях объектно-ориентированного проектирования (ООП). Структурными элементами являются классы и их экземпляры - объекты. Основными свойствами ООП являются абстрагирование, инкапсуляция, наследование и полиморфизм. Примером инструментальной среды объектно-ориентированного проектирования программных систем может служить Rational Unified Process (RUP).
Компонентно-ориентированный подход (КОП) основан на принципах сборки программного обеспечения из независимо разработанных и повторно-используемых компонентов, т.е. структурными элементами являются компоненты. Обычно компоненты разрабатываются на основе ООП и сами представляют собой объекты, т.е. КОП является одной из форм реализации объектно-ориентированного программирования. Для КОП характерны, во-первых, распределенность компонентов в сети, во-вторых, наличие узла-посредника, который содержит сведения о интерфейсах и местоположении компонентов. Подход реализован в методиках J2EE, CORBA Component Model и Microsoft.Net и др. Особое место в CBA системах занимают многоагентные системы, компоненты которых отличаются возможностью самостоятельного автономного поведения.
Сервисно-ориентированный подход основан на использовании Web-служб, технологий и средств SOAP, WSDL., UDDI. Структурные элементы в SOA - сетевые службы, которые являются реентерабельными программами.
Следует отметить, что между подходами нет резкой границы. Так, технологию CORBA можно отнести и к ООА, а службы рассматривать как программные компоненты.