• Nenhum resultado encontrado

A avaliação da qualidade no contexto de linhas de produto de software é essencial, uma vez que um erro ou uma incompatibilidade em um ativo reutilizável pode ser propagado para um lote de produtos. Neste sentido, a avaliação da qualidade em LPSs possui alguns desafios que não estão presentes no desenvolvimento de software tradicional (ETXEBERRIA; SAGARDUI, 2008b).

Segundo Clements P. e Northrop (2002), a avaliação de uma LPS deve se concentrar nas variabilidades, garantindo assim, que sejam apropriadas, ofereçam flexibilidade suficiente para o escopo da LPS, possam ser exercitadas para derivar os produtos específicos e não imponham custos de desempenho inaceitáveis em tempo de execução.

Em uma linha de produtos de software, os requisitos dos atributos de qualidade podem ser classificados em dois tipos diferentes (ETXEBERRIA; SAGARDUI, 2005):

• Atributos de qualidade da linha de produto: são atributos considerados de desenvol- vimento ou não observáveis através de execução. São aqueles que são intrínsecos ou específicos para linhas de produtos. Estes atributos são aqueles relacionados à variabili- dade ou flexibilidade. A avaliação da variabilidade de uma linha de produto garante que é possível obter todas as funcionalidades dos produtos em um escopo imaginado. e

• Atributos de qualidade relevantes ao domínio: geralmente são observáveis através da execução do produto de software. Os atributos de qualidade relevantes ao domínio (como a segurança em um domínio de segurança crítica, o desempenho em sistemas de tempo real, entre outros) também devem ser abordados na linha de produtos. Caso contrário, as implicações ou consequências podem ser muito graves e de difícil correção. Como produtos distintos podem exigir valores de atributos diferentes (nem todos os produtos requerem o mesmo nível de segurança, por exemplo), a variabilidade, na forma como o atributo é traduzido para o produto, é relevante para a avaliação.

Muitos dos estudos em avaliação da qualidade em LPSs têm investigado os atributos de qualidade da linha de produto, mas do ponto de vista da arquitetura na engenharia de domínio (MATINLASSI et al., 2002; ETXEBERRIA; SAGARDUI, 2005; OLUMOFIN; MIŠI ´C, 2007; KIM et al., 2008; JUNIOR et al., 2013). Poucas pesquisas têm se concentrado na avaliação de qualidade dos atributos de qualidade do modelo de features (THÖRN, 2007; BAGHERI E. E GASEVIC, 2011; ZHANG et al., 2014).

Etxeberria and Sagardui (ETXEBERRIA; SAGARDUI, 2005) classificam essas técnicas em dois grupos:

• Técnicas de Questionários para Avaliação Qualitativa: incluem cenários, questionários e checklists. Podem ser usadas para avaliar a qualidade de desenvolvimento ou operacional; e

• Técnicas de Medição para Avaliação Quantitativa: incluem simulação, prototipagem, modelos matemáticos e experimentais. Podem ser usadas para medir a aplicação de técnicas que englobam qualidades específicas, normalmente operacionais.

Segundo Etxeberria e Sagardui (ETXEBERRIA; SAGARDUI, 2008b), a avaliação de qualidade pode ser realizada em diferentes fases: nas fases iniciais, relacionadas à engenharia de domínio, como, por exemplo, na fase de design (métodos de avaliação de arquitetura de software), ou em fases relacionadas à engenharia de aplicação (métodos de medição de qualidade). Para reduzir custos e aumentar a qualidade dos artefatos e dos produtos da linha, a avaliação de qualidade deve ser aplicada em fases iniciais da linha, mais especificamente na Engenharia de Domínio. Muitos trabalhos têm investigado a avaliação de qualidade da arquitetura da LPS, mas pouco se tem pesquisado acerca da avaliação da qualidade do modelo de features. Devido a essa limitação, novas pesquisas nesse tema são necessárias.

Durante a realização desta Tese, não foram encontrados na literatura estudos ou abordagens que tivessem por objetivo principal a avaliação da qualidade dos modelos de features de LPSD a partir da utilização de medições.

Porém, foram encontrados alguns trabalhos que utilizam medidas para avaliar LPSDs (SALLER et al., 2013; ALFÉREZ et al., 2014a). A maior parte dos trabalhos de avaliação de LPSDs concentra-se na verificação e validação da variabilidade dinâmica do modelo de features (CAPILLA; BOSCH, 2011; MARINHO et al., 2012; ALFÉREZ et al., 2014a). Dessa forma, existe uma lacuna na área de avaliação de qualidade do modelo de features em LPSs e LPSDs.

3.6 Conclusões

Neste capítulo foram apresentados os principais conceitos relacionados à avaliação da qualidade do produto, modelos de qualidade e medições de software. Foram apresentados os principais modelos de qualidade encontrados na literatura. Dentre os modelos de qualidade apresentados, foi detalhado o modelo de qualidade SQuaRE, utilizado como base nesta Tese de doutorado. Além disso, foram apresentados os principais conceitos sobre medição de software.

Por fim, foram destacados os principais conceitos acerca da avaliação da qualidade em LPSs e LPSDs.

4 TRABALHOS RELACIONADOS

Este capítulo apresenta os principais trabalhos relacionados à tese de doutorado. Na Seção 4.1 é descrita uma introdução sobre estratégias e abordagens para avaliação da qualidade em LPSs e LPSDs. A Seção 4.2 apresenta as abordagens de avaliação de qualidade para o modelo de features de LPSs. Na Seção 4.3 e na Seção 4.4 são apresentados estudos que aplicam medidas para avaliar o modelo de features de LPSs e LPSDs, respectivamente. Na Seção 4.5 são apresentadas ferramentas para avaliação da qualidade do modelo de features. Em seguida, na Seção 4.6 é apresentada a comparação entre os trabalhos relacionados. Finalmente, na Seção 4.7 são apresentadas as conclusões do capítulo.

4.1 Introdução

Muitas abordagens de avaliação da qualidade em LPSs têm sido propostas ao longo dos últimos anos (OLUMOFIN; MIŠI ´C, 2007; CUEVAS et al., 2007; TRINIDAD et al., 2008; KIM et al., 2008; MENDONCA et al., 2009a; BAGHERI E. E GASEVIC, 2011; JUNIOR et al., 2013).

Montagud e Abrahão (MONTAGUD; ABRAHãO, 2009) executaram uma revisão sistemática compilando o conhecimento sobre avaliação da qualidade em LPSs. Dentre os dados extraídos dos estudos primários identificados nesta revisão tem-se as abordagens de avaliação da qualidade, as fases do ciclo de vida, os artefatos avaliados, os mecanismos usados para capturar os atributos de qualidade, o tipo de atributo de qualidade avaliado, a conformidade com padrões de qualidade, o suporte à avaliação e o procedimento de avaliação. Nesse estudo foi verificado que a maior parte dos modelos de avaliação da qualidade se concentram na fase de arquitetura da engenharia de domínio da LPS (OLUMOFIN; MIŠI ´C, 2007; KIM et al., 2008; JUNIOR et al., 2013), poucos estudos tem avaliado o modelo de features (TRINIDAD et al., 2008; BAGHERI E. E GASEVIC, 2011). Poucas ferramentas de suporte à avaliação da qualidade foram identificadas na revisão (e.g., (CUEVAS et al., 2007; TRINIDAD et al., 2008; MENDONCA et al., 2009a)), e algumas ferramentas identificadas apenas suportam a análise semi-automática da avaliação da arquitetura. A maior parte dos estudos também não utiliza padrões e normas de conformidade, como o SQuaRE (ISO/IEC, 2014), para avaliação da qualidade (OLUMOFIN; MIŠI ´C, 2007; TRINIDAD et al., 2008; MENDONCA et al., 2009a; JUNIOR et al., 2013).

linhas de produto de software. Nesse estudo, algumas abordagens identificadas estão relacionadas à abordagens e estudos sobre testes em LPSs (KIM et al., 2012; KÄSTNER et al., 2012; NGUYEN et al., 2014; SANTOS et al., 2015). Outras abordagens identificadas no survey e na literatura estão relacionadas à verificação e análise automática do modelo de features (BENAVIDES et al., 2010; MARINHO et al., 2012; ASADI et al., 2016). Além disso, outros estudos identificados apresentam medidas para avaliar o modelo de features de LPSs (BAGHERI E. E GASEVIC, 2011; MONTAGUD et al., 2012; BERGER T. E GUO, 2014; OLIINYK et al., 2015; BEZERRA et al., 2015).

A avaliação da qualidade em LPSDs ainda é um tema recente e possui maiores desafios que a avaliação da qualidade em LPSs, devido à variabilidade dinâmica das LPSDs. Foram identificados na literatura alguns estudos que tratam da verificação das LPSDs em tempo de execução (PASCUAL et al., 2015; LOCHAU et al., 2015). Também foram identificados outros estudos que propuseram abordagens para o modelo de features em LPSDs e avaliaram essas abordagens com medidas específicas (CETINA et al., 2009b; SALLER et al., 2013; ALFÉREZ et al., 2014a). No entanto, não foram identificadas na literatura abordagens de avaliação da qualidade para o modelo de features de LPSDs baseada em medidas.

Nesta Tese de doutorado são usados apenas os estudos relacionados à avaliação de qualidade do modelo de features em LPSs e LPSDs utilizando medidas. Dessa forma, são discutidos de forma mais detalhada, os trabalhos de LPSs e LPSDs que estão relacionados à avaliação da qualidade do modelo de features baseados em medidas. Esses trabalhos foram agrupados para discussão em quatro tópicos e discutidos nas próximas seções: abordagens para avaliação da qualidade do modelos de features, estudos relacionados à medidas para o modelo de features de LPSs, estudos que apresentam medidas para o modelo de features de LPSDs e ferramentas para avaliação da qualidade do modelo de features.