Processo de Densenvolvimento de Software
Objetivos:
Este capítulo aborda as diversas maneiras de como um software deve ser desenvolvido. Veremos o conceito de ciclo de vida, identificando suas principais fases e as atividades do ciclo de vida do software. Finalizaremos com o estudo de diversas propostas e modelos para o processo de desenvolvimento de software. 2.1 Processo de desenvolvimento
Vimos na introdução que uma engenharia de software requer que as atividades para desenvolver o software sejam feitas de forma planejada, gerenciada, com pessoal capacitado, custos e prazos estimados e utilizando teorias, métodos, técnicas e ferramentas adequadas.
Elaborar um processo de desenvolvimento de software significa determinar de forma precisa e detalhada quem faz o que, quando e como. Um processo pode ser visto como uma instância de um método com suas técnicas e ferramentas associadas, elaborado durante a etapa de planejamento, no qual as atividades que o compõem foram alocadas aos membros da equipe de desenvolvimento, com prazos definidos e métricas para se avaliar como elas estão sendo realizadas (veja conceitos básicos).
Enquanto um método é algo teórico, o processo deve determinar ações práticas a serem realizadas pela equipe como prazos definidos. O processo é o resultado do planejamento e precisa ser gerenciado no decorrer de sua execução.
Não é objetivo deste capítulo a elaboração de processos de desenvolvimento. Apenas podemos fazê-lo após estudarmos técnicas de planejamento e gerenciamento. Neste capítulo vamos nos limitar a estudar alguns modelos de processo que nos indique como as diversas etapas e atividades do desenvolvimento podem ser estruturadas.
2.2 O ciclo de vida do software
O ciclo de vida de um artefato diz respeito às diversas fases pelas quais ele passa desde o seu surgimento até a o momento no qual ele não será mais útil. No sistema computacional todos os componentes possuem um ciclo de vida próprio. Embora eles sejam