Professional Documents
Culture Documents
AGENDA
MOTIVAO
A indstria de software continua lidando com projetos mal sucedidos. O CHAOS Report de 2003 apresentou as seguintes estatsticas: 34% dos projetos so bem sucedidos; 15% dos projetos foram cancelados; 43% o erro mdio em relao ao oramento do projeto daqueles que foram completados; 52% das caractersticas (requisitos no funcionais) e funcionalidades so entregues no produto.
MOTIVAO
Os principais problemas que afetam os projetos de software no so tecnolgicos. Estes problemas so gerenciais, refletindo as dificuldades na implantao de processos gerenciais efetivos. A principal preocupao da indstria refere-se previsibilidade de prazo e de custo dos projetos.
Funcionalidades, Atributos da Qualidade
Prazo
Custo
MOTIVAO
MOTIVAO
a qualidade do Produto
Avaliar a produtividade do processo Melhorar a gerncia de projetos e relacionamento com clientes Formar uma Baseline para
Medidas de tamanho
Esto
Medidas de tamanho
Produtividade
= Tamanho do produto / Esforo para produzi-lo Para que o valor obtido seja significativo:
o esforo dedicado ao trabalho em questo deve ser mensurado com preciso; a medida do produto do trabalho deve ser padronizada e uniforme:
Medidas de tamanho
Uma
ser facilmente mensurvel quando o trabalho est completo para comparar valores estimados e valores reais;
poder ser deduzida dos requisitos; ter boa correlao com o esforo de desenvolvimento.
Medidas de tamanho
Exemplos
software:
Linhas
de cdigo:
A medio em linhas de cdigo a mais simples e barata j que pode ser contada de forma totalmente automtica.
Medidas de tamanho
Linhas
de cdigo:
pouco valor preditivo; necessrio regras de padronizao; cdigo gerado automaticamente no deve ser considerado; cdigo reusado no deve ser contado; dependente linguagem;
Exemplos de Estimativas
Tamanho em PF Projeto A 100 PFs Variveis do Projeto On-line/database Novo desenvolvimento C++ Desenvolvedores altamente experientes
Estimativa Para o Projeto Baseada em Dados Histricos e/ou Ferramenta Esforo = 5 meses Cronograma = 3 meses Custo (a $5000) = $25000 KLOC = 6 Defeitos Entregues = 25 Produtividade = 20 PF/Ms. Esforo = 20 meses Cronograma = 6 meses Custo (a $5000) = $100000 KLOC = 10 Defeitos Entregues = 100 Produtividade = 5 PF/Ms
= 1000 PF
Pontos de Funo (PF)
uma medida de dimensionamento de software atravs da funcionalidade implementada em um sistema, sob o ponto de vista do usurio.
Benefcios
Meio
para estimar custos e recursos necessrios para desenvolvimento e manuteno de software Fator de normalizao para a comparao de software
Consulta Externa
Objetivos
Medir a funcionalidade requisitada e recebida pelo usurio Medir Projetos de Desenvolvimento e de Manuteno independentemente da tecnologia utilizada Publicado como Padro Internacional - ISO/IEC 20926
Pontos de Funo
Histrico
Foram propostos por Allan Albrecht em 1979. A formalizao das regras de contagem teve incio em 1984, pela IBM. Em 1986 foi criado o IFPUG:
Vantagens
Permite:
determinar o tamanho de uma aplicao a partir da funcionalidade nela contida; mensurar o desenvolvimento de software para analisar qualidade e produtividade; estimar custo e recursos necessrios ao desenvolvimento ou manuteno; normalizar dados para comparao.
Principais Vantagens
desde o incio do ciclo de desenvolvimento mesmo sem ter todas as informaes necessrias sobre o sistema.
Quando aplicar
Fase Proposta Requisitos Construo Implantao Manuteno Adaptativa Manuteno Corretiva Manuteno Perfectiva Estimado Sim Sim Sim Sim Sim No No Medido No Sim Sim Sim Sim No No
Independentes de tecnologia e plataforma Disponveis cedo na fase de requisitos Unidade de medida consistente e objetiva, atravs do ciclo de vida do sistema Definem o aplicativo objetivamente, a partir do ponto de vista do cliente Definem uma srie de aplicativos a partir da perspectiva do cliente e no do tcnico Expressos em termos que os usurios podem facilmente compreender
No existe padro para linha de cdigo Linhas de cdigo medem componentes ao invs de produtos completos No mea o nmero de painis fabricados; mea o nmero de carrros montados Medir linhas de cdigo Premia o projeto prolixo Penaliza o projeto compacto Um critrio positivamente enganador?
Consultas Externas
(Sem Dados Derivados)
Sadas Externas
( Com Dados Derivados)
APLICAO
Arquivos Lgicos Internos
Entradas Externas
Funes de dados Funes transacionais
Outra Aplicao
Arquivo Lgico Interno
Tamanho
Procedimento de Contagem
Determinar os PF No Ajustados
Calcular os PF Ajustados
ALI
SE
Chave Detalhes
AIE
CE
Tipos de Contagem
Contagem de PF de Projetos de Desenvolvimento - PF associados com a instalao inicial de um software novo Contagem de PF de Projetos de Melhoria - PF associados com a melhoria de um software j existente (inclui funcionalidade que adicionada, modificada ou excluda) Contagem de PF de Aplicaes - PF associados com uma aplicao instalada - Funcionalidade da aplicao no ponto de vista do usurio
A fronteira determinada baseada na viso do usurio. O foco no que o usurio pode entender e descrever.
a interface conceitual entre a aplicao Interna e o mundo do usurio externo Ponto de vista do usurio Baseada na funcionalidade do negcio, No na implementao tecnolgica
Usurio
Qualquer pessoa que especifica Requisitos Funcionais Qualquer pessoa ou Coisa que intereja com o sistema a qualquer momento EX: Ator de caso de uso, outra aplicao, usurio final, gestor do sistema
Viso de usurio
Descrio formal de suas necessidades de negcio em sua prpria linguagem aprovada pelo usurio e uma descrio das funes do negcio Varia na forma fsica: documento de requisitos, manuais, especificao detalhada, catlogo de transaes
Escopo da Contagem
Prov
respostas relevantes ao propsito da contagem Pode incluir mais de uma aplicao Identifica quais funes so includas na contagem determinado pelo propsito da contagem
Fronteira da Aplicao
A
identificao da fronteira um passo essencial para a medio funcional O posicionamento incorreto da fronteira pode alterar a perspectiva da contagem de uma viso lgica (princpio da APF) para uma viso fsica.
Funes de Dados
Arquivos de Interface Externa
Funes de Dados
Requisitos
de armazenamento sob a tica do usurio, de acordo com a sua lgica (do usurio)
No lgico para o usurio separar o cabealho de uma nota fiscal dos seus itens e guard-los separadamente.
So grupos de dados ou informaes de controle especificados pelo usurio logicamente relacionados, uja manuteno efetuada dentro da fronteira da aplica
Armazenar dados mantidos atravs de um ou mais processos elementares da aplicao sendo contada.
ALI
Exemplos:
Tabelas que armazenam dados da aplicao Entidades de negcio Arquivos mantidos no s pela aplicao mas tambm por outra aplicao
NO
exemplos:
o grupos de dados ou informaes de controle specificados pelo usurio logicamente relacionados, cuja manuteno efetuada dentro da fronteira de outra aplica
Armazenar dados referenciados atravs de um ou mais processos elementares da aplicao sendo contada.
AIE
Exemplos:
NO
exemplos:
Arquivo de remessa ou retorno Dados mantidos pela aplicao Dados formatados e processados para uso de outras aplicaes
Complexidade
Nmero
de tipos de dados
Nmero
de tipos de registros
Complexidade
TR/TD
1 2-5 >5 <20 20-50 >50
Catlogo de CD de Msica: Informao de CD CD: Cantor, Grupo, Gravadora, Nome, Data e Musicas Musicas: Nome de Musica, Compositor e Tempo de Durao Informao de CD Musicas
SIMPLES 7 PF
MDIO 10 PF
COMPLEXO 15 PF
SIMPLES 5 PF
MDIO 7 PF
COMPLEXO 10 PF
Entrada Externa
Funes Transacionais
Processo Elementar
Menor
atividade com significado pra o usurio Completo em si mesmo e deixa a plicao em estado consistente
Entradas Externas
Uma Entrada Externa um processo elementar que processa dados ou informaes de controle que vem do lado de fora da fronteira da aplicao.
http://www.receita.fazenda.gov.br
Sadas Externas
Uma Sada Externa um processo elementar que envia dados ou informao de controle para fora da fronteira da aplicao.
Apresentar informao para um usurio atravs de processamento lgico adicional a recuperao de dados ou informao de controle. O processamento lgico deve conter no mnimo uma frmula matemtica ou clculo, ou criar de dados derivados.
Sadas Externas
Uma Sada Externa PODE tambm manter um ou mais Arquivos Lgicos Internos e/ou alterar o comportamento do sistema.
Consultas Externas
Consulta Externa um processo elementar que envia dados ou informao de controle para fora da fronteira da aplicao.
Apresentar informao para o usurio atravs da recuperao de dados ou informao de controle de um ALI ou AIE. O processamento Lgico NO contm frmulas matemticas ou clculos, NO cria dados derivados. Alm disso, NO mantm Arquivos Lgicos Internos durante o processamento, nem altera o comportamento do sistema.
http://www.receita.fazenda.gov.br
em um sistema de biblioteca
ttulo Alterar ttulo existente Consultar lista de ttulos Registrar emprstimo Emitir relatrio de emprstimos por perodo ...
Contagem de Elementos
Contar quantos Arquivos referenciados (AR) Contar quantos Tipos de dados (TD) 1 TD para cada campo nico, reconhecido pelo usurio e no repetido que entra ou sa da aplicao e que sejam relevantes ao processo elementar. 1 nico TD para aes: OK, ENTER, comandos em geral 1 nico TD para emisso de mensagem, pedido de confirmao, comunicao de sucesso, etc
Conte:
Contagem de Elementos
Conte:
1 AR para cada ALI ou AIE lido ou mantido pela transao Se for lido e mantido conte apenas 1 vez
Complexidade
Entrada Externa:
AR/TD
1 2 >2
<5 Baixa
5-15
>15
Complexidade
AR/TD
1 2-3 >3
<6
6-19
>19
Contribuio
Cada tipo de funo possui um peso, de acordo com sua complexidade. O peso corresponde quantidade de PF no ajustados que a funo agrega aplicao. Somando-se os pesos de todas as funes, obtm-se o total de PF no ajustados.
Determinar os PF No Ajustados
Tabela de Clculo
COMPLEXIDADE FUNCIONAL
SIMPLES X 7 = MDIA X 10 = COMPLEXA X 15 = SIMPLES X 5 = MDIA X 7 = COMPLEXA X 10 = SIMPLES X 3 MDIA X 4 COMPLEXA X 6 SIMPLES X 4 MDIA X 5 COMPLEXA X 7 SIMPLES X 3 MDIA X 4 COMPLEXA X 6 = = = = = = = = =
TIPO DE FUNO ARQUIVO LGICO INTERNO ARQUIVO DE INTERFACE EXTERNA ENTRADA EXTERNA SADA EXTERNA CONSULTA EXTERNA
TOTAL COMPLEX.
1. Comunicao de Dados 2. Processamento Distribudo 3. Performance 4. Utilizao do Equipamento 5. Volume de Transaes 6. Entrada de dados on-line 7. Eficincia do Usurio Final
8. Atualizao on-line 9. Processamento Complexo 10. Reutilizao de Cdigo 11. Facilidade de Implantao 12. Facilidade Operacional 13. Mltiplos Locais 14. Facilidade de Mudanas
Calcular os PF Ajustados
Certificao