The design of external interfaces requires definitive information about the entity to which information is sent or received. In every case, this information should be collected during requirements engineering (Chapter 8] and verified once the interface design commences.‘ The design of external interfaces should incorporate error checking and appropriate security features.
The design of internal interfaces is closely aligned with component-level design (Chapter 14]. Design realizations of analysis classes represent all operations and the messaging schemes required to enable communication and collaboration between operations in various classes. Each message must be designed to accommodate the requisite information transfer and the specific functional requirements of the operation that has been requested.