260 likes | 548 Views
Adriano Gomes Daniel Santos Pedro Farias Rodrigo Rolim. Estudo de Caso. COCOMO II. Agenda. Visão Geral de COCOMO Exercício para Aplicação de COCOMO Estudo de Caso 1: AYK Translator Estudo de Caso 2: CEF Conclusão. COCOMO – Visão Geral.
E N D
Adriano Gomes Daniel Santos Pedro Farias Rodrigo Rolim Estudo de Caso COCOMO II
Agenda Visão Geral de COCOMO Exercício para Aplicação de COCOMO Estudo de Caso 1: AYK Translator Estudo de Caso 2: CEF Conclusão
COCOMO – Visão Geral COCOMO - Constructive Cost Model é um modelo para estimativa de custos de projetos de software O modelo permite a estimativa do custo, do esforço e de planejar as atividades de desenvolvimento de um software. As entradas de COCOMO incluem 4 atributos de produto, 4 atributos de informática, 5 atributos de pessoais, 3 atributos do projeto.
COCOMO – Visão Geral COCOMO fornece um nível estimado de esforço homem-mês para o projeto.Pode ser convertido em valor monetário se o custo unitário for conhecido. COCOMO fornece uma boa métrica para seus custo, esforço, e estimativas da programação, desde os melhores casos aos piores casos que podem ser abordados.
COCOMO: Exercício 1 Um sistema de DB para automatização de um projeto O documento de requisitos necessita de 4 modulos,cujos tamanho estimado é: Cadastro: 0.6 KDSI Atualizações: 0.6 KDSI Consultar 0.8 KDSI Geração de relatório: 1.0 KDSI O projeto é julgado como orgânico Características do projeto: Complexidade elevada Armazenamento elevado Experiência baixa Potencialidades baixas do programador Outras características julgadas como nominal Estimativa de pessoas para terminar o projeto
COCOMO: Exercício 1 Pessoas = PM (esforço) / TDEV(tempo de desenvolvimento) PM = A * (KDSI ^ B) * EAF = 16,35 TDEV = Adur * (KDSI ^ Bdur) * EAF = 6,12 • Pessoas = 2,67
COCOMO: Exercício 2 Parâmetros Projeto complexo, mas conhecido Tamanho estimado = 96 KDSI Pouca experiência sobre a aplicação Conhecimento da linguagem de programação: muito baixo Tamanho do DB elevado Metodologia de desenvolvimento: nenhuma O custo do pessoal é $3K por mês Pergunta - Usando estimativas intermediárias, valeria a pena investir: $100K em metodologias $120K em treinamento em linguagem de programação Objetivo: Alcançar o valor nominal para tais características
COCOMO: Exercício 2 O esforço é 762 pessoa-mês Custo em pessoal é $(762 * 3K) = $2286K Treinamento em Metodologia Estimativas reduzidas em 70 PM = $210K Economia é $110K Treinamento em Ling. De Programação Estimativas reduzidas em 94 PM = $282K Economia é $162K
COCOMO: Exercício 3 • Qual analista você preferiria para seu projeto? • Um analista hábil com experiência de 4-5 sobre a aplicação • Um grande analista, mas com nenhum conhecimento da aplicação
COCOMO: Exercício 3 • Supondo que sua estimativa inicial era de 1000 horas de trabalho • A nova estimativa será: • EST = 1000 * M1 * M2 *… * Mn • Opção 1: • 1000 * 1 * 1 = 1000 horas de trabalho • Opção 2: • 1000 * 0.71 * 1.22 = 866 horas de trabalho
Estudo de Caso 1 • AYK Translator – Tradutor de Linguagens • Empresa: General Dynamics • Framework para migrar arquitetura sistemas de software legados para uma arquitetura de padrão aberto (OSA)
Estudo de Caso 1 • Objetivo: • Uma análise de custo e beníficios será executada para mostrar a eficácia do tradutor de código automático. • Mostrar como o tamanho da aplicação afeta na economia de custo associados com o esforço da conversão
Estudo de Caso 1 • Visão Geral do Assembly-to-C Translator (ACT) • A ferramenta basea-se na tradução de AYK em código C/C++ • A arquitetura do ACT consiste em 4 componentes: • GUI • Front-end Parser • Analisador/Optimizador • Gerador de código Back-end • O ATC foi projetado para preservar a arquitetura legada • O ATC preserva todos os cabeçalhos, comentário, e labels do software legado • A lista de saída inclui instruções iniciais + código traduzido • A documentação anterior é re-aproveitada • Casos de testes pré-existentes podem ser usados
Estudo de Caso 1 • Análise do custo/ beneficio usando COCOMO 2 • Os três fatores que afetam a estimativa para SLOC adaptado: • DM - Porcentagem de modificação de arquitetura “0%” • CM - Porcentagem de código modificado “100%” • IM - Porcentagem de integração requerida “100%
Estudo de Caso 1 • A convenção de COCOMO II envolve estimar a porcentagem do código que é traduzido automaticamente (AT) , e o valor da produtividade (ATPROD). • No estudo de caso, 80 por cento do código eram traduzidos automaticamente, a ATPROD foi determinado em 2400 e a taxa de produtividade em 1200 SLOC/PM .
Estudo de Caso 1 • Saving = WA - (NAP + AP*)
Estudo de Caso 2 : COCOMO na tomada de decisões • Investimentos e Casos de Negócios • Orçamentos e Cronogramas • Análise de Trade-offs • Riscos de Custo • Desenvolvimento vs. Reuso • Substituição de Software Legado • Linhas de Produto • Melhoramento de Processo
Planejamento Estratégico 2004 Área de TI demandas demandas demandas Área de Negócio Área de Negócio Área de Negócio
Conclusão • Para atender todas as demandas de 2004 seriam necessários 3.169 homens-mês, o que significa que, no pior caso, teriam que ser contratadas 264 pessoas por mês.
Bibliografia • Calazans, Angélica Toffano Seidel e Oliveira, Marcelo Antonio Lopes de. Uso das ferramentas APF e COCOMO para estimativa da capacidade produtiva da TI. III Simpósio Brasileiro de Qualidade de Software. 2004 Disponível em: http://www.sbc.org.br/bibliotecadigital/download.php?paper=253 Acessado em: 19/06/07 • Barry W. Boehm, Chris Abts, A. Winsor, Sunita Chulani, Bradford K. Clark, Ellis Horowitz, Ray Madachy, Donald Reifer. Bert Steece. Software Cost Estimation with COCOMO II. Prentice Hall, July 2000. Cap 2.6 USING COCOMO II FOR SOFTWARE DECISIONS pp. 59-68 • AYK Translator - Reusing Legacy Software with Tomorrow’s Technology • SPM07. Exercises on COCOMO