Especificação de Requisitos de Software Utilizando Padrões no Contexto da Engenharia de Requisitos Orientada a Aspectos
Documentos de Requisitos de Software; Orientação a Aspectos; Engenharia de Requisitos Orientada a Aspectos; Padrões de Requisitos de Software; Identificação e classificação de Interesses.
Um interesse de software consiste em um conjunto de requisitos que devem colaborar para um mesmo objetivo. Quando um interesse envolve requisitos que se encontram entrelaçados com requisitos de outros interesses, tem-se um “Interesse Transversal”, e a modularização inadequada desse tipo de interesse pode dificultar o desenvolvimento e a evolução do software. A área de Engenharia de Requisitos Orientada a Aspectos (EROA) oferece estratégias mais adequadas para identificação, classificação, representação e composição de Interesses Transversais. Um problema comumente relatado nos estudos experimentais sobre abordagens para EROA é a baixa efetividade (cobertura e precisão) proporcionada por elas, relacionadas à identificação e à classificação de interesses do software. Uma das possíveis causas para isso é a falta de preocupação com a qualidade do Documento de Requisitos de Software (DRS) antes da execução das atividades de identificação e classificação de interesses, que consiste na descoberta dos interesses a partir dos requisitos funcionais e não-funcionais, classificando-os em interesses base ou ITs. Nesse sentido, o objetivo deste trabalho foi investigar se o uso de Padrões para Requisitos de Software (PRS) para escrever DRS pode contribuir para a melhoria da efetividade da identificação e classificação de interesses em sistemas de software. Um PRS é um artefato que fornece orientações sobre como especificar requisitos funcionais, não-funcionais, de forma que possam ser reusados em contextos e problemas bem definidos. Para isso, realizou-se uma pesquisa documental para explorar o estado da arte sobre PRS e abordagens para EROA. Desenvolveu-se uma abordagem para transformar requisitos em forma de casos de uso para texto narrativo, criou-se PRS para CRUD, Segurança, Usabilidade, Desempenho e Portabilidade, bem como um apoio computacional para apoiar a execução da atividade de identificação e classificação de interesses de software. Realizou-se estudos experimentais com DRS de sistemas de software acadêmicos e reais, comparando a efetividade da ferramenta computacional com o uso de PRS e sem o uso de PRS e verificando os resultados por testes estatísticos e as medidas de cobertura, precisão e F-Measure. Os resultados indicaram que a utilização de PRS para identificação e classificação de interesses de software contribui significativamente para o aprimoramento da cobertura, precisão e F-Measure do processo de identificação e classificação de interesses a partir de requisitos de software, melhorando a eficiência e eficácia na atividade para EROA.