品質特性
品質特性とは、ステークホルダーがソフトウェアシステムの良さを判断するための、外部から見える特徴だ。それには、たとえば拡張容易性や可用性、保守性、テスト容易性などが含まれる。人は、ソフトウェアとやり取りする際に、必ず何らかの品質特性を体験している。 アーキテクチャ構造を選択するということは、ソフトウェアシステムで促進したい品質特性を選択しているということだ。 ソフトウェアは品質特性によって特徴づけられる。システムの状況はそれぞれ異なっている。チームが異なり、予算が異なり、市場動向が異なり、技術動向すら異なる。そのため、たとえフィーチャー一式が同じだとしても、アーキテクチャが全く同じになることはない。