SOFTWARE IN PRACTICE
Each knew very little about the intentions and motivations of the other side, and tended to assume the worst. Messages took half a day to deliver. When they did arrive, they were couched in the opaque language of superpower diplomacy which barred the writer from admitting weakness or conceding error.
An interface is a shared boundary across which information is passed. Interfaces apply to hardware, software and human interaction. For an interface to function reliability each party to the interface must know everything "about the the intentions and motivations of the other side". Interfaces must therefore be formally specified and managed.
The figure depicts an Internet Store application with three external interfaces to internet services (Google Adds, PayPal and Google Search) and a user interface. The nature of an interface must be agreed with the organisation controlling the external system, in this case Google and PayPal. This is achieved with an interface management process. The details of an interface are specified in an Interface Control Document that is signed off by both parties.
An Application with Multiple Interfaces
Types of Interface
Interfaces should be viewed as just another component of a system. Common types are: