**上位設計(HLD)**は、ソリューションの主要部分とその連携方法を説明します。**詳細設計(LLD)**は、それらを一貫して実装できるだけの詳細を定めます。いずれも実務上有用な用語ですが、すべての組織に共通する必須の文書テンプレートがあるわけではありません。
1つの判断を両方のレベルで追う
返品ポータルのHLDでは、ポータル、返品サービス、注文システム、倉庫連携を特定します。各レコードをどのシステムが所有するか、どのやり取りが非同期かを示します。
LLDでは、特定のやり取りについて、リクエスト項目、検証、状態遷移、重複処理、データベース制約、エラー応答を説明します。エンジニアが実装でき、テスターが期待される動作を理解できる必要があります。
両者を結び付ける
- HLDはチーム間の認識合わせとアーキテクチャレビューに役立ちます。
- LLDは実装と詳細なテストを支えます。
- 両者は同じ要件、用語、重要な判断を参照します。
HLDで安全な再試行を約束していても、LLDに重複検出の規則がなければ、文書間で矛盾しています。具体的な失敗ケースを両方で追うと、その不足を発見できます。
