Um esqueleto de caminhada, em um contexto de desenvolvimento de software, é uma implementação inicial mínima de uma aplicação s architecture que inclui e liga os componentes básicos do sistema. Como o nome indica, a estrutura está instalada e funcional de uma forma rudimentar, mas o sistema não é enxuto e não fornece o nível de serviço exigido do produto final. Os subsistemas são incompletos, mas conectados entre si.
Esqueletos de caminhada são comumente usados em desenvolvimento controlado por teste (TDD), no qual teste de unidade é feito repetidamente no código fonte. Após cada teste, o código é refactored e re-testado até que cada unidade esteja funcionando de acordo com as especificações desejadas.
Um esqueleto andante deve ser capaz de executar as funções básicas requeridas do sistema final, tais como consultar fontes de dados, solicitar serviços e conduzir funções. Qualquer automação, como o tratamento de exceções e a integração contínua (CI), também deve estar implementada e todos os componentes implementados devem ser testados para assegurar, por exemplo, que uma consulta retorna dados. Uma vez demonstrado que todos os componentes essenciais do sistema funcionam, o ciclo TDD pode começar, e a arquitetura e funcionalidade da aplicação podem ser desenvolvidas em paralelo.
Alistair Cockburn, um cientista da computação americano e pioneiro do desenvolvimento ágil, cunhou o termo walking skeleton quando um projetista explicou como o concept tinha sido aplicado em um projeto anterior.