Na Engenharia de Software, processo é um conjunto de passos parcialmente ordenados, cujo objetivo é atingir uma meta: entregar um produto de software de maneira eficiente, previsível e que atinja as necessidades de negócio. Geralmente inclui "atividades" como análise de requisitos, programação, testes, entre outras tarefas.
Conlui-se portanto que um processo é composto por atividades relacionadas e os modelos servem para dar uma visão de como é um processo.
Um modelo de processo de software define o que deve ser realizado em cada fase do desenvolvimento e dá as instruções de como realizar essas atividades. Ele serve como
um guia, um roteiro para a execução de um processo de desenvolvimento.
Um modelo descritivo retrata como um processo é executado em um ambiente em particular. Já um "modelo prescritivo" retrata como um processo deveria ser executado.
Sendo assim um modelo prescritivo é uma espécie de recomendação que pode ser adaptada ou melhorada (veja os modelos de melhoria de processo CMMI e SPICE) pela empresa de software que for adotá-la.
Esses modelos abrangem três elementos principais:
- Processos: determinam quais são as tarefas necessárias e em que ordem elas devem ser executadas.
- Métodos: fornecem detalhes fundamentais de como fazer para executar as tarefas necessárias.
- Ferramentas: proporcionam apoio automatizado ou semi-automatizado aos processos e métodos.
- Comunicação: levantamento de requisitos em colaboração com o cliente.
- Planejamento: estabelece as tarefas, os riscos, os recursos, os produtos e um cronograma.
- Modelagem: criação de modelos que permitam ao desenvolvedor entender melhor o projeto e seus requisitos. Ações: Análise – modelos de especificação de requisitos e Projeto – modelos de especificação de projeto.
- Construção: geração de código e testes.
- Implantação: entrega do software ao cliente.
- Uma versão executável do software só fica disponível no final do processo.
- Nesse modelo ocorrem o que chamamos de estados de bloqueio: membros da equipe ficam esperando outros membros terminarem a sua parte.
- É adequado quando os requisitos são bem entendidos, como em aperfeiçoamentos de um sistema existente.
- Exige pessoal suficiente para criar várias equipes RAD.
- Desenvolvedores e clientes têm que estar comprometidos com atividades rápidas.
- Exige que o sistema seja modularizável.
6 comentários:
Parabens pelo blog Hugo.
Tenho uma duvida, gostaria de saber se Prototipagem e o modelo espiral estam definidos dentro do "modelo evolucionario" de processo OU ele fazem parte dos "modelos prescritivos"?
Resumindo, prototipagem e esperal sao processos prescritivos ou evolucionarios?
Obrigado!
Parabéns pelo post Hugo.
Estava com algumas dúvidas sobre o assunto mais consegui o que queria aqui. Vlw
vlw hugo consegui o que estava procurando,muito bom!!!
Muito bom o artigo, simples mas com as informações mais importantes e suficientes!!
Ótimo blog, conciso e objetivo.
thimer, o modelo espiral é um modelo prescritivo e clássico também. Já a prototipação, a meu ver, é uma técnica que permite uma maior participação dos stakeholders no processo de desenvolvimento. Essa técnica é muito utilizada em processos evolutivos ou evolucionários, onde o sistema é entregue em partes. Exemplo: Um sistema de controle de veículos. Em uma primeira fase é entregue a funcionalidade de cadastro de motoristas e numa segunda, é entregue a funcionalidade de cadastro de veículos. Espero ter ajudado. Abs
Postar um comentário