Artifacts > Analysis & Design Artifact Set > Design Model... > Interface


Interface
A model element which defines a set of behaviors (a set of operations) offered by a classifier model element (specifically, a class, subsystem or component). A classifier may realize one or more interfaces. An interface may be realized by one or more classifiers. Any classifiers which realize the same interfaces may be substituted for one another in the system. Each interface should provide an unique and well-defined set of operations.
UML representation: Interface
Role: Software Architect
Reports: Design Package/Subsystem
More information:

Input to Activities: Output from Activities:

Purpose To top of page

An interface declares a set of operations, including their signatures and parameters, that are use to specify the services offered by a classifier model element (e.g. a class, component or subsystem).

Properties To top of page

Property Name

Brief Description

UML Representation

name the name of the interface attribute
description a short description of the interface attribute
operations the operations of the interface operations

Timing To top of page

Interfaces are created in the elaboration phase, and define the important 'seams' in the system. All interfaces are architecturally significant.

Responsibility To top of page

A Software Architect is responsible for the integrity of the Interface, ensuring that:

  • it defines a unique set of operations which do not overlap with those of another interface.
  • it provides a logical grouping of related operations which is easy to comprehend.

Tailoring To top of page

Interfaces are typically used in conjunction with either Artifact: Design Subsystems or Artifact: Components; it is usually not necessary or desirable to use interfaces in conjunction with Artifact: Design Classes, where using public operations is usually sufficient. Interfaces are typically used in cases where there is a need to define the behavior (in the form of operation signatures) independently from the elements that realize those operations. This implies the existence of larger-grained abstraction of behavior (in the case of design subsystems) or replaceability (in the case of either design subsystems or executable components). For projects that do not have these attributes, interfaces can be omitted.

Copyright  1987 - 2001 Rational Software Corporation


Display Rational Unified Process using frames

Rational Unified Process