Uma das minhas equipes ágeis adotou uma abordagem interessante nos estágios iniciais do projeto. Em vez de iniciar o projeto com um Sprint 0, onde eles configuram a infraestrutura de código e decidem sobre a arquitetura da solução, eles começaram a criar um "Walking Skeleton", que descrevem como uma prática do DevOps.
O que isso parece se resumir é criar algo muito pequeno (no caso de uma API, um único ponto de extremidade que acaba de retornar 200-OK
), fazer isso funcionar em integração contínua e criar o pipeline de entrega contínua para implantar isso em cada um dos ambientes:
Desenvolvimento ► Teste ► UAT ► Pré-produção ► Produção
No processo, eles conseguiram marcar muitos dos requisitos não funcionais que poderiam ter sido perdidos se as implantações fossem deixadas para o último minuto.
Minha pergunta é a seguinte: o que é um "Walking Skeleton" e que benefício ele oferece a uma equipe Agile seguindo as práticas de DevOps?
fonte
Respostas:
Um "esqueleto ambulante" é uma forma de "prova de conceito" do seu conceito arquitetônico básico. Onde uma prova de conceito geralmente se concentra mais em uma única funcionalidade, um "Walking Skeleton" é uma implementação minimalista de ponta a ponta. Um "esqueleto ambulante" não é um esboço do seu conceito (apenas um "esqueleto"), mas é realmente executável e entregável (pode "andar": O) e deve ser acompanhado de testes.
Alistair Cockburn o descreveu (e é citado com frequência):
A vantagem aqui para o DevOps é que um "Walking Skeleton" deve ser desenvolvido no início do projeto e resultar em código de trabalho, expedível e testável . Dessa forma, o DevOps pode configurar uma cadeia de integração contínua completa no início do projeto, em vez de ser integrado na fase final dos projetos. Isso significa que todos os problemas que surgirem também serão resolvidos em um estágio inicial, em vez de um trabalho rápido no final.
fonte