Um estudo de avaliação e documentação de arquiteturas de software na indústria

Usually, the software architect responsible for the software architecture definition and evaluation cannot prioritize which non-functional requirements must be prioritized during the development of their systems. Because of that, failures may happen during the system execution requiring more time...

ver descrição completa

Na minha lista:
Detalhes bibliográficos
Autor principal: Silva, Júlio César Leôncio da
Outros Autores: Kulesza, Uira
Formato: Dissertação
Idioma:por
Publicado em: Brasil
Assuntos:
Endereço do item:https://repositorio.ufrn.br/jspui/handle/123456789/22488
Tags: Adicionar Tag
Sem tags, seja o primeiro a adicionar uma tag!
id ri-123456789-22488
record_format dspace
institution Repositório Institucional
collection RI - UFRN
language por
topic Arquitetura de software
Avaliação arquitetural
Desempenho
Documentação arquitetural
Requisitos não-funcionais
CNPQ::ENGENHARIAS: ENGENHARIA DE SOFTWARE
spellingShingle Arquitetura de software
Avaliação arquitetural
Desempenho
Documentação arquitetural
Requisitos não-funcionais
CNPQ::ENGENHARIAS: ENGENHARIA DE SOFTWARE
Silva, Júlio César Leôncio da
Um estudo de avaliação e documentação de arquiteturas de software na indústria
description Usually, the software architect responsible for the software architecture definition and evaluation cannot prioritize which non-functional requirements must be prioritized during the development of their systems. Because of that, failures may happen during the system execution requiring more time and resources to fix them. In many cases, due to the inexperience of architects or the need for rapid deployment of a system, the non-functional requirements are not considered in the software architecture definition phase and its documentation is absent or incomplete, making the software architecture difficult to be understood, modified and envolved by other team members. This work investigates the main strategies and techniques used to document software architectures and to evaluate non-functional requirements by existing software development companies. Our study had the participation of 17 software architects to answer the survey. Our work identified that performance and reliability non-functional requirements are the most important to be addressed by the architecture and even with the existence of some approaches to evaluate architectures, they do not seem to be disseminated and used among architects. The architects judged that in a performance analysis of a software system the most important information to be displayed should be the response time of the system scenarios. Regarding architecture documentation, most interviewees stated that they used some kind of documentation. The use of class diagrams and component diagrams are the most common forms of documentation used by architects. Besides that, we propose a guide to help software architects in the task of achieving such non-functional requirements during the evolution of software systems. The proposed guide prioritizes the non-functional requirement of performance. The logs analysis approach to identify priority scenarios in a performance assessment was pointed out as one of the key contributions of the guide and could facilitate the identification and comparison of the versions of their systems.
author2 Kulesza, Uira
author_facet Kulesza, Uira
Silva, Júlio César Leôncio da
format masterThesis
author Silva, Júlio César Leôncio da
author_sort Silva, Júlio César Leôncio da
title Um estudo de avaliação e documentação de arquiteturas de software na indústria
title_short Um estudo de avaliação e documentação de arquiteturas de software na indústria
title_full Um estudo de avaliação e documentação de arquiteturas de software na indústria
title_fullStr Um estudo de avaliação e documentação de arquiteturas de software na indústria
title_full_unstemmed Um estudo de avaliação e documentação de arquiteturas de software na indústria
title_sort um estudo de avaliação e documentação de arquiteturas de software na indústria
publisher Brasil
publishDate 2017
url https://repositorio.ufrn.br/jspui/handle/123456789/22488
work_keys_str_mv AT silvajuliocesarleoncioda umestudodeavaliacaoedocumentacaodearquiteturasdesoftwarenaindustria
_version_ 1773962464061292544
spelling ri-123456789-224882017-11-02T20:53:48Z Um estudo de avaliação e documentação de arquiteturas de software na indústria Silva, Júlio César Leôncio da Kulesza, Uira http://lattes.cnpq.br/6687140805305537 http://lattes.cnpq.br/0189095897739979 Pinto, Felipe Alves Pereira http://lattes.cnpq.br/6163607072712192 Guerra, Eduardo Martins http://lattes.cnpq.br/3413978291577451 Figueira Filho, Fernando Marques http://lattes.cnpq.br/6874649375434646 Arquitetura de software Avaliação arquitetural Desempenho Documentação arquitetural Requisitos não-funcionais CNPQ::ENGENHARIAS: ENGENHARIA DE SOFTWARE Usually, the software architect responsible for the software architecture definition and evaluation cannot prioritize which non-functional requirements must be prioritized during the development of their systems. Because of that, failures may happen during the system execution requiring more time and resources to fix them. In many cases, due to the inexperience of architects or the need for rapid deployment of a system, the non-functional requirements are not considered in the software architecture definition phase and its documentation is absent or incomplete, making the software architecture difficult to be understood, modified and envolved by other team members. This work investigates the main strategies and techniques used to document software architectures and to evaluate non-functional requirements by existing software development companies. Our study had the participation of 17 software architects to answer the survey. Our work identified that performance and reliability non-functional requirements are the most important to be addressed by the architecture and even with the existence of some approaches to evaluate architectures, they do not seem to be disseminated and used among architects. The architects judged that in a performance analysis of a software system the most important information to be displayed should be the response time of the system scenarios. Regarding architecture documentation, most interviewees stated that they used some kind of documentation. The use of class diagrams and component diagrams are the most common forms of documentation used by architects. Besides that, we propose a guide to help software architects in the task of achieving such non-functional requirements during the evolution of software systems. The proposed guide prioritizes the non-functional requirement of performance. The logs analysis approach to identify priority scenarios in a performance assessment was pointed out as one of the key contributions of the guide and could facilitate the identification and comparison of the versions of their systems. Muitas vezes o arquiteto de software responsável pela definição e avaliação da arquitetura de software não consegue estabelecer quais requisitos não-funcionais devem ser priorizados no desenvolvimento de seus sistemas. Com isso, falhas podem ocorrer durante a execução do sistema demandando mais tempo e recursos para que seja corrigido. Em muitos casos, com a inexperiência dos arquitetos ou a necessidade de disponibilização rápida de um sistema, os requisitos não-funcionais não são considerados durante a definição da arquitetura de software e também não é feita a devida documentação da arquitetura, tornando difícil o acesso e entendimento da arquitetura pelos demais integrantes da equipe e dificultando a manutenção de componentes/módulos da arquitetura e respectivos relacionamentos. Este trabalho buscou levantar junto às empresas de software, públicas e privadas, quais as principais estratégias utilizadas na definição e avaliação da arquitetura, principalmente na obtenção e cumprimento dos requisitos não-funcionais, e documentação arquitetural. Nosso estudo contou com a participação de 17 arquitetos de software para responder o questionário proposto. Com a realização do questionário identificamos que os requisitos não-funcionais de desempenho e confiabilidade são os mais importantes a serem atendidos pela arquitetura e que mesmo com a existência de algumas abordagens para a avaliação de arquiteturas, elas não parecem estar bem difundidas e/ou utilizadas entre os arquitetos. Ao tratar especificamente o requisito de desempenho, os arquitetos julgaram que em uma análise de desempenho de um sistema de software a informação mais importante a ser exibida deve ser o tempo de resposta das requisições a um determinado cenário, acompanhado do tempo de execução dos métodos que fazem parte desse cenário. Em relação à documentação arquitetural, a maioria dos entrevistados afirmaram utilizar, no mínimo, algum tipo de documentação no momento de criação de um sistema de software, destacando-se a utilização de diagramas de classe e de componentes como as formas mais comuns de documentação utilizadas pelos arquitetos. Além disso, o trabalho propõe a utilização de um guia que busca auxiliar arquitetos de software na atividade de avaliação do cumprimento dos requisitos não-funcionais pela arquitetura durante a evolução do sistema, priorizando o requisito não-funcional de desempenho. Ao avaliar a aplicação do guia, os entrevistados apontaram a abordagem de análise de logs para identificar os cenários prioritários numa avaliação de desempenho como uma das principais contribuições do guia e que poderia facilitar na identificação e comparação das versões dos seus sistemas. 2017-03-27T21:23:41Z 2017-03-27T21:23:41Z 2016-08-25 masterThesis SILVA, Júlio César Leôncio da. Um estudo de avaliação e documentação de arquiteturas de software na indústria. 2016. 75f. Dissertação (Mestrado Profissional em Engenharia de Software) - Instituto Metrópole Digital, Universidade Federal do Rio Grande do Norte, Natal, 2016. https://repositorio.ufrn.br/jspui/handle/123456789/22488 por Acesso Aberto application/pdf Brasil UFRN PROGRAMA DE PÓS-GRADUAÇÃO EM ENGENHARIA DE SOFTWARE