Da mesma forma que os seres humanos passam por diferentes fases ao longo da vida, o mesmo acontece com os produtos de software. Isto é frequentemente designado por ciclo de vida de lançamento de software.
Existem períodos de tempo definidos associados às diferentes fases do ciclo de vida ou “fases de desenvolvimento” das aplicações, mas pode ser difícil prever quando termina uma fase e começa outra. Cada fase tem o seu próprio conjunto distinto de tarefas e requisitos departamentais multifuncionais, pelo que é importante que os gestores de produto compreendam cada fase para conduzirem com êxito a empresa ao longo do ciclo de vida de lançamento de software.
À medida que avançamos neste artigo, acrescentarei comentários sobre a minha experiência de venda e integração do BankerBox, uma empresa FinTech SaaS para banqueiros de investimento, na SS&C Intralinks, juntamente com o meu cofundador, nas várias fases do SRLC.
O que é um ciclo de vida de lançamento de software (SRLC)?
O ciclo de vida de lançamento de software (SRLC) é um conjunto de marcos que descrevem as várias fases do ciclo de vida de um software ou a sua cronologia de lançamento sequencial, desde a conceção até ao lançamento final totalmente desenvolvido. A duração deste ciclo de vida varia em função de diversos fatores, como o tipo de produto, a utilização prevista e as normas de segurança, conformidade e gerais do setor.
Por exemplo, as aplicações de software têm normalmente um ciclo de vida mais curto do que a maioria dos outros produtos, porque são lançadas frequentemente novas funcionalidades e melhorias através de uma abordagem ágil, para responder às mudanças nas exigências do mercado e às novas tendências tecnológicas.
É semelhante ao ciclo de vida de desenvolvimento de software (SDLC), que é uma estrutura executada para o desenvolvimento de produtos de software. A diferença entre estes dois ciclos de vida é que o SDLC descreve apenas o processo de desenvolvimento e a conceção do software, enquanto o ciclo de vida de lançamento descreve não só o seu desenvolvimento, mas também a sua usabilidade, testes e distribuição.
Os lançamentos de software devem ser cuidadosamente planeados e testados (idealmente por uma equipa de testes), de modo a garantir que não causam mais problemas do que aqueles que resolvem. Um ciclo de vida de lançamento de software estabelece um plano claro para alcançar um processo de lançamento bem-sucedido através de um planeamento, testes e correções de erros adequados.
As empresas devem utilizar o ciclo de vida de lançamento de software para planear antecipadamente quando e como irão atualizar a sua aplicação Web ou aplicações ao longo do tempo. A implementação de práticas adequadas de gestão de lançamentos permite-lhes manter um produto robusto que satisfaça continuamente as necessidades dos seus utilizadores, a funcionalidade principal e as normas do setor (isto é também algo em que a IA na gestão de lançamentos pode ajudar). Isto permite-lhes manter um produto robusto que satisfaça continuamente as necessidades dos seus utilizadores, a funcionalidade principal e as normas do setor.
As 6 fases do ciclo de vida de lançamento de software
Existem diferentes fases dos ciclos de vida de lançamento de software que podem ser utilizadas, dependendo do tipo de sistema que está a ser desenvolvido e das necessidades da equipa de desenvolvimento.
As “fases” assinalam marcos no desenvolvimento de um produto e permitem à equipa de desenvolvimento e aos gestores de projeto acompanhar o progresso. Permitem também às equipas de desenvolvimento acompanhar tendências nas aplicações e aplicações Web e validar se estão a ser introduzidas melhorias através de iterações ao longo do tempo. Normalmente, inclui as seis fases seguintes:
Have an account? Log In
1. Versão pré-alfa
A primeira fase do ciclo de vida de lançamento de software é a pré-alfa. Esta fase do processo está totalmente centrada no desenvolvimento de um produto, e não no seu marketing e lançamento público. Abrange todas as ações executadas durante o desenvolvimento inicial, antes dos testes. As fases mais comuns da pré-alfa são a análise, a conceção, o desenvolvimento e os testes unitários.
Uma parte significativa da versão pré-alfa consiste em identificar como é que a aplicação de software precisa de evoluir, de modo a preparar lançamentos mais abrangentes, como a versão alfa ou a versão beta. A equipa de desenvolvimento precisa de implementar testes de software, usabilidade e automatização sólidos, para garantir transições estáveis entre as várias fases do ciclo de vida de lançamento de software.
Com a solução SaaS que o meu cofundador e eu integrámos na SS&C Intralinks, já tínhamos avaliado e concluído a fase pré-alfa. Tínhamos uma aplicação funcional, cuja arquitetura, conceção e construção estavam concluídas. No entanto, é importante salientar que a definição que uma pequena empresa de software faz das etapas de Análise, Conceção, Desenvolvimento e Testes Unitários pode diferir totalmente da perspetiva e do nível de rigor de uma grande empresa relativamente a estas etapas.
4 fases para iniciar a versão pré-alfa
Análise: é a fase inicial do ciclo de vida de lançamento de software ou SRLC, que envolve o estudo detalhado do problema e dos requisitos de um sistema. Inclui a análise dos requisitos dos utilizadores, da funcionalidade crítica, a identificação da área problemática, a preparação de relatórios de viabilidade e a criação da SRS (Especificação de Requisitos de Software).
Conceção: nesta fase, as equipas de desenvolvimento criam uma solução para o problema que foi identificado na fase de análise. Esta fase envolve a elaboração de um documento de conceção de alto nível e de maquetes que explica como implementar o produto de software. O documento de conceção destaca os passos básicos que devem ser seguidos para criar a aplicação web.
Se estiver a trabalhar em esquemas ou fluxos de IU, estas ferramentas de prototipagem de design responsivo podem ajudá-lo a testar ideias rapidamente antes de avançar para o desenvolvimento. O documento de conceção destaca os passos básicos que devem ser seguidos para criar a aplicação web.
Desenvolvimento: esta é a fase de programação propriamente dita, na qual uma equipa de desenvolvimento transforma as especificações dos requisitos num produto de software real. Assim que a programação estiver concluída, os programadores realizarão testes e tratarão da correção de erros o mais cedo possível.
Testes unitários: estes são realizados pelos programadores antes de entregarem o seu módulo à equipa de desenvolvimento de QA (Garantia da Qualidade) para o processo de testes adicional. Nesta fase, os programadores verificam cada linha do código-fonte para garantir que o código funciona corretamente antes de ser integrado em toda a aplicação.
2. Versão Alfa
A fase alfa representa a primeira letra do alfabeto grego e é também um nome de código para a fase de desenvolvimento que ocorre antes do lançamento de um produto. Os programadores de software utilizam o termo "alfa" ou “versão alfa” para descrever software que se encontra na sua primeira fase de testes de software.
Os testes alfa são realizados por funcionários internos ou programadores da organização. Este tipo de teste é realizado nas instalações do programador, mas não nas instalações do cliente. Os testes alfa são realizados após a conclusão dos testes do sistema e antes dos testes beta. Este teste é realizado para detetar erros ou defeitos relacionados com a usabilidade, a funcionalidade e a consistência.
Neste tipo de teste, um grupo de pessoas denominadas «testadores» realiza operações semelhantes às dos utilizadores finais e, em seguida, comunica quaisquer problemas encontrados. O principal objetivo dos testes alfa é garantir que todos os módulos estão devidamente integrados e funcionam conforme esperado.
Quando passámos pela fase Alfa do BankerBox, contactámos colegas das áreas de produto e software e, no nosso caso (a criação de uma solução para bancos), vários banqueiros de investimento e contactos do setor financeiro.
O software alfa tem todas as funcionalidades previstas, mas é provável que contenha erros. O foco dos testes alfa é melhorar um produto, detetando problemas antes de este passar aos testes beta e adicionando quaisquer últimos ajustes sugeridos pelos comentários da fase alfa.
3. Versão Beta
A fase beta, cujo nome deriva da segunda letra do alfabeto grego, é o nome de código utilizado para indicar que um produto de software passou à sua segunda fase de testes e está pronto para utilização externa por clientes ou utilizadores, frequentemente designados por “testadores beta”. Algumas organizações designam esta fase como a fase de “adoção antecipada”.
Depois de uma versão beta ser lançada, geralmente é submetida a testes mais intensivos do que durante a sua fase alfa. Permite às empresas avaliar o desempenho do seu software em condições reais.
Depois de a SS&C Intralinks ter adquirido o BankerBox, criámos rapidamente alguns pontos de integração importantes entre o nosso software e os sistemas mais abrangentes da empresa (autenticação, servidores na nuvem, etc.). Em seguida, fizemos demonstrações e estabelecemos parcerias com vários clientes da empresa para os convidar a “testar em versão beta” esta solução ao vivo numa operação de M&A.
Esta foi uma excelente forma de obter comentários, desenvolver uma relação com os clientes e identificar áreas em que o software precisava de evoluir para cumprir os requisitos e o “nível” necessários para um Candidato a Lançamento (RC) ou para a Disponibilidade Geral (GA).
Neste tipo de teste, os clientes fornecem comentários valiosos sobre se o produto ou a aplicação corresponde às suas expectativas relativamente à funcionalidade, usabilidade, desempenho, fiabilidade, escalabilidade, entre outros aspetos. Os comentários fornecidos pelos utilizadores finais ajudam a melhorar a experiência do utilizador e a corrigir problemas operacionais antes do lançamento do produto em produção. Existem dois tipos de fase beta:
- Beta aberta: durante esta fase, qualquer pessoa que deseje participar no processo de testes beta pode fazê-lo. Isto pode ajudar os programadores a identificar e corrigir erros no seu produto de forma rápida e fácil, uma vez que os comentários de vários utilizadores podem lançar luz sobre os problemas.
- Beta fechada: nesta fase, existe um mercado-alvo específico, com grupos específicos de pessoas que são os testadores. O mercado-alvo ajuda a concentrar os testes de software em áreas específicas de interesse e contribui para garantir que tudo funciona de acordo com as necessidades dos consumidores-alvo.
4. Candidato a Lançamento
Um candidato a lançamento (RC) é uma versão de pré-lançamento do software que está a ser preparada para o lançamento final do produto (na fase RC) ao público. Por vezes, esta fase é designada por “disponibilidade controlada”. Embora possa incluir todas as funcionalidades e capacidades previstas e funcionar conforme esperado, continua sujeita a alterações, possivelmente até radicais, com base em quaisquer comentários recebidos.
Os programadores podem disponibilizar vários candidatos a lançamento antes de lançarem o produto concluído, para garantir que o programa não bloqueia sob uma carga elevada, não apresenta fugas de memória significativas, etc.
5. Disponibilidade geral
A disponibilidade geral (GA) significa que um produto ou serviço foi disponibilizado para compra pela maioria dos clientes (normalmente a nível global), geralmente através de canais comerciais. Na engenharia de software, esta expressão refere-se normalmente a uma aplicação Web ou app que está disponível para todos os utilizadores previstos. Durante esta fase, quaisquer atualizações ou trabalhos adicionais de desenvolvimento do produto destinam-se a melhorar as suas funcionalidades e desempenho, de modo a torná-lo mais comercializável para os clientes.
Quando o BankerBox, agora com o novo nome de marca “Deal Marketing”, atingiu a Disponibilidade geral, conseguimos expandi-lo para clientes de toda a América do Norte e obter feedback valioso, dados de utilização, escalabilidade, etc., para validar a adequação do produto ao mercado, antes de avançarmos para a fase final do ciclo de vida de lançamento de software: o lançamento em produção.
More Articles
6. Lançamento em produção
Uma versão estável é uma versão de um pacote de software que foi testada e verificada. É a versão mais recente (e, por vezes, a versão final) de um programa considerada segura para utilização pública. Este tipo de lançamento também é designado por lançamento “Estável”.
Quando um software ou uma aplicação Web entra nesta fase, pode indicar à organização e ao mercado em geral o nível de preparação do seu produto. Na SS&C Intralinks, enquanto líder na organização de produto, associei iniciativas fundamentais e transversais a estas fases.
Na fase de Lançamento em produção, conseguimos elaborar uma estratégia de oferta, lançamentos completos de marketing e vendas, bem como o suporte necessário nos serviços de apoio ao cliente, na engenharia de fiabilidade do site e noutros departamentos, para tornar o produto um sucesso.
Segundo a maioria dos critérios, este é considerado um produto completo, embora possa apresentar alguns problemas menores considerados aceitáveis. Em alguns casos, como no Linux, existem dois tipos de lançamentos estáveis: LTS (suporte de longo prazo) e lançamentos estáveis regulares.
- Lançamentos estáveis regulares - são o tipo de lançamento mais comum que encontrará. São fáceis de instalar (quando falamos de software de sistemas operativos) e, tal como o nome indica, são estáveis. Se pretende testar software num ambiente de produção, este é normalmente o tipo de lançamento que utiliza. As aplicações Web referem-se frequentemente aos lançamentos estáveis regulares como lançamentos “Principais”.
- Lançamentos LTS (suporte de longo prazo) - foram especificamente concebidos para utilização prolongada em ambientes de produção. Estes lançamentos têm um período de suporte mais longo do que os lançamentos estáveis padrão (o intervalo médio entre lançamentos LTS é de três anos). Isto significa que foram testados exaustivamente e são considerados mais seguros do que os lançamentos estáveis.
Considerações finais
Compreender as várias fases do ciclo de vida de lançamento de software de um produto é uma excelente forma de um gestor de produto alinhar expectativas e associar atividades transversais e relacionadas com os clientes às várias etapas do SRLC. Isto permite segmentar claramente o produto em relação ao conjunto mais amplo de objetivos, estratégias e iniciativas da empresa.
Utilizar estas fases como pontos de “gatilho” permitiu-me integrar com sucesso o meu produto numa grande empresa e calendarizar as várias ações para garantir o sucesso no mercado.
Depois de concluídas as fases do SRLC, o produto passou pelos seus ciclos de vendas e crescimento e a organização identifica sinais de que o produto está a chegar ao fim do seu percurso, começa o ciclo de vida de manutenção, que inclui:
- corrigir erros comunicados pelo cliente durante a fase de implementação,
- adicionar algumas funcionalidades novas, ou
- modificar funcionalidades existentes conforme solicitado pelo cliente, de acordo com as necessidades em mudança e a evolução tecnológica.
Por fim, em determinado momento, todos os produtos de software chegam ao fim de vida quando deixam de ser suportados pelos respetivos programadores.
Para saber mais sobre gestão de produto e boas práticas de desenvolvimento de produtos, não deixe de subscrever! Até à próxima.
Artigos relacionados:
- As 6 fases do ciclo de vida de desenvolvimento de software (SDLC)
- Como escrever notas de lançamento de software eficazes que encantem os utilizadores
Lista relacionada de ferramentas: Ferramentas de gestão de lançamentos de software
Também vale a pena consultar:




