O que é SDLC? Estágios do ciclo de vida do software, metodologia e processos

Citando James Taylor, autor do livro Gerenciando Projetos de Tecnologia da Informação , "o ciclo de vida do projeto abrange todas as atividades do projeto." A tarefa do desenvolvimento de software é atender aos requisitos do produto. Se você deseja aprender como criar e entregar software de alta qualidade, deve seguir um plano. Segundo Taylor, seu objetivo deve ser uma análise abrangente das atividades do projeto e o controle de cada etapa de seu desenvolvimento. Por onde começar?



A resposta é que a estrutura certa ajudará a direcionar seu fluxo de trabalho na direção certa. Um framework muito forte e popular atualmente é SDLC - Software Life Cycle.



Como funciona o SDLC e por que é usado



O diagrama abaixo fornece uma visão geral dos seis estágios principais do SDLC.







Em geral, o SDLC é um circuito fechado em que cada estágio influencia as ações nas seguintes e fornece indicações promissoras para o futuro. Para responder a perguntas específicas e garantir a consistência em seu processo de desenvolvimento, todos os seis estágios tentam influenciar uns aos outros de forma eficaz e consistente.



Vou tentar abstrair as sutilezas e fornecer exemplos gerais adequados para alunos e desenvolvedores de software. Por exemplo, se você está tentando criar um aplicativo para trabalhadores horistas ou um aplicativo de rastreamento de tempo , semelhante ao Zoomshift , você precisará começar com a fase de análise de requisitos.



Nesse nível mais básico, você será capaz de entender quais devem ser os requisitos para os funcionários em questões de tempo e trabalho, para os quais será útil entrevistar os próprios funcionários e seus gerentes seniores. Além disso, para um melhor entendimento dos problemas das aplicações atuais no campo, você pode testar suas soluções no mercado, além da criação de diagramas, gráficose, em geral, manter registros o ajudará a entender melhor o feedback quantitativo e qualitativo . Somente depois de perceber esses recursos críticos, você está pronto para passar para o próximo estágio do SDLC - planejamento.



A fase de análise de requisitos pode ser muito tediosa, mas seguir essas etapas leva a muitos resultados: menor tempo de lançamento no mercado, maior produtividade, menor orçamento e maior probabilidade de lançamento do produto no mercado.



Pense fora de um aplicativo de controle de tempo típico - pense sobre o que você deseja criar, o que deseja fazer e, em seguida, defina os requisitos para enfrentar os desafios associados. Este será o seu começo.



Estágios SDLC e melhores práticas e metodologias



Durante o desenvolvimento, antes de passar do estágio atual para o próximo, é necessário completar cada uma de suas etapas, para as quais devem ser melhor compreendidas. Nesse sentido, as três primeiras etapas tentam responder às questões do teste e as três últimas são otimizadas para obter resultados reais.



  • A análise de requisitos responde à pergunta "Quais problemas exigem soluções?"
  • O planejamento responde à pergunta "O que queremos fazer?"
  • A engenharia e o design respondem à pergunta "Como atingiremos nossos objetivos?"
  • O desenvolvimento de software governa o processo de criação de um produto.
  • O teste governa a garantia do desempenho do produto.
  • A implantação rege o uso do produto final.


Essas seis etapas descrevem as etapas que você provavelmente executará ao avaliar, construir, testar e implantar seu software. No entanto, o SDLC padroniza e formaliza o fluxo de trabalho, o que é de seu interesse: seguindo etapas específicas da estrutura, você pode entender facilmente onde está e dizer à equipe para onde está indo.



Vamos dar uma olhada em cada estágio e analisar as questões e os resultados do teste, alguns dos quais você pode querer otimizar para sua situação específica.



Estágio # 1: Análise de Requisitos



Neste ponto do SDLC, você precisa obter feedback e suporte de partes interessadas internas e externas relevantes. Considere meu exemplo recente de desenvolvimento de um aplicativo de rastreamento de tempo: você precisará pensar amplamente sobre quem serão seus usuários em potencial. Algumas idéias incluirão seus clientes, designers, seu chefe ou outros membros da equipe técnica. Em geral, você deseja responder à seguinte pergunta: "Quais problemas exigem soluções?" Estar atento e tomar notas será muito útil nesta fase.



Quando estiver satisfeito com as respostas, você pode prosseguir para a próxima fase.



Etapa 2: Planejamento



Neste estágio, você está procurando uma resposta para a próxima pergunta: "O que você quer fazer?" Esta questão pode inspirá-lo a entender a economia da unidade de seu plano (custos e benefícios), fatores de mitigação de risco e custos esperados. Semelhante ao planejamento de férias, você precisará separar seus pertences e pensar no que levar com você.



Bom exemplo:



li muito sobre uma história do Instagram cuja fase de planejamento levou um tempo incrivelmente longo. Isso coincidiu com a explosão das mídias sociaisportanto, a interação do usuário com o produto ainda era amplamente desconhecida. Os desenvolvedores sabiam que uma forte experiência primária (fotografar, editar e compartilhar fotos) garantiria crescimento, sucesso e altas conversões, e o planejamento correto simplificaria o design, então eles planejaram adequadamente e gastaram muito tempo no design . Eles sempre olharam um passo à frente e pensaram no futuro das mídias sociais e do comércio eletrônico .



Planeje o que você pode controlar e lembre-se das coisas que você não pode planejar. Isso o ajudará a obter uma base sólida para passar para o terceiro estágio.



Etapa # 3: Engenharia e design



Nesse estágio, você já deve conhecer os requisitos do seu produto e, em geral, entender o que geralmente deseja, e antes de começar a escrever o código, esse entendimento deve ser suficiente para responder à próxima pergunta: "Como atingiremos nossos objetivos?" Em outras palavras, você precisa entender o que exatamente está otimizando e projetar de acordo.



Digamos que você queira construir um aplicativo seguro, de alto desempenho, eficiente e de suporte de carga. Qual desses quatro princípios é mais importante para você? Por quê? As partes interessadas do primeiro estágio concordam com isso? É importante garantir a aprovação de todos os participantes.



Após a fase de design, você pode finalmente começar a trabalhar nos teclados, e fazer alterações em termos de tempo e recursos gastos aumentará continuamente e todos os tipos de pequenos fatores se acumularão gradualmente. Nesta fase, recomendo considerar vários elementos-chave para tomar as decisões finais de projeto: excelência operacional, segurança, confiabilidade, eficiência de desempenho e otimização de custos.



Etapa 4: Desenvolvimento de software



Durante a fase de desenvolvimento, você não busca tanto responder a perguntas quanto produzir resultados ou, mais precisamente, precisa se inclinar para a ação e criar um protótipo ou sistema que outros possam testar. Neste ponto, seu objetivo é construir a confiança de seus stakeholders incorporando a mentalidade do desenvolvedor. É fundamental seguir as três primeiras etapas no início do desenvolvimento para atender às expectativas.



Pegue seu computador, verifique se o ambiente é propício para um ambiente de trabalho, pegue seu café quente e comece a trabalhar.



Etapa 5: Teste



Funcionários com camisetas com slogans como "Design é legal, testar não é muito" era uma visão familiar para mim, mas você deve entender que não pode criar a versão final do produto antes de comer o cachorro nela. Após a conclusão desta fase, você deve ser capaz de garantir que o produto está funcionando perfeitamente. Rastreie erros e imprecisões, ouça os pontos de vista de outras pessoas e mergulhe profundamente na questão para encontrar erros que atrasem o lançamento do produto final. Você só precisa fornecer uma base sólida.



Fase # 6: Implantar



Pegue seu produto e use-o. Ofereça aos interessados ​​desde o primeiro estágio a utilização de seu produto em condições naturais, comece a rastrear o engajamento de vendas . Ouça seus usuários repetidamente, pois o feedback por meio de pesquisas e recomendações pode ajudá-lo a retornar à Fase 1 e começar a coletar novos requisitos. E não se esqueça de comemorar o lançamento.



Juntando tudo: a abordagem SDLC



A estrutura SDLC existe para ajudá-lo a reduzir o tempo de colocação no mercado, fornecer melhor desempenho, economizar no orçamento e aumentar o valor potencial de seu produto para as partes interessadas com as quais você se preocupa. SDLC é especialmente útil no desenvolvimento de software porque força você a trabalhar dentro de uma estrutura rígida. Em outras palavras, para garantir a ação correta no momento correto e pelos motivos corretos, o SDLC o obrigará a seguir todas as etapas necessárias. Pense no SDLC como um plano de sucesso: segui-lo cegamente não garante nada, mas aumenta a probabilidade de você ficar feliz com os resultados.



O desenvolvimento de software, como todos sabemos, é um tópico vasto e pode levantar problemas de ferramentas de web design eformulários on-line para aprendizado de máquina mais robusto ou sistemas de back-end. Esteja você escrevendo código no navegador ou fazendo um desenvolvimento mais robusto, você precisa de um roteiro.



O desenvolvimento de software pode ser desafiador e gratificante ao mesmo tempo.



O SDLC é um plano técnico, mas de forma mais ampla, você pode pensar nele como um guia para a vida. O SDLC pode ser aplicado a uma variedade de tópicos, por exemplo, a criação de conteúdo no modelo SaaS é baseada no ciclo SDLC. Antes de escrever o conteúdo, o autor primeiro define os requisitos, planeja exatamente o que vai escrever e só então realmente coloca a caneta no papel. O SDLC também é ótimo para empreendedores de tecnologia.



Um amigo meu queria começar a melhor agência de publicidade do Facebooke pedi ajuda a mim e a outros especialistas. Apesar de suas grandes ambições, eu o aconselhei a usar a estrutura SDLC para fazer a análise de requisitos primeiro. Eu perguntei a ele: “Que problemas você quer resolver? O que seus usuários querem? E o mais importante, como essa plataforma o ajudará a atingir seus objetivos? "



Ao colocar essas questões em torno do SDLC, ele foi capaz de aprimorar seu produto final e fornecer as ferramentas certas para os usuários certos. Ele estreitou seus horizontes para uma definição mais estrita de sua área de problema e foi capaz de alocar recursos para o planejamento antes mesmo de começar a fazer qualquer outra coisa.



Em seguida, ele passou a criar o melhor serviço de crescimento no Instagram , mas seus interesses estão em constante evolução, e agora ele já temprogramas de agendamento de mídia social em qualquer escala. Eventualmente, ele terá que voltar ao básico: análise de requisitos.



A aceitação de sua tecnologia pelo usuário prova que sólidos resultados tecnológicos e financeiros podem ser alcançados com a aplicação correta do SDLC. No entanto, como acontece com o desenvolvimento de negócios, o desenvolvimento de software nunca termina.



Portanto, o ciclo continua.



Esteja você construindo uma empresa, uma ferramenta, um programa complexo ou um produto completamente novo para garantir qualidade e foco nos usuários, SDLC é uma boa solução.



Build Cool deve ser sua luz guia e o SDLC deve ser sua ferramenta e ajudante.



All Articles