DLC: Fases e Modelos do Ciclo de Vida de Desenvolvimento de Software

O que é SDLC?

SDLC é um processo sistemático de construção de software que garante a qualidade e correção do software construído. O processo SDLC visa produzir software de alta qualidade que atenda às expectativas do cliente. O desenvolvimento do sistema deve ser concluído no prazo e custo pré-definidos. O SDLC consiste em um plano detalhado que explica como planejar, construir e manter um software específico. Cada fase do ciclo de vida do SDLC tem seu próprio processo e resultados que alimentam a próxima fase. SDLC significa Ciclo de Vida de Desenvolvimento de Software e também é conhecido como ciclo de vida de desenvolvimento de aplicativos

Neste tutorial de ciclo de vida de desenvolvimento de software, você aprenderá

Por que SDLC?

Aqui estão as razões principais pelas quais o SDLC é importante para o desenvolvimento de um sistema de software.

  • Ele oferece uma base para o planejamento, programação e estimativa do projeto
  • Fornece uma estrutura para um conjunto padrão de atividades e resultados
  • É um mecanismo de acompanhamento e controle do projeto
  • Aumenta a visibilidade do planejamento do projeto para todas as partes interessadas envolvidas no processo de desenvolvimento
  • Aumento e melhora a velocidade de desenvolvimento
  • Relações com o cliente aprimoradas
  • Ajuda você a diminuir o risco do projeto e a sobrecarga do plano de gerenciamento do projeto

Fases SDLC

Todo o processo SDLC dividido nas seguintes etapas SDLC:

Fases SDLC

  • Fase 1: coleta e análise de requisitos
  • Fase 2: Estudo de viabilidade
  • Fase 3: Design
  • Fase 4: Codificação
  • Fase 5: Teste
  • Fase 6: Instalação / implantação
  • Fase 7: Manutenção

Neste tutorial, expliquei todas essas fases do ciclo de vida de desenvolvimento de software

Fase 1: coleta e análise de requisitos

O requisito é o primeiro estágio do processo SDLC. É conduzido pelos membros seniores da equipe com contribuições de todas as partes interessadas e especialistas no domínio da indústria. Planejando para o Garantia da Qualidade requisitos e reconhecimento dos riscos envolvidos também é feito nesta fase.

Este estágio dá uma imagem mais clara do escopo de todo o projeto e dos problemas, oportunidades e diretrizes antecipadas que o desencadearam.

O estágio de coleta de requisitos precisa de equipes para obter requisitos detalhados e precisos. Isso ajuda as empresas a finalizar o cronograma necessário para finalizar o trabalho daquele sistema.

Fase 2: Estudo de viabilidade

Assim que a fase de análise de requisitos for concluída, a próxima etapa do SDLC é definir e documentar as necessidades de software. Este processo é conduzido com a ajuda do documento 'Especificação de Requisitos de Software', também conhecido como documento 'SRS'. Inclui tudo o que deve ser projetado e desenvolvido durante o ciclo de vida do projeto.

Existem principalmente cinco tipos de verificações de viabilidade:

  • Econômico: Podemos concluir o projeto dentro do orçamento ou não?
  • Jurídico: Podemos lidar com este projeto como lei cibernética e outras estruturas / conformidades regulatórias.
  • Viabilidade de operação: Podemos criar operações que são esperadas pelo cliente?
  • Técnico: É necessário verificar se o sistema de computador atual pode suportar o software
  • Cronograma: Decida se o projeto pode ser concluído dentro do prazo determinado ou não.

Fase 3: Design

Nesta terceira fase, os documentos de design de sistema e software são preparados de acordo com o documento de especificação de requisitos. Isso ajuda a definir a arquitetura geral do sistema.

Esta fase de design serve como entrada para a próxima fase do modelo.

Existem dois tipos de documentos de design desenvolvidos nesta fase:

Design de alto nível (HLD)

  • Breve descrição e nome de cada módulo
  • Um esboço sobre a funcionalidade de cada módulo
  • Relacionamento de interface e dependências entre módulos
  • Tabelas de banco de dados identificadas junto com seus elementos-chave
  • Diagramas de arquitetura completos, juntamente com detalhes de tecnologia

Design de baixo nível (LLD)

  • Lógica funcional dos módulos
  • Tabelas de banco de dados, que incluem tipo e tamanho
  • Detalhe completo da interface
  • Aborda todos os tipos de problemas de dependência
  • Lista de mensagens de erro
  • Entradas e saídas completas para cada módulo

Fase 4: Codificação

Depois que a fase de design do sistema termina, a próxima fase é a codificação. Nesta fase, os desenvolvedores começam a construir todo o sistema escrevendo o código usando a linguagem de programação escolhida. Na fase de codificação, as tarefas são divididas em unidades ou módulos e atribuídas aos vários desenvolvedores. É a fase mais longa do processo de Ciclo de Vida de Desenvolvimento de Software.

Nesta fase, o desenvolvedor precisa seguir certas diretrizes de codificação predefinidas. Eles também precisam usar ferramentas de programação como compilador, interpretadores, depurador para gerar e implementar o código.

Fase 5: Teste

Assim que o software estiver concluído e implantado no ambiente de teste. A equipe de teste começa a testar a funcionalidade de todo o sistema. Isso é feito para verificar se todo o aplicativo funciona de acordo com a necessidade do cliente.

Durante esta fase, o controle de qualidade e a equipe de teste podem encontrar alguns bugs / defeitos que eles comunicam aos desenvolvedores. A equipe de desenvolvimento corrige o bug e envia de volta ao controle de qualidade para um novo teste. Esse processo continua até que o software esteja livre de bugs, estável e funcionando de acordo com as necessidades de negócios desse sistema.

Fase 6: Instalação / implantação

Assim que a fase de teste de software terminar e nenhum bug ou erro for deixado no sistema, o processo final de implantação é iniciado. Com base no feedback fornecido pelo gerente de projeto, o software final é lançado e verificado quanto a problemas de implantação, se houver.

Fase 7: Manutenção

Uma vez que o sistema é implantado, e os clientes começam a usar o sistema desenvolvido, as seguintes 3 atividades ocorrem

  • Resolução de bugs - bugs são relatados por causa de alguns cenários que não foram testados
  • Upgrade - Atualizando o aplicativo para as versões mais recentes do Software
  • Aprimoramento - Adicionando alguns novos recursos ao software existente

O foco principal desta fase do SDLC é garantir que as necessidades continuem a ser atendidas e que o sistema continue a funcionar de acordo com a especificação mencionada na primeira fase.

Modelos SDLC populares

Aqui estão alguns dos modelos mais importantes de Ciclo de Vida de Desenvolvimento de Software (SDLC):

Modelo em cascata em SDLC

A cachoeira é um modelo SDLC amplamente aceito. Nessa abordagem, todo o processo de desenvolvimento do software é dividido em várias fases do SDLC. Neste modelo SDLC, o resultado de uma fase atua como entrada para a próxima fase.

Este modelo SDLC requer muita documentação, com fases anteriores documentando o que precisa ser executado nas fases subsequentes.

Modelo Incremental em SDLC

O modelo incremental não é um modelo separado. É essencialmente uma série de ciclos em cascata. Os requisitos são divididos em grupos no início do projeto. Para cada grupo, o modelo SDLC é seguido para desenvolver software. O processo de ciclo de vida do SDLC é repetido, com cada versão adicionando mais funcionalidade até que todos os requisitos sejam atendidos. Neste método, cada ciclo atua como a fase de manutenção para a versão anterior do software. A modificação do modelo incremental permite que os ciclos de desenvolvimento se sobreponham. Depois disso, o ciclo subsequente pode começar antes que o ciclo anterior seja concluído.

V-Model e SDLC

Nesse tipo de teste e desenvolvimento do modelo SDLC, a fase é planejada em paralelo. Portanto, existem fases de verificação do SDLC do lado e a fase de validação do outro lado. O V-Model junta-se pela fase de codificação.

Modelo Ágil em SDLC

A metodologia ágil é uma prática que promove a interação contínua de desenvolvimento e teste durante o processo SDLC de qualquer projeto. No método Agile, todo o projeto é dividido em pequenos builds incrementais. Todas essas compilações são fornecidas em iterações e cada iteração dura de uma a três semanas.

Modelo Espiral

O modelo em espiral é um modelo de processo orientado para o risco. Este modelo de teste SDLC ajuda a equipe a adotar elementos de um ou mais modelos de processo, como cascata, incremental, cascata, etc.

Este modelo adota as melhores características do modelo de prototipagem e do modelo em cascata. A metodologia em espiral é uma combinação de prototipagem rápida e simultaneidade nas atividades de design e desenvolvimento.

Modelo big bang

O modelo big bang está focando em todos os tipos de recursos no desenvolvimento e codificação de software, com nenhum ou muito pouco planejamento. Os requisitos são compreendidos e implementados quando eles chegam.

Este modelo funciona melhor para pequenos projetos com equipes de desenvolvimento de tamanho menor que estão trabalhando juntas. Também é útil para projetos de desenvolvimento de software acadêmico. É um modelo ideal onde os requisitos são desconhecidos ou a data de lançamento final não é fornecida.

Resumo

  • O Ciclo de Vida de Desenvolvimento de Software (SDLC) é um processo sistemático de construção de software que garante a qualidade e exatidão do software construído
  • O formulário completo do SDLC é Ciclo de Vida de Desenvolvimento de Software ou Ciclo de Vida de Desenvolvimento de Sistemas.
  • SDLC em engenharia de software fornece uma estrutura para um conjunto padrão de atividades e resultados
  • Sete diferentes estágios SDLC são 1) Coleta e análise de requisitos 2) Estudo de viabilidade: 3) Projeto 4) Codificação 5) Teste: 6) Instalação / Implantação e 7) Manutenção
  • Os membros seniores da equipe conduzem o análise de requisitos Estágio
  • A fase de estudo de viabilidade inclui tudo o que deve ser projetado e desenvolvido durante o ciclo de vida do projeto
  • Na fase de projeto, os documentos de projeto de sistema e software são preparados de acordo com o documento de especificação de requisitos
  • Na fase de codificação, os desenvolvedores começam a construir todo o sistema escrevendo o código usando a linguagem de programação escolhida
  • O teste é a próxima fase conduzida para verificar se todo o aplicativo funciona de acordo com os requisitos do cliente.
  • A face de instalação e implantação começa quando o teste de software a fase acabou, e nenhum bug ou erro foi deixado no sistema
  • Correção de bugs, atualização e ações de engajamento abordadas no rosto de manutenção
  • Cachoeira, Incremental, Ágil, modelo V, Espiral, Big Bang são alguns dos modelos SDLC populares em engenharia de software
  • SDLC em teste de software consiste em um plano detalhado que explica como planejar, construir e manter um software específico