Avaliação da Qualidade para Engenharia de Requisitos Orientada a Agentes Emanuel Batista dos Santos 11/05/2007 1 Agenda Introdução Medição de Software Engenharia de Requisitos Orientada a Agentes Medição em Modelos Orientados a Agentes Considerações Finais 2 Introdução Identificação de problemas na fase de requisitos reduz os custos para correção de defeitos [Boehm 1984] Um dos mecanismos que ajudam a identificar e corrigir defeitos é a Medição de Software A medição de software é uma prática que não é independente das demais e interfere com todos os subprocessos do desenvolvimento de software [Rifkin and Cox 1991] Medição de documentos de requisitos precisa ocorrer de forma sistemática 3 Medição de Software Qualidade é transversal a todos os processos A medição reduz a subjetividade da tomada de decisão Permite tomada de decisão baseada em dados objetivos e fatos Permite antecipação de problemas 4 Medição de Software Entender Avaliar Controlar Prever [Humphrey 1989] 5 Medição em Modelos de Qualidade PSM Processo de medição voltado para os gerencia de projeto Coleta, análise e reportagem dos dados devem ser feitas de acordo com necessidades do projeto Modelo de Informação de Medição e Processo de Medição 6 Medição em Modelos de Qualidade Norma ISO/IEC 15939 Baseado no PSM, não define como fazer só “o que” Processo é adaptação do ciclo PDCA Medição e Análise no CMMI Alinhado aos princípios do PSM e ISO 15939 Descreve um processo e atividade para executar a medição e análise 7 Medição em Modelos de Qualidade Método GQM Não é um modelo de qualidade Ajuda a definir métricas Baseado na análise top-down Objetivos Questões Métricas 8 Métricas para Engenharia de Requisitos Principais Métricas Métricas de Casos de Uso/Métricas de Tamanho Métricas de Rastreabilidade Métricas de Completude Métricas de Volatilidade 9 Engenharia de Requisitos Orientada a Agentes Utiliza o agente/ator como principal abstração Permite modelar sistemas complexos através de uma metáfora social Captura características como requisitos nãofuncionais e organizacionais de forma explicita 10 Engenharia de Requisitos Orientada a Agentes Framework i* [Yu 1995] Framework de modelagem orientada a agentes É usado para representar relacionamentos entre atores estratégicos em uma rede social Captura Requisitos Organizacionais e Requisitos Não-Funcionais de forma explícita 11 [Castro 2002] 12 [Castro 2002] 13 [Castro 2002] 14 Medição de Modelos I* Por que medir modelos i*? Entender Prever Avaliar Controlar Para medir é necessário a definição do objetivo do que se quer medir e de métricas para isso 15 Medição em Modelos Orientados a Agentes Abordagem de Xavier Franch [Franch 2006] Medir modelos através da atribuição de scores para o modelo Permite atribuir valor de forma sistemática a modelos orientados a agentes Pode ser usada para comparar possíveis soluções de acordo com um critério Medição estrutural 16 Medição em Modelos Orientados a Agentes Passo-a-Passo Define um atributo de qualidade a ser medido Atribui pesos para ligações entre atores i* Conta atores e dependências entre atores Calcula score em função dos pesos e da contagem Função do score não precisa ser linear 17 Medição em Modelos Orientados a Agentes Atributos de qualidade que podem ser medidos Habilidade, Capacidade de trabalho, Comprometimento Previsibilidade, Segurança, Adaptatividade, Modularidade Corretude, Completude, Verificabilidade, Modificabilidade e Rastreabilidade 18 Exemplo de Medição Medição da previsibilidade de um documento [Franch 2006] Medir se o software se comportará como o esperado Parte da hipótese de que quanto menos atores humanos estiverem envolvidos melhor será a chance do sistema se comportar como esperado 19 Exemplo de Medição Indicadores de Medição Previsibilidade dos Atores Previsibilidade das Tarefas e Metas Mede a quantidade de dependências próprias que o ator está envolvido Mede a quantidade de Tarefas e Metas que estão nas dependências e na parte interna do ator Score do modelo Combina os valores dos indicadores 20 Ator de Software Ator de Humano [Castro 2002] 21 Humano - Software Humano - Humano Software - Software [Castro 2002] 22 Exemplo de Medição 23 Medição em Modelos Orientados a Agentes AGORA [Kaiya 2002] baseada em objetivos e avalia a qualidade da especificação de requisitos em função de fatores: Corretude Não ambigüidade Completude Consistência Verificabilidade Modificabilidade Rastreabilidade Grau de importância e estabilidade 24 Medição em Modelos Orientados a Agentes AGORA Utiliza pesos para medir as decomposições em modelos feitos usando um metodologia própria Cada meta principal é avaliada segundo a contribuição das submetas São atribuídos pesos para as submetas entre -10 e 10 A avaliação dos resultados se dá através da ligação entre os indicadores e os atributos de qualidade 25 Considerações Finais Medição é uma atividade necessária e importante na engenharia de requisitos Orientada a Agentes Ela permite avaliar e melhorar modelos desenvolvidos Medição para EROA é uma atividade ainda a ser melhor explorada 26 Referências [Castro 2002] Castro, J. Kolp, M., Mylopoulos, J.: Towards Requirements-Driven Information Systems Engineering: The Tropos Project. Information Systems Journal, 27: 365-89. 2002. [Humphrey 1989] Humphrey W. S., “Managing the Software Process”, Addison Wesley, 1989 [Boehm 84] B.W. Boehm, “Verifying and validating software requirements and design specification.” IEEE software Vol 1 pp94-103, Jan 1984. [Kaiya 2002] Kaiya, H.; Horai, H.; Saeki, M.; “AGORA: Attributed Goal-Oriented Requirements Analysis Method”. 10th IEEE Internacional Requirements Engineering Conference, University of Essen. 2002 Rifkin, S. and Cox, C. (1991). Measurement in practice. Technical Report CMU/SEI-91-TR-016, Software Engineering Institute. 27 Perguntas ? 28