インターフェイス制御ドキュメントとは何ですか?
インターフェイス制御ドキュメント(ICD)は、特定のシステムへの入力の提供と特定のシステムからの出力の受信に関係するメソッドと構造の形式化された記述です。 インターフェイス制御ドキュメントで説明されているシステムは、ソフトウェアライブラリまたはハードウェアの一部です。 このドキュメントは、単一の形式に従う必要はありませんが、段落、チャート、またはインターフェースハードウェアの単なる技術的な図面の集合であってもかまいません。 ソフトウェアを具体的に参照する場合、インターフェイス制御ドキュメントは、ライブラリに情報を入力するために使用できるパブリックメソッドまたは関数を記述し、結果として生じる出力も記述する、プログラミングインターフェイス(API)に類似および抽象化できます。 一般に、インターフェイス制御ドキュメントには、システムをより大きなシステムに統合する方法、または並列システムに接続する方法が記載されています。 システムの内部動作については説明していません。これは、別のタイプのドキュメントで記述されている場合があります。
インターフェース制御ドキュメントの目的は、ハードウェアまたはソフトウェアの開発者に、ICDが記述しているシステムとの間でデータを転送するシステムまたはソフトウェアを作成するときに使用できるドキュメントを提供することです。 これは通常、シグネチャが既知であり、使用するパラメーターの許容範囲が与えられるように、正確な機能またはハードウェアコンポーネントを定義することを意味します。 ソフトウェアエンジニアリングでは、これは特定の関数の名前、どのタイプの変数がパラメーターとして受け入れられるか、そしておそらく、渡される値にどのような機能的な制限があるかを知ることを意味します。 ハードウェアの場合、この情報には、シリアルコネクタコントロールのピンの機能、使用されるハードウェア割り込み、およびデバイスの動作速度が含まれます。
インターフェース制御文書で具体的に説明されていないことの1つは、一般に、システムが入力を出力に変換する方法、または出力が生成される方法です。 これにより、開発者はインターフェイスを作成するときにシステムの焦点を絞ることができますが、ICDの詳細がドキュメント自体に記載されているガイドラインに厳密に従うことをシステムの開発者に要求します。 インターフェイス制御ドキュメントの作成者とシステムの開発者にとって便利なのは、システムの内部実装がドキュメントに記載されていないため、ICDに依存するインターフェイスの外部開発に影響を与えずに自由に変更できることです。
状況によっては、インターフェイス制御ドキュメントを使用すると、実際に完成したインターフェイスを使用しなくても、システムをテストできます。 これは、ICDで説明されているようにシステムが生成できるさまざまなタイプの出力をシミュレートし、その出力を外部開発のインターフェイスに渡すことで実行できます。 ディスプレイデバイスなどのハードウェアの場合の出力など、システムの片側のみの処理に関心のあるシステムは、実際の入力を必要とせずに仕様内でインターフェイスが機能することを保証できます。