FATTO CONSULTORIA E SISTEMASfattocs.com/files/pt/apresentacoes/2017.04-SNAP-Cadu.pdf · Objetivos ....
Transcript of FATTO CONSULTORIA E SISTEMASfattocs.com/files/pt/apresentacoes/2017.04-SNAP-Cadu.pdf · Objetivos ....
FATTO CONSULTORIA E SISTEMAS
Carlos Eduardo Vazquez
21/03/2015
1 © 2016 FATTO Consultoria e Sistemas | www.fattocs.com
1
© 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 o vídeo publicado 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, COSMIC e SNAP
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 com Métricas
DIRECIONAMENTO ESTRATÉGICO COM:
Apoiar nossos clientes a estabelecer modelos de negócios em que eles tenham o controle
e trazer visibilidade do desempenho para a gestão de seus processos de software.
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 4
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
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 Análise de
Pontos de Função: Medição
e Estimativas de Software
16 horas (EAD e presencial)
Workshop APF:
Metodologia e
Práticas de Medição
16 horas (presencial)
Processo de Avaliação não
Funcional de Software
(SNAP)
16 horas
Engenharia de
Requisitos: Software
orientado ao negócio
24 horas
Estimativas de
Software com o
COCOMOII
16 horas
Oficina de Medição
Sessões de 8 ~ 40 horas
Medição e Estimativas de
Software com o Método
COSMIC
16 horas (presencial)
Oficina de
Requisitos
Sessões de 8 ~ 40
horas
Preparação para
o Exame CCFL
16 horas (EAD e presencial)
IFPUG
IFPUG
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 5
1... 2... 3!
1. Despertar no público a consciência sobre a problemática
dos Requisitos não Funcionais como entendidos pelo IFPUG
e a variabilidade que introduzem
2. Apresentar a estratégia para lidar com essa variabilidade
pela medição de “Requisitos Não Funcionais”
3. Apresentar o SNAP como solução para medir os elementos
do projeto que que introduzem essa variabilidade nos
modelos de estimativa baseados apenas em PF
Objetivos
Introdução
01. Objetivos
Requisitos de software: a estratégia de classificação de software,
produto e projeto
Custeio de software pela apropriação direta de custos com a medição
de requisitos funcionais
A necessidade de ir além da apropriação indireta com a medição dos
requisitos não funcionais
Uma solução que mede parte dos requisitos não funcionais em conjunto
com a APF
© FATTO Consultoria e Sistemas – www.fattocs.com 7
Requisitos de software: a estratégia de classificação de
software, produto e projeto
© FATTO Consultoria e Sistemas – www.fattocs.com 8
Requisitos Funcionais de Software (RF)
Subconjunto dos requisitos do usuário.
Descreve o que o produto de software
deve fazer - tarefas e serviços
Qualquer requisito para o produto de software, incluindo
como ele deveria ser desenvolvido, mantido e operado,
exceto qualquer requisito funcional
Transferência de dados
Transformação de dados
Armazenamento de dados
Recuperação de dados
Requisitos não Funcionais de Software (RNF)
Requisitos e Restrições de Projeto
Características do ambiente no
qual ele é desenvolvido, mantido e
que o deve suportar em operação
Am
bie
nte
Requisitos que definem como o projeto de software deveria ser gerenciado
ou restrições que afetam o seu desempenho
Requisitos de projeto podem incluir:
Processos de GP usados
Governança e custeio do projeto
Metas que deveria atingir
Restrições de projeto podem incluir:
Limitações de recursos
Dependências com outros projetos
Qu
alid
ad
e
Requisitos para a
qualidade ou para a
arquitetura ou design
pro
ce
ss
os
e t
ec
no
log
ia
Requisitos para como ele
será construído
Tecnologia de hardeware e
comunicações que
necessitará em operação
Custeio de software pela apropriação direta de custos com
a medição de requisitos funcionais
© FATTO Consultoria e Sistemas – www.fattocs.com 9
Requisitos
Funcionais de
Software (RF)
Requisitos não
Funcionais de
Software (RNF)
Requisitos e
Restrições de
Projeto
APF PF HH /
PF
Seleção de Índice de Produtividade
X =
PF
1. Requisitos
Funcionais são
medidos pela
APF
2. Custeio baseado
na apropriação
direta de custos
por PF
3. Outros fatores tem o
custeio rateado no
custo unitário expresso
em HH/PF
HH
4. A diferença entre o
resultado do modelo de
custeio e o efetivado é o
erro
5. É natural haver erros, porque há
variabilidade nos requisitos não
funcionais, nos reqisitos e restrições
do projeto e no desempenho
HH
Efetivo
6. Mas quanto da
variabilidade é fruto de
desvio de desempenho e
quanto é fruto de outros
requisitos?
HH
Projetado
A necessidade de ir além da apropriação indireta com a
medição dos requisitos não funcionais
© FATTO Consultoria e Sistemas – www.fattocs.com 10
9. Quanto mais requisitos
puderem ser medidos, mais
fácil segregar
Impacto outros requisitos diferentes
da média usada no rateio
Impacto em função de problemas ou
oportunidades relativos ao
desempenho
Requisitos não
Funcionais de
Software (RNF)
Requisitos e
Restrições de
Projeto
Desempenho
7. Parte da variabilidade não representa
um problema ou oportunidade de
melhoria a ser abordada
8. Parte da
variabilidade
representa Parte dos
Requisitos não
Funcionais de
Software (RNF)
10. Cada tipo de requisito
medido, permite uma
apropriação direta de custos
Solução que mede parte dos RNF em conjunto com a APF
© FATTO Consultoria e Sistemas – www.fattocs.com 11
Requisitos
Funcionais de
Software (RF)
Requisitos não
Funcionais de
Software (RNF)
Requisitos e
Restrições de
Projeto
APF PF HH /
PF X =
11. Método de medição a ser aprendido
13. Custo apropriado a
partir dos requisitos
funcionais medidos pela
APF
HH
SP SNAP HH /
SP X = HH
Seleção de Índice de Produtividade
HH
+
14. Custo apropriado a
partir dos requisitos não
funcionais medidos pelo
SNAP
12. Unidade na qual os
resultados são expressos
15. Custo total resultante
do modelo
16. A cuidadosa seleção de
indicadores conforme a
similaridade ainda é necessária
para melhor identificar problemas
o oportunidades de melhoria
Framework de Medição de Requisitos não Funcionais do
IFPUG
02. Objetivos
O que é SNAP e o Ponto de SNAP (SP)
Visão geral do Framework, suas Categorias e Subcategorias
O que é uma Categoria no SNAP
O que é uma Subcategoria no SNAP
A estrutura do Framework de Medição
Associação entre RNF e o Framework de Medição pelo projeto (como)
O que é a Unidade de Contagem SNAP (SCU)
Outros requisitos que afetam o esforço, desconsiderados na medição
© FATTO Consultoria e Sistemas – www.fattocs.com 12
O que é SNAP e o Ponto de SNAP (SP)
• APM
–Manual de Práticas de Avaliação
(Assessment Process Manual)
• SP
–Pontos de SNAP (SNAP Points)
Resultado do Projeto do Framework para
a Medição não Funcional - Framework
for Non-Functional Sizing (2008)
© FATTO Consultoria e Sistemas – www.fattocs.com 13
Requisitos não
Funcionais de
Software (RNF) SP SNAP
Processo de Avaliação Não
Funcional de Software Software Non-Functional
Assessment Process
Visão geral do Framework
Objetivo: Fornecer um framework para estabelecer um vínculo entre o tamanho não
funcional e o esforço para atender requisitos não funcionais
Framework de Medição
• É uma avaliação do tamanho dos requisitos não funcionais
• Composto por categorias e subcategorias de avaliação
• Subcategorias são avaliadas usando critérios especificados
• A avaliação utiliza tanto critérios medidos quanto avaliados
Resultados da avaliação não funcional
• Podem ser usados em conjunto com o tamanho funcional
• Ajudarão a explicar a variação no esforço de desenvolvimento e na produtividade
• Conjuntamente com os PF, podem ser usados como entrada em modelos de estimativa
• Determinados a partir da visão do usuário dos requisitos não funcionais, mas entendidos e acordados
por times de usuários e desenvolvedores
© FATTO Consultoria e Sistemas – www.fattocs.com 14
A estrutura de Categorias e Subcategorias
© FATTO Consultoria e Sistemas – www.fattocs.com 15
1.1 Validação de
Entrada de Dados
1.2 Operações
Lógicas e
Matemáticas
1.3 Formatação de
Dados
1.4 Movimentos
Internos de
Dados
1.5 Entregando Valor
Agregado aos
Usuários pela
Configuração de
Dados
C1
. O
pe
raç
õe
s d
e D
ad
os
2.1 Interfaces do
Usuário
2.2 Métodos de
Ajuda
2.3 Múltiplos Métodos
de Entrada
2.4 Múltiplos Métodos
de Saída C
2. D
es
en
ho
de
In
terf
ac
e
2.1 Interfaces do
Usuário
2.2 Métodos de
Ajuda
2.3 Múltiplos Métodos
de Entrada
2.4 Múltiplos Métodos
de Saída C
2. D
es
en
ho
de
In
terf
ac
e
3.1 Múltiplas
Plataformas
3.2 Tecnologia de
Banco de Dados
3.3 Processos em
Lote (Batch) C3
. A
mb
ien
te T
éc
nic
o
4.1 Software Baseado
em Componentes
4.2 Múltiplas
Interfaces de
Entrada/Saída
C4
. A
rqu
ite
tura
1. Categorias 2. Subcategorias
O que é uma Categoria no SNAP
Agrupa componentes, processos ou atividades p/ atender requisitos não funcionais
Operações de Dados
Desenho de Interface
Ambiente Técnico
Arquitetura
As Categorias
Classificam requisitos não funcionais
São genéricas o bastante para permitir futuras tecnologias
São divididas em subcategorias com características o que simplifica a avaliação
Cada categoria agrupa subcategorias com base
No mesmo nível de operações
Similaridade dos tipos de atividade executadas pelo SNAP
© FATTO Consultoria e Sistemas – www.fattocs.com 16
O que é uma Subcategoria no SNAP
Um componente, um processo ou uma atividade executada como parte de um
projeto para atender requisitos não funcionais
• Um processo não funcional pode ter que executar mais de uma subcategoria para
atender o requisito não funcional (como definido na ISO/IEC 25010)
Subcategoria
• Não definem ou descrevem requisitos não funcionais
• Classifica como esses requisitos são atendidos
© FATTO Consultoria e Sistemas –
www.fattocs.com 17
Entendi... É uma estrutura de classificação
de tipo. Mas... como essas subcategorias
são efetivamente usadas para medir um
pedido do cliente?
RNF e o Framework de Medição por meio do projeto
Melhoria na forma como o sistema se recupera de um crash
• De acordo com a ISO/IEC 25010, enquadra-se como capacidade de recuperação, subdivisão de
confiabilidade
SNAP mede este requisito de acordo com o projeto (design)
1. Algorítimo adicionado para identificar dados corrompidos em campos específicos
2. Time stamps adicionados em registros do banco de dados
3. Escrito algorítimo para reconstruir dados corrompidos de registros íntegros
O projeto (design) envolve as seguintes subcategorias do SNAP
• Tecnologia de Banco de Dados (inclusão do time stamp)
• Operações Lógicas e Matemáticas
Requisito de “Capacidade de Recuperação” (ISO 25010) mapeado em suas
subcategorias do SNAP
• Cada subcategoria tem uma unidade de contagem SNAP associada (SCU)
© FATTO Consultoria e Sistemas – www.fattocs.com 18
O que é a Unidade de Contagem SNAP (SCU)
Componente ou atividade na qual complexidade e tamanho são avaliados
Identificada de acordo com a natureza da subcategoria/categoria
• O SCU é parte da definição de cada subcategoria
• Para a maior parte das subcategorias, a SCU é o processo elementar
Pode ser
• um componente
• um processo
• uma atividade
Pode conter tanto características funcionais quanto não funcionais
Medição é feita em separado para cada SCU
Se uma SCU contiver tanto RF quanto RNFs
• Medição para o seu tamanho funcional usando a APF
• Medição para o seu tamanho não funcional pelo SNAP
© FATTO Consultoria e Sistemas – www.fattocs.com 19
Time stamps adicionados em registros do banco de dados
Categoria: 3. Operações de Dados
Subcategoria: 3.2. Tecnologia de Banco de Dados
SCU da subcategoria: Processo Elementar
Se houver múltiplos AR impactados para o RNF no mesmo PE, então o de maior complexidade
deveria deve ser considerado como fator de complexidade
Cálculo de Pontos de SNAP
Avaliação para cada procesos elementar
© FATTO Consultoria e Sistemas – www.fattocs.com 20
Fator de Complexidade do Arquivo Referenciado (FTR)
Baixo Médio Alto
SP = 6 SP x # de mudanças 9 SP x # de mudanças 12 SP x # de mudanças
Complexidade FTR Médio
# Mudanças 1 - Incluir tabelas ou colunas para fins exclusivamente não funcionais
SP/PE 9 SP x 1
Outros requisitos que afetam o esforço, desconsiderados
na medição Tarefas relacionadas ao projeto (empreendimento) não afeta o tamanho do
produto
Apesar de afetarem o esforço exigido para entregar o produto, elas
influenciam a produtividade e não o tamanho do produto
Exemplos de tarefas relacionados ao projeto (empreendimento):
Treinar a equipe
Treinar o usuário
Documentar o projeto como manuais, planos, relatórios de status,
roadmaps, instruções técnicas e padrões de qualidade
O APM estabelece que o SNAP provê a base para a medição requisitos não
funcionais como definido pelo IFPUG
Deve-se tomar cuidado com essa afirmação
Linguagem é um RNF por outras referências e não é medido
Tem reflexo na produtividade média © FATTO Consultoria e Sistemas – www.fattocs.com 21
Requisitos
Funcionais de
Software (RF)
Requisitos não
Funcionais de
Software (RNF)
Requisitos e
Restrições de
Projeto
© FATTO Consultoria e Sistemas – www.fattocs.com 22
Requisitos
Funcionais de
Software (RF)
Requisitos não
Funcionais de
Software (RNF)
Componente,
Processo ou
Atividade parte do
projeto (design)
como SCU
Projeto
(design)
Objetivos e benefícios do SNAP
03. Objetivos
Os objetivos considerados na definição do SNAP
Os benefícios esperados com a utilização do SNAP
© FATTO Consultoria e Sistemas –
www.fattocs.com 23
Os objetivos considerados na definição do SNAP
Objetivos do SNAP
Medir o tamanho não funcional do software que o usuário solicita e recebe
Demonstrar o valor econômico total da aplicação incluindo seus aspectos
funcionais assim como não funcionais
Ter uma linha de base funcional assim como não funcional
Medir o desenvolvimento e manutenção de software com base em requisitos não
funcionais
Medir projetos técnicos, nos quais a APF não é aplicável
Objetivos do processo
Simples o suficiente para minimizar a sobrecarga do processo de medição
Uma medida consistente entre vários projetos e organizações
SNAP permite determinar a possibilidade de medir e assim melhor estimar um projeto com ou sem
pontos de função de acordo com um conjunto de requisitos recebidos para um projeto
© FATTO Consultoria e Sistemas – www.fattocs.com 24
Os benefícios esperados com a utilização do SNAP
Melhor planejar e estimar projetos
Identificar áreas para melhoria de processos
Apoiar na determinação de estratégias não funcionais futuras
Quantificar os impactos das estratégias não funcionais atuais
Prover dados específicos quando comunicar assuntos não funcionais para várias audiências
Organizações podem aplicar o SNAP como uma metodologia para
– Medir o tamanho não funcional de um produto de software para suportar análises que qualidade e produtividade
– Estimar o custo e recursos necessários para o desenvolvimento e manutenção de software
– Medir a redução de custos para o desenvolvimento e manutenção de software em complemento à APF
– Um fator de normalização para a comparação de software
– Determinar o tamanho não funcional de pacote pela avaliação de todas as porções e categorias incluídas
– Ajudar usuários a determinar o benefício de um pacote pela avaliação de porções ou categorias que especificamente correspondem aos seus requisitos
© FATTO Consultoria e Sistemas – www.fattocs.com 25
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 26
PESQUISA!
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 27
PRÓXIMOS EVENTOS
© 2016 FATTO Consultoria e Sistemas | www.fattocs.com 28
PERGUNTAS?
Brasília: (61) 4063-7484
São Paulo: (11) 4063-4658
Vitória: (27) 3026-6304
Rio de Janeiro: (21) 4063-5311
Belo Horizonte: (31) 4063-8475
Obrigado pela sua atenção!
Carlos Eduardo Vazquez [email protected]
Skype: cvazquezbr