Negocio

Ciclos de vida de desenvolvimento de sistemas: processo de desenvolvimento de software

Ciclo de vida de desenvolvimento de sistemas

O desenvolvimento de sistema é o processo de definir, projetar, testar e implementar um aplicativo de software. Isso inclui o desenvolvimento interno de sistemas customizados, bem como a aquisição de softwares desenvolvidos por terceiros. Um projeto de desenvolvimento de sistema inclui todas as atividades desde o momento em que um requisito potencial foi identificado até que o sistema foi totalmente implementado.

O ciclo de vida de desenvolvimento de sistemas, ou SDLC, é o processo de criação de sistemas e os modelos usados ​​para desenvolver esses sistemas. Um SDLC típico inclui várias fases diferentes, como análise de requisitos, design de software, codificação de software, teste e depuração, instalação e manutenção. Este ciclo de vida é implementado usando um processo de desenvolvimento de software. Existem vários modelos de desenvolvimento de software, cada um com uma abordagem um pouco diferente para implementar as várias fases do ciclo de vida.

Modelos de Desenvolvimento de Software

O modelo em cascata de desenvolvimento de software segue um processo de design muito sequencial. Também é conhecido como modelo de ciclo de vida de sequência linear. Nesse modelo, o progresso é visto como fluindo para baixo em várias fases, como uma cachoeira. As fases incluem iniciação e concepção, análise de requisitos, design de software, construção (ou codificação), teste e depuração, instalação e manutenção. A premissa básica do modelo em cascata é que você só avança para a próxima fase quando a fase anterior é concluída com êxito. Essa abordagem funciona bem para projetos que são relativamente simples.

O modelo V é uma extensão do modelo em cascata. Em vez de descer de forma linear, as etapas do processo sobem após a fase de codificação para formar uma forma de V. Essa forma demonstra a relação entre cada fase inicial de desenvolvimento e a fase de teste associada. Nessa abordagem, os procedimentos de teste são desenvolvidos no início do ciclo de vida, mesmo antes de qualquer codificação ser feita. O teste tem uma ênfase muito maior aqui em comparação com o modelo em cascata.

O modelo iterativo e incremental emprega uma abordagem cíclica. Ele começa com uma fase de planejamento inicial e termina com a implantação, com interações cíclicas ocorrendo entre eles. A abordagem é incremental, pois divide a funcionalidade em pequenos incrementos, que são desenvolvidos e testados em uma ou mais iterações.

O modelo de prototipagem de software depende da criação e teste de protótipos de aplicativos de software. Um protótipo é uma versão simples e incompleta do software que está sendo desenvolvido. É desenvolvido um protótipo inicial que atende a alguns dos requisitos básicos, mas carece de muitos dos detalhes. O protótipo inicial é testado e revisado, e o feedback é usado para melhorar o protótipo.

O modelo em espiral combina elementos de vários outros modelos, em particular os modelos em cascata e prototipagem. É normalmente usado para projetos grandes e complicados. A abordagem começa com um pequeno protótipo, que é seguido por uma versão resumida do processo em cascata. Isso é principalmente para reunir requisitos. O primeiro protótipo é revisado e, em loops subsequentes, requisitos adicionais são identificados e um design mais detalhado é desenvolvido e implementado.

Protótipos

Vários modelos dependem do uso de protótipos. Um protótipo demonstra os principais recursos do sistema sem todas as suas funcionalidades detalhadas. A prototipagem pode ser usada de várias maneiras diferentes; por exemplo, para identificar requisitos, para demonstrar a viabilidade técnica de um sistema proposto e para convencer as pessoas de que vale a pena desenvolver um determinado sistema.

Uma abordagem de protótipo para o desenvolvimento de software coloca uma forte ênfase nos usuários. Quando um protótipo é construído, o usuário pode decidir se gosta ou não. O feedback do usuário é aplicado na próxima versão do protótipo

Desenvolvimento de Aplicação Rápida

Uma abordagem ao desenvolvimento de software que ganhou muito interesse nos últimos anos é o desenvolvimento rápido de aplicativos , ou RAD . Essa abordagem usa um processo iterativo e depende muito do uso de protótipos. Os desenvolvedores e usuários finais estão trabalhando juntos durante todos os estágios de desenvolvimento do sistema.

RAD usa componentes pré-construídos de várias linguagens de programação para construir protótipos muito rapidamente. O sistema é construído um segmento de cada vez e esses segmentos são testados enquanto todo o sistema está sendo construído. O uso de prototipagem torna mais fácil descobrir se os segmentos estão funcionando nos estágios iniciais de desenvolvimento.

Em uma abordagem mais tradicional, o estágio de análise e design pode consumir uma boa quantidade de tempo e esforço. Em contraste, o estágio de análise e design no RAD é muito rápido e os detalhes do design são desenvolvidos durante vários ciclos de protótipo. Uma série de variações do RAD foram desenvolvidas, incluindo desenvolvimento ágil de software, desenvolvimento de software scrum e programação extrema. Essas abordagens combinam elementos de prototipagem rápida, iteração por meio de ciclos e capacidade de resposta aos requisitos.

Resumo da lição

  • Um ciclo de vida de desenvolvimento de sistemas típico inclui uma série de fases diferentes, como análise de requisitos, design de software, codificação de software, teste e depuração, instalação e manutenção.
  • Existem diferentes abordagens para implementar as várias fases do ciclo de vida. Maioria das mais importantes são o modelo cascata , o modelo-V , o modelo iterativo e incremental , o modelo de prototipagem e o modelo em espiral .
  • Protótipos são amplamente utilizados no desenvolvimento de sistemas . Eles demonstram os principais recursos do sistema sem todas as suas funcionalidades detalhadas.
  • O desenvolvimento rápido de aplicativos (RAD) usa um processo iterativo para construir e testar protótipos muito rapidamente.

Resultados de Aprendizagem

Após esta lição, você deverá ser capaz de:

  • Resuma as diferentes fases de um ciclo de vida de desenvolvimento de sistemas
  • Descreva os vários modelos de desenvolvimento de software
  • Identifique o propósito do modelo de prototipagem
  • Explique o desenvolvimento rápido de aplicativos