Uma solução para apoiar processos de desenvolvimento centrado na arquitetura

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 kn...

Full description

Bibliographic Details
Main Author: Silva, Italo Carlo Lopes
Other Authors: Brito, Patrick Henrique da Silva
Language:Portuguese
Published: Universidade Federal de Alagoas 2017
Subjects:
Online Access:http://www.repositorio.ufal.br/handle/riufal/1614
id ndltd-IBICT-oai-www.repositorio.ufal.br-riufal-1614
record_format oai_dc
collection NDLTD
language Portuguese
sources NDLTD
topic Arquitetura de software
Engenharia de requisitos
Resolução de Tred-off
Assistente baseado em regras
Rastreabilidade
Software - Desenvolvimento
Software architecture
Architectural decisions
Requirements engineering
Trade-off resolution
Traceability between software architecture and source-code
Rule-based assistant
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
spellingShingle Arquitetura de software
Engenharia de requisitos
Resolução de Tred-off
Assistente baseado em regras
Rastreabilidade
Software - Desenvolvimento
Software architecture
Architectural decisions
Requirements engineering
Trade-off resolution
Traceability between software architecture and source-code
Rule-based assistant
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Silva, Italo Carlo Lopes
Uma solução para apoiar processos de desenvolvimento centrado na arquitetura
description 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.
author2 Brito, Patrick Henrique da Silva
author_facet Brito, Patrick Henrique da Silva
Silva, Italo Carlo Lopes
author Silva, Italo Carlo Lopes
author_sort Silva, Italo Carlo Lopes
title Uma solução para apoiar processos de desenvolvimento centrado na arquitetura
title_short Uma solução para apoiar processos de desenvolvimento centrado na arquitetura
title_full Uma solução para apoiar processos de desenvolvimento centrado na arquitetura
title_fullStr Uma solução para apoiar processos de desenvolvimento centrado na arquitetura
title_full_unstemmed Uma solução para apoiar processos de desenvolvimento centrado na arquitetura
title_sort uma solução para apoiar processos de desenvolvimento centrado na arquitetura
publisher Universidade Federal de Alagoas
publishDate 2017
url http://www.repositorio.ufal.br/handle/riufal/1614
work_keys_str_mv AT silvaitalocarlolopes umasolucaoparaapoiarprocessosdedesenvolvimentocentradonaarquitetura
AT silvaitalocarlolopes asolutiontosupportdevelopmentprocesscenteredinthearchitecture
_version_ 1718837606248087552
spelling ndltd-IBICT-oai-www.repositorio.ufal.br-riufal-16142019-01-21T17:23:30Z Uma solução para apoiar processos de desenvolvimento centrado na arquitetura A solution to support development process centered in the architecture Silva, Italo Carlo Lopes 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 Arquitetura de software Engenharia de requisitos Resolução de Tred-off Assistente baseado em regras Rastreabilidade Software - Desenvolvimento Software architecture Architectural decisions Requirements engineering Trade-off resolution Traceability between software architecture and source-code Rule-based assistant CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO 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. 2017-02-27T00:24:48Z 2017-02-26 2017-02-27T00:24:48Z 2014-12-30 info:eu-repo/semantics/publishedVersion info:eu-repo/semantics/masterThesis SILVA, Italo Carlo Lopes. Uma solução para apoiar processos de desenvolvimento centrado na arquitetura. 2014. 78 f. Dissertação (Mestrado em Informática) - Instituto de Computação, Programa de Pós-Graduação em Informática, Universidade Federal de Alagoas, Maceió, 2014. http://www.repositorio.ufal.br/handle/riufal/1614 por 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 info:eu-repo/semantics/openAccess Universidade Federal de Alagoas Brasil Programa de Pós-Graduação em Informática UFAL reponame:Repositório Institucional da UFAL instname:Universidade Federal de Alagoas instacron:UFAL