Uma solução para apoiar processos de desenvolvimento centrado na arquitetura - Silva, Italo Carlo Lopes (2014)
The success of a software project is strongly related with architectural design. However, designing the right Software Architecture is a very subjective task and takes a long time, being much influenced by architect's experience and the quality of requirements engineering. This architectural knowledge, usually, is not documented, since it is considered tacit knowledge of architects or other stakeholders, and eventually dissipates. It is also essentially important to ensure the consistency between software architecture and implementation. However, this mapping is usually made manually, based only on the developer's understanding over the software architecture, which requires high discipline. Thus, errors can arise during this phase, compromising the consistency amongst architectural decisions and source code. The objective of this work is to present a tool-based solution that supports young architects by recommending a suitable architectural style, based on the system's requirements, particularly the quality attributes of the system. The tool encompasses both trade-o resolution over quality attributes and recommendation of architectural styles based on quality attributes. Finally, based on the recommended architecture, the tool will generate the system structural source-code, using a component implementation model called COSMOS*, providing traceability between architectural design and implementation. The proposed solution has been evaluated in the context of a specific domain of Learning Management System (LMS), in order to illustrate the tool support in the execution of an architectural design process.