quinta-feira, 31 de março de 2011

[Seminário] Estimativa de software

Seminário Engenharia de Software


Cleiton Urban Silva RA: 0991003417
Fabio Barros Mateus RA: 0901404282


Estimativa de software
Quando nos deparamos com obstáculos para desempenhar nosso trabalho com eficiência, precisamos buscar alternativas para corrigi-los e ferramentas a fim de diminuir as porcentagem de novos acontecimentos. Para isso nada melhor do que um bom planejamento. O projeto de software não se torna essa exceção, tendo-se que realizar, não apenas um planejamento superficial, mas sim um especifico, a fim de facilitar sua execução.
Algumas informações são essências, tais como o tamanho, a complexidade, os custos, tempo e esforços relacionados no projeto em questão buscando ao maximo a qualidade no desenvolvimento. Logo tomamos o uso de estimativas de software.
Estimativas de software nos servem como base para o planejamento do projeto de software, elas nos fornecem dados que auxilia a prever a quantidade de pessoas que serão necessárias (recursos humanos), o custos e tempo necessário de cada projeto. Sem o uso das estimativas fica difícil elaborar cronograma e orçamento, prejudicando o andamento do projeto.
Para realizar os cálculos dessas estimativas de software utilizamos as métricas. Métricas referem-se à mensuração dos indicadores quantitativos do tamanho e complexidade de um sistema. Estes indicadores, são utilizados para comparar os desempenhos observados no passado a fim de prever o desempenho futuro.
A métrica de software tem como princípios especificar as funções de coleta de dados de avaliação e desempenho, atribuir essas responsabilidades a toda a equipe envolvida no projeto, reunir dados de desempenho referentes ao software, analisar os históricos dos projetos anteriores e o do próprio software em questão, determinando então o efeito desses fatores e utilizar esses efeitos para pesar as previsões futuras, se prevenindo de possíveis erros. Estes princípios nos permitem prever o resto do processo, avaliar o progresso e reduzir a complexidade. Como ele podemos obter todo esse controle gerencial, melhorando seu desempenho e sua implementação.
As estimativas podem ser:
- Estimativa de custos: o objetivo é calcular antecipadamente os gastos que teremos com o sistema. Temos que fazer o levantamento das ferramentas que iremos utilizar, a infra-estrutura, quantidade de pessoas envolvidas no projeto como encargos e salários mensais, que devemos levar em consideração a dependência do prazo, (por exemplo, falando de um desenvolvedor que tem seu salário mensal, quanto maior for o prazo maior será o custo com o mesmo) e custos com falhas ou manutenção.
- Estimativas de Prazo: auxiliará-nos a estimar a extensão do tempo que o projeto exigirá, onde diretamente dependerá das atividades e do pessoal disponíveis, e dos recursos que teremos a disposição.
- Estimativa do tamanho do produto: dependente do tipo de produto. O tamanho dos requisitos é o número absoluto de requisitos. Quando está na fase projeto representa o número de elementos projetados. O tamanho final de um produto é dado em linhas de código, subrotinas, ou classes existentes.
- Estimativa do esforço requerido para o desenvolvimento: é medido em homens/horas. O projeto deve estimar quantos homens/horas é necessário para se construir o produto. Como vimos acima, este item esta interligado a estimativa de prazo.
- Estimativa á qualidade do produto: é medida em taxas de erros encontrados e solucionados. Tais erros podem ser achados em qualquer uma das fases do projeto, não apenas nas fases de teste. A qualidade também pode ser questionada após a implementação, medindo-se através de manutenção e correção.
- Estimativa de cronograma: descreve no tempo como as atividades planejadas serão executadas. Deve indicar quando cada atividade começa e termina. Seve como base para cumprir o prazo e deve ser acompanhada, sendo reprogramada ser houver qualquer alteração
Para fazermos essa estimativa usamos metricas para poder estimar um software, essas metricas podem ser historias onde podemos obter informações de projetos anteriores elaborados pela equipe ou empíricas onde ajuntamos varias informações obtidas por equipes diferentes.
As principais métricas são: Linhas de Codigo (LOC), Pontos por Função (PF), LOC/FP, Pessoa-Mês(PM), Pessoa-mes/LOC, Defeitos/LOC , Custos/LOC e Pontos por Caso de Uso (PCU).
Conclusão
Concluímos então que para obter um bom desempenho em um processo de desenvolvimento de software é preciso medir custo, produtividade e qualidade durante todo o processo. As métricas nos ajudam a calcular as estimativas que precisamos, através desses cálculos podemos decidir a viabilidade e o andamento do mesmo. Fica mais fácil para o Gestor do Projeto, discernir quais as decisões que serão tomadas caso haja divergência entre o planejamento e a situação atual. Com as estimativas futuras, há como mensurar o projeto durante toda sua execução. As estimativas jamais serão exatas, mas é fundamental para previsões e controle de suas fases

Nenhum comentário:

Postar um comentário