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. / O sucesso de um projeto de software está fortemente relacionado com o projeto arquitetural. No entanto, projetar a arquitetura de software correta é uma tarefa muito subjetiva e leva muito tempo, sendo muito influenciada pela experiência do arquiteto e a qualidade da engenharia de requisitos. Este conhecimento arquitetural, geralmente, não está documentado, uma vez que é considerado o conhecimento tácito dos arquitetos ou dos interessados, e, eventualmente, se dissipa. Também é essencialmente importante assegurar a consistência entre a arquitetura de software e a implementação. No entanto, esse mapeamento é feito manualmente na maioria das vezes, baseado apenas no entendimento do desenvolvedor sobre a arquitetura, exigindo disciplina por parte dele. Assim, erros podem surgir durante esta fase, comprometendo a consistência entre as decisões arquiteturais e o código fonte. Em face destas dificuldades, foi desenvolvido este trabalho, cujo o objetivo é apresentar uma ferramenta que apoie jovens arquitetos com a recomendação de um estilo arquitetural adequado, baseado nos requisitos do sistema, particularmente os atributos de qualidade do sistema. A ferramenta compreende tanto resolução trade-off sobre os atributos de qualidade e recomendação de estilos arquiteturais com base em atributos de qualidade. Por fim, com base na arquitetura recomendada, a ferramenta irá gerar o código estrutural do sistema, utilizando um modelo de implementação de componente chamado COSMOS*, proporcionando rastreabilidade entre projeto arquitetural e a implementação. A solução proposta foi avaliada no contexto de um domínio específico dos Ambientes Virtuais e Aprendizagem (AVA), a m de ilustrar o suporte da ferramenta na execução de um processo de projeto arquitetural.
Identifer | oai:union.ndltd.org:IBICT/oai:www.repositorio.ufal.br:riufal/1614 |
Date | 30 December 2014 |
Creators | Silva, Italo Carlo Lopes |
Contributors | Brito, Patrick Henrique da Silva, http://lattes.cnpq.br/4155051332618408, Santos Neto, Baldoino Fonseca dos, http://lattes.cnpq.br/0306751604362704, Costa, Evandro de Barros, http://lattes.cnpq.br/5760364940162939, Almeida, Hyggo Oliveira de, http://lattes.cnpq.br/4993914550234923 |
Publisher | Universidade Federal de Alagoas, Brasil, Programa de Pós-Graduação em Informática, UFAL |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Source | reponame:Repositório Institucional da UFAL, instname:Universidade Federal de Alagoas, instacron:UFAL |
Rights | info:eu-repo/semantics/openAccess |
Relation | bitstream:http://www.repositorio.ufal.br:8080/bitstream/riufal/1614/2/license.txt, bitstream:http://www.repositorio.ufal.br:8080/bitstream/riufal/1614/1/Uma+solucao+para+apoiar+processos+de+desenvolvimento+de+software+centrado+na+arquitetura.pdf |
Page generated in 0.0027 seconds