Я совершенно запутался в следующих терминах:
Архитектура программного обеспечения
Архитектура прикладного программного обеспечения - это процесс определения структурированного решения, отвечающего всем техническим и эксплуатационным требованиям, при оптимизации общих атрибутов качества, таких как производительность, безопасность и управляемость. Он включает ряд решений, основанных на широком спектре факторов, и каждое из этих решений может оказать значительное влияние на качество, производительность, ремонтопригодность и общий успех приложения. ( Microsoft )
Архитектура системы
Архитектура системы - это концептуальная модель, которая определяет структуру, поведение и другие представления системы. 1 Описание архитектуры - это формальное описание и представление системы, организованное таким образом, чтобы поддерживать рассуждения о структурах и поведении системы ( вики ).
Диаграммы классов
В программной инженерии диаграмма классов на языке унифицированного моделирования (UML) - это тип статической структурной диаграммы, которая описывает структуру системы, показывая классы системы, их атрибуты, операции (или методы) и отношения между объектами. ( вики )
Если я читаю эти описания, все они описывают взаимодействие между различными модулями приложения. Однако каковы различия между ними?
Что я думаю / пытался сравнить эти термины :
- Диаграммы классов не являются формой архитектуры системы, потому что приведенное выше описание (
structure, behavior, and more views of a system
) подразумевает, что в архитектуре отсутствуют подробности реализации, тогда как диаграммы классов описывают реализацию и, вероятно, больше направлены на проектирование, чем на архитектуру? - Я думаю, что системная архитектура - это архитектура, которая также включает внешние взаимодействия (например, базы данных), тогда как архитектура программного обеспечения ориентирована на само приложение?