160 likes | 304 Views
Gestão de Projectos de SW OO: Métricas, Estimações e Planificações. Aula 21. Sumário. Gestão de Projectos de SW OO Processos de SW OO já vimos o Modelo Recursivo-Paralelo veremos técnicas e heurísticas de uso na próxima aula teórica..
E N D
Gestão de Projectos de SW OO:Métricas, Estimações e Planificações Aula 21
Sumário • Gestão de Projectos de SW OO • Processos de SW OO • já vimos o Modelo Recursivo-Paralelo • veremos técnicas e heurísticas de uso na próxima aula teórica.. • Métricas e Estimação/Planificação para Projectos de SW OO • na literatura.. • para a Lacertae Software • Estimação e Planificação em Geral • observações finais • opções • exemplos de Modelos Empíricos
Gestão de Projecto de SW OO • determinar quanto dinheiro, • esforço, • recursos e • tempo requer a construção de um Produto de SW OO • Quem faz? • Gestores de Projectos de SW • Engenheiros de SW (Analistas e Arquitectos) • compilam as medidas • auxiliam nas medições
Métricas OO na literatura.. • definem e quantidade de um conjunto padrão de elementos de UML, nomeadamente: • use cases • classes • subsistemas • componentes • interfaces • páginas Web • scripts são medidas (ou classificadores) que usamos para medir o esforço requerido ao desenvolvimento do Produto de SW
Tipos de Métricas OO- encontradas na literatura • Métricas para o Modelo de Desenho OO • Métricas Orientadas a Classes • métricas de Lorenz & Kidd • métricas de CK (Chidamber & Kemerer) • Métodos ponderados por Classe • Árvore de profundidade de Herança • Número de Descendentes • Acoplamento entre Classes • Respostas para uma Classe • Carência de Coesão do Métodos • MDOO – Métricas para o Desenho OO • Factor de Herança de Métodos • Factor de Acoplamento • Factor de Polimorfismo • Métricas orientadas a operações, métodos ou serviços • Métricas para Testes OO
Métricas de Lorenz & Kidd- adoptadas pela Lacertae SW • número de classes-chave • é uma indicação do esforço necessário para desenvolver o SW • … e da quantidade (potencial) de classes reutilizáveis • durante o desenvolvimento do sistema • Também chamadas de “Componentes Altamente Independentes”
Métricas de Lorenz & Kidd- adoptadas pela Lacertae SW • número de classes de suporte • não fazem parte do domínio do problema • mas são necessárias para implementá-lo • exemplos: • Interfaces Gráficas dos Usuários (GUI) • janelas, botões, caixas de diálogos, etc. • Acesso às bases de dados e sua manipulação • Acesso a outros programas ou aplicações legadas Estas classes são definidas interactivamente durante o Processo Recursivo-Paralelo
Métricas de Lorenz & Kidd- adoptadas pela Lacertae SW • número de subsistemas • facilita uma planificação razoável na divisão do trabalho entre os membros da equipa de desenvolvimento Consiste numa agregação de Classes que dão suporte a uma função visível ao usuário final do Sistema
Estimações e Planificações OO de Lorenz & Kidd - adoptadas pela Lacertae SW • primeiros passos para esta Estimação OO: • decomposição de esforços usando • Classes-chave • Classes de Suporte • determinar a quantidade de classes-chave • A Estimação é mais uma arte do que uma ciência – o que não exclui o uso de um enfoque sistemático!
Estimações e Planificações OO de Lorenz & Kidd - adoptadas pela Lacertae SW • classificar o tipo de Interface do Produto e desenvolver um Multiplicador para as Classes de Suporte • multiplicar a quantidade de classes-chave pelo Multiplicador para obter uma estimação do número de classes de suporte
Estimações e Planificações OO de Lorenz & Kidd - adoptadas pela Lacertae SW • multiplicar a quantidade total de Classes (classes-chave + classes de suporte) pelo “número médio de unidades de trabalho (dias-pessoa) por classe” • Lorenz & Kidd sugere entre 15 e 20 dias-pessoa por classe • determinar a quantidade de esforço estimada • exemplo • :: se modelarmos 10 classes-chave • :: e utilizarmos GUI, então teremos 25 classes de suporte :: 35 classes * 20 dias-pessoa (máximo) = 750 dias-pessoa
Estimação em Geral- observações • Estimação requer • Experiência • Boa informação histórica • Coragem para confiar em prognósticos • Riscos inerentes • Complexidade do projecto • Tamanho do projecto • Grau de definição dos requisitos • Maturidade do Processo de Software • Agregação de projectos por • Tamanho de equipa • Área de aplicação • Complexidade
Estimação do Projecto de SW- opções • Má ideia deixar a estimação para depois • Deve-se basear as estimações em projectos similares já terminados • Algumas ferramentas automáticas podem ser muito úteis • Utilizar técnicas de decomposição para gerar estimativas de custo e esforço • Utilizar modelos empíricos
Estimação do Projecto de SW- exemplos de Modelos Empíricos • COCOMO (1981) e COCOMO II (1996) • Modelo de Walston-Felix E=5.2 x KLDC 0.91 • Análise de regressão E = A + B x (ev) c • Modelo de Matson, Barnett e Mellichamp • E = 585,7 + 15,12 PF • Métricas de línea base = [LDC/pontos de função]/pessoa-mês • Métricas de línea base x variáveis de estimação = projecções de custo e esforço • VE= (Sopt+4Sm + Spess)/6 Lorenz & Kidd: Métricas de SW OO orientadas a Classes que usaremos para a Lacertae SW
Ferramentas CASE • Noções teórico-práticas.. • Processos de SW OO • quando concluir as iterações AOO, DOO e Testes OO..