SlideShare a Scribd company logo
3
Most read
5
Most read
6
Most read
Walking Skeleton Shaking Bones for an Agile Architecture Heikki-Pekka Noronen (noronen.heikkipekka@gmail.com) Some rights reserved
Introduction As questions.. •  Do you validate chosen architecture and technologies some time during definition? •  If you don’t, why? •  If you do, why? •  If you do, when?  •  If you do, how?
Walking Skeleton In a nutshell “ A  Walking Skeleton  is a tiny implementation of the system that performs a small end-to-end function.  It need not use the final architecture, but it should link together the main architectural components.  The architecture and the functionality can then evolve in parallel.”  Alistair Cockburn in “Crystal Clear : A Human Powered Methodology for Small Teams” •  A vertical slice through all the architecture layers •  Minimal implementation that proves the architecture through some end-to-end functionality •  From heavy architectural design to validating chosen architecture early on •  Production code, with production level quality and testing required. •  Quite similar with “spanning applications” described in book “Lean Sofware Development: An agile toolkit” by Tom and Mary Poppendieck
Walking Skeleton Why to put the bones together? Walking skeleton as synchronizer Walking skeleton can also work as synchronizer of the work if multiple teams are working on same product.  The walking skeleton provides a basic structure and proven way to do things in product where independent teams can then build on. •  Get early feedback if chosen architecture and technology is suitable. •  Build quality in, by defining the main architectural structure early on and making it be consistent. (but at the same time, not doing whole bottom layers first). •  Allows to set up required development environments, such as CI systems, required load testing tools and so on. •  Improve knowledge and work estimations •  Give a jumpstart to development by setting the baseline onto which build. (skeleton where to hang the flesh, so to speak).
Walking Skeleton Example Case: Video Service . •  Lets think of scenario; a project is started to implement a web based service where users can send videos to be shared with others.  •  The team has no earlier experience with some of the technologies to be used: namely, the WCF web services and Filestream functionality of MS SQL Server, that they plan to use for storing videos. •  There is plenty of different functionality in system; think of YouTube and pick any that exists there. •  Discuss in groups : what should walking skeleton for this project include?
Walking Skeleton One Solution to given Example •  To improve the knowledge about the new technology (WCF and filestream), the simple end-to-end implementation should use both. •  Simple walking skeleton could include end-to-end system for sending files into system, storing them, showing list of available files (in very simple view) and opening one from list. •  To prove that chosen architecture and technology is suitable, a volume testing and load testing environment is also set up and run. •  After walking skeleton is finished, team goes through estimating amount of work to do for the rest of the project and starts working on “real” development to put flesh over the bones. •  Instead of having fixed heavy architectural design documents beforehand, team can now also implement design document matching their implementation.

More Related Content

PDF
The Principles of product development flow - a summary
PPT
Agile Scrum Methodology
PPT
Kanban VS Scrum
PPTX
Learn Spotify (an Agile Framework)
PDF
How to do effective pi planning
PDF
Agile Transformation Defined
PPTX
Value stream management is essential for dev ops v4
PDF
#lego4scrum with Large-Scale Scrum (LeSS)
The Principles of product development flow - a summary
Agile Scrum Methodology
Kanban VS Scrum
Learn Spotify (an Agile Framework)
How to do effective pi planning
Agile Transformation Defined
Value stream management is essential for dev ops v4
#lego4scrum with Large-Scale Scrum (LeSS)

What's hot (20)

PPT
Introduction To Agile
PPTX
Agile 101
PPTX
Agile Transformation | Mike Cottmeyer
PPTX
Agile Transformation Kick Start - Sathyanaraya H R - Scrum Bangalore 19th Meetup
PPTX
Agile methodology
PPTX
Rick Austin - Portfolio mangement in an agile world [Agile DC]
PPTX
Introduction to Kanban
PDF
Agile Transformation v1.27
KEY
Agile Estimating & Planning
PDF
Agile 101
PPTX
Agile Mindset For Executives
PDF
RethinkingAgile_AAC2019
PDF
Introduction to Agile Project Management
PDF
Agile transformation 1.3
PDF
Agile Contracts by Drew Jemilo (Agile2015)
PDF
Hybrid project mgmt
PDF
Agile Process Introduction
PPTX
Introducing SAFe® 5
PPTX
Project To Product: How we transitioned to product-aligned value streams
Introduction To Agile
Agile 101
Agile Transformation | Mike Cottmeyer
Agile Transformation Kick Start - Sathyanaraya H R - Scrum Bangalore 19th Meetup
Agile methodology
Rick Austin - Portfolio mangement in an agile world [Agile DC]
Introduction to Kanban
Agile Transformation v1.27
Agile Estimating & Planning
Agile 101
Agile Mindset For Executives
RethinkingAgile_AAC2019
Introduction to Agile Project Management
Agile transformation 1.3
Agile Contracts by Drew Jemilo (Agile2015)
Hybrid project mgmt
Agile Process Introduction
Introducing SAFe® 5
Project To Product: How we transitioned to product-aligned value streams
Ad

Viewers also liked (20)

PPTX
Architecture In An Agile World
PDF
Walking Skeleton as presented at ACCU 2015 in Bristol, England
PPT
User Story Mapping (2008)
PDF
User Story Mapping, Discover the whole story
PPT
Elevator Pitch Tips
PPTX
Daniil Michailovas - Agile estimating and planning
PPTX
200808 AIM Walking Skeleton
PPTX
Agile planning and estimating
PPT
Unit Testing, TDD and the Walking Skeleton
KEY
Ultimate Wallboards: 5 Cool Tricks to Use Today
PDF
Scrum metrics
PPT
La Historia Del Teatro Angela Peralta Por Gustavo Gama Olmos
PDF
Comparative Agile Measurement System - Ciklum White Paper
PPTX
Information radiators
PDF
User Story Mapping
PDF
Big Apple Scrum Day 2015 - Advanced Scrum Metrics Presentation
PDF
Agile Estimating & Planning by Amaad Qureshi
PDF
Featureban & Metrics Game at Agile South Coast
PPTX
full-stack agile: Common Agile Myths
PPTX
Easy Talk 4 Teens - Advanced : Elevator Speech
Architecture In An Agile World
Walking Skeleton as presented at ACCU 2015 in Bristol, England
User Story Mapping (2008)
User Story Mapping, Discover the whole story
Elevator Pitch Tips
Daniil Michailovas - Agile estimating and planning
200808 AIM Walking Skeleton
Agile planning and estimating
Unit Testing, TDD and the Walking Skeleton
Ultimate Wallboards: 5 Cool Tricks to Use Today
Scrum metrics
La Historia Del Teatro Angela Peralta Por Gustavo Gama Olmos
Comparative Agile Measurement System - Ciklum White Paper
Information radiators
User Story Mapping
Big Apple Scrum Day 2015 - Advanced Scrum Metrics Presentation
Agile Estimating & Planning by Amaad Qureshi
Featureban & Metrics Game at Agile South Coast
full-stack agile: Common Agile Myths
Easy Talk 4 Teens - Advanced : Elevator Speech
Ad

Similar to Walking Skeleton (20)

PDF
SAF - architecture framework
PDF
Architecture Practices and the Contemporary Techniques in Architecture
PDF
Architecture Practices
PDF
1617907664804architecturepractices1-240528115302-0a4a4e79.pdf
PDF
Architecture Practices Foundations and Contemporary Trends
PDF
Better business it collaboration using a work system perspective - run it as ...
PDF
Opal - Next Generation Networking
PDF
Disposable infrastructure
PDF
Map r whitepaper_zeta_architecture
PPTX
Gluecon 2013 - Dark Architecture and How to Forklift Upgrade Your System - Dy...
PDF
"Islands of Connectivity" are harming profitability and slowing growth
PPTX
Federating Subversion and Git
PPT
Cloud Computing with .Net
KEY
Frayed Edges - Architecture In Practice
PDF
Software archiecture lecture03
PDF
Can Agile Work for this Project?
PDF
Architecting Cloud Solutions
 
PPT
A Software Factory Integrating Rational Team Concert and WebSphere tools
PDF
Picking the right architecture and sticking to it
ODP
Software Patterns
SAF - architecture framework
Architecture Practices and the Contemporary Techniques in Architecture
Architecture Practices
1617907664804architecturepractices1-240528115302-0a4a4e79.pdf
Architecture Practices Foundations and Contemporary Trends
Better business it collaboration using a work system perspective - run it as ...
Opal - Next Generation Networking
Disposable infrastructure
Map r whitepaper_zeta_architecture
Gluecon 2013 - Dark Architecture and How to Forklift Upgrade Your System - Dy...
"Islands of Connectivity" are harming profitability and slowing growth
Federating Subversion and Git
Cloud Computing with .Net
Frayed Edges - Architecture In Practice
Software archiecture lecture03
Can Agile Work for this Project?
Architecting Cloud Solutions
 
A Software Factory Integrating Rational Team Concert and WebSphere tools
Picking the right architecture and sticking to it
Software Patterns

Walking Skeleton

  • 1. Walking Skeleton Shaking Bones for an Agile Architecture Heikki-Pekka Noronen (noronen.heikkipekka@gmail.com) Some rights reserved
  • 2. Introduction As questions.. • Do you validate chosen architecture and technologies some time during definition? • If you don’t, why? • If you do, why? • If you do, when? • If you do, how?
  • 3. Walking Skeleton In a nutshell “ A Walking Skeleton is a tiny implementation of the system that performs a small end-to-end function. It need not use the final architecture, but it should link together the main architectural components. The architecture and the functionality can then evolve in parallel.” Alistair Cockburn in “Crystal Clear : A Human Powered Methodology for Small Teams” • A vertical slice through all the architecture layers • Minimal implementation that proves the architecture through some end-to-end functionality • From heavy architectural design to validating chosen architecture early on • Production code, with production level quality and testing required. • Quite similar with “spanning applications” described in book “Lean Sofware Development: An agile toolkit” by Tom and Mary Poppendieck
  • 4. Walking Skeleton Why to put the bones together? Walking skeleton as synchronizer Walking skeleton can also work as synchronizer of the work if multiple teams are working on same product. The walking skeleton provides a basic structure and proven way to do things in product where independent teams can then build on. • Get early feedback if chosen architecture and technology is suitable. • Build quality in, by defining the main architectural structure early on and making it be consistent. (but at the same time, not doing whole bottom layers first). • Allows to set up required development environments, such as CI systems, required load testing tools and so on. • Improve knowledge and work estimations • Give a jumpstart to development by setting the baseline onto which build. (skeleton where to hang the flesh, so to speak).
  • 5. Walking Skeleton Example Case: Video Service . • Lets think of scenario; a project is started to implement a web based service where users can send videos to be shared with others. • The team has no earlier experience with some of the technologies to be used: namely, the WCF web services and Filestream functionality of MS SQL Server, that they plan to use for storing videos. • There is plenty of different functionality in system; think of YouTube and pick any that exists there. • Discuss in groups : what should walking skeleton for this project include?
  • 6. Walking Skeleton One Solution to given Example • To improve the knowledge about the new technology (WCF and filestream), the simple end-to-end implementation should use both. • Simple walking skeleton could include end-to-end system for sending files into system, storing them, showing list of available files (in very simple view) and opening one from list. • To prove that chosen architecture and technology is suitable, a volume testing and load testing environment is also set up and run. • After walking skeleton is finished, team goes through estimating amount of work to do for the rest of the project and starts working on “real” development to put flesh over the bones. • Instead of having fixed heavy architectural design documents beforehand, team can now also implement design document matching their implementation.