• Nenhum resultado encontrado

1.3 OBJETIVOS GERAIS E ESPECÍFICOS

1.3.1 Objetivos específicos

De maneira específica, este trabalho entregou e atingiu os objetivos levantados na seção 1.1, como se segue:

• Mesmo com a existência de uma variedade de modelos de avaliação e métricas de software, foi possível de forma segura avaliar e direcionar ações em nível estratégico, abstraindo a complexidade teórica para o âmbito indutrial por meio de indicadores; • Considerando o código-fonte como o principal artefato do projeto, o entendimento sobre a qualidade do software tendo como base a análise estática, trouxe a percepção para os times de que métricas são fatores para a avaliação dos projetos e não das pessoas.

• O direcionamento de ações de melhoria de forma gradual, contribuiu para o uso racional do tempo e do esforço dos recursos envolvidos em atividades de construção, trazendo uma percepção de valor para os gestores do projeto em atividades de melhoria e refatoramento.

• O esforço na aplicação do método foi abstraído pela automatização da coleta de dados e o monitoramento dos projetos de forma contínua, sendo possível direcionar ações com base em indicadores, projeções de custos, classificação e melhoria contínua em partes do sistema.

1.3.2 Fora do escopo

Alguns itens devem ser considerados como fora do escopo deste trabalho, sendo estes: • A criação de um novo modelo de avaliação de qualidade;

• A criação de novas métricas de software, sendo elas primitivas ou compostas; • A construção de ferramentas de avaliação de propósito comercial;

• Apresentar um modelo comparativo e indicativo entre diversas linguagens de pro- gramação ou tecnologias;

• Direcionar o entendimento de qualidade para uma possível migração de partes do projeto para outras tecnologias;

• A análise de outros artefatos além do código-fonte do projeto para subsidiar os resultados das avaliações.

1.4 ORGANIZAÇÃO DA TESE

O restante deste documento, está estruturado da seguinte maneira:

• No Capitulo 2, será apresentada uma Revisão de Literatura, contemplando a obten- ção das publicações que embasaram a construção desta tese.

• No Capitulo 3, serão apresentados o estado atual sobre métricas de software, modelos de monitoramento em termos de Avaliação de Qualidade de Software (AQS) e quais as iniciativas voltadas para a classificação e estimativa de custos em termos de débito técnico e juros.

• No Capitulo 4, a apresentação do método proposto, considerando: uma visão geral, a proposta, o resultado da aplicação em projetos reais, validações em 3 projetos reais nos segmentos de mídia, telecomunicações e financeiro, e por fim, os trabalhos relacionados;

• E finalmente, no Capítulo 7, as Considerações finais, contribuições e os trabalhos futuros.

1.5 TRABALHOS APRESENTADOS

Apresentação Oral. AVALIAÇÃO DE SOFTWARE BASEADO EM MÉTRICAS: UMA ABORDAGEM PRÁTICA. XII CONNEPI - Congresso Norte-Nordeste de Pesquisa e Inovação, Novembro, 2018.

Neste Capítulo serão apresentadas a construção, execução e os resultados obtidos atra- vés da análise de fontes de dados na academia, buscando situar os objetivos desta tese. Considerando as hipóteses apresentadas na Seção 1.1, o objetivo neste Capítulo está em investigar dentro da etapa de Revisão da Literatura, se os direcionamentos tomados como guia para esta tese são pertinentes.

Sendo essa revisão realizada durante o período de maio a dezembro de 2016, como ponto de partida, foi definida uma investigação na literatura oriunda da Evidence-Based Software Engineering (EBSE) proposta por (PETERSEN et al., 2008) entitulada Systematic Mapping Study (SMS). Essa metodologia é recomendada para a extração com termos abrangentes e sumarização dos resultados.

Figura 3 – Fluxo de Metodologia de Pesquisa

2.1 ESCOPO

A Definição do Cenário permite estabelecer as considerações básicas que subsidiam a construção dos Capítulos 3 e 4 desta tese. Neste passo, analisamos as hipóteses para extrairmos as questões de pesquisa, conforme os três cenários destacados abaixo:

• Cenário 1 - Avaliação de modelos de qualidade de software, relativo à Hipó- tese 1, este ponto busca entender se os modelos de avaliação de qualidade existentes são claros em termos de uso podendo suportar a tomada de decisão, ou seja, dado que um determinado projeto necessita de uma definição quanto à sua parada ou continuidade, quais as características de qualidade deveriam ser consideradas para tal decisão. Neste sentido, as ações para responder a esse item será checar o estado da arte, modelos mais relevantes e características mais referenciadas, permitindo

facilitar o entendimento sobre o que deve merecer uma maior atenção ao se tomar uma decisão não-programada;

• Cenário 2 - Análise de métricas de software e custo, relativo a Hipótese 2, o que está sendo investigado é a existencia de estudos sobre os limites pré-definidos para métricas de software, como por exemplo: qual o limite aceitável para com- plexidade ciclomática, linhas de código, acoplamento que permitam caracterizar a qualidade do software de forma prática. Neste cenário, possivelmente os valores além dos limites pré-definidos se caracterizam como não-conformidades;

• Cenário 3 - Priorização e ações de refatoramento, relativo a Hipótese 3, considera que à medida em que se constrói ou se evoluem projetos de software, consequentemente são inseridas não-conformidades que no decorrer do projeto caso não corrigidas podem afetar o desempenho das atividades de desenvolvimento. Deste modo, com o aumento do volume a ser corrigido, por onde começar, o que se priorizar e qual a efetividade dessa ação para as próximas entregas, torna-se uma decisão não- trivial. Neste sentido, a resposta que se busca é como estão sendo abordados esse tema no estado da arte.

Dado os subsídios fornecidos pelo passo anterior, neste segundo passo, Identificar Ter- mos e Palavras-Chaves, o objetivo é a elaboração de argumentos de busca mais precisos para o restante das atividades. E finalizando, o passo de Extrair Publicações da Academia faz uma verificação mais aprofundada e detalhada em fontes acadêmicas.

2.2 ESTRATÉGIA DE PESQUISA

Nesta subseção, serão descritas as estratégias tomadas para a execução da pesquisa nas fontes da academia, conforme as orientações para o desenvolvimento do SMS.

2.2.1 Questões de Pesquisa

O SMS é uma metodologia que se apoia em uma extração de dados de triagem segmentada em Questões de Pesquisa (QPs) com o propósito de identificar um fenômeno registrado na literatura. A proposta deste estudo visa identificar o estado atual no uso de métricas de software, sua propensão ao mapeamento em atributos de qualidade, bem como, o aspecto financeiro relacionado à atividade de melhoria de qualidade de software, além de mapear trabalhos relevantes ao tema que se encontram presentes até o momento na literatura. A revisão pretende responder três questões, a saber:

• (Cenário 1 - QP1) Observando o estado da arte dos modelos de avaliação de qua- lidade de software, quais os modelos mais relevantes, mais utilizados e quais as características que podem suportar uma tomada de decisão?

interna do software, quais os limites definidos no estado da arte que possam di- recionar um entendimento de não-conformidades, possivelmente gerando ações de melhoria de código em projetos de software?

• (Cenário 3 - QP3) Dado o volume de não-conformidades em projetos de software, quais as abordagens existentes que predizem ou direcionam a priorização de corre- ções ou refatoramento?

As respostas serão investigadas em fontes acadêmicas disponíveis em repositórios on- line, sendo descritas em detalhes na próxima subseção.

Documentos relacionados