Definição de ciclo de vida e processo de software

Neste artigo são descritos alguns dos principais tipos de ciclo de vida de software. Através de um estudo de caso são apresentadas as etapas de elaboração de um processo.

Porque o artigo é útil: Neste artigo são descritos alguns dos principais tipos de ciclo de vida de software. Através de um estudo de caso são apresentadas as etapas de elaboração de um processo, que compreende desde a fase de escolha do ciclo de vida, até a etapa de especificação do processo de desenvolvimento do software (a atividade a ser realizada, os responsáveis, critérios de entrada, ferramentas etc).

O tema é útil para Projetistas de Software em geral, que têm dificuldades em perceber qual o ciclo de vida mais adequado para cada situação. A escolha do ciclo de vida é muito importante, pois definirá como o software será desenvolvido, como os requisitos vão ser coletados, além de definir quando o cliente receberá a primeira versão operacional do sistema.

A engenharia de software, que segundo a definição proposta pela IEEE é a utilização de uma abordagem sistemática, disciplinada e quantificável no desenvolvimento, na operação e na manutenção de software, tornou-se fundamental em função de algumas características da utilização do software no século 21:

  • A incorporação de aplicações em todos os âmbitos da sociedade, tanto no ambiente corporativo como pessoal;
  • O aumento da complexidade e da diversidade de requisitos e
  • A dependência de indivíduos, empresas e governos para gerenciar negócios, tomar decisões e controlar operações cotidianas.

Nesse contexto, o processo de software é uma atividade essencial, já que é a base para o controle e gerenciamento de projetos, permitindo o uso de técnicas e ferramentas para a produção de produtos de software com qualidade e dentro das restrições estabelecidas.

Segundo Sommerville, um processo de desenvolvimento de software é um conjunto de atividades que, ao serem executadas, geram um produto de software. Normalmente um processo inclui pelo menos quatro atividades fundamentais:

  • Especificação de software;
  • Projeto e implementação de software;

  • Validação de software;
  • Evolução de software.

Devido à necessidade de se adaptar às necessidades e características da organização, não existe um processo ideal que se aplique a todos os contextos. As atividades básicas do processo tendem a ser complexas e incluir diversas subatividades a depender do prazo, custo e qualidade esperados, das características do software a ser desenvolvido e das pessoas envolvidas no projeto, dentre outros aspectos. Ao discutir e descrever processos, além de apresentar as atividades envolvidas, muitas vezes são incluídas informações sobre os produtos esperados a partir de uma ou mais atividades do processo e os papéis envolvidos nelas, entre outras." [...] continue lendo...

Artigos relacionados