planejamento de software leonardo sameshima taba paulo eduardo papotti engenharia de software ppg-cc...
TRANSCRIPT
![Page 1: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/1.jpg)
Planejamento de Software
Leonardo Sameshima TabaPaulo Eduardo Papotti
Engenharia de Software PPG-CCProfa. Dra. Rosângela Aparecida Delloso Penteado
![Page 2: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/2.jpg)
Métricas de Software
![Page 3: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/3.jpg)
O que é métrica?
Muitos termos são usados, indistintamente, mas representam conceitos distintos.
• Medida• Medição• Métrica• Indicador
![Page 4: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/4.jpg)
Métricas Orientadas a Tamanho
Erros por KLOC (milhares de linhas de código), defeitos por KLOC, $ por KLOC e páginas de documentação por KLOC. Adicionalmente, outras métricas interessantes podem ser calculadas: erros por pessoa-mês, KLOC por pessoa-mês, $ por página de documentação.
![Page 5: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/5.jpg)
Métricas Orientadas a Tamanho
• Vantagens
• Desvantagens
![Page 6: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/6.jpg)
Métricas Orientadas a Tamanho
Vantagens
• Fáceis de serem obtidas• Vários modelos de medidas• Baseados em LOC ou KLOC
Desvantagens
• LOC depende da linguagem de programação• Penalizam programas bem projetados, • Mas pequenos• Não se adaptam às linguagens não procedimentais• Difícil de obter em fase de planejamento
![Page 7: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/7.jpg)
Métricas Orientadas a Função
• Métricas de software orientadas a função usam uma medida de funcionalidade entregue pela aplicação como valor de normalização.
• A métrica orientada a função mais amplamente usada é a pontos por função (function point – FP).
![Page 8: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/8.jpg)
Pontos por Função
![Page 9: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/9.jpg)
Fatores de Ajuste - Fi
1. O sistema requer salvamento (backup) e recuperação (recovery)?2. Comunicações de dados são necessárias?3. Há funções de processamento distribuídas?4. O desempenho é crítico?5. O sistema vai ser executado em um ambiente operacional existente, intensamente utilizado?6. O sistema requer entrada de dados on-line?7. A entrada de dados on-line exige que a transação de entrada seja construída através de várias telas ou operações?8. Os arquivos mestre são atualizados on-line?9. As entradas, saídas, arquivos ou consultas são complexas?10. O processamento interno é complexo?11. O código é projetado para ser reusado?12. A conversão e a instalação estão incluídas no projeto?13. O sistema está projetado para instalações múltiplas em diferentes organizações?14. A aplicação está projetada para facilitar modificações e para facilidade de uso pelo usuário?
![Page 10: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/10.jpg)
Classificação das Fi
Cada resposta deve obedecer a uma escala de 0 a 5., em que 0 significa não-importante ou não-aplicável e 5 absolutamente essencial.
PF = total de contagem x [0,65 + 0,01 x Σ(Fi)]
Artigo para consulta
Albrecht, A. J. "Measuring Application Development Productivity". Proc. IBM Application Development Sysmposium, Monterey, CA, out. de 1979, p 83-92.
![Page 11: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/11.jpg)
Métricas Orientadas a Função
• Vantagens
• Desvantagens
![Page 12: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/12.jpg)
Vantagens• Independentes da linguagem;• Ideal para aplicações que usam linguagem não procedimental;• Se baseiam em dados mais fáceis de serem conhecidos
durante a evolução do projeto.
Desvantagens• Cálculo baseado em dados subjetivos;• Resultado é apenas um número.
Métricas Orientadas a Função
![Page 13: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/13.jpg)
![Page 14: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/14.jpg)
Exemplo de utilização de PF
![Page 15: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/15.jpg)
Pontos por caso de uso
A análise de sistemas Orientados a Objetos utiliza normalmente, os diagramas de Casos de Uso para descrever as funcionalidades do sistema.
Permite que seja possível estimar o tamanho do sistema ainda na fase de levantamento de Casos de Uso.
Grau de detalhe dos Casos de Uso analisados influencia diretamente na qualidade final da medição.
![Page 16: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/16.jpg)
1. Calcular total de pesos não ajustados dos atores
Relacionar os atores, classificá-los de acordo com seu nível de complexidade (simples, médio ou complexo)
TPNAA = 1*numAtoresSimples + 2*numAtoresMedio + 3*NumAtoresComplexo
![Page 17: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/17.jpg)
2. Calcular pesos não ajustados dos casos de uso
Contar os casos de uso e atribuir o grau de complexidade sendo a complexidade com base no número de classes e transações.
TPNAUC= 5*numCasoUsoSimples + 10*numCasoUsoMedio + 15*NumCasoUsoComplexo
![Page 18: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/18.jpg)
3. Calcular pontos de casos de uso não ajustados
PCUNA = TPNAA + TPNAUC
![Page 19: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/19.jpg)
4. Calcular fator de complexidade técnica
FCT = 0.6 + (0.01 * Somatório dos Ti*Peso)
![Page 20: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/20.jpg)
5. Calcular fatores de complexidade ambiental
FCA = 1.4 + (-0.03 * Somatório dos Fi*Peso)
![Page 21: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/21.jpg)
6. Calcular pontos de casos de uso ajustados
PCUA = PCUNA * FCT * FCA
![Page 22: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/22.jpg)
7. Calculos finais
• Pessoa-hora por unidade de PCU (Karner sugere 20)• Estimativa em pessoa-hora (PCUA * PH-PCU)• Tamanho da equipe (dado de entrada• Estimativa em horas(EPH/TE)• Estimativa em meses (EH/160 - considerando 4
semanas e 40 horas por semana)
Artigo para consultaKarner, G. "Resource Estimation for Objectory Projects". ObjectiveSystems SF AB (copyright owned by Rational Software), 1993
![Page 23: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/23.jpg)
Exemplo de utilização de PCU
![Page 24: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/24.jpg)
Estimativas de software
![Page 25: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/25.jpg)
Objetivos do planejamento de projeto
• Obter estimativas de recursos, custo e tempo
• Tentar definir cenários de melhor caso, caso mais provável e pior caso
![Page 26: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/26.jpg)
Escopo
• Primeira atividade do planejamento • Deve ser detalhado, fechado e não ambíguo
• Definido em acordo com o cliente
• O projeto é factível?
![Page 27: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/27.jpg)
Recursos
![Page 28: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/28.jpg)
Estimando
• Atualmente, o software é o componente mais caro de sistemas computacionais
• É importante estimar o mais precisamente possível
• Não é uma atividade exata • Técnicas de decomposição• Modelos empíricos
![Page 29: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/29.jpg)
Técnicas de decomposição
• Dimensionamento de softwareo Dim. de "lógica nebulosa"o Dim. de pontos de funçãoo Dim. de componentes padrãoo Dim. de modificação
• Estimativa de três pontos ou valor esperado
S = (Sot + 4Spr + Spe) / 6
![Page 30: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/30.jpg)
Estimativa baseada no problema
• A partir do escopo, decompõe o software em funções do problema
• LOC ou FP, variáveis de estimativa, são estimadas a partir das funções
• Métricas de produtividade como LOC/pm ou FP/pm são aplicadas à variavel
• As estimativas de cada função são combinadas para produzir uma estimativa global do projeto
• São feitas estimativas otimistas, mais prováveis e pessimistas
S = (Sot + 4Spr + Spe) / 6
![Page 31: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/31.jpg)
Estimativa baseada no problema - LOC
Produtividade média: 620 LOC/pmCusto médio: $8000/mêsCusto por LOC: $13 Custo total: $431.000 Esforço: 54 pm
![Page 32: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/32.jpg)
Estimativa baseada no problema - FP
![Page 33: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/33.jpg)
Estimativa baseada no problema - FP
![Page 34: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/34.jpg)
Estimativa baseada no problema - FP
FPestimados = total x [0.65 + 0.01 x E(Fi)]FPestimados = 375
Produtividade média: 6,5 FP/pmCusto médio: $8000/mêsCusto por FP: $1230Custo total: $461.000Esforço estimado: 58 pm
![Page 35: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/35.jpg)
Estimativa baseada em processo
• Como na estimação baseada no problema, o software é decomposto em suas funções
• O processo de desenvolvimento também é dividido
• É estimado o esforço necessário para cada parte
do processo de cada função • Métricas de produtividade como custo por
undidade de esforço são aplicadas
![Page 36: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/36.jpg)
Estimativa baseada em processo
Custo médio: $8000/mêsCusto total: $368.000 Esforço estimado: 46 pm
![Page 37: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/37.jpg)
Modelos empíricos
• Desenvolvidos através de experimentação com amostras de diversos projetos
• Estrutura
• Seus resultados devem ser analisados com
cuidado
E = A + B x (ve)c
![Page 38: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/38.jpg)
Modelos empíricos
• Baseados em LOC
• Baseados em FP
![Page 39: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/39.jpg)
COCOMO II
• Pontos por objeto • Quantidade de
o Telas (interface)o Relatórioso Componentes
• Classificação em três níveis de complexidade
![Page 40: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/40.jpg)
COCOMO II
• NOP = (pontos por objeto) x [(100 - %reúso)/100] • PROD = NOP/pessoas-mês (esforço)• Esforço estimado = NOP/PROD
![Page 41: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/41.jpg)
Equação do software
• E = [LOC x B0.333/P]3 x (1/t4)• E = esforço em pessoas-mês ou pessoas-ano• t = duração do projeto em meses ou anos• B = “fator de aptidões especiais”• Aumenta lentamente à medida que o projeto se torna mais
complexo. Para programas pequenos (de 5 a 15 KLOC), B = 0,16. Para programas maiores que 70 KLOC, B =0,39
• P = “parâmetro de produtividade”• Reflete a maturidade global do processo e práticas de gestão.
Valores típicos podem ser P = 2.000 para um sistema embarcado de tempo real, P = 10.000 para software de telecomunicações e P = 28.000 para sistemas comerciais
![Page 42: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/42.jpg)
Comprar ou fazer?
• Normalmente, comprar um componente pronto é mais barato que desenvolvê-lo
• Árvore de decisões
• Terceirização
![Page 43: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/43.jpg)
Árvore de decisão
custo estimado =E (probabilidade do caminho)ix (custo estimado do caminho)i
![Page 44: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/44.jpg)
Resumindo
• Estimaro Quanto tempo,o Quanto esforço eo Quantas pessoas serão necessárias
• Utilizando o escopoo Técnicas de decomposiçãoo Modelos empíricos
• Deve-se utilizar mais de uma estimativa para aumentar a precisão
![Page 45: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/45.jpg)
Gestão de configuração de software
![Page 46: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/46.jpg)
Gestão de configuração de software (SCM)
• Controlar mudanças
• Atidade “umbrella”, ocorrendo por todo o ciclo de vida do software
• Objetivo: Aumentar ao máximo a facilidade com que mudanças são gerenciadas no decorrer do projeto
![Page 47: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/47.jpg)
Elementos de um sistema de gestão de configuração
• Elementos de componente
• Elementos de processo
• Elementos de construção
• Elementos humanos
![Page 48: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/48.jpg)
Item de configuração de software (SCI)
• Informações que são criadas como parte do processo de desenvolvimento de software
• São organizados para formar objetos de configuração
![Page 49: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/49.jpg)
Objetos de configuração
![Page 50: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/50.jpg)
Baseline (referenciais)
• Itens de configuração de software armazenados que passaram por análise e revisões técnicas e foram aprovados.
• Exemplos de itens de baseline:o Especificação do sistemao Requisitos do softwareo Especificação do projetoo Código fonteo Planos e casos de testeo Sistema operacional
![Page 51: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/51.jpg)
Baseline
![Page 52: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/52.jpg)
Repositório
• Além de ser um SGBD, deve auxiliar nas tarefas de SCMo Determinação de versão
o Acompanhamento de dependências e gestão de
modificações
o Acompanhamento de requisitos
o Gestão de configuração
o Pistas de auditoria
![Page 53: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/53.jpg)
Processo de SCM
• Identificar • Controle de versão • Controle de modificação • Auditoria de configuração • Status reporting
![Page 54: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/54.jpg)
Identificação de objetos
• Abordagem orientada a objetos • Dois tipos
o Objetos simples Unidades de informação
o Objetos agregados Coleção de objetos simples e agregados
• Objeto
o Nomeo Descriçãoo Lista de recursoso "Realização"
![Page 55: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/55.jpg)
Controle de versão
• Repositório (banco de dados de projeto)
• Capacidade de gestão de versão • Facilidade de construir
• Acompanhamento de tópicos (bugs)
• Exemplos: CVS, SVN (não são sistemas "de
construção")
![Page 56: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/56.jpg)
Controle de modificação
• Pedido de modificação• Relatório de modificação• Autoridade de controle de modificação (change
control authority, CCA)• Ordem de modificação de engenharia (engineering
change order, ECO)• Modificação é feita• Atividades de qualidade (software quality
assurance, SQA)• Atualização no repositório
![Page 57: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/57.jpg)
• Deve-se tomar cuidado com burocracia demais • Camadas de controle
o Nível informal
SCI não está no baseline
o Nível de projeto SCI está no baseline
o Nível formal
Produto já foi entregue
Controle de modificação
![Page 58: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/58.jpg)
Auditoria de configuração
• Como garantir que as modificações foram adequadamente implementadas?
• Revisões técnicas formais
• Auditoria de configuração
![Page 59: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/59.jpg)
Auditoria de configuração
• 6 questões:• A modificação especificada na ECO foi feita?• Uma revisão técnica formal foi conduzida para
avaliar a correção técnica?• O processo de software foi seguido e as normas de
ES foram aplicadas?• A modificação foi refletida no SCI? O autor e a data
da modificação foram registrados?• Os procedimentos da SCM para anotar a
modificação, registrá-la e relatá-la foram seguidos?• Todos os SCIs relacionados foram adequadamente
atualizados?
![Page 60: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/60.jpg)
Status reporting
• Questões:o O que aconteceu?o Quem fez?o Quando aconteceu?o O que mais será afetado?
• Relatório de estado de configuração (configuration
status reporting, CSR)o Todas as modificações no gerenciamento da
configuração são relatadoso Pode ser colocado em um BD on-line ou site
![Page 61: Planejamento de Software Leonardo Sameshima Taba Paulo Eduardo Papotti Engenharia de Software PPG-CC Profa. Dra. Rosângela Aparecida Delloso Penteado](https://reader030.vdocuments.net/reader030/viewer/2022013003/552fc0f8497959413d8b548b/html5/thumbnails/61.jpg)
Bibliografia
[1] Pressman, R. S. - Engenharia de Software - 6ª edição
[2] Pressman, R. S. - Software Engineering, A Practitioner's Approach - 5th edition
[3] Karner, G. "Resource Estimation for Objectory Projects". ObjectiveSystems SF AB (copyright owned by Rational Software), 1993
[4] Albrecht, A. J. "Measuring Application Development Productivity". Proc. IBM Application Development Sysmposium, Monterey, CA, out. de 1979, p 83-92.
[5] Heimberg, V. Grahl, E. A. Estudo de Caso de Aplicação da Métrica de Pontos deCasos de Uso numa Empresa de Software. Disponível em: http://www.inf.furb.br/seminco/2005/artigos/130-vf.pdf. Acesso: 03/04/2010