sábado, 13 de dezembro de 2008

Conceitos de Pressman

Conforme Pressman, a Engenharia de Software (ES) é uma tecnologia em 3 camadas: processos, métodos e ferramentas. E a base de todas essas camadas é o foco na qualidade do software desenvolvido.
  1. Processos: constituem um elo de ligação que mantém juntos os métodos e as ferramentas e possibilita o desenvolvimento racional e oportuno do software de compuitador.É o alicerce da engenharia de software.
  2. Métodos: proporciona os detalhes de "como fazer" para construir o software;
  3. Ferramentas: proporcionam apoio automatizado ou semi-automatizado aos métodos (ferramentas CASE combinan software, hardware e um banco de dados).

Ainda segundo Pressman, o trabalho associado à engenharia de software pode ser categorizado em 3 fases genérias, independentemente da área de aplicação, do tamanho do projeto ou de sua complexidade: 

  1. definição;
  2. desenvolvimento;
  3. manutenção.

O teste de software,sob o ponto de vista dos métodos convencionais da ES, é, na realidade, uma séria de quatro passos, implementados na seguinte ordem: unidade, integração, validação e sistema.

Gerência de projetos: métricas de software

O gerenciamento de projetos de software representa a primeira camada do processo de engenharia de software. O gerenciamento de projetos compreende atividades que envolvem medição, estimativa, análise de erros, programação de atividades, monitoração e controle.

A medição prosibilita que gerentes e profissionais entendam melhor o processo de engenharia de software e o produto (software) que ele produz. Usando medidas diretas e indiretas, as métricas de produtividade e qualidade podem ser definidas.

Métricas orientadas tanto ao tamanho como à função são usadas em toda a indústria de software. As métricas orientadas ao tamanho fazem uso das linhas de código como fator normalizante para outras medidas, tais como as medidas de pessoas-mês ou defeitos. O ponto-por-função deriva de medidas do domínio da informação e da avaliação subjetiva da complexidade do problema.

Métricas de qualidade de software, como a métrica de produtividade, concentram-se tanto no processo como no produto. Ao desenvolver e analisar uma linha básica para a qualidade, uma organização pode tomar providências para corrigir aquelas áreas do processo de engenharia de software que são a causa principal dos defeitos do software. Neste capítulo, quatro métricas da qualidade - corretitude, manutenibilidade, integridade e usabilidade - foram discutidas.

A medição resulta em mudança cultural. A coleta de dados, computação das métricas e avaliação dos dados são os três passos que devem ser implementados para se começar um programa de métricas. Ao criar uma linha básica - um banco de dados contendo medições do processo e do produto -, os engenheiros de software e seus gerentes podem obter uma melhor visão do trabalho que realizam e do produto que produzem.

Administração de projetos: estimativas

O planejador do projeto de software deve estimar três coisas antes que um projeto se inicie: quanto tempo ele durará, quanto esforço será exigido e quantas pessoas estarão envolvidas. Além disso, o planejador deve prever os recursos (hardware e software) necessários e os riscos envolvidos.

A declaração do escopo ajuda o planejador a desenvolver estimativas usando uma ou mais das seguintes técnicas: decomposição, modelagem empírica e ferramentas automatizadas. As técnicas de decomposição exigem um delineamento das principais funções do software, seguidas ou do número de LOC ou FP ou do número de pessoas-mês exigido para se implementar cada função. As técnicas empíricas usam expressões empiricamente derivadas para o esforço e o tempo a fim de prognosticar essas quantidades para o projeto. As ferramentas automatizadas implementam um modelo empírico específico.

Estimativas de projeto precisas geralmente fazem uso de pelo menos duas das três técnicas adotadas anteriormente. Ao comparar e ajustar as estimativas derivadas usando direfentes técnicas, o planejador tem maior probabilidade de derivar uma estimativa que se aproxime bastante da realidade. As estimativas de projetos de software jamais poderão ser uma ciência exata, mas uma combinação de bons dados históricos com técnicas sistemáticas pode melhorar a precisão da estimativa.

Fontes: 
http://qtmarinha.blogspot.com/2008/08/engenharia-de-software.html
http://pt.wikipedia.org/wiki/Engenharia_de_software