Архитектурно значимые требования - это те требования, которые оказывают измеримое влияние на архитектуру компьютерной системы. Это может включать требования как к программному обеспечению, так и к оборудованию. Они представляют собой подмножество требований, подмножество, которое влияет на архитектуру системы измеримым образом.
В течение довольно долгого времени архитектурно значимые требования не считались важным понятием. Когда говорят об архитектуре, часто используются нефункциональные требования или атрибуты качества. Однако недавние эмпирические исследования показывают, что для программной системы не все нефункциональные требования влияют на ее архитектуру, а требования не являются нефункциональными требованиями. также может повлиять на его архитектуру. Итак, архитектурно значимые требования - это ценное понятие, которое предлагается использовать при разговоре о требованиях в отношении архитектуры.
Архитектурно значимые требования можно охарактеризовать с помощью следующие аспекты.
Архитектурно значимые требования часто сложно определить и сформулировать, они имеют тенденцию выражаться расплывчато, ими изначально пренебрегают, скрывают в других требованиях и субъективный, изменчивый и ситуативный. Другие требования также могут продемонстрировать эти описательные характеристики. Однако значимость архитектурно значимых требований делала эти проявления уникальными и сложными.
Требование, которое имеет широкое действие, нацелено на компромисс, является строгим (ограничивающим, ограничивающим, не подлежащим обсуждению), нарушающим предположения или труднодостижимым, скорее всего, будет архитектурно значительное.
Признаки архитектурной значимости, о которых сообщалось в литературе, включают:
OpenUP и Питер Илес (IBM) обсуждают дополнительные критерии архитектурной значимости в нескольких статьях и презентациях
Когда требование указывает атрибуты качества программной системы, относится к основным функциям программной системы, накладывает ограничения на программную систему, определяет среду, в которой программное обеспечение система будет работать, это, вероятно, будет иметь архитектурное значение.
См. Обсуждение дизайна и архитектуры в разделе архитектура программного обеспечения для дополнительных критериев архитектурной значимости.
Как и все нефункциональные требования и требования к атрибутам качества, архитектурно значимые требования должны быть указаны в формате SMART. Сценарии атрибутов качества - это один из способов достижения критериев S (особый) и M (измеренный) в SMART. Институт программной инженерии рекомендует для этого семинары по атрибутам качества. Было предложено сделать анализ архитектуры и проектирование легким и гибким; деревья атрибутов качества для определенных жанров приложений и областей технологий могут поддерживать такие подходы.
Важно сообщать выявленные архитектурно значимые требования и любые другие архитектурные артефакты в нотации и на языке, понятном для целевая аудитория (слышите: бизнес заинтересованные стороны ).
Архитектурно значимые требования используются в проектировании программного обеспечения для принятия и обоснования архитектурных решений ; если они не удовлетворены должным образом, они способствуют накоплению технического долга. Например, несоблюдение требований безопасности и соответствия усложняет аудиторские проверки системы и процессов и увеличивает риск результатов аудита. Примерный совет о том, как для рассмотрения атрибутов качества системы (включая архитектурно значимые требования), доступен в литературе.