Baixe o app para aproveitar ainda mais
Prévia do material em texto
CICLOS DE VIDA DE DESENVOLVIMENTO DE SOFTWARES A principal função do ciclo de vida é indicar as fases, atividades, entregas e responsabilidades de cada envolvido no processo de desenvolvimento de softwares. Nesse sentido, ela funciona como um grande esquema. Seu objetivo é manter o projeto alinhado às necessidades dos usuários e às expectativas de seus patrocinadores, sem perder de vista as entregas que viabilizam a utilização do software. Logo, ele serve para permitir que pequenas entregas sejam realizadas com certa periodicidade e favorece uma melhoria contínua no processo de desenvolvimento e utilização do software. Existem três etapas principais no ciclo de vida do desenvolvimento de softwares: a definição, o desenvolvimento e a operação. 1. Definição É o momento em que ocorre o planejamento do projeto, são levantados os requisitos mínimos, estudada a viabilidade do software e definido qual modelo de ciclo de vida será usado. 2. Desenvolvimento O desenvolvimento envolve as atividades de especificações, design, prototipagem, arquitetura da informação, codificação, testes e criação de integrações com outros sistemas, quando necessário. O resultado dessa etapa pode ser um PMV ou o software completamente desenvolvido e concluído. 3. Operação A última parte pode ser de suporte aos usuários e correção de possíveis bugs. Também pode contemplar a continuidade do desenvolvimento do software para atender a novos requisitos dos usuários. Ambos os casos dependem do modelo de ciclo de vida selecionado para o projeto. Existem ao menos sete modelos de ciclo de vida para o desenvolvimento de softwares: em cascata, em V, incremental, Rapid Application Development (RAD), espiral, prototipagem e evolutivo. Aqui vamos nos deter em dois mais conhecidos e utilizados: Modelo em cascata Foi criado em 1970, e é o modelo mais tradicional. Ele indica que uma nova fase só pode começar quando a anterior for concluída, documentada e aprovada pelo cliente. A primeira versão para o cliente é entregue apenas no final do ciclo, e a ênfase do modelo está sobre as etapas de planejamento e desenvolvimento do software. A principal crítica a esse modelo é pelo fato de considerar a realidade estática e bem conhecida para realizar o desenvolvimento de um software. Quase sempre, a realidade das empresas e dos usuários é complexa, dinâmica e carregada de mudanças. Seu principal benefício é a facilidade de gestão do projeto. Modelo evolutivo Diferentemente do modelo em cascata, o evolutivo considera que nenhum requisito é conhecido no momento do planejamento. Por isso, o projeto faz entregas com base nas requisições conhecidas naquele momento, pede para o cliente usar o software em suas operações diárias e solicita feedbacks para criar novas versões. A grande vantagem desse modelo é a sua facilidade de se adaptar a cenários dinâmicos e oferecer novas funcionalidades aos usuários. Sua desvantagem é a dificuldade em estabelecer claros limites sobre o escopo e o tempo de projeto, o que demanda maior complexidade em seu gerenciamento. Usar o ciclo de vida é uma das melhores formas para garantir um bom alinhamento entre o desenvolvimento de softwares e as necessidades dos usuários e das empresas que os utilizam. Também é importante para garantir a viabilidade e a continuidade de um projeto.
Compartilhar