SlideShare a Scribd company logo
Agile Architecture
in 10 Steps v1.0
ADAM BOCZEK | 01.2015
Motivation
AGILE ARCHITECTURE
Innovation Drives Business…
 Evolutionary Innovation keeps your business running only and is not
in focus of the business nowadays (e.g.VW Beetle).
 Revolutionary Innovation guarantees nowadays the business
success (e.g. electric car).
 Disruptive Innovation changes existing or creates new markets
causing old business to die (e.g. digital camera).
…and requires supporting IT.
Revolutionary or Disruptive Driven Business…
 Architecture is the fundamental organization of a system embodied
in its components, their relationships to each other, and to the
environment and the principles guiding its design and evolution
(IEEE1471 2007).
 Architecture represents the significant design decisions that shape a
system, where significant is measured by cost of change.
(Booch 2006)
 Architecture is non-functional. Architecture is about Quality.
(Graves 2010)
…needs Architecture, Agile Architecture.
Architecture Empowers…
 Declarative knowledge is the type of knowledge that is, by its very
nature, expressed in declarative sentences or indicative propositions.
 Declarative knowledge focuses on the answer to the question “why
am I able to do it”.
 Procedural knowledge in opposition focuses on the answer to the
question “how to do it”.
…Declarative Knowledge.
The Promise of the Agile Architecture
 Reduction of risks throughout transparency, abstractions and partitioning
 Precise definition and understanding of your business
 Active collaboration of the domain and IT experts on the software design
 Clean definition of the boundaries around abstractions
 Better organization of your enterprise architecture
 Agile, iterative, continuous and aim-oriented modeling
 In-sync with the agile development process
Agile Architecture Focuses On Simplicity using
Transparency, Abstractions and Partitioning
 Transparency investigates the “as-is” architectural state
 Abstractions focus using models on the essential architectural challenges
 Partitioning creates taxonomy for grouping architectural elements
…Complexity is the Disease,
Simplicity is the Cure
Transparency Helps to Define As-Is and
Desired State (as a Pillar of Empiricism)
1
3
2
Abstractions Help to Find Solutions to the
Real World Problems
COMMUTING DIAGRAM
TO EMPHASIZE MODELS
WHEN SOLVINGCOMPLEX
REALWORLD PROBLEM*
1
2 3
4
Partitioning Helps to Structure the
Functionality of a Software System
 Reduces complexity of any system*
 Closely related to a mathematical concept known as
equivalence relations.
 The most important equivalence relation, from the
perspective of enterprise architecture, is synergy.
 Two functions are synergistic when each requires
the other to be effective.
 Synergy is closely related to an inverse equivalence
relation known as autonomy.
Design Process
AGILE ARCHITECTURE
Business Architecture
“4+1 View Model” by Chris Reynolds
Processes
EntitiesCommunication
Facades
GOALS
IT Architecture
“4+1 View Model” by Philippe Kruchten
Development
DeploymentQuality
Functionality
SCENARIOS
Interaction Between Business and IT
Architectures
“Impedance
Mismatch”
Processes
EntitiesCommunication
Facades
GOALS
Development
DeploymentQuality
Functionality
SCENARIOS
Functional Domain N
Functional Domain B
Functional Domain A
Functional Domains Represent
the Glue between Business and IT Architectures
Processes
Entities Quality
Functionality
Step 01
Identification of the Business Domains
Business Entity Model (BEM)
Shows Existing Objects and Their Relations
 Used to get better understanding of the business, objects involved
and their relationships.
 These relationships define cardinalities to emphasis places with high
complexity (as many-to-many is much more complex as one-to-one).
 Notation used is based on the class diagrams of UML, however this
model must not be understood as a class or data entity diagram.
Step 02
Creation of a Business Entity Model
Ubiquitous Language
Standardizes Communication of Stakeholders
 Important to avoid misunderstandings in definition of the
requirements and communication.
 Initially based on the Business Entity Model.
 Defines entities as well as actions based on the defined cardinalities.
 Uses common syntax <verb object> e.g. create customer.
Step 03
Creation of the Ubiquitous Language
 Customer
 Address
 Order
 Offer
 Accommodation
 Flight
 Insurance
 Offer
Process Architecture
Defines the Scope of the Software System
 Business processes consist of actions that are run in a specific order
and as a result create, update or destroy business entities.
 Due to their complexity it is important to use a process architecture
as a taxonomy system for them.
 Process architecture uses horizontal levels which represent various
details of the modelled processes, from value chains down to sub-
processes.
Step 04
Definition of the Initial Process Architecture
Business
Processes
Taxonomy
Business
Process Models
Level 0
Value Chains
Level 1
MainTasks
Level 2
Process Map
Level 3
End-to-End Process Models
Level 4
Sub-process Models
Process Architecture
Modelling of the Core Business Processes
 Models emphasis a certain aspects of the modelled object, thus
create an abstraction of it. As a result it simplifies its analysis.
 In case of business processes modelling focuses on the activities,
their order and rules defining the flow and events.
 Models at level 3 represent end-to-end processes.
 Models at level 4 represent sub-processes.
Step 05
Modelling of the Core Business Processes
Agile Architecture Uses Vertical Requirements
Processes
Presentation
Orchestration
Service
Persistence
VerticalRequirement1
VerticalRequirement2
VerticalRequirement…
VerticalRequirement…
Relevant
horizontal layers
Define order
Step 06
Definition of Vertical Requirements
Based on Process Models
Presentation
Orchestration
Service
Persistence
VerticalRequirement1
VerticalRequirement2
VerticalRequirement…
VerticalRequirement…
1
2
3
How Much Architecture Remains Agile?
20-30% of
Planned Design
70-80% of
Emergent Design
EMERGENT DESIGN
You Ain’t Gonna Need It (YAGNI)
PLANNED DESIGN
Big Design Up-Front (BDUF)
Architectural
effort scale
Agile
Architecture
Agile Architecture is Based on the
Lean Process Principles
 Defer commitment and decide as late as possible
 Deliver as fast as possible
 See and optimize the whole
 Work iterative and incremental
ITERATION
ARCHITECTURAL INCREMENT
1st
2nd ...th
Construction Flavor
AGILE ARCHITECTURE
Agile Architecture is
Business Centric
Entities
Controllers
Ext. Interfaces
UseCases
CLEAN ARCHITECTURE
BY BOB MARTIN
Application
specific
business rules
Technical interface
adapters and
frameworks and
drivers
Dependency Rules
Enterprise wide
business rules
Agile Architecture is
Multi Paradigm
Entities
Controllers
Ext. Interfaces
UseCases
Entities
Controllers
Ext. Interfaces
UseCases
Entities
Controllers
Ext. Interfaces
UseCases
Active Record Domain Driven
Design
Lambda/CQRS
Agile Architecture Uses
Core Concepts of Domain Driven Design*
 At the heart of DDD (Domain Driven
Design) lies the concept of the domain
model.
 Domain models are typically composed of
elements such as entities, value objects,
aggregates, and described using terms
from a ubiquitous language.
 A bounded context is the context for one
particular domain model and defines
implementation boundaries.
* by Eric Evans
Business Domain Consists of
Subdomains and Bounded Contexts
Sub-domain
A
Sub-domain
B
Sub-domain
C
Bounded Context A
Sub-domain
D
Bounded Context B
Sub-domain
E
Bounded Context C
Bounded Context – technical boundary
Sub-domain – functional boundary
Up-stream/Down-stream
relationship
Business Domain
Step 07
Definition of the Bounded Contexts
Commission
and Billing
Sub-domain
Publisher
Sub-domain
Advertiser
Sub-domain
Core Bounded Context
Ad-Tracking
Sub-domain
Tracing
Sub-domain
Streaming Bounded Context
Statistics
/DWH
Sub-domain
Near-
Real-time
Sub-domain
Reporting Bounded Context
Bounded Context – technical boundary
Sub-domain – functional boundary
Up-stream/Down-stream
relationship
Power Advertising Domain
Core 4 Quality (non-Functional) Attributes*
that Drive Agile Architecture
 Performance and Scalability - ability of a system to predictably execute within its
mandated performance profile and to handle increased processing volumes in the
future.
 Availability and Resilience - ability of a system to be fully or partly operational as
and when required and to effectively handle failures that could affect system
availability.
 Evolution - ability of a system to be flexible in the face of the inevitable change
that all systems experience after deployment, balanced against the costs of
providing such flexibility.
 Security - ability of the system to reliably control, monitor, and audit who can
perform what actions on which resources and the ability to detect and recover from
security breaches.
* from Software Systems Architecture, Rozanski&Woods 2011
Architectural Risks
Shape Agile Architecture
 Agile architecture focuses on risks by enforcing design to reduce them
 Architectural decisions and their benefits are aligned with their costs
 Architectural design is used in situations where it is likely to have the
most pay-off*
* from Just Enough Software Architecture, Fairbainks, 2013
Business Domain/Quality Attribute
Relevancy Matrix
 BD/QA Relevancy Matrix helps to identify business domains where
the QA in case of risks has the highest impact, thus pay-off if reduced
Domain A Domain B Domain C Domain D
Quality
AttributeA High High
Quality
Attribute B High High
Quality
AttributeC High High
Quality
Attribute D High
…
High impact thus
in focus of Agile
Architecture
Step 08
Definition of the BD/QA Relevancy Matrix
Sales Order Product Customer …
Performance
and Scalability High High High
Availability and
Resilience High High
Evolution High High
Security High
…
…
…
Solution Strategies
Are Backbone of the Agile Architecture
 Solution strategies are core concept of
the agile architecture due their focus on
business value delivered by the solution
 Solution strategies allow proper
reasoning about architecture describing
internal structure of the elements and
collaboration between them
 Best created using composite UML
diagram type
Step 09
Definition of the Solution Strategies
Building Blocks
Make Business Architecture Part of IT
 Building Blocks are counterparts to the
Solution Strategies
 They focus on the technical design used
where it should have most pay-off
 Similar to the solution strategies,
building blocks describe elements and
their relations
 Best created using components UML
diagram type
Step 10
Definition of the Building Blocks
Conclusion
AGILE ARCHITECTURE
Agile Architecture Process Summary
Review, Refine & Extend, Repeat
Review, Refine and Extend, Repeat
Let the agile architecture grow
together with your system
Agile Architecture Process Summary
All Artifacts at One Place
Level 0
Value Chains
Level 1
Main Tasks
Level 2
Process Map
Level 3
End-to-End Process Models
Level 4
Sub-process Models
Presentation
Orchestration
Service
Persistence
VerticalRequirement1
VerticalRequirement2
VerticalRequirement…
VerticalRequirement…
Sub-
domain
A
Sub-
domain
B
Sub-
domain
C
Bounded Context A
Sub-
domain
D
Bounded Context B
Sub-
domain
E
Bounded Context C
Bounded Context – technical boundary
Sub-domain – functional boundary
Up-stream/Down-stream
relationship
Business Domain
Domain
A
Domain
B
Domain
C
Domain
D
Quality
Attribute A High High
Quality
Attribute B High High
Quality
Attribute C High High
Quality
Attribute D High
…
Agile Architecture
Takeaways
Motivation
Risk reduction
Agility support
DesignProcess
Declarative
knowledge
Transparency
Abstractions
Partitioning
ConstructionFlavor
Business-Centric
Multi-Paradigm
Risk-Driven
About Adam Boczek
 Management Consultant @ codecentric AG
 Architect since 1997, Agile protagonist since 2007, Coach, Manager
 IT-Houses: Cirquent/NTT Data, LogicaCMG/CGI Group, CS Consulting AG/Capgemini, ACS/GFT Solutions
 Customers: Provinzial Insurance, Deka Bank, Shell AG, Deutsche Bank, 1&1, SAP, NTT Data and more…
 Adam’s main expertise areas:
• Enterprise Architectures, Agile Software Engineering & Project Management,
• Innovative Software Development Methods, Nearshore and Offshore Project Coordination
 Agile Architecture coach, BPMN coach, AngularJS coach
 Conference speaker: Berlin Expert Days 2014, Agile Dev Practices 2013, Manage Agile 2012 and more…
 Adam’s connections: @nativeagile, http://nativeagile.com, http://boczek.com

More Related Content

PDF
Agile Architecture Agile Dev Practices 2013 Keynote
PPTX
Why We Need Architects (and Architecture) on Agile Projects
ODP
Agile Architecture
PPTX
Software architecture in an agile environment
PPTX
Refactoring, Emergent Design & Evolutionary Architecture
PPTX
Emergent Architecture - March 2011
PDF
The tension between agile and architecture
PDF
Modern Agile Software Architecture
Agile Architecture Agile Dev Practices 2013 Keynote
Why We Need Architects (and Architecture) on Agile Projects
Agile Architecture
Software architecture in an agile environment
Refactoring, Emergent Design & Evolutionary Architecture
Emergent Architecture - March 2011
The tension between agile and architecture
Modern Agile Software Architecture

What's hot (20)

PDF
Agile Architecture
PPTX
User story estimation with agile architectures
PDF
Agile Architecture
PDF
Principles and Techniques of Evolutionary Architecture with Dr. Rebecca Parsons
PPTX
WANTED: Seeking Single Agile Knowledge Development Tool-set
PDF
Architectural runway
PDF
Strategic refactoring. Refactoring strategies
PDF
Introduction to Agile Architecture
PPTX
Software Architecture for Agile Development
PDF
Prerequisites for evolutionary architecture
PPTX
Introduction to Modern Software Architecture
PDF
Architecture in an Agile World
PDF
Composable Software Architecture with Spring
PPTX
Solution architecture
PDF
Future Role of the Architect
PPTX
Agile Overview As V1.2
PPTX
Why IT needs more IT Architects (IASA style)
PPT
Cita iasa certifications
PDF
Pulse 2013: DevOps Review and Roadmap
PPT
The Role Of An Architect
Agile Architecture
User story estimation with agile architectures
Agile Architecture
Principles and Techniques of Evolutionary Architecture with Dr. Rebecca Parsons
WANTED: Seeking Single Agile Knowledge Development Tool-set
Architectural runway
Strategic refactoring. Refactoring strategies
Introduction to Agile Architecture
Software Architecture for Agile Development
Prerequisites for evolutionary architecture
Introduction to Modern Software Architecture
Architecture in an Agile World
Composable Software Architecture with Spring
Solution architecture
Future Role of the Architect
Agile Overview As V1.2
Why IT needs more IT Architects (IASA style)
Cita iasa certifications
Pulse 2013: DevOps Review and Roadmap
The Role Of An Architect
Ad

Viewers also liked (7)

PPTX
Scrum@accenture
PDF
PRINCE2 and SCRUM (AGILE)
PDF
The Patterns to boost your time to market - An introduction to DevOps
PPTX
Agile and team motivation based on Self-Determination Theory - Using science ...
PDF
How to motivate your team during Scrum?
PPTX
Agile Contracts
PPTX
Full stackagile - Squads Chapters Tribes and Guilds
Scrum@accenture
PRINCE2 and SCRUM (AGILE)
The Patterns to boost your time to market - An introduction to DevOps
Agile and team motivation based on Self-Determination Theory - Using science ...
How to motivate your team during Scrum?
Agile Contracts
Full stackagile - Squads Chapters Tribes and Guilds
Ad

Similar to Adam boczek 2015 agile architecture in 10 steps v1.0 (20)

PPT
Technical Architecture
PPTX
Agile ppt final
PPT
PDF
Zen and the Art of Enterprise Architecture - IoT
PDF
EA foundations (Views, Repository, Artifacts and Metamodel)
PPTX
Unit2 2
PDF
EA foundations (views + repository)
PPT
Why to Architecture Information
PDF
Togaf 9.1 architecture
PPT
Chapter1
PPT
Architecting enterprise BPM systems for optimal agility
PPTX
Continuous Delivery of Agile Architecture
PPT
Architecting and Designing Enterprise Applications
PDF
WEB PORTAL INTEGRATION ARCHITECTURE APPROACHES
PDF
WEB PORTAL INTEGRATION ARCHITECTURE APPROACHES
PDF
WEB PORTAL INTEGRATION ARCHITECTURE APPROACHES
PDF
Enterprise Integration Architect
PDF
Cis 519 Week 3 Individual Assignment
PPTX
Thoughts On Architecting V4 2
PPT
Why Enterprises Should Invest Money in EA Transformation Frameworks
Technical Architecture
Agile ppt final
Zen and the Art of Enterprise Architecture - IoT
EA foundations (Views, Repository, Artifacts and Metamodel)
Unit2 2
EA foundations (views + repository)
Why to Architecture Information
Togaf 9.1 architecture
Chapter1
Architecting enterprise BPM systems for optimal agility
Continuous Delivery of Agile Architecture
Architecting and Designing Enterprise Applications
WEB PORTAL INTEGRATION ARCHITECTURE APPROACHES
WEB PORTAL INTEGRATION ARCHITECTURE APPROACHES
WEB PORTAL INTEGRATION ARCHITECTURE APPROACHES
Enterprise Integration Architect
Cis 519 Week 3 Individual Assignment
Thoughts On Architecting V4 2
Why Enterprises Should Invest Money in EA Transformation Frameworks

More from iasaglobal (20)

PDF
Adam boczek 2015 agile architecture in 10 steps v1.0
PDF
Adam boczek 2013 bitkom software summit agile architecture v1.3
PDF
Essentials of enterprise architecture tools
PDF
Understanding business strategy cutting edge paradigm
PDF
Information and data relevance to business
PDF
Case study value of it strategy in hi tech industry
PDF
Max Poliashenko - Enterprise Product Architecture
PDF
Michael Gonzalez - Do The Sum of The Parts Equal the Whole
PDF
Michael Jay Freer - Information Obfuscation
PDF
Creating Enterprise Value from Business Architecture
PDF
Scott Whitmire - Just What is Architecture Anyway
PDF
Board of Education Vision 2013-2014
PDF
Sean Kenney - Solving Parallel Software Challenges with Patterns
PDF
Sheila Jeffrey - Well Behaved Data - It's a Matter of Principles
PDF
Stephen Cohen - The Impact of Ethics on the Architect
PDF
William Martinez - Evolution Game
PDF
Paul Preiss - Enterprise Architecture in Transformation
PDF
Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
PDF
Roger Sessions - The Snowman Architecture
PDF
Strategic Portfolio Management for IT
Adam boczek 2015 agile architecture in 10 steps v1.0
Adam boczek 2013 bitkom software summit agile architecture v1.3
Essentials of enterprise architecture tools
Understanding business strategy cutting edge paradigm
Information and data relevance to business
Case study value of it strategy in hi tech industry
Max Poliashenko - Enterprise Product Architecture
Michael Gonzalez - Do The Sum of The Parts Equal the Whole
Michael Jay Freer - Information Obfuscation
Creating Enterprise Value from Business Architecture
Scott Whitmire - Just What is Architecture Anyway
Board of Education Vision 2013-2014
Sean Kenney - Solving Parallel Software Challenges with Patterns
Sheila Jeffrey - Well Behaved Data - It's a Matter of Principles
Stephen Cohen - The Impact of Ethics on the Architect
William Martinez - Evolution Game
Paul Preiss - Enterprise Architecture in Transformation
Nina Grantcharova - Approach to Separation of Concerns via Design Patterns
Roger Sessions - The Snowman Architecture
Strategic Portfolio Management for IT

Recently uploaded (20)

PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
System and Network Administration Chapter 2
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Understanding Forklifts - TECH EHS Solution
PPTX
Online Work Permit System for Fast Permit Processing
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
AI in Product Development-omnex systems
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PPTX
Materi_Pemrograman_Komputer-Looping.pptx
PPT
JAVA ppt tutorial basics to learn java programming
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
DOCX
The Five Best AI Cover Tools in 2025.docx
VVF-Customer-Presentation2025-Ver1.9.pptx
System and Network Administration Chapter 2
ManageIQ - Sprint 268 Review - Slide Deck
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
How to Migrate SBCGlobal Email to Yahoo Easily
Upgrade and Innovation Strategies for SAP ERP Customers
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
2025 Textile ERP Trends: SAP, Odoo & Oracle
Understanding Forklifts - TECH EHS Solution
Online Work Permit System for Fast Permit Processing
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
AI in Product Development-omnex systems
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Materi_Pemrograman_Komputer-Looping.pptx
JAVA ppt tutorial basics to learn java programming
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Which alternative to Crystal Reports is best for small or large businesses.pdf
The Five Best AI Cover Tools in 2025.docx

Adam boczek 2015 agile architecture in 10 steps v1.0

  • 1. Agile Architecture in 10 Steps v1.0 ADAM BOCZEK | 01.2015
  • 3. Innovation Drives Business…  Evolutionary Innovation keeps your business running only and is not in focus of the business nowadays (e.g.VW Beetle).  Revolutionary Innovation guarantees nowadays the business success (e.g. electric car).  Disruptive Innovation changes existing or creates new markets causing old business to die (e.g. digital camera). …and requires supporting IT.
  • 4. Revolutionary or Disruptive Driven Business…  Architecture is the fundamental organization of a system embodied in its components, their relationships to each other, and to the environment and the principles guiding its design and evolution (IEEE1471 2007).  Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change. (Booch 2006)  Architecture is non-functional. Architecture is about Quality. (Graves 2010) …needs Architecture, Agile Architecture.
  • 5. Architecture Empowers…  Declarative knowledge is the type of knowledge that is, by its very nature, expressed in declarative sentences or indicative propositions.  Declarative knowledge focuses on the answer to the question “why am I able to do it”.  Procedural knowledge in opposition focuses on the answer to the question “how to do it”. …Declarative Knowledge.
  • 6. The Promise of the Agile Architecture  Reduction of risks throughout transparency, abstractions and partitioning  Precise definition and understanding of your business  Active collaboration of the domain and IT experts on the software design  Clean definition of the boundaries around abstractions  Better organization of your enterprise architecture  Agile, iterative, continuous and aim-oriented modeling  In-sync with the agile development process
  • 7. Agile Architecture Focuses On Simplicity using Transparency, Abstractions and Partitioning  Transparency investigates the “as-is” architectural state  Abstractions focus using models on the essential architectural challenges  Partitioning creates taxonomy for grouping architectural elements …Complexity is the Disease, Simplicity is the Cure
  • 8. Transparency Helps to Define As-Is and Desired State (as a Pillar of Empiricism) 1 3 2
  • 9. Abstractions Help to Find Solutions to the Real World Problems COMMUTING DIAGRAM TO EMPHASIZE MODELS WHEN SOLVINGCOMPLEX REALWORLD PROBLEM* 1 2 3 4
  • 10. Partitioning Helps to Structure the Functionality of a Software System  Reduces complexity of any system*  Closely related to a mathematical concept known as equivalence relations.  The most important equivalence relation, from the perspective of enterprise architecture, is synergy.  Two functions are synergistic when each requires the other to be effective.  Synergy is closely related to an inverse equivalence relation known as autonomy.
  • 12. Business Architecture “4+1 View Model” by Chris Reynolds Processes EntitiesCommunication Facades GOALS
  • 13. IT Architecture “4+1 View Model” by Philippe Kruchten Development DeploymentQuality Functionality SCENARIOS
  • 14. Interaction Between Business and IT Architectures “Impedance Mismatch” Processes EntitiesCommunication Facades GOALS Development DeploymentQuality Functionality SCENARIOS
  • 15. Functional Domain N Functional Domain B Functional Domain A Functional Domains Represent the Glue between Business and IT Architectures Processes Entities Quality Functionality
  • 16. Step 01 Identification of the Business Domains
  • 17. Business Entity Model (BEM) Shows Existing Objects and Their Relations  Used to get better understanding of the business, objects involved and their relationships.  These relationships define cardinalities to emphasis places with high complexity (as many-to-many is much more complex as one-to-one).  Notation used is based on the class diagrams of UML, however this model must not be understood as a class or data entity diagram.
  • 18. Step 02 Creation of a Business Entity Model
  • 19. Ubiquitous Language Standardizes Communication of Stakeholders  Important to avoid misunderstandings in definition of the requirements and communication.  Initially based on the Business Entity Model.  Defines entities as well as actions based on the defined cardinalities.  Uses common syntax <verb object> e.g. create customer.
  • 20. Step 03 Creation of the Ubiquitous Language  Customer  Address  Order  Offer  Accommodation  Flight  Insurance  Offer
  • 21. Process Architecture Defines the Scope of the Software System  Business processes consist of actions that are run in a specific order and as a result create, update or destroy business entities.  Due to their complexity it is important to use a process architecture as a taxonomy system for them.  Process architecture uses horizontal levels which represent various details of the modelled processes, from value chains down to sub- processes.
  • 22. Step 04 Definition of the Initial Process Architecture Business Processes Taxonomy Business Process Models Level 0 Value Chains Level 1 MainTasks Level 2 Process Map Level 3 End-to-End Process Models Level 4 Sub-process Models
  • 23. Process Architecture Modelling of the Core Business Processes  Models emphasis a certain aspects of the modelled object, thus create an abstraction of it. As a result it simplifies its analysis.  In case of business processes modelling focuses on the activities, their order and rules defining the flow and events.  Models at level 3 represent end-to-end processes.  Models at level 4 represent sub-processes.
  • 24. Step 05 Modelling of the Core Business Processes
  • 25. Agile Architecture Uses Vertical Requirements Processes Presentation Orchestration Service Persistence VerticalRequirement1 VerticalRequirement2 VerticalRequirement… VerticalRequirement… Relevant horizontal layers
  • 26. Define order Step 06 Definition of Vertical Requirements Based on Process Models Presentation Orchestration Service Persistence VerticalRequirement1 VerticalRequirement2 VerticalRequirement… VerticalRequirement… 1 2 3
  • 27. How Much Architecture Remains Agile? 20-30% of Planned Design 70-80% of Emergent Design EMERGENT DESIGN You Ain’t Gonna Need It (YAGNI) PLANNED DESIGN Big Design Up-Front (BDUF) Architectural effort scale Agile Architecture
  • 28. Agile Architecture is Based on the Lean Process Principles  Defer commitment and decide as late as possible  Deliver as fast as possible  See and optimize the whole  Work iterative and incremental ITERATION ARCHITECTURAL INCREMENT 1st 2nd ...th
  • 30. Agile Architecture is Business Centric Entities Controllers Ext. Interfaces UseCases CLEAN ARCHITECTURE BY BOB MARTIN Application specific business rules Technical interface adapters and frameworks and drivers Dependency Rules Enterprise wide business rules
  • 31. Agile Architecture is Multi Paradigm Entities Controllers Ext. Interfaces UseCases Entities Controllers Ext. Interfaces UseCases Entities Controllers Ext. Interfaces UseCases Active Record Domain Driven Design Lambda/CQRS
  • 32. Agile Architecture Uses Core Concepts of Domain Driven Design*  At the heart of DDD (Domain Driven Design) lies the concept of the domain model.  Domain models are typically composed of elements such as entities, value objects, aggregates, and described using terms from a ubiquitous language.  A bounded context is the context for one particular domain model and defines implementation boundaries. * by Eric Evans
  • 33. Business Domain Consists of Subdomains and Bounded Contexts Sub-domain A Sub-domain B Sub-domain C Bounded Context A Sub-domain D Bounded Context B Sub-domain E Bounded Context C Bounded Context – technical boundary Sub-domain – functional boundary Up-stream/Down-stream relationship Business Domain
  • 34. Step 07 Definition of the Bounded Contexts Commission and Billing Sub-domain Publisher Sub-domain Advertiser Sub-domain Core Bounded Context Ad-Tracking Sub-domain Tracing Sub-domain Streaming Bounded Context Statistics /DWH Sub-domain Near- Real-time Sub-domain Reporting Bounded Context Bounded Context – technical boundary Sub-domain – functional boundary Up-stream/Down-stream relationship Power Advertising Domain
  • 35. Core 4 Quality (non-Functional) Attributes* that Drive Agile Architecture  Performance and Scalability - ability of a system to predictably execute within its mandated performance profile and to handle increased processing volumes in the future.  Availability and Resilience - ability of a system to be fully or partly operational as and when required and to effectively handle failures that could affect system availability.  Evolution - ability of a system to be flexible in the face of the inevitable change that all systems experience after deployment, balanced against the costs of providing such flexibility.  Security - ability of the system to reliably control, monitor, and audit who can perform what actions on which resources and the ability to detect and recover from security breaches. * from Software Systems Architecture, Rozanski&Woods 2011
  • 36. Architectural Risks Shape Agile Architecture  Agile architecture focuses on risks by enforcing design to reduce them  Architectural decisions and their benefits are aligned with their costs  Architectural design is used in situations where it is likely to have the most pay-off* * from Just Enough Software Architecture, Fairbainks, 2013
  • 37. Business Domain/Quality Attribute Relevancy Matrix  BD/QA Relevancy Matrix helps to identify business domains where the QA in case of risks has the highest impact, thus pay-off if reduced Domain A Domain B Domain C Domain D Quality AttributeA High High Quality Attribute B High High Quality AttributeC High High Quality Attribute D High … High impact thus in focus of Agile Architecture
  • 38. Step 08 Definition of the BD/QA Relevancy Matrix Sales Order Product Customer … Performance and Scalability High High High Availability and Resilience High High Evolution High High Security High … … …
  • 39. Solution Strategies Are Backbone of the Agile Architecture  Solution strategies are core concept of the agile architecture due their focus on business value delivered by the solution  Solution strategies allow proper reasoning about architecture describing internal structure of the elements and collaboration between them  Best created using composite UML diagram type
  • 40. Step 09 Definition of the Solution Strategies
  • 41. Building Blocks Make Business Architecture Part of IT  Building Blocks are counterparts to the Solution Strategies  They focus on the technical design used where it should have most pay-off  Similar to the solution strategies, building blocks describe elements and their relations  Best created using components UML diagram type
  • 42. Step 10 Definition of the Building Blocks
  • 44. Agile Architecture Process Summary Review, Refine & Extend, Repeat Review, Refine and Extend, Repeat Let the agile architecture grow together with your system
  • 45. Agile Architecture Process Summary All Artifacts at One Place Level 0 Value Chains Level 1 Main Tasks Level 2 Process Map Level 3 End-to-End Process Models Level 4 Sub-process Models Presentation Orchestration Service Persistence VerticalRequirement1 VerticalRequirement2 VerticalRequirement… VerticalRequirement… Sub- domain A Sub- domain B Sub- domain C Bounded Context A Sub- domain D Bounded Context B Sub- domain E Bounded Context C Bounded Context – technical boundary Sub-domain – functional boundary Up-stream/Down-stream relationship Business Domain Domain A Domain B Domain C Domain D Quality Attribute A High High Quality Attribute B High High Quality Attribute C High High Quality Attribute D High …
  • 46. Agile Architecture Takeaways Motivation Risk reduction Agility support DesignProcess Declarative knowledge Transparency Abstractions Partitioning ConstructionFlavor Business-Centric Multi-Paradigm Risk-Driven
  • 47. About Adam Boczek  Management Consultant @ codecentric AG  Architect since 1997, Agile protagonist since 2007, Coach, Manager  IT-Houses: Cirquent/NTT Data, LogicaCMG/CGI Group, CS Consulting AG/Capgemini, ACS/GFT Solutions  Customers: Provinzial Insurance, Deka Bank, Shell AG, Deutsche Bank, 1&1, SAP, NTT Data and more…  Adam’s main expertise areas: • Enterprise Architectures, Agile Software Engineering & Project Management, • Innovative Software Development Methods, Nearshore and Offshore Project Coordination  Agile Architecture coach, BPMN coach, AngularJS coach  Conference speaker: Berlin Expert Days 2014, Agile Dev Practices 2013, Manage Agile 2012 and more…  Adam’s connections: @nativeagile, http://nativeagile.com, http://boczek.com