Interface Control Document

Definition
An interface control document (ICD) in systems engineering and software engineering, describes the interface or interfaces between subsystems or to a system or subsystem.

Overview
An ICD may describe:


 * the inputs and outputs of a single system
 * the interface between two systems or subsystems.
 * the complete interface protocol from the lowest physical elements to the highest logical levels, or some subset thereof.

The purpose of the ICD is to communicate all possible inputs to and all potential outputs from a system for some potential or actual user of the system. The internal interfaces of a system or subsystem are typically not documented in an ICD, but rather in a system design document (such as a software design document).