processos de engenharia de requisitos análise de sistemas de software prof. rodrigo ribeiro
TRANSCRIPT
Processos de Engenharia de
Requisitos
Análise de Sistemas de Software
Prof. Rodrigo Ribeiro
Engenharia de Requisitos Objetivo
Criar e manter um documento de requisitos
Possui 4 subprocessos Estudo de viabilidade
Vale a pena?
Elicitação e análise de requisitos Obtenção de requisitos
Especificação Colocar requisitos em algum formato padrão
Validação de requisitos É isso que o cliente quer?
Engenharia de Requisitos Visão tradicional
Engenharia de Requisitos Modelo em Espiral
Engenharia de Requisitos Estudo de viabilidade
Atividade breve para responder Em que o sistema contribui? Pode ser implementado na tecnologia atual? Restrições de prazo e custos Pode ser integrado com outros sistemas?
Atividade da fase de concepção Produz PESw
Engenharia de Requisitos Elicitação e análise de requisitos
Engenharia de Requisitos Elicitação e análise é formada por...
Obtenção de requisitos Interação com stakeholders para coletar requisitos
Entrevistas Oficinas de requisitos
Classificação e organização de requisitos Agrupa requisitos relacionados
Priorização e negociação de requisitos Vários stakeholders => requisitos conflitantes
Documentação de requisitos Documentação de requisitos levantados.
Engenharia de Requisitos Abordagem de pontos de vista
Organiza a AR em diferentes pontos de vista Pontos de vista
Interação Pessoas ou outros softwares que interagem com o
sistema Indiretos
Interesses de stakeholders que não usam o sistema diretamente
Domínio Características e restrições de domínio que influenciam os
requisitos do sistema
Engenharia de Requisitos Identificar esses pontos pode ser difícil...
Algumas dicas Quem recebe e fornece dados para o sistema? Existem regulamentos e padrões? Quais são os requisitos de negócio? Quais são os requisitos não funcionais? Quais são os requisitos de engenharia de software?
Engenharia de Requisitos Entrevistas
Elemento chave da Engenharia de requisitos Podem ser de dois tipos
Fechadas Stakeholder responde a um conjunto de perguntas pré-
definidas. Abertas
Sem roteiro definido
Algumas dificuldades... Especialistas do domínio usam jargão específico Especialistas do domínio acham “tudo óbvio” Problemas políticos em empresas...
Engenharia de Requisitos Bons entrevistadores ...
Possuem mente aberta Evitam idéias pré concebidas sobre requisitos Ouvem os stakeholders
Induzem os stakeholders “a falar”. Algumas empresas...
Usam psicólogos (devidamente treinados) Mas...
Só entrevistas não são um bom ponto de referência sobre requisitos...
Engenharia de Requisitos Validação de Requisitos
Requisitos realmente definem o sistema? O que deve ser feito?
Verificações de validade Verificações de consistência
Sem conflitos Verificações de completude
Requisitos definem o sistema como um todo? Verificações de realismo
É possível de fazer em termos de prazo e custo? Facilidade de verificação
Linguagem padronizada de escrita de requisitos
Engenharia de Requisitos Ok... Mas como eu faço isso?
Revisões Problema: Quem vigia o vigia?
Prototipação Casos de teste
Antes de implementar: Implementar o caso de teste Se o teste é difícil de se implementar...
Então o código também é! Re-analisar os requisitos...
Engenharia de Requisitos Gerenciamento de Requisitos
Fato: Requisitos mudam... Utilizar ferramentas que permitam a
rastreabilidade de requisitos. Armazenamento de requisitos Gerenciamento de mudanças Ligação entre requisitos e artefatos gerados por
ele. Diagramas de análise Casos de uso Código
Engenharia de Requisitos
BibliografiaEngenharia de software – SommervilleEngenharia de software – Wilson de Pádua
Cáp. 5, seção 10.2