Engenharia de Requisitos
Prof. Rodrigo Nin
[email protected]
1
Engenharia de Requisitos - ER
Definição
Área da Engenharia de Software que estuda o processo de
definição dos requisitos que um software deverá atender.
Objetivo
Entender as necessidades dos clientes e traduzi-las em
especificação de características e propriedades do software a
ser construído ou adquirido.
2
Custo do erro
Fase onde ocorreu o erro
Custo do erro
Fase onde o erro foi identificado
Adaptado de Pressman e Boehm
3
Custo do erro
No ramo de software, erro é regra não exceção ...
Mais de um milhão de aposentados terão que
fazer nova declaração
Cerca de 1,3 milhão de aposentados do INSS vão ter que fazer uma nova
declaração do Imposto de Renda 2005, por causa de um erro cometido pela
Previdência na hora de emitir o comprovante de rendimento. O INSS deixou de
incluir um desconto concedido pelo governo no ano passado, que reduz o valor
do rendimento tributável em cerca de R$500. Isso, torna menor o imposto
devido e aumenta a restituição de quem terá dinheiro a receber.
Já para aqueles aposentados que tinham imposto a pagar e, por causa do erro
do INSS, acabaram pagando valor maior do que deveriam, a Receita ainda está
estudando a forma como será feita a devolução do dinheiro, após o
recebimento da declaração retificadora
Fonte: O Globo Online
4
Deterioração de software
Taxa de erros
Novos erros
Curva a ser evitada
Curva ideal
Alteração
Tempo
Adaptado de Pressman
5
CMMI – Áreas de Processo
2
3
Gerenciado
• Gerência de Requisitos
• Planejamento do Projeto
• Monitoração e Controle do
Projeto
• Gerência de Acordos com
Fornecedores
• Medição e Análise
• Garantia da Qualidade do
Processo e do Produto
• Gerência de Configuração
•
•
•
•
•
•
•
•
•
Definido
Desenvolvimento de Requisitos
Solução Técnica
Integração do Produto
Verificação
Validação
Foco no Processo Organizacional
Definição do Processo Organizacional
Treinamento Organizacional
Gerência de Projeto Integrada (parte
só IPPD)
Gerência de Riscos
Integração da Equipe (IPPD)
Gerência Integrada de Fornecedores
Análise de Decisão e Resolução
Ambiente Organizacional para
Integração (IPPD)
Engenharia de Requisitos
•
•
•
•
•
http://www.sei.cmu.edu
6
CMMI – Requisitos
 Desenvolvimento de Requisitos
Objetivo: Produzir e analisar requisitos de clientes, produtos e
componentes de produtos.
 Gerência de Requisitos
Objetivo: Gerenciar os requisitos dos produtos e componentes de
produtos do projeto e identificar as inconsistências entre estes
requisitos e os planos e os produtos de trabalho do projeto.
http://www.sei.cmu.edu
7
Desenvolvimento de Requisitos
• Requisitos de clientes
• Requisitos de produtos
• Requisitos de componentes de produtos
http://www.scielo.br/scielo.php?pid=S0104-530X2000000300009&script=sci_arttext&tlng=pt
8
Desenvolvimento de Requisitos
Software
Interfaces
Algorítimos
Memória
Consultas
Cálculo A
Arquivo 1
Relatórios
Cálculo B
Arquivo 2
Entradas
de dados
Transfomação
de dados
Arquivo 3
Componente
Componente
Componente
Componente
9
Desenvolvimento de Requisitos
Gerenciamento de
Requisitos
Requisitos
Requisitos
Requisitos
Soluções
alternativas
Desenvolvimento de
Requisitos
Requisitos
Componentes
Solução
Técnica
Software
Requisitos
Verificação
Gerência de
Configuração
(componentes
integrados)
Componentes
Requisitos
Validação
Software
Cliente
Necessidades
Adaptado de http://www.sei.cmu.edu
10
A validação confirma que o produto, como fornecido,
irá atender o seu uso pretendido. Em outras palavras,
a validação assegura que “você construiu a coisa
certa”.
A verificação confirma que os produtos de trabalho
refletem de forma apropriada os requisitos que foram
especificados. Em outras palavras, a verificação
assegura que “você construiu certo a coisa”.
Adaptado de http://www.sei.cmu.edu
11
Desenvolvimento de Requisitos
Processo: Desenvolver os requisitos da solução do negócio
Objeto: Regras, necessidades, expectativas e restrições da
solução do negócio
Coletar
Levantamento
Descobrir
Transformar
em requisitos
da solução
do negócio
Produtos (na linguagem do negócio):
• Requisitos formalmente definidos
• Restrições para validação
Adaptado de http://www.sei.cmu.edu
12
Nosso Escopo
O negócio
A solução
do negócio
Pessoas
Organização
e Processos
Hardware
componentes
da solução do
negócio
Software
Materiais
Infraestrutura
Aspectos Finanças
legais e
normativos
13
Desenvolvimento de Requisitos
Processo: Desenvolver os requisitos da solução do negócio
Requisitos (na linguagem do negócio)
Decorrentes
da solução
do negócio
•
•
•
•
requisitos
requisitos
requisitos
requisitos
Decorrentes
de outros
condicionantes
Adaptado de http://www.sei.cmu.edu
•
•
•
•
•
•
funcionais
de interface
operacionais
de persistência
requisitos
requisitos
requisitos
requisitos
requisitos
etc.
financeiros
de tempo
de recursos humanos
de riscos
legais ou normativos
14
Desenvolvimento de Requisitos
Processo: Desenvolver os requisitos da solução do negócio
Modelagem da Solução do Negócio
Técnicas de registro do modelo
•
•
•
•
Modelos de Processos / Atividades
Modelos de Dados/Classes
(conceitual)
Aspectos
importantes
Modelo Vital
• Comunicação Técnicas de obtenção de informações
Etc.
• Engajamento de usuário/cliente
• Modelagem Participativa (JAD)
• Compartilhamento
da paternidade
• Brainstorming
•
•
•
•
•
•
Adaptado de http://www.sei.cmu.edu
Quality Function Deployment (QFD)
Desenvolvimento de cenários
Entrevistas, questionários
Análise de documentos
Observação dos fluxos de trabalho
Etc.
15
Desenvolvimento de Requisitos
Processo: Desenvolver os requisitos do produto
Objeto: Especificações de software,
hardware, operação e infraestrutura
Requisitos da solução do
negócio
• tecnologia
• solução técnica
• métodos e técnicas de
construção e teste
Transformar
em requisitos
do produto
Alocar requisitos
a componentes
do produto
Produtos (em linguagem técnica):
• Requisitos formalmente definidos e alocados
• Definições para verificação dos componente
Adaptado de http://www.sei.cmu.edu
16
Desenvolvimento de Requisitos
Processo: Desenvolver os requisitos do produto
Requisitos do Produto
Técnicas de registro de requisitos
• Textual
• Modelo de Casos de Uso
• Protótipos de intefaces (externas)
• Descrições de interfaces de componentes
• Descrições de algorítmos
• Etc.
Há muita interação com o desenvolvimento
da solução do produto
Adaptado de http://www.sei.cmu.edu
17
Gerência de Requisitos
OBJETIVO:
Gerenciar os requisitos dos produtos do projeto e dos componentes
do software identificando inconsistências entre os requisitos, os
planos de projeto e os artefatos produzidos
ESCOPO
Considera todos os requisitos recebidos ou gerados pelo projeto,
incluindo os requisitos técnicos e não técnicos bem como os
requisitos impostos ao projeto pela organização
Adaptado de http://www.sei.cmu.edu
18
Gerência de Requisitos
Detalhamento do Objetivo
Assegurar que o conjunto acordado de requisitos é a base
para o planejamento e a execução do projeto
Revisar os requisitos recebidos de fontes autorizadas – em conjunto
com as fontes – de modo a garantir o entendimento comum e a
consistência com outros requisitos antes de incorporar cada requisito
ao projeto
Identificar e resolver eventuais inconsistências entre alterações de
requisitos com os planos, artefatos e outros requisitos bem como
o seu impacto no planejamento e execução do projeto
Documentar as alterações de requisitos e suas motivações
Manter a rastreabilidade bidirecional entre os requisitos do
produto e os requisitos dos componentes e artefatos
Adaptado de http://www.sei.cmu.edu
19
Gerência de Requisitos
Práticas
1) Obter Entendimento sobre Requisitos
2) Obter Compromisso sobre Requisitos
3) Gerenciar Alterações nos Requisitos
4) Manter Rastreabilidade Bidirecional para os Requisitos
5) Identificar Inconsistências entre Artefatos e Requisitos
Adaptado de http://www.sei.cmu.edu
20
Gerência de Requisitos
Práticas
1) Obter Entendimento sobre Requisitos
Desenvolver um entendimento com as fontes dos requisitos
quanto ao significado de cada um
Subpráticas:
• Estabelecer critérios para distinguir fontes apropriadas de
requisitos
• Estabelecer critérios objetivos para aceitação de requisitos
• Assegurar que os requisitos alcancem os critérios estabelecidos
• Conseguir um entendimento com as fontes sobre os requisitos tal
que os participantes do projeto possam executá-los
Adaptado de http://www.sei.cmu.edu
21
Gerência de Requisitos
Práticas
2) Obter Compromisso sobre Requisitos
Obter compromisso dos interessados no projeto com os requisitos
Subpráticas:
• Avaliar o impacto dos requisitos sobre compromissos existentes
• Negociar e registrar compromissos
Adaptado de http://www.sei.cmu.edu
22
Gerência de Requisitos
Práticas
3) Gerenciar Alterações nos Requisitos
Gerenciar alterações nos requisitos na medida em que
estes evoluam durante o projeto
Subpráticas:
• Capturar todos os requisitos que foram colocados para o projeto
ou gerados por este e suas alterações
• Manter o histórico de alterações dos requisitos com as
respectivas justificativas
Adaptado de http://www.sei.cmu.edu
23
Gerência de Requisitos
Práticas
4) Manter Rastreabilidade Bidirecional para os Requisitos
Manter rastreabilidade bidirecional entre os requisitos e os
planos do projeto e artefatos
Subpráticas:
• Manter a rastreabilidade dos requisitos para garantir que a fonte
de requisitos de menor nível esteja documentada (para trás)
• Manter a rastreabilidade de um requisito para requisitos dele
derivados bem como para sua alocação em funções, objetos,
pessoas, processo e artefatos (para frente)
• Manter rastreabilidade horizontal de função para função e com
interfaces
• Gerar matriz de rastreabilidade cruzada de requisitos
Adaptado de http://www.sei.cmu.edu
24
Gerência de Requisitos
Práticas
5) Identificar Inconsistências entre Artefatos e Requisitos
Identificar inconsistências entre os requisitos e os planos do
projeto e produtos de trabalho
Subpráticas:
• Rever os planos do projeto, atividades e produtos de trabalho para
manter a consistência com as alterações nos requisitos
• Identificar a fonte das inconsistências e sua razões
• Identificar as alterações que precisam ser feitas nos planos e produtos
de trabalho decorrentes das alterações nos requisitos
• Proceder às ações corretivas pertinentes
Adaptado de http://www.sei.cmu.edu
25
Fonte: Marco Aurélio Cordeiro
26
Fonte: SERPRO - Ana-Helena-Jaelson
27
Download

Desenvolvimento de Requisitos