A indústria de software – Parte 3

Ciclo de desenvolvimento de um software

GUSTAFSON(2002) corrobora o conceito do SWEBOK, nos lembrando que um ciclo de vida para o desenvolvimento de um software geralmente possui as seguintes atividades:

·       Análise viabilidade.

·       Análise de mercado

·       Levantamento de Requisitos.

·       Detalhamento dos requisitos.

·       Análise de domínio de cada um dos requisitos.

·       Planejamento do projeto.

·       Análise de custos.

·       Definição de agenda / cronograma.

·       Controle da qualidade do software.

·       Definição de sub-atividades.

·       Desenho aplicação.

·       Definição de estruturas.

·       Design de interfaces.

·       Design detalhado de cada um dos processos e atividades.

·       Implementação ou codificação.

·       Testes.  

Hoje existem inúmeros modelos de ciclo de vida para o desenvolvimento de um software. A grande maioria destes modelos abrange de forma mais ou menos abrangente os conceitos mencionados acima.  Apenas como exemplo, podemos mencionar:

 

  • Modelo linear ou clássico
    Proposto em 1970 foi a primeira iniciativa para padronização
    de atividades de desenvolvimento de software. Uma fase será iniciada
    apenas com o término de outra.

Imagem   1 : Modelo Linear
Fonte:PRESSMAN(2001)

 

  •  Modelo de prototipação – GUSTAFSON(2002) apresenta este modelo como sendo útil
    para realizar provas de conceito do comportamento de uma sistema perante
    um usuário. Isto é necessário, pois PRESSMAN(2001)
    nos lembra que na maioria das vezes o cliente nem sempre sabe os dados
    necessários, operações ou resultados esperados. Assim, fases sucessivas
    são realizadas onde:
    • Define-se as necessidade do usuário.
    • Gera-se
      um modelo.
    • O usuário
      realiza uma avaliação.

 

Imagem  2: Prototipação
Fonte:PRESSMAN(2001)

 

  • Modelo RAD(Rapid application development) – PRESSMAN(2002) apresenta este modelo como
    sendo uma variação do modelo de prototipação, onde se enfatiza ciclos
    muito curtos de desenvolvimento. Este modelo enfatiza o trabalho com base
    em componentes.

 

Imagem  3: RAD
Fonte:PRESSMAN(2001)

 

  • Modelo incremental – Para GUSTAFSON(2002), o objetivo deste modelo é durante o
    desenvolvimento entregar para o cliente pequenos conjuntos funcionais de
    parte do sistema. Estas partes vão sendo aperfeiçoadas a cada incremento.

Imagem  4: Incremental
Fonte:PRESSMAN(2001)

  • Modelo espiral – A cada volta na
    espiral uma versão do software é criada. A cada nova volta todo o processo
    de engenharia, testes, análise de riscos, planejamento, comunicação com o
    cliente e construção é repetido e uma versão mais completa do software é
    entregue ao cliente.

Imagem 5: Espiral
Fonte:SOMMERVILLE(2006)

->Continuar artigo

Back To Top