SlideShare a Scribd company logo
1 of 31
Download to read offline
Distilling Agile
Omar Bashir
https://www.linkedin.com/in/obprofile/
@OmarBashir_40
obashir@yahoo.com
We too often get dogmatic about the ceremonies
and artifacts and forget about the fundmentals.
Mike Cottmeyer
Agile Manifesto
● Individuals and interactions over processes and
tools
● Working software over comprehensive
documentation
● Customer collaboration over contract negotiation
● Responding to change over following a plan
Agile Manifesto Principles
● Early and continuous delivery of valueable software.
● Welcome changing requirements.
● Deliver working software as frequently as possible.
● Daily collaboration between business and tech.
● Focus on people and enablement.
● Face to face communication within teams.
● Maintain a constant pace indefinitely.
● Maximise the art of work not done.
● Self organising teams leading to emergent systems.
● Retune, readjust and realign regularly.
Agile Manifesto Principles
● Early and continuous delivery of valueable software.
● Welcome changing requirements.
● Deliver working software as frequently as possible.
● Daily collaboration between business and tech.
● Focus on people and enablement.
● Face to face communication within teams.
● Maintain a constant pace indefinitely.
● Maximise the art of work not done.
● Self organising teams leading to emergent designs.
● Retune, readjust and realign regularly.
Distilled Principles
● Reduction
– Reduce scope, sprint lengths, team sizes,
dependences etc. to increase release frequency,
reduce risks and enhance product quality.
● Focus
– Continuously deliver demonstrable value.
● Visibility
– Make backlog, progress, risk, dependencies etc.
visible to facilitate collaboration and communication.
Agile Frameworks
● Scrum
– Empirical process control
– Self organisation
– Collaboration
– Value based prioritisation
– Time boxing
– Iterative development
● Kanban
– Principles
● Start with what you do now
● Incremental and evolutionary
change
● Respect current process
● Leadership at all levels
– Properties
● Visualise workflow
● Limit WIP
● Manage flow
● Make process policies explicit
● Improve collaboratively
In fact, in an agile project, technical excellence is
measured by both capacity to deliver customer
value today and create an adaptable product for
tomorrow.
Jim Highsmith
Reduction - The Obvious
● Iteration/Sprint size
– Frequent releases.
– Frequent feedback.
– Reduced risk of divergence from customer needs.
● Team size
– Better bonding.
– Efficient communication.
– Effective management.
● Features
– Reduced optional complexity.
Reduction - The Obvious
● Story size
– Improved estimation.
● Less uncertainty due to reduced scope.
– Reduced accidental complexity.
● Less ambiguity leading to focused implementations.
– Improved testing.
● Smaller and focused tests.
– Higher throughput.
● Focused features leading to less waste.
Reduction – The Ignored
● Code
– Dead and commented out code causes confusion.
– Succinct codebase has less accidental complexity.
● Merge request size
– Meaningful and thorough code reviews.
– Reduced risk of merge conflicts.
– Improved code quality.
Reduction – The Ignored
● Technical dependencies
– Reduced binary footprint.
– Increased code longevity.
– Improved testability.
● Inter-team and intra-team dependencies
– Reduced handovers improving flow.
– Developers gain domain knowledge.
– Improved organisation.
Reduction – Challenges
● Story sizes.
– Splitting stories to reduce scope.
● Vertical splitting.
● Horizontal splitting.
● Iteration/Sprint sizes.
– Planning overhead.
– DevOps toolset maturity.
– Features bigger than sprints.
● Grouping sprints into feature packages.
Independent
Negotiable
Valuable
Estimable
Small
Testable
Reduction – Challenges
● Code size.
– Brevity but not obfuscation.
– Preserve SOLIDity using design patterns.
● Team sizes and organisation.
– Conway’s Law.
● Architecture to drive organisation of teams.
● Using functional and non-functional requirements to choose
architectural styles.
– Cross functional teams,
● Feature aligned vs subsystem aligned.
Focus – The Obvious
● Business features
– Prioritising product backlog.
– Grouping and prioritising stories in dependency order.
● Building a flow
– Governing self-organisation.
● Cross functional teams executing stories with least possible
handovers.
● Reducing inter-team dependencies.
– Subsystem aligned teams: Static organisation.
– Feature aligned teams: Reorganisation possible every sprint.
– Sprints grouped into feature packages.
Focus – The Ignored
● Non-Functional Requirements (NFRs)
– Ignoring them can have consequences, e.g.,
● Security: Reputational, data and business continuity risks.
● Performance: Reputational and revenue risks.
● Usability: Adoption and loyalty risks.
– Relegating NFRs builds technical debt.
– Pair with functional requirements in relevant stories.
● Test suites should contain both functional and non-functional
tests.
– Educate developers on,
● Relevant performance metrics.
● Measurement and profiling tools.
Focus – The Ignored
● Technical risks
– Technical debt
● Always paid back in hard ca$h.
● Technical investment,
– Just enough design vs. over-engineering vs. no design.
– Domain Driven Design.
– Commoditised design: Design patterns and architectural styles.
– Defects
● Determination
– Is this really a bug?
● Severity
– Blocker vs. Critical vs. Major.
● Early detection and resolution
– Effective testing strategy.
Focus – Challenges
● Balancing value and risk
– Avoiding the long and painful tail/tale of delivery.
● Consensus
– A clear understanding of priorities across stakeholders.
● Monitoring
– Ensuring teams are committed to the plan.
Visibility – The Obvious
● Product roadmap and backlog
– Shared visibility of product evolution plan.
● Sprint backlog
– Detailed task level plan for an iteration.
– Also includes defects/bugs prioritised for fixing.
● Sprint/Kanban boards
– Detailed view of iteration execution (Who is doing what
now).
● Burndown/Burnup charts
– Tasks (effort) remaining/tasks (effort) completed.
Visibility – Burndown
Visibility – Backlog
Visibility – The Ignored
● Capacity management
– Team availability vs. iteration backlog.
● Defect trends
– Indicator of focus on quality.
● RAID log
– Prioritised list of Risks, Assumptions, Issues and
Dependencies facing the project.
– Includes owners, current status, links to backlog and ETA.
● Dependency matrix
– How teams depend on each other for iteration execution.
Visibility – Defect Trends
Visibility – Dependency Matrix
Visibility – Challenges
● Tooling
– Keeping it simple.
– Derived from a single source of truth.
● Shared
– Available to all team members for viewing at least.
● Keeping it current.
– These are living organs of a project, if they are not
current, the project is dead.
● Encouragement
– Motivating team members to move off emails and chats to
enquire and share status.
Final Word
● No estimation is not an option.
– Estimation may not be accurate but can be realistic.
– Task breakdown affects estimation accuracy/realism.
● No design is not an option.
– Architecture and design affects EVERYTHING.
– Avoiding big up front design does not mean no design.
● Architecture and design are increasingly commoditised.
● Teams should use design patterns and architectural styles.
● Value alone is not an option.
– Technical debt has physical costs.
– Relegating NFRs adds tech debt and risks delivery.
There are no such things as best practices in product
development. There are only practices that are
adequate within a certain context.
Practices are situational; blithely claiming they are
“best” disconnects them from motivation and context.
They become rituals. And pushing so-called best
practices kills a culture of learning, questioning,
engagement, and continuous improvement.
Why would people challenge best?
Craig Larman, Bas Vodde

More Related Content

What's hot

Agile Development Methodologies
Agile Development MethodologiesAgile Development Methodologies
Agile Development MethodologiesNainil Chheda
 
Agile In 15 Minutes
Agile In 15 MinutesAgile In 15 Minutes
Agile In 15 MinutesHenry Jacob
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineeringRupesh Vaishnav
 
Agile Methodology (scrum)
Agile Methodology (scrum)Agile Methodology (scrum)
Agile Methodology (scrum)Manoj Ellappan
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to AgileSunil-QA
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software DevelopmentLife Cycle Engineering
 
Agile Methodology and Tools
Agile Methodology and ToolsAgile Methodology and Tools
Agile Methodology and ToolsNaresh Gajuveni
 
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...Francesco Mapelli
 
Scrum Intro for E-works
Scrum Intro for E-worksScrum Intro for E-works
Scrum Intro for E-worksNora Papazyan
 
Agile software development
Agile software developmentAgile software development
Agile software developmentRajesh Piryani
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile MethodologyHaresh Karkar
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) ModelDamian T. Gordon
 
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...
Agile India 2015 Conference - Scaling agile in a mainframe product developm...PoojaUppalapati
 
Contracting for Agile Software Development
Contracting for Agile Software DevelopmentContracting for Agile Software Development
Contracting for Agile Software Developmentcspag67
 

What's hot (20)

Agile Development Methodologies
Agile Development MethodologiesAgile Development Methodologies
Agile Development Methodologies
 
Agile overview
Agile overviewAgile overview
Agile overview
 
Agile In 15 Minutes
Agile In 15 MinutesAgile In 15 Minutes
Agile In 15 Minutes
 
Agile development, software engineering
Agile development, software engineeringAgile development, software engineering
Agile development, software engineering
 
Agile Methodology (scrum)
Agile Methodology (scrum)Agile Methodology (scrum)
Agile Methodology (scrum)
 
Introduction to Agile
Introduction to AgileIntroduction to Agile
Introduction to Agile
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software Development
 
Idea 2 product
Idea 2 productIdea 2 product
Idea 2 product
 
Project case study
Project case studyProject case study
Project case study
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Agile Methodology and Tools
Agile Methodology and ToolsAgile Methodology and Tools
Agile Methodology and Tools
 
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...Agile Methodologies and Scrum /  Lean Development and Agile Methodologies - 2...
Agile Methodologies and Scrum / Lean Development and Agile Methodologies - 2...
 
Scrum Intro for E-works
Scrum Intro for E-worksScrum Intro for E-works
Scrum Intro for E-works
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Overview of Agile Methodology
Overview of Agile MethodologyOverview of Agile Methodology
Overview of Agile Methodology
 
The Extreme Programming (XP) Model
The Extreme Programming (XP) ModelThe Extreme Programming (XP) Model
The Extreme Programming (XP) Model
 
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...Agile India 2015 Conference  -  Scaling agile in a mainframe product developm...
Agile India 2015 Conference - Scaling agile in a mainframe product developm...
 
Contracting for Agile Software Development
Contracting for Agile Software DevelopmentContracting for Agile Software Development
Contracting for Agile Software Development
 

Similar to Distilling Agile Principles for Focus, Reduction and Visibility

Building Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software EngineeringBuilding Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software EngineeringMuhammad Shehata
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectivelyAshutosh Agarwal
 
Technical Debt: Measured and Implied
Technical Debt: Measured and ImpliedTechnical Debt: Measured and Implied
Technical Debt: Measured and ImpliedOmar Bashir
 
Agile software development
Agile software development Agile software development
Agile software development saurabh goel
 
Inclusive Architecture - Introducing the PAMstack - [Refactr.tech]
Inclusive Architecture - Introducing the PAMstack - [Refactr.tech] Inclusive Architecture - Introducing the PAMstack - [Refactr.tech]
Inclusive Architecture - Introducing the PAMstack - [Refactr.tech] Tracy Lee
 
Sdec10 lean package implementation
Sdec10 lean package implementationSdec10 lean package implementation
Sdec10 lean package implementationTerry Bunio
 
Introduction à l'agilité - Martin Goyette
Introduction à l'agilité - Martin GoyetteIntroduction à l'agilité - Martin Goyette
Introduction à l'agilité - Martin GoyetteAgile Montréal
 
Agile methodologiesvswaterfall
Agile methodologiesvswaterfallAgile methodologiesvswaterfall
Agile methodologiesvswaterfallMuthu Natarajan
 
ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...
ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...
ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...Tracy Lee
 
Achieving Technological Agility
Achieving Technological AgilityAchieving Technological Agility
Achieving Technological AgilityOmar Bashir
 
Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)Rajesh Muppalla
 
Agile NCR 2013- Jainendra Kumar - agilemethodology-pitneybowe-jai1
Agile NCR 2013-  Jainendra Kumar - agilemethodology-pitneybowe-jai1Agile NCR 2013-  Jainendra Kumar - agilemethodology-pitneybowe-jai1
Agile NCR 2013- Jainendra Kumar - agilemethodology-pitneybowe-jai1AgileNCR2013
 
Software Development Methodologies
Software Development Methodologies Software Development Methodologies
Software Development Methodologies Frances Coronel
 
Agile Software Development Approaches
Agile Software Development ApproachesAgile Software Development Approaches
Agile Software Development Approachesdcsunu
 

Similar to Distilling Agile Principles for Focus, Reduction and Visibility (20)

Building Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software EngineeringBuilding Sustainable Software: An Introduction to Software Engineering
Building Sustainable Software: An Introduction to Software Engineering
 
Managing software projects & teams effectively
Managing software projects & teams effectivelyManaging software projects & teams effectively
Managing software projects & teams effectively
 
Agile Course
Agile CourseAgile Course
Agile Course
 
Agile course Part 1
Agile course Part 1Agile course Part 1
Agile course Part 1
 
Technical Debt: Measured and Implied
Technical Debt: Measured and ImpliedTechnical Debt: Measured and Implied
Technical Debt: Measured and Implied
 
Agile software development
Agile software development Agile software development
Agile software development
 
Module 1 - SE.pptx
Module 1 - SE.pptxModule 1 - SE.pptx
Module 1 - SE.pptx
 
Inclusive Architecture - Introducing the PAMstack - [Refactr.tech]
Inclusive Architecture - Introducing the PAMstack - [Refactr.tech] Inclusive Architecture - Introducing the PAMstack - [Refactr.tech]
Inclusive Architecture - Introducing the PAMstack - [Refactr.tech]
 
Sdec10 lean package implementation
Sdec10 lean package implementationSdec10 lean package implementation
Sdec10 lean package implementation
 
Introduction à l'agilité - Martin Goyette
Introduction à l'agilité - Martin GoyetteIntroduction à l'agilité - Martin Goyette
Introduction à l'agilité - Martin Goyette
 
Agile methodologiesvswaterfall
Agile methodologiesvswaterfallAgile methodologiesvswaterfall
Agile methodologiesvswaterfall
 
Are you Agile enough?
Are you Agile enough?Are you Agile enough?
Are you Agile enough?
 
Technical Debt.pptx
Technical Debt.pptxTechnical Debt.pptx
Technical Debt.pptx
 
ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...
ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...
ChicagoJS's JSCAMP 2019 Keynote - Inclusive Architecture - Building Sustainab...
 
Achieving Technological Agility
Achieving Technological AgilityAchieving Technological Agility
Achieving Technological Agility
 
Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)Indix Engineering Culture Code (2015)
Indix Engineering Culture Code (2015)
 
Quality & Risk Management Challenges When Acquiring Enterprise Systems
Quality & Risk Management Challenges When Acquiring Enterprise SystemsQuality & Risk Management Challenges When Acquiring Enterprise Systems
Quality & Risk Management Challenges When Acquiring Enterprise Systems
 
Agile NCR 2013- Jainendra Kumar - agilemethodology-pitneybowe-jai1
Agile NCR 2013-  Jainendra Kumar - agilemethodology-pitneybowe-jai1Agile NCR 2013-  Jainendra Kumar - agilemethodology-pitneybowe-jai1
Agile NCR 2013- Jainendra Kumar - agilemethodology-pitneybowe-jai1
 
Software Development Methodologies
Software Development Methodologies Software Development Methodologies
Software Development Methodologies
 
Agile Software Development Approaches
Agile Software Development ApproachesAgile Software Development Approaches
Agile Software Development Approaches
 

More from Omar Bashir

Cloud migration challenges london ct os
Cloud migration challenges   london ct osCloud migration challenges   london ct os
Cloud migration challenges london ct osOmar Bashir
 
5 Software Development Lessons From a Mountaineer
5 Software Development Lessons From a Mountaineer5 Software Development Lessons From a Mountaineer
5 Software Development Lessons From a MountaineerOmar Bashir
 
Technology Agility
Technology AgilityTechnology Agility
Technology AgilityOmar Bashir
 
Quality Loopback
Quality LoopbackQuality Loopback
Quality LoopbackOmar Bashir
 
Authorisation: Concepts and Implementation
Authorisation: Concepts and ImplementationAuthorisation: Concepts and Implementation
Authorisation: Concepts and ImplementationOmar Bashir
 
Coding for 11 Year Olds
Coding for 11 Year OldsCoding for 11 Year Olds
Coding for 11 Year OldsOmar Bashir
 
High Speed Networks - Applications in Finance
High Speed Networks - Applications in FinanceHigh Speed Networks - Applications in Finance
High Speed Networks - Applications in FinanceOmar Bashir
 
Functional Programming in Java 8
Functional Programming in Java 8Functional Programming in Java 8
Functional Programming in Java 8Omar Bashir
 
An Introduction to Java Compiler and Runtime
An Introduction to Java Compiler and RuntimeAn Introduction to Java Compiler and Runtime
An Introduction to Java Compiler and RuntimeOmar Bashir
 
Computing at Schools: A Guide to Parents
Computing at Schools: A Guide to ParentsComputing at Schools: A Guide to Parents
Computing at Schools: A Guide to ParentsOmar Bashir
 
Information technology
Information technologyInformation technology
Information technologyOmar Bashir
 
Maths with Programming
Maths with ProgrammingMaths with Programming
Maths with ProgrammingOmar Bashir
 
Code Club Talk 2014
Code Club Talk 2014Code Club Talk 2014
Code Club Talk 2014Omar Bashir
 

More from Omar Bashir (15)

Cloud migration challenges london ct os
Cloud migration challenges   london ct osCloud migration challenges   london ct os
Cloud migration challenges london ct os
 
5 Software Development Lessons From a Mountaineer
5 Software Development Lessons From a Mountaineer5 Software Development Lessons From a Mountaineer
5 Software Development Lessons From a Mountaineer
 
Why Java ?
Why Java ?Why Java ?
Why Java ?
 
Technology Agility
Technology AgilityTechnology Agility
Technology Agility
 
Quality Loopback
Quality LoopbackQuality Loopback
Quality Loopback
 
Authorisation: Concepts and Implementation
Authorisation: Concepts and ImplementationAuthorisation: Concepts and Implementation
Authorisation: Concepts and Implementation
 
SOLID Java Code
SOLID Java CodeSOLID Java Code
SOLID Java Code
 
Coding for 11 Year Olds
Coding for 11 Year OldsCoding for 11 Year Olds
Coding for 11 Year Olds
 
High Speed Networks - Applications in Finance
High Speed Networks - Applications in FinanceHigh Speed Networks - Applications in Finance
High Speed Networks - Applications in Finance
 
Functional Programming in Java 8
Functional Programming in Java 8Functional Programming in Java 8
Functional Programming in Java 8
 
An Introduction to Java Compiler and Runtime
An Introduction to Java Compiler and RuntimeAn Introduction to Java Compiler and Runtime
An Introduction to Java Compiler and Runtime
 
Computing at Schools: A Guide to Parents
Computing at Schools: A Guide to ParentsComputing at Schools: A Guide to Parents
Computing at Schools: A Guide to Parents
 
Information technology
Information technologyInformation technology
Information technology
 
Maths with Programming
Maths with ProgrammingMaths with Programming
Maths with Programming
 
Code Club Talk 2014
Code Club Talk 2014Code Club Talk 2014
Code Club Talk 2014
 

Recently uploaded

Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 

Recently uploaded (20)

Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 

Distilling Agile Principles for Focus, Reduction and Visibility

  • 2.
  • 3. We too often get dogmatic about the ceremonies and artifacts and forget about the fundmentals. Mike Cottmeyer
  • 4. Agile Manifesto ● Individuals and interactions over processes and tools ● Working software over comprehensive documentation ● Customer collaboration over contract negotiation ● Responding to change over following a plan
  • 5. Agile Manifesto Principles ● Early and continuous delivery of valueable software. ● Welcome changing requirements. ● Deliver working software as frequently as possible. ● Daily collaboration between business and tech. ● Focus on people and enablement. ● Face to face communication within teams. ● Maintain a constant pace indefinitely. ● Maximise the art of work not done. ● Self organising teams leading to emergent systems. ● Retune, readjust and realign regularly.
  • 6. Agile Manifesto Principles ● Early and continuous delivery of valueable software. ● Welcome changing requirements. ● Deliver working software as frequently as possible. ● Daily collaboration between business and tech. ● Focus on people and enablement. ● Face to face communication within teams. ● Maintain a constant pace indefinitely. ● Maximise the art of work not done. ● Self organising teams leading to emergent designs. ● Retune, readjust and realign regularly.
  • 7. Distilled Principles ● Reduction – Reduce scope, sprint lengths, team sizes, dependences etc. to increase release frequency, reduce risks and enhance product quality. ● Focus – Continuously deliver demonstrable value. ● Visibility – Make backlog, progress, risk, dependencies etc. visible to facilitate collaboration and communication.
  • 8. Agile Frameworks ● Scrum – Empirical process control – Self organisation – Collaboration – Value based prioritisation – Time boxing – Iterative development ● Kanban – Principles ● Start with what you do now ● Incremental and evolutionary change ● Respect current process ● Leadership at all levels – Properties ● Visualise workflow ● Limit WIP ● Manage flow ● Make process policies explicit ● Improve collaboratively
  • 9. In fact, in an agile project, technical excellence is measured by both capacity to deliver customer value today and create an adaptable product for tomorrow. Jim Highsmith
  • 10.
  • 11. Reduction - The Obvious ● Iteration/Sprint size – Frequent releases. – Frequent feedback. – Reduced risk of divergence from customer needs. ● Team size – Better bonding. – Efficient communication. – Effective management. ● Features – Reduced optional complexity.
  • 12. Reduction - The Obvious ● Story size – Improved estimation. ● Less uncertainty due to reduced scope. – Reduced accidental complexity. ● Less ambiguity leading to focused implementations. – Improved testing. ● Smaller and focused tests. – Higher throughput. ● Focused features leading to less waste.
  • 13. Reduction – The Ignored ● Code – Dead and commented out code causes confusion. – Succinct codebase has less accidental complexity. ● Merge request size – Meaningful and thorough code reviews. – Reduced risk of merge conflicts. – Improved code quality.
  • 14. Reduction – The Ignored ● Technical dependencies – Reduced binary footprint. – Increased code longevity. – Improved testability. ● Inter-team and intra-team dependencies – Reduced handovers improving flow. – Developers gain domain knowledge. – Improved organisation.
  • 15. Reduction – Challenges ● Story sizes. – Splitting stories to reduce scope. ● Vertical splitting. ● Horizontal splitting. ● Iteration/Sprint sizes. – Planning overhead. – DevOps toolset maturity. – Features bigger than sprints. ● Grouping sprints into feature packages. Independent Negotiable Valuable Estimable Small Testable
  • 16. Reduction – Challenges ● Code size. – Brevity but not obfuscation. – Preserve SOLIDity using design patterns. ● Team sizes and organisation. – Conway’s Law. ● Architecture to drive organisation of teams. ● Using functional and non-functional requirements to choose architectural styles. – Cross functional teams, ● Feature aligned vs subsystem aligned.
  • 17.
  • 18. Focus – The Obvious ● Business features – Prioritising product backlog. – Grouping and prioritising stories in dependency order. ● Building a flow – Governing self-organisation. ● Cross functional teams executing stories with least possible handovers. ● Reducing inter-team dependencies. – Subsystem aligned teams: Static organisation. – Feature aligned teams: Reorganisation possible every sprint. – Sprints grouped into feature packages.
  • 19. Focus – The Ignored ● Non-Functional Requirements (NFRs) – Ignoring them can have consequences, e.g., ● Security: Reputational, data and business continuity risks. ● Performance: Reputational and revenue risks. ● Usability: Adoption and loyalty risks. – Relegating NFRs builds technical debt. – Pair with functional requirements in relevant stories. ● Test suites should contain both functional and non-functional tests. – Educate developers on, ● Relevant performance metrics. ● Measurement and profiling tools.
  • 20. Focus – The Ignored ● Technical risks – Technical debt ● Always paid back in hard ca$h. ● Technical investment, – Just enough design vs. over-engineering vs. no design. – Domain Driven Design. – Commoditised design: Design patterns and architectural styles. – Defects ● Determination – Is this really a bug? ● Severity – Blocker vs. Critical vs. Major. ● Early detection and resolution – Effective testing strategy.
  • 21. Focus – Challenges ● Balancing value and risk – Avoiding the long and painful tail/tale of delivery. ● Consensus – A clear understanding of priorities across stakeholders. ● Monitoring – Ensuring teams are committed to the plan.
  • 22.
  • 23. Visibility – The Obvious ● Product roadmap and backlog – Shared visibility of product evolution plan. ● Sprint backlog – Detailed task level plan for an iteration. – Also includes defects/bugs prioritised for fixing. ● Sprint/Kanban boards – Detailed view of iteration execution (Who is doing what now). ● Burndown/Burnup charts – Tasks (effort) remaining/tasks (effort) completed.
  • 26. Visibility – The Ignored ● Capacity management – Team availability vs. iteration backlog. ● Defect trends – Indicator of focus on quality. ● RAID log – Prioritised list of Risks, Assumptions, Issues and Dependencies facing the project. – Includes owners, current status, links to backlog and ETA. ● Dependency matrix – How teams depend on each other for iteration execution.
  • 29. Visibility – Challenges ● Tooling – Keeping it simple. – Derived from a single source of truth. ● Shared – Available to all team members for viewing at least. ● Keeping it current. – These are living organs of a project, if they are not current, the project is dead. ● Encouragement – Motivating team members to move off emails and chats to enquire and share status.
  • 30. Final Word ● No estimation is not an option. – Estimation may not be accurate but can be realistic. – Task breakdown affects estimation accuracy/realism. ● No design is not an option. – Architecture and design affects EVERYTHING. – Avoiding big up front design does not mean no design. ● Architecture and design are increasingly commoditised. ● Teams should use design patterns and architectural styles. ● Value alone is not an option. – Technical debt has physical costs. – Relegating NFRs adds tech debt and risks delivery.
  • 31. There are no such things as best practices in product development. There are only practices that are adequate within a certain context. Practices are situational; blithely claiming they are “best” disconnects them from motivation and context. They become rituals. And pushing so-called best practices kills a culture of learning, questioning, engagement, and continuous improvement. Why would people challenge best? Craig Larman, Bas Vodde