Engenharia de Requisitos: Software - FATTO Consultoria...
Transcript of Engenharia de Requisitos: Software - FATTO Consultoria...
FATTO CONSULTORIA E SISTEMAS
Guilherme Siqueira Simões 12/04/2016
1
Engenharia de Requisitos: Software Orientado ao Negócio
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 2
Dê preferência ao uso de uma conexão de banda larga
O evento não fará uso do vídeo (webcam), somente slides e áudio
Se necessário, ajuste o idioma da sala na barra de ferramentas superior
O evento terá ~45 min. de apresentação e ~15 min. finais para perguntas
Você pode mandar suas perguntas pelo chat ao longo da apresentação
Para aqueles que possuem certificação PMP, o evento vale 1 PDU
A apresentação será gravada e tanto slides e vídeo publicados posteriormente no site e redes sociais:
ORIENTAÇÕES INICIAIS
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 3
MISSÃO
Estimativas e Medição de Projetos de Software
Implantação da Análise de Pontos de Função (IFPUG, NESMA , COSMIC)
Auditoria de Medições de Projetos de Software Medidos com APF
Benchmarking e Análises de produtividade
Avaliação para Melhoria dos Processos de Software
Engenharia de Requisitos
Planejamento e avaliação do desempenho (Escopo, Esforço, custo, prazo, qualidade)
Construção e Monitoramento de Contratos de Software baseados em Resultados
Integração do Desenvolvimento Ágil com a Governança Corporativa de TI usando Métricas Funcionais
DIRECIONAMENTO ESTRATÉGICO COM:
Apoiar nossos clientes a ter mais visibilidade do desempenho de seus processos de software e a estabelecer modelos de negócios em que eles tenham o controle sobre os mesmos.
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 4
Engenharia de Requisitos de Software 24 horas
Estimativa de Projetos de Software com o COCOMOII
16 horas
Oficina de Contagem de Pontos de Função
Sessões de 8 ~ 40 horas
Gestão de Riscos em Projetos 16 horas
Oficina de Requisitos Sessões de 8 ~ 40 horas
Introdução ao Gerenciamento de Projetos 16 horas
Medição e Estimativa de Software com o Método COSMIC
16 horas (Presencial)
Preparação para o Exame CFPS
96 horas (EAD e presencial)
APF: Fundamentos, Benefícios e Implantação 8 horas (EAD e presencial)
Capacitação em APF: Medição e
Estimativa de Software 16 horas (EAD e presencial)
Workshop APF: Metodologia
e Práticas de Medição 16 horas (Presencial)
FORMAÇÃO PROFISSIONAL
O livro mais vendido de APF no país foi escrito por nós
Formou ~25% de especialistas certificados pelo IFPUG no Brasil
Representante do Scope Project Sizing Software
Engenharia de Requisitos: Software Orientado ao Negócio
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 5
Objetivos desta apresentação
O que é Engenharia de Requisitos
A importância da Engenharia de Requisitos
O que é requisito de software
Os tipos de requisitos
Os grupos de atividades da Engenharia de Requisitos
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 6
Engenharia de Software
(1) a aplicação de uma abordagem sistemática, disciplinada, quantificável para o desenvolvimento, operação e manutenção de software, ou seja a aplicação de engenharia ao software.
(2) o estudo de abordagens como em (1).
A Engenharia de Requisitos como parte da Engenharia de Software
7 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
As estratégias de desenvolvimento organizam-se a partir das disciplinas
8
Disciplinas são categorias que
agregam atividades similares.
Não há ordem entre as
disciplinas.
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Esforço por Disciplina no Processo Unificado
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 9
Disciplina da Engenharia de Software que consiste no uso sistemático e repetitivo de técnicas para cobrir atividades de Obtenção, Documentação, Manutenção de um conjunto de requisitos para software que atendam
aos objetivos de negócio e sejam de qualidade*
O que é Engenharia de Requisitos
10 * Veja youtu.be/d8XmSaER2F4
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 10
47% dos projetos fracassados tem como causa gestão de requisitos deficiente
Sintomas diretos ou indiretos desta deficiência:
– Scope Creep
– Comunicação deficiente
– Baixo envolvimento de partes interessadas e
– Suporte inadequado do patrocinador
Organizações de baixo desempenho desperdiçam quase 10 vezes mais que as de alto desempenho
Causas de fracasso em projetos*
11
*PMI’s Pulse of the Profession: Requirements Management
A Core Competency for Project and Program Success - 2014
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Origem dos defeitos
12
~40% do orçamento total dos projetos é
gasto em retrabalho. Em
projetos maiores, ~50%
Encontrar e corrigir erros originados em requisitos consome entre 70 e 85%
do custo total de retrabalho do projeto em função de sua quantidade
e efeito multiplicativo
Software Defects Origins and
Removal Methods Capers Jones -
2014
Em um estudo mais recente, Capers
Jones afirma que 20% dos defeitos
têm origem no trabalho de requisitos
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Custo de reparo de defeitos conforme o ponto que surgem
13
Custo unitário para detectar e reparar um erro durante a codificação
Leffingwell, D; “Calculating the Return on Investment
from More Effective Requirements Management”;
American Programmer 10(4); 13-16; 1997.
Software Defect Reduction – Top 10 List Barry
Boehm y Victor Basili - 2001 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Definição de Requisito
(1) uma condição ou capacidade necessária por um usuário para resolver um problema ou alcançar um objetivo.
(2) uma condição ou capacidade que deve ser atingida ou possuída por um sistema ou componente de um sistema para satisfazer um contrato, padrão, especificação ou outro documento formalmente imposto
(3) uma representação documentada de uma condição ou capacidade como em (1) ou (2)
14
...ou Especificação de Requisitos
desejo (projeto)
produto
Documentação das capacidades do projeto ou produto
ISO/IEC/IEEE 24765
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Domínio do
Problema
Domínio da
Solução
Ref
inam
ento
Nív
el d
e In
form
ação
requisitos das partes interessadas
fundamentados por
requisitos (ou necessidades)
de negócio – “porque”
15
fundamentados por
requisitos da solução requisitos de transição
fundamentados por
Não Funcionais
“como”
“o quê”
Funcionais
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Tipos de Requisito
…ou: razões pelas quais um projeto é iniciado
Requisitos de Negócio
A contínua mudança no equilíbrio entre as forças em que a organização está inserida cria novas necessidades de negócio
Problemas a serem resolvidos
Oportunidades a serem aproveitadas
Relacionadas a
Alterações que se deseja operar
Manutenção das condições atuais
Definem métricas usadas para medir o sucesso do projeto
Ex.: Reduzir 90% da devolução de cartas por endereço incompleto (problema)
Ex.: Aumentar 20% da receita do produto A com serviços em mobile (oportunidade)
Descrevem
metas e objetivos
que uma organização pretende atingir
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 16
Atender aos requisitos de negócio é o que satisfaz ao cliente
Quando se conhece os reais requisitos de negócio, há mais liberdade para se imaginar possíveis soluções para o problema
Os requisitos de negócio ajudam a priorizar os projetos
Os requisitos de negócio norteiam toda a Engenharia de Requisitos
– São o ponto de partida do trabalho do analista de requisitos
– Ajudam a perceber qualquer desvio de escopo durante o levantamento e análise dos requisitos
– Todos os requisitos da solução devem estar relacionados a ao menos um dos requisito de negócio
Requisitos de Negócio – E daí?
17 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Domínio do
Problema
Domínio da
Solução
Ref
inam
ento
Nív
el d
e In
form
ação
requisitos das partes interessadas
fundamentados por
requisitos (ou necessidades)
de negócio – “porque”
Requisitos das Partes Interessadas
18
fundamentados por
requisitos da solução requisitos de transição
fundamentados por
Não Funcionais
“como”
“o quê”
Funcionais
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Descrevem necessidades e como será a interação de uma parte interessada com a solução
– Registrados em memórias de levantamento, em geral de forma não estruturada (gravações, atas, notas, etc.)
Produto do trabalho de Elicitação de Requisitos
Ponte entre os requisitos de negócio e os da solução
O conjunto dos requisitos das partes interessadas pode ter
– Requisitos similares podem ser unificados
– Requisitos em conflito devem ser resolvidos
Matéria prima para a Análise de Requisitos
Requisitos das Partes Interessadas
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 19
Domínio do
Problema
Domínio da
Solução
Ref
inam
ento
Nív
el d
e In
form
ação
requisitos das partes interessadas
fundamentados por
requisitos (ou necessidades)
de negócio – “porque”
Requisitos de Solução e Transição
20
fundamentados por
requisitos da solução requisitos de transição
fundamentados por
Não Funcionais
“como”
“o quê”
Funcionais
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Necessários para a transição da solução atual para a nova solução entrar plenamente em operação
Diferem dos demais tipos de requisitos pois são relevantes apenas durante o período de transição da solução atual para a nova. Ou seja, são descartados após o projeto, têm caráter temporário
Ex.: Os dados de contrato deverão ser migrados do sistema legado para o novo sistema
Requisitos de Transição
21 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Os requisitos da solução e da transição subdividem-se em
Requisitos da Solução e Transição
Descrevem o quê o software faz: processos ou tarefas da solução (e
da transição) que suportam uma prática ou procedimento de uma parte
interessada
Expressam atributos ou restrições inerentes aos
requisitos funcionais e como eles serão atendidos
22
Não Funcionais
“como”
“o quê”
Funcionais
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Descrevem o quê a solução (ou transição) deve fazer em termos das tarefas ou serviços do usuário, sem abordar sua implementação
Exemplos
– Efetuar gestão dos cursos
– Emitir certificado de participação do aluno no curso
– Somente alunos com frequência ≥ 75% podem emitir seu certificado
Percebam que estes 3 requisitos funcionais tem diferentes níveis de objetivo (ou granularidade)…
Requisitos Funcionais
23 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Níveis de Objetivo dos RFs (Granularidade)
Writing Effective Use Cases , Alistair Cockburn
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 24
A evolução natural dos requisitos é caminhar de objetivos mais gerais para mais específicos e com maior detalhamento
Na especificação de requisitos é improvável que se tenha todos os RFs especificados no mesmo nível de granularidade
Perceber o nível de granularidade ajuda ao analista encontrar o detalhamento adequado para a especificação de requisitos
Nível de Granularidade – e daí?
25 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Abordam COMO as funcionalidades serão oferecidas ao usuário
Incluem aspectos relacionados a
– Qualidade: usabilidade, confiabilidade, eficiência, portabilidade, facilidade de manutenção
– Implementação: plataforma de software, hardware, linguagem de programação.
– Ambiente: interoperabilidade, segurança, privacidade, sigilo
– Organização: locais para operação, hardware alvo, aderência a padrões. Exemplo de padrões no governo federal:
Padrões Web em Governo Eletrônico – e-PWG
Modelo de Acessibilidade de Governo Eletrônico – e-Mag
Arquitetura de Interoperabilidade de Governo Eletrônico – e-PING
Requisitos Não Funcionais – O que
26 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
A classificação dos tipos de requisitos não funcionais é útil para apoiar o seu trabalho de identificação
– o uso de listas de verificação para isso é muito eficaz
Não há consenso na literatura quanto à essa classificação
–Cada organização pode definir categorias para o seu contexto
Alguns modelos podem ser usados para essa definição local:
– ISO/IEC 25010 (SQUaRE)
– FURPS e FURPS+
Não se preocupe se classificar incorretamente o requisito; o importante é que ele seja identificado!
Requisitos Não Funcionais
27 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Qualidade do Sistema/Software
Adequação Funcional
Completude Funcional
Correção Funcional
Conformidade Funcional
Eficiência
Tempo de resposta
Utilização de Recursos
Capacidade
Compatibilidade
Coexistência
Usabilidade Confiabi lidade
Segurança Portabi lidade
Manuteni bilidade
Reconhecimento Adequado
Facilidade de Aprendizado
Operabilidade
Proteção a Erros de Usuário
Estética da Interface
Acessibilidade
Maturidade
Disponibilidade
Tolerância a erros
Recuperabilidade
Confidencialidade
Integridade
Irrefutabilidade
Responsabilidade
Autenticidade
Modularidade
Reusabilidade
Análise
Mudanças
Teste
Adaptação
Instalação
Troca Interoperabilidade
ISO/IEC 25010 SQuaRE (Systems and software Quality Requirements and Evaluation)
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 28
Functionality (Funcionalidade)
Usability (Usabilidade)
Reliability (Confiabilidade)
Performance (Desempenho)
Supportability (Suportabilidade)
FURPS e FURPS+
29
Parte do IBM Rational Unified Process (RUP)
+
Restrições de projeto
Restrições de implementação
Restrições de interface
Restrições físicas
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Elicitação Análise de Requisitos
Gerência de Requisitos
Grupos de Atividades
30
Entende o contexto e necessidades de um conjunto de partes interessadas
Documenta, modela, classifica em grupos coerentes, verifica e valida os requisitos
Administra conflitos, problemas e mudanças a fim de garantir o acordo sobre o escopo da solução, prioriza requisitos, identificando a melhor forma de comunicar os requisitos e a maneira como será mantido o conhecimento obtido para uso futuro
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Grupos de Atividades
31
Elicitação Análise de Requisitos
Gerência de Requisitos
Mudanças
Informações
Requisitos
Pesquisa, investiga necessidades
Organiza, especifica, verifica e valida
Administra conflitos e mudanças, busca aprovação, prioriza
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
Requisitos Partes
Interessadas Requisitos Solução + Transição
Para saber mais
Curso: Engenharia de Requisitos: Software Orientado ao Negócio
– On-line: http://fattocs.com/pt/ereq-ead
– Manaus: 18 a 20/04/16
– Curitiba: 03 a 05/05/16
– Brasília: 10 a 12/05/16
– Belém: 10 a 13/05/16
– Rio de Janeiro: 20 a 24/06/16
– São Paulo: 01 a 03/08/16
– Belo Horizonte: 23 a 25/08/16
Webinars:
– Dificuldades ao lidar com requisitos (youtu.be/mckx4m95Z88)
– Qualidade em Requisito (youtu.be/d8XmSaER2F4)
Grupo de discussão: Engenharia de Requisitos
– https://br.groups.yahoo.com/groups/engenharia-requisitos
32 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
33
AVALIAÇÃO DO EVENTO
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
34
PRÓXIMOS EVENTOS • WEBINARS:
Estimativas precisas: Soluções para o planejamento e controle de
software – COCOMO II
Data: 17/05/16 às 20h Inscrição: https://goo.gl/OeF6qw
Caso Prático de Análise de Pontos de Função de um app Google
Data: 28/06/16 às 20h Inscrição: https://goo.gl/moXU8Y
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com
35
PERGUNTAS?
Brasília: (61) 4063-7484 São Paulo: (11) 4063-4658
Vitória: (27) 3026-6304 Rio de Janeiro: (21) 4063-5311
Obrigado pela sua atenção!
Guilherme Siqueira Simões [email protected]
www.linkedin.com/in/guilhermesimoes Skype: guilherme.s.simoes
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com