SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Lecture 22 
Architecture and Agile
Agenda 
 Software Development Evolution 
 Architecture in Agile environment 
– Conflicts 
– Boundaries for xDD 
 Moving from Big Up-front Design 
 Quantifying Risk 
– Risk Storming 
– Mitigation Strategies 
 Just Enough Design 
 Introducing Architecture
Reading 
 Brown 62 - 67
Software Development 
Waterfall RAD RUP Agile 
70s, 80s 
Sequential 
Process 
All design front-up 
Process heavy 
Rapid Application 
Development 
80s, 90s 
Rational Unified Process 
90s, 00s 00s, 10s 
Rapid Prototyping 
Prototype not plan 
Process Light 
Framework for 
iterative development 
Can be process heavy 
Iterative and 
incremental 
Can be process light
Architecture in Agile Environment 
Architecture 
is about 
structure 
and vision 
Agile is 
about 
flexibility 
Is this not a Conflict?
Conflict #1 – Team Structure 
Traditionally a Chief Software 
Architecture defines the architecture for 
all to follow – large design documents 
Chief Software Architect in his Ivory 
Tower 
Big Upfront 
Specifications
Conflict #1 – Team Structure 
In Agile, teams are small, self-sufficient 
with minimum overhead 
But we still Architecture, don’t we?
Conflict #1 – Team Structure 
In Agile, teams are small, self-sufficient 
with minimum overhead 
Software 
Architecture SA 
SA 
SA 
SA 
SA 
Team members form an 
Architecture Group
Conflict #2 – Process and Output 
Agile teams favor responding to change 
over following a plan – no upfront design 
But we still need Architecture, don’t we?
Boundaries for xDD 
Test-, Behavioral-, Domain, and Resume 
Driven Development are not substitutes for 
Architecture 
The architecture is about putting 
boundaries in place
Boundaries for xDD 
We must define Architecture and the 
architectural drivers: 
Functional Requirements 
Quality Attributes 
Constraints 
Principles 
Requirements drive architecture 
User stories, acceptance tests, etc 
Non-functional Requirements 
Scalability, performance, security, etc 
Real-world constraints 
Approved technology, people, standards etc. 
Principles – Rules for consistency 
Layering strategy, separation of concerns, patterns etc
Moving from Big Up-front Design 
Architecture is about stuff that hard or 
costly to to change 
Core technology choices 
Overall High Level Structure 
Architecture is about defining high-level 
structure and put a vision in place 
Agile teams need a framework and 
boundaries – and should be trusted to do 
the rest
Quantifying Risk 
Risk management is crucial in agile 
Not addressing Risk can kill projects 
Risk can be managed by separating 
probability from impact 
Probability: How likely is this to happen? 
Impact: What is the negative impact if this occurs?
Quantifying Risk 
Prioritizing risk 
Use scale 1-5 (5 high) 
for probability and 
impact, then multiply
Risk Storming 
Process for identifying Risk 
Step 1: Draw some architecture diagrams 
Step 2: Identify the risks individually 
Step 3: Converge risk on the diagrams 
Step 4: Prioritize the risk
Risk Storming 
Example risks: 
Data formats from 3rd party system change 
External components don’t work 
External systems are not available in time 
Technical specification is vague 
People are not cooperating 
Politics in the workplace
Mitigation Strategies 
What can we do to prevent this or how can 
we correct this 
Example strategies: 
Education 
Prototypes 
Rework 
Alliances, people issues
Just Enough Design 
We are agile, do we need design?
Just Enough Design 
The solution is to identify the need for 
design and do just that – not to little, not 
too much 
Structure 
Risk 
Vision
Just Enough Design 
The solution is to identify the need for 
design and do just that – not to little, not 
too much
Just Enough Design 
1. Structure 
• What: understand the structural elements and how they fit 
together 
• How: Design and decomposition down to containers and 
components 
2. Risk 
• What: Identify and mitigate the highest priorities 
• How: Risk storming and concrete experiments 
3. Vision 
• What: Create and communicate a vision for the team to work with 
• How: Context, Container and component diagrams
Introducing Software Architecture 
Architecture is necessary in software 
development 
It needs to be communicated and 
accessible 
People have limited time and a usually 
interested in other things
Introducing Software Architecture 
Practical suggestions 
1. Educate People 
2. Talk about Architecture in retrospectives 
3. Definition of Done 
4. Allocate the architecture role to someone 
5. Architecture katas
Summary 
 Agile is important today 
– Architecture needs to fit the methodology 
– Conflicts 
– Boundaries for xDD 
 Moving from Big Up-front Design 
 Quantifying Risk 
– Risk Storming 
– Mitigation Strategies 
 Just Enough Design 
 Introducing Architecture

Weitere ähnliche Inhalte

Was ist angesagt?

An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development PrimerDerek Winter
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software DevelopmentTathagat Varma
 
Agile Methodology Training, Agile Courses
Agile Methodology Training, Agile CoursesAgile Methodology Training, Agile Courses
Agile Methodology Training, Agile CoursesTonex
 
Software development with agile methodologies
Software development with agile methodologiesSoftware development with agile methodologies
Software development with agile methodologiesElmozamil Elamir
 
Agile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs LeanAgile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs LeanAbdul Wahid
 
Sustainable SW Development
Sustainable SW DevelopmentSustainable SW Development
Sustainable SW DevelopmentSam Hwang
 
Benefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior ManagementBenefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior ManagementDavid Updike
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software DevelopmentLife Cycle Engineering
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineeringRupesh Vaishnav
 
Agile Intro - Saint Louis Day of Dot Net
Agile Intro - Saint Louis Day of Dot NetAgile Intro - Saint Louis Day of Dot Net
Agile Intro - Saint Louis Day of Dot NetBrian Blanchard
 
What agile teams think about agile principles
What agile teams think about agile principlesWhat agile teams think about agile principles
What agile teams think about agile principlesJaguaraci Silva
 
Agile software development
Agile software developmentAgile software development
Agile software developmentRajesh Piryani
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of AgileSam Hwang
 
Agile vs Traditional Project Management
Agile vs Traditional Project ManagementAgile vs Traditional Project Management
Agile vs Traditional Project ManagementSaqib Javed John
 
Brief Intro to Agile, Benefits & Transition
Brief Intro to Agile, Benefits & TransitionBrief Intro to Agile, Benefits & Transition
Brief Intro to Agile, Benefits & TransitionMichael Sahota
 
DevOps, Agile methods and Continuous Improvement in the Software development ...
DevOps, Agile methods and Continuous Improvement in the Software development ...DevOps, Agile methods and Continuous Improvement in the Software development ...
DevOps, Agile methods and Continuous Improvement in the Software development ...Paulo Traça
 
Adaptive software development
Adaptive software developmentAdaptive software development
Adaptive software developmentJenita lamichhane
 
Intro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentIntro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentAleksejs Truhans
 
Agile and the nature of decision making
Agile and the nature of decision makingAgile and the nature of decision making
Agile and the nature of decision makingDennis Stevens
 

Was ist angesagt? (20)

An Agile Development Primer
An Agile Development PrimerAn Agile Development Primer
An Agile Development Primer
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Agile Methodology Training, Agile Courses
Agile Methodology Training, Agile CoursesAgile Methodology Training, Agile Courses
Agile Methodology Training, Agile Courses
 
Software development with agile methodologies
Software development with agile methodologiesSoftware development with agile methodologies
Software development with agile methodologies
 
Agile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs LeanAgile Software Development Scrum Vs Lean
Agile Software Development Scrum Vs Lean
 
Sustainable SW Development
Sustainable SW DevelopmentSustainable SW Development
Sustainable SW Development
 
Benefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior ManagementBenefits of Agile Software Development for Senior Management
Benefits of Agile Software Development for Senior Management
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software Development
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
 
Agile Intro - Saint Louis Day of Dot Net
Agile Intro - Saint Louis Day of Dot NetAgile Intro - Saint Louis Day of Dot Net
Agile Intro - Saint Louis Day of Dot Net
 
What agile teams think about agile principles
What agile teams think about agile principlesWhat agile teams think about agile principles
What agile teams think about agile principles
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Intro Of Agile
Intro Of AgileIntro Of Agile
Intro Of Agile
 
Agile vs Traditional Project Management
Agile vs Traditional Project ManagementAgile vs Traditional Project Management
Agile vs Traditional Project Management
 
Agile
AgileAgile
Agile
 
Brief Intro to Agile, Benefits & Transition
Brief Intro to Agile, Benefits & TransitionBrief Intro to Agile, Benefits & Transition
Brief Intro to Agile, Benefits & Transition
 
DevOps, Agile methods and Continuous Improvement in the Software development ...
DevOps, Agile methods and Continuous Improvement in the Software development ...DevOps, Agile methods and Continuous Improvement in the Software development ...
DevOps, Agile methods and Continuous Improvement in the Software development ...
 
Adaptive software development
Adaptive software developmentAdaptive software development
Adaptive software development
 
Intro to Agile and Lean Software Development
Intro to Agile and Lean Software DevelopmentIntro to Agile and Lean Software Development
Intro to Agile and Lean Software Development
 
Agile and the nature of decision making
Agile and the nature of decision makingAgile and the nature of decision making
Agile and the nature of decision making
 

Ähnlich wie L22 Architecture and Agile

Software Architecture: How Much Design?
Software Architecture: How Much Design?Software Architecture: How Much Design?
Software Architecture: How Much Design?Òscar Vilaplana
 
Oop 2014 sw architekt v3
Oop 2014 sw architekt v3Oop 2014 sw architekt v3
Oop 2014 sw architekt v3Michael Stal
 
27 people roles_and_teams
27 people roles_and_teams27 people roles_and_teams
27 people roles_and_teamsMajong DevJfu
 
He mian agile project-inception
He mian   agile project-inceptionHe mian   agile project-inception
He mian agile project-inceptionOdd-e
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architecturesMajong DevJfu
 
Agile Experience In Complex Projects
Agile Experience In Complex ProjectsAgile Experience In Complex Projects
Agile Experience In Complex ProjectsBorys Lebeda
 
Solution architecture
Solution architectureSolution architecture
Solution architectureiasaglobal
 
Agile PM - but not all projects
Agile PM - but not all projectsAgile PM - but not all projects
Agile PM - but not all projectsJohnny Ryser
 
What Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike RobinsonWhat Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike RobinsonJeffrey Clark
 
What Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike RobinsonWhat Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike RobinsonJeffrey Clark
 
Career Development for Architects
Career Development for ArchitectsCareer Development for Architects
Career Development for ArchitectsKevin Francis
 
Modern Agile Software Architecture
Modern Agile Software ArchitectureModern Agile Software Architecture
Modern Agile Software ArchitectureKannan Durairaj
 
Lecture-1-Introduction.pdf
Lecture-1-Introduction.pdfLecture-1-Introduction.pdf
Lecture-1-Introduction.pdfAkilaGamage2
 
PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128
PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128
PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128Luis Sequeira
 
Unit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleUnit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleDhivyaa C.R
 
Agile Delivery PowerPoint Presentation Slides
Agile Delivery PowerPoint Presentation SlidesAgile Delivery PowerPoint Presentation Slides
Agile Delivery PowerPoint Presentation SlidesSlideTeam
 
Agile Delivery Powerpoint Presentation Slides
Agile Delivery Powerpoint Presentation SlidesAgile Delivery Powerpoint Presentation Slides
Agile Delivery Powerpoint Presentation SlidesSlideTeam
 

Ähnlich wie L22 Architecture and Agile (20)

L21 Architecture and Agile
L21 Architecture and AgileL21 Architecture and Agile
L21 Architecture and Agile
 
Software Architecture: How Much Design?
Software Architecture: How Much Design?Software Architecture: How Much Design?
Software Architecture: How Much Design?
 
Oop 2014 sw architekt v3
Oop 2014 sw architekt v3Oop 2014 sw architekt v3
Oop 2014 sw architekt v3
 
27 people roles_and_teams
27 people roles_and_teams27 people roles_and_teams
27 people roles_and_teams
 
He mian agile project-inception
He mian   agile project-inceptionHe mian   agile project-inception
He mian agile project-inception
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architectures
 
Agile Experience In Complex Projects
Agile Experience In Complex ProjectsAgile Experience In Complex Projects
Agile Experience In Complex Projects
 
Solution architecture
Solution architectureSolution architecture
Solution architecture
 
The Modern Software Architect
The Modern Software ArchitectThe Modern Software Architect
The Modern Software Architect
 
Creative Overview
Creative OverviewCreative Overview
Creative Overview
 
Agile PM - but not all projects
Agile PM - but not all projectsAgile PM - but not all projects
Agile PM - but not all projects
 
What Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike RobinsonWhat Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike Robinson
 
What Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike RobinsonWhat Makes A Great Dev Team - Mike Robinson
What Makes A Great Dev Team - Mike Robinson
 
Career Development for Architects
Career Development for ArchitectsCareer Development for Architects
Career Development for Architects
 
Modern Agile Software Architecture
Modern Agile Software ArchitectureModern Agile Software Architecture
Modern Agile Software Architecture
 
Lecture-1-Introduction.pdf
Lecture-1-Introduction.pdfLecture-1-Introduction.pdf
Lecture-1-Introduction.pdf
 
PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128
PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128
PMI Portugal.VIII Conf.AplicarPraticasAgeisGPTradicionais-20141128
 
Unit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleUnit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycle
 
Agile Delivery PowerPoint Presentation Slides
Agile Delivery PowerPoint Presentation SlidesAgile Delivery PowerPoint Presentation Slides
Agile Delivery PowerPoint Presentation Slides
 
Agile Delivery Powerpoint Presentation Slides
Agile Delivery Powerpoint Presentation SlidesAgile Delivery Powerpoint Presentation Slides
Agile Delivery Powerpoint Presentation Slides
 

Mehr von Ólafur Andri Ragnarsson

New Technology Summer 2020 Course Introduction
New Technology Summer 2020 Course IntroductionNew Technology Summer 2020 Course Introduction
New Technology Summer 2020 Course IntroductionÓlafur Andri Ragnarsson
 
New Technology 2019 L13 Rise of the Machine
New Technology 2019 L13 Rise of the Machine New Technology 2019 L13 Rise of the Machine
New Technology 2019 L13 Rise of the Machine Ólafur Andri Ragnarsson
 

Mehr von Ólafur Andri Ragnarsson (20)

Nýsköpun - Leiðin til framfara
Nýsköpun - Leiðin til framfaraNýsköpun - Leiðin til framfara
Nýsköpun - Leiðin til framfara
 
Nýjast tækni og framtíðin
Nýjast tækni og framtíðinNýjast tækni og framtíðin
Nýjast tækni og framtíðin
 
New Technology Summer 2020 Course Introduction
New Technology Summer 2020 Course IntroductionNew Technology Summer 2020 Course Introduction
New Technology Summer 2020 Course Introduction
 
L01 Introduction
L01 IntroductionL01 Introduction
L01 Introduction
 
L23 Robotics and Drones
L23 Robotics and Drones L23 Robotics and Drones
L23 Robotics and Drones
 
L22 Augmented and Virtual Reality
L22 Augmented and Virtual RealityL22 Augmented and Virtual Reality
L22 Augmented and Virtual Reality
 
L20 Personalised World
L20 Personalised WorldL20 Personalised World
L20 Personalised World
 
L19 Network Platforms
L19 Network PlatformsL19 Network Platforms
L19 Network Platforms
 
L18 Big Data and Analytics
L18 Big Data and AnalyticsL18 Big Data and Analytics
L18 Big Data and Analytics
 
L17 Algorithms and AI
L17 Algorithms and AIL17 Algorithms and AI
L17 Algorithms and AI
 
L16 Internet of Things
L16 Internet of ThingsL16 Internet of Things
L16 Internet of Things
 
L14 From the Internet to Blockchain
L14 From the Internet to BlockchainL14 From the Internet to Blockchain
L14 From the Internet to Blockchain
 
L14 The Mobile Revolution
L14 The Mobile RevolutionL14 The Mobile Revolution
L14 The Mobile Revolution
 
New Technology 2019 L13 Rise of the Machine
New Technology 2019 L13 Rise of the Machine New Technology 2019 L13 Rise of the Machine
New Technology 2019 L13 Rise of the Machine
 
L12 digital transformation
L12 digital transformationL12 digital transformation
L12 digital transformation
 
L10 The Innovator's Dilemma
L10 The Innovator's DilemmaL10 The Innovator's Dilemma
L10 The Innovator's Dilemma
 
L09 Disruptive Technology
L09 Disruptive TechnologyL09 Disruptive Technology
L09 Disruptive Technology
 
L09 Technological Revolutions
L09 Technological RevolutionsL09 Technological Revolutions
L09 Technological Revolutions
 
L07 Becoming Invisible
L07 Becoming InvisibleL07 Becoming Invisible
L07 Becoming Invisible
 
L06 Diffusion of Innovation
L06 Diffusion of InnovationL06 Diffusion of Innovation
L06 Diffusion of Innovation
 

Kürzlich hochgeladen

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

L22 Architecture and Agile

  • 2. Agenda  Software Development Evolution  Architecture in Agile environment – Conflicts – Boundaries for xDD  Moving from Big Up-front Design  Quantifying Risk – Risk Storming – Mitigation Strategies  Just Enough Design  Introducing Architecture
  • 4. Software Development Waterfall RAD RUP Agile 70s, 80s Sequential Process All design front-up Process heavy Rapid Application Development 80s, 90s Rational Unified Process 90s, 00s 00s, 10s Rapid Prototyping Prototype not plan Process Light Framework for iterative development Can be process heavy Iterative and incremental Can be process light
  • 5. Architecture in Agile Environment Architecture is about structure and vision Agile is about flexibility Is this not a Conflict?
  • 6. Conflict #1 – Team Structure Traditionally a Chief Software Architecture defines the architecture for all to follow – large design documents Chief Software Architect in his Ivory Tower Big Upfront Specifications
  • 7. Conflict #1 – Team Structure In Agile, teams are small, self-sufficient with minimum overhead But we still Architecture, don’t we?
  • 8. Conflict #1 – Team Structure In Agile, teams are small, self-sufficient with minimum overhead Software Architecture SA SA SA SA SA Team members form an Architecture Group
  • 9. Conflict #2 – Process and Output Agile teams favor responding to change over following a plan – no upfront design But we still need Architecture, don’t we?
  • 10. Boundaries for xDD Test-, Behavioral-, Domain, and Resume Driven Development are not substitutes for Architecture The architecture is about putting boundaries in place
  • 11. Boundaries for xDD We must define Architecture and the architectural drivers: Functional Requirements Quality Attributes Constraints Principles Requirements drive architecture User stories, acceptance tests, etc Non-functional Requirements Scalability, performance, security, etc Real-world constraints Approved technology, people, standards etc. Principles – Rules for consistency Layering strategy, separation of concerns, patterns etc
  • 12. Moving from Big Up-front Design Architecture is about stuff that hard or costly to to change Core technology choices Overall High Level Structure Architecture is about defining high-level structure and put a vision in place Agile teams need a framework and boundaries – and should be trusted to do the rest
  • 13. Quantifying Risk Risk management is crucial in agile Not addressing Risk can kill projects Risk can be managed by separating probability from impact Probability: How likely is this to happen? Impact: What is the negative impact if this occurs?
  • 14. Quantifying Risk Prioritizing risk Use scale 1-5 (5 high) for probability and impact, then multiply
  • 15. Risk Storming Process for identifying Risk Step 1: Draw some architecture diagrams Step 2: Identify the risks individually Step 3: Converge risk on the diagrams Step 4: Prioritize the risk
  • 16. Risk Storming Example risks: Data formats from 3rd party system change External components don’t work External systems are not available in time Technical specification is vague People are not cooperating Politics in the workplace
  • 17. Mitigation Strategies What can we do to prevent this or how can we correct this Example strategies: Education Prototypes Rework Alliances, people issues
  • 18. Just Enough Design We are agile, do we need design?
  • 19. Just Enough Design The solution is to identify the need for design and do just that – not to little, not too much Structure Risk Vision
  • 20. Just Enough Design The solution is to identify the need for design and do just that – not to little, not too much
  • 21. Just Enough Design 1. Structure • What: understand the structural elements and how they fit together • How: Design and decomposition down to containers and components 2. Risk • What: Identify and mitigate the highest priorities • How: Risk storming and concrete experiments 3. Vision • What: Create and communicate a vision for the team to work with • How: Context, Container and component diagrams
  • 22. Introducing Software Architecture Architecture is necessary in software development It needs to be communicated and accessible People have limited time and a usually interested in other things
  • 23. Introducing Software Architecture Practical suggestions 1. Educate People 2. Talk about Architecture in retrospectives 3. Definition of Done 4. Allocate the architecture role to someone 5. Architecture katas
  • 24. Summary  Agile is important today – Architecture needs to fit the methodology – Conflicts – Boundaries for xDD  Moving from Big Up-front Design  Quantifying Risk – Risk Storming – Mitigation Strategies  Just Enough Design  Introducing Architecture