Uma contribuição para a avaliação da qualidade de modelos na fase de projeto de software

Context: Software engineering aims to provide software development with high quality in short time and low cost. In this context, product quality assurance goes through all phases of development process, avoiding the generation of high cost in corrective maintenance in advanced phases of development...

Nível de Acesso:openAccess
Publication Date:2015
Main Author: Souza, Odair Moreira de lattes
Orientador/a: Ferrari, Fabiano Cutigi lattes
Format: Dissertação
Language:por
Published: Universidade Federal de São Carlos
Câmpus São Carlos
Programa: Programa de Pós-graduação em Ciência da Computação
Assuntos em Português:
Assuntos em Inglês:
Áreas de Conhecimento:
Online Access:https://repositorio.ufscar.br/handle/ufscar/10910
Resumo Português:Contexto: A engenharia de software tem por finalidade proporcionar o desenvolvimento de software com alto nível de qualidade em curto tempo e baixo custo. Nesse contexto, a garantia de qualidade de produto passa por todas as etapas do processo de desenvolvimento, evitando gerar alto custo em manutenção corretiva em fases avançadas do desenvolvimento. Na etapa de projeto (do inglês, design), uma das maneiras de antecipar a detecção de problemas estruturais, comportamentais e reduzir o retrabalho, e por meio da aplicação de métricas em modelos de projeto. Objetivo: Este trabalho teve como objetivo prover um processo sistemático e automatizado para a avaliação de modelos de projeto de software baseada em métricas internas e atributos externos de qualidade. Um framework conceitual, intitulado QM2, e ferramentas automatizadas foram propostos, os quais incluem as principais atividades e recursos necessários para a avaliação do nível de qualidade dos projetos durante a etapa de design. Metodologia: Para a definição do QM2, foram realizados estudos para a identificação das atividades essenciais para a avaliação de design, abordando modelos de qualidade, métricas internas e recursos reutilizáveis de software. Para a avaliação dos conceitos e ferramentas desenvolvidas, foram avaliados modelos de projeto de sistemas embarcados robóticos representados em UML. Resultados: Estabeleceu-se uma sequencia de passos para a avaliação do nível de qualidade dos modelos de software. Realizou-se a automatização do QM2, incluindo uma ferramenta de extração de métricas e gestão de projetos de avaliação. Conclusão: A simples definição e extração de métricas não assegura a qualidade de um projeto de software, pois a interpretação dos valores deve estar associada a atributos externos de qualidade. Nesse sentido, neste trabalho a avaliação de design e realizada por meio das extrações e cálculos das métricas dos modelos. O nível de qualidade de um modelo e obtido por meio da associação entre medidas internas computadas e atributos externos de qualidade.
Resumo inglês:Context: Software engineering aims to provide software development with high quality in short time and low cost. In this context, product quality assurance goes through all phases of development process, avoiding the generation of high cost in corrective maintenance in advanced phases of development. In the design phase, a mean of anticipating the detection of structural and behavioural problems and reduce rework is by applying metrics in design models. Objective: This work aimed to provide a systematic and automated process for the evaluation of software design models based on internal metrics and external quality attributes. A conceptual framework, entitled QM2, and automated tools have been proposed, which include the main activities and resources needed for assessing the quality level of models during the design phase. Method: For the definition of QM2, studies have been conducted to identify the essential activities for design evaluation, addressing quality models, internal metrics and reusable software resources. For the evaluation of the the framework and tools developed, were addressed models of a robotic em¬bedded system represented in UML. Results: Was established a sequence of steps to evaluate the quality level of software models. Was performed the automation of the QM2 framework, including tool for metrics extraction and the management of assessment projects. Conclusion: The simple definition and extraction of metrics do not ensure the quality of a software project, because the interpretation of values should be associated with external quality attributes. In that sense, in this work the assessment of design is performed by means of extraction and calculation of model metrics. The quality level of a model is obtained through the association between internal measures computed and external quality attributes.