The architecture defines the components, interfaces, and behaviors of the system.
The components are the building blocks for the system. These components may be built from scratch or re-used from an existing component library. The components refine and capture the meaning of details from the requirement document.
The components are composed with other components using their interfaces. An interface forms a common boundary of two components. The interface is the architectural surface where independent components meet and communicate with each other. Over the interface, components interact and affect each other.
The interface defines a behavior where one component responds to the stimuli of another component's actions.