Technique: Walking Skeleton for incremental development

January 31st, 2021

 

Quote: Walking skeleton definition

A “walking skeleton” is an implementation of the thinnest possible slice of real functionality that we can automatically build, deploy, and test end-to-end.

-- Alistair Cockburn

(src: Book: Growing Object Oriented Software, Guided By Tests - Steve Freeman & Nat Pryce)

(origin: [Cockburn04])

 

keep the skeleton’s application functionality so simple that it’s obvious and uninteresting

 

For example, for a database-backed web application, a skeleton would show a flat web page with fields from the database.

 

A “walking skeleton” will flush out issues early in the project when there’s still time, budget, and goodwill to address them.

 

why?

  • front-loads the stress in a project

  • more and more predictable towards the end (as opposed to late integration)

 

(src: Book: Growing Object Oriented Software, Guided By Tests - Steve Freeman & Nat Pryce)

 

Opinion: walking skeleton should include communication across micro-services