the business model canvas pattern: from concept to product
TRANSCRIPT
The Business Model Canvas Pa2ern: From Concept to Product
Architecture in an Agile World
SATURN 2016 Arila Barnes
Challenges
• How do we ensure that product architecture addresses real customer needs?
• How do we align a conHnuous DevOps mode of development with a consistent business model?
• How can an agile development team evolve product architecture iteraHvely?
Context
Understanding
Market/Product
PosiHoning
Understanding Business Domain
Understanding InformaHon
Flow
Understanding
Product Structure
Why? What? How?
Delivering Product
Business/Lean Canvas Concept Map Info System Map
Product Architecture Agile Stories
Design “Desirability”
Technology “Feasibility”
Biz “Viability”
Prod
uct/Market
Sprin
t 0/U
biqu
itous Language
Product Roadmap
Journey Map
Design Thinking
API Design Contract
SoluHon
Components/ Microservices
Time
Deployment
Dev/Ops
PROBLEM List 1-‐3 top problems
SOLUTION Outline solu3on of each problem
Unique Value ProposiHon Simple, clear, compelling message that states why you are different and worth paying a?en3on
UNFAIR ADVANTAGE Something that cannot easily be bought or copied
Customer Segments List your target customers and users
KEY METRICS List the key numbers that tell you how your business is doing
Channels List your path to customers (inbound and outbound)
Cost Structure List your fixed and variable cost
Revenue Stream List your source of revenue
EXISTING ALTERNATIVES List how this problems are solved today
EARLY ADOPTERS List the characteris3cs of your ideal customers
✔
✔
✔ ✔ ✔
Lean Model Canvas by Ash Maurya
Understanding
Market/Product
PosiHoning
Understanding Business Domain
Understanding InformaHon
Flow
Understanding
Product Structure
Why? What? How?
Delivering Product
Business/Lean Canvas Concept Map Info System Map
Product Architecture Agile Stories
Design “Desirability”
Technology “Feasibility”
Biz “Viability”
Prod
uct/Market
Sprin
t 0/U
biqu
itous Language
Product Roadmap
Journey Map
Design Thinking
API Design Contract
SoluHon
Components/ Microservices
Time
Deployment
Dev/Ops
DisHllaHon
Good work
depends on
good conceptual structure
developed via
good conversations
Concept Mapping
is a
good method
to develop
and have
Why is Concept Mapping a valuable process?
Credit: Eric Knudtson
How to IdenHfy Business Concepts
Concept map = business concepts and their rela3onships Design Thinking Business Analysis, Thomas Frisendal ISBN 978-‐3-‐642-‐43482-‐2
What? Where? When? Who?
How Much?
PerspecHve:
How to do Concept Mapping
Design Thinking Business Analysis, Thomas Frisendal ISBN 978-‐3-‐642-‐43482-‐2
Understanding
Market/Product
PosiHoning
Understanding Business Domain
Understanding InformaHon
Flow
Understanding
Product Structure
Why? What? How?
Delivering Product
Business/Lean Canvas Concept Map Info System Map
Product Architecture Agile Stories
Design “Desirability”
Technology “Feasibility”
Biz “Viability”
Prod
uct/Market
Sprin
t 0/U
biqu
itous Language
Product Roadmap
Journey Map
Design Thinking
API Design Contract
SoluHon
Components/ Microservices
Time
Deployment
Dev/Ops
Large Scale Structure
Product Architecture Approach Risks, Variability, Scale
• Architectural Decisions • Target Architecture • API Design • Components • ConHnuous IntegraHon/Deployment • Roadmap • DocumentaHon
Architecture Decisions
API Design Versioning: MigraHon,
CompaHbility
AuthorizaHon: Security
Error Handling, System Health
Extensibility: meta{}
Domain Model: data []
ConvenHons and Standards
DocumentaHon using h2p://editor.swagger.io/
Understanding
Market/Product
PosiHoning
Understanding Business Domain
Understanding InformaHon
Flow
Understanding
Product Structure
Why? What? How?
Delivering Product
Business/Lean Canvas Concept Map Info System Map
Product Architecture Agile Stories
Design “Desirability”
Technology “Feasibility”
Biz “Viability”
Prod
uct/Market
Sprin
t 0/U
biqu
itous Language
Product Roadmap
Journey Map
Design Thinking
API Design Contract
SoluHon
Components/ Microservices
Time
Deployment
Dev/Ops
ConHnuous IntegraHon
Docker Compose
Docker Machine
Docker Hub
h2ps://programmaHcponderings.wordpress.com/2015/06/27/conHnuous-‐integraHon-‐and-‐delivery-‐of-‐microservices-‐using-‐jenkins-‐ci-‐docker-‐machine-‐and-‐docker-‐compose/
DocumentaHon
• Use the Business Model Canvas or Lean Canvas to capture requirements from different stakeholders – Canvanizer
• Map the business model to business concepts using Design Thinking and Concept Mapping – Cmaps Cloud
• Rapidly design micro-‐service APIs that reflect business needs before launching into detailed implementaHons -‐ Swagger Editor, start.spring.io
• “Code” the documentaHon -‐ Wiki, annotaHons, Structurizr, Swagger UI
Understanding
Market/Product
PosiHoning
Understanding Business Domain
Understanding InformaHon
Flow
Understanding
Product Structure
Why? What? How?
Delivering Product
Business/Lean Canvas Concept Map Info System Map
Product Architecture Agile Stories
Design “Desirability”
Technology “Feasibility”
Biz “Viability”
Prod
uct/Market
Sprin
t 0/U
biqu
itous Language
Product Roadmap
Journey Map
Design Thinking
API Design Contract
SoluHon
Components/ Microservices
Time
Deployment
Dev/Ops