To facilitate PPOOA applicability, we propose an architecting process, also named PPOOA_AP (PPOOA Architecting Process). PPOOA_AP is focused on the development of the software architecture for a system conforming the principles inherent to PPOOA architectural style and using the vocabulary of components and coordination mechanisms proposed by PPOOA. The scope of PPOOA_AP is the architectural or preliminary software development phase of the software life cycle.
PPOOA_AP should be included as a part of the general software development process. As a part of this general process, it takes some inputs from the analysis phase and produces some outputs to the detailed design phase.
The main purpose of an architecting process is to produce a rigorous description of the solution that allows quality attributes evaluation by assessment techniques, particularly Rate Monotonic Analysis (RMA).
PPOOA_AP is essentially an iterative process that is split into major steps and minor steps. Architecting process major steps are those that follow the identification of the major components of the system, their interfaces and the main flows of activities that the system will implement. These major steps represented in the figure below, are namely:
1. Identify Components
2. Define Component Interfaces
3. Describe System responses. Responses are described by CFAs (Causal Flow of Activities)
4. Select Coordination Mechanisms
Minor steps are represented sequentially for each of the major steps in the figures next to the figure below.