Это новое понятие для IT-сферы, не имеющее четкого терминологического определения, несмотря на то, что его компоненты использовались еще в конце XX в. Кроме того, до сих пор не сформулированы безусловные правила проектирования архитектур, поэтому в архитектуре многое зависит от творческого подхода.
Подразумевается, что архитектура – это разделение системы на несколько компонентов и описание их взаимодействия, однако для повышения эффективности проекта часто используют маленькое число составляющих или даже монолитную архитектуру, состоящую из одного компонента. Так как каждый компонент требует определенное количество памяти и время на отладку алгоритмов обработки данных, то архитектуры с малым количеством частей оказываются эффективней за счет экономии памяти и времени.
Структурную организацию архитектуры можно классифицировать на группы в зависимости от аспекта проектируемой системы: группа, описывающая логическую структуру системы (интерфейсы компонентов), и группа, описывающая физическую структуру (вычислительные узлы). Архитектура имеет большую важность, потому что именно она определяет основную часть характеристики качества ПО в целом.
Методы документирования ПО очень разнообразны и каждый из них вносит большой вклад в отрасль программной архитектуры. Без них разработка ПО будет неэффективна и неудобна. Документирование архитектуры может упростить процесс коммуникации между разработчиками и позволяет предоставить принятые проектные решения эксплуатационному персоналу системы.
Существует четыре основных типа документации на ПО:
проектная документация, описывающая продукт в общих чертах и отвечающая на вопрос, почему продукт устроен именно так.
техническая документация, описывающая код. Должен быть предоставлен некоторый текст, который фиксирует различные аспекты того, что именно делает код.
пользовательская документация, представляет собой руководство пользователя, которое описывает шаги, которые необходимые для использования продукта. Она может быть организована как вводное руководство, тематически или в виде алфавитного справочника.
маркетинговая документация – рекламные материалы, создающие интерес к продукту и объясняющие положение продукта по сравнению с конкурирующими решениями.
Основной частью проектной документации на программное обеспечение, регламентирующее краткое описание архитектуры, является стандарт. Существует достаточно много стандартов, например, стандарт IEEE 1471, который показывает представление архитектуры, как организованный набор документов, описывающий архитектуру с точки зрения некоторых заинтересованных организаций. Стандартом для моделирования программной архитектуры является унифицированный язык моделирования (UML). Это графический язык, используемый для визуализации, конструирования и документирования систем с ПО. Это объектно-ориентированный язык со сравнительно легкими для чтения диаграммами. Диаграммы построены с помощью вершин (сущностей) и ребер (отношений), которые соединены в связанный гриф. Основной целью диаграмм можно считать наглядность разрабатываемой системы и возможность увидеть ее с разных точек зрения. Выделяют следующие разновидности диаграмм: диаграммы классов, объектов, прецедентов, воздействия, состояний, деятельности, компонентов и развертывания.
Архитектура программного обеспечения объединяет различные точки зрения на систему, и это является аргументом в защиту целесообразности создания архитектуры ПО. Программная архитектура определяет направление для решения задач разработчика, группы по сопровождению и развертыванию, тестера и конечных пользователей программного обеспечения.
Библиографический список
Электронный ресурс ru.wikipedia.org
Документирование программных систем [Электронный ресурс] URL: http://compact-programming.narod.ru/CP0028.htm.