チェックポイント: 設計サブシステム
- 各サブシステムの名前が一意で、サブシステムの責務を集合的に記述している。
- サブシステムの記述が、サブシステムの集合的な責務を正確に反映している。
- サブシステムがインターフェースを通じて、論理的に一貫したサービスの単一のセットを提供している。
- サブシステムが、1 個人または 1 チームの責務となっている。
- サブシステムが、少なくとも 1 つのインターフェースを実現する。
- サブシステムによって実現されたインターフェースを明確に定義し、依存関係を正確に文書化した。
- サブシステムの他のモデル要素に対する依存関係は、サブシステムがコンパイル依存関係にあるパッケージとインターフェースだけに制限した。
- サブシステムを効果的に使用するために必要な情報を、サブシステムの表面に文書化した。
- サブシステムによって実現されたインターフェースの他に、サブシステムの内容が完全にカプセル化されている。
- サブシステムによって実現されたインターフェースの各操作が、いずれかのコラボレーションで利用されている。
- サブシステムによって実現されたインターフェースの各操作が、そのサブシステムにおいて、モデル要素 (またはモデル要素のコラボレーション) によって実現されている。
- モデル全体を通して、サブシステムのパーティションが、論理的に一貫した方法で行われている。
- サブシステムの内容が、そのインターフェースに完全にカプセル化されている。
| |
|