Definition

Email this page to a friend   

Email to a friend

Interface Control Document

(Alias: ICD, Interface Specification, Interface Design Document)

If I want to communicate with you I need to pay you the complement of being careful in what I say so as to make it intelligible.
             - Morris West

An Interface Control Document (ICD) describes the interworking of two elements of a system that share a common interface. For example, a communications interface is described in terms of data items and messages passed, protocols observed and timing and sequencing of events. An ICD may also describe the interaction between a user and the system, a software component and a hardware device or two software components.
This class of document is typically used where complex interfaces exist between components that are being developed by different teams. It is jointly prepared by the interfacing groups.

ICD Content

It is common practice to evolve the ICD through the requirements and design phases of a project. The requirements of the interface are specified and approved and the document then further fleshed out with the design as follows:

Interface Requirements

The requirements describe what the interface is to achieve together with any constraints on its design as follows:

  • Identification of the interfacing systems/sub-systems
  • The reason for the interface's existence including the user requirement that is satisfied
  • A description of what the interface does
  • Specification of the information to be exchanged
  • Timing and sequencing constraints
  • Capacity and performance requirements
  • Requirements for communications protocol standards compliance
  • Identification of any safety requirements discovered in an Interface Hazard Analysis

Interface Design

The design describes how the interface will be implemented.
For example in the case of a communications interface the following technical details are provided:

  • Type: the type of interface; for example, task to task, external, user , serial CCITT RS - 422, parallel ...
  • Protocol: a description of the communications protocol. Protocol descriptions may include:
    • Message format and description including user error messages, user information messages and interprocess messages
    • Message component names
    • Message initiation
    • The processing of message interruptions. Fragmentation and reassembly of messages
    • Error detection, control and recovery procedures
    • Synchronisation, including connection establishment, maintenance, termination and timing and sequencing
    • Flow control, including sequence numbering, window size and buffer allocation
    • Data transfer rate
    • Transmission services including priority and grade
    • Security including encryption, user authentication and auditing
    • Error codes.

A user interface is typically described as follows:

  • User inputs
  • Screen formats
  • Interaction dialogue scripts
  • Use cases
  • References to error and information messages.

A hardware interface is described with circuit diagrams.

Collaboration

- Rate this definition.
- Did it help?
- Suggest improvements.
- Request more information.
- Exchange ideas with our member community.

Email to a friend