5. Manifesto for Agile Software Development
We are uncovering better ways of developing software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
... And 12 principles.
Source: http://agilemanifesto.org/
6. The Agile Practice Triangle
Principles
Values
Process Tools
Agile is commonly misunderstood as a process. It
is much more than that. There are three
components to unlocking the power of methods
based on the Agile values.
Values: A decision making and behavioral
framework.
Principles: A fundamental truth which serves as a
foundation of reasoning.
Process: A series of steps taken to achieve a
particular end.
Tools: A device or implement used to assist in
achieving an end.
7. The Agile Landscape – A Snapshot
Product Management Practices:
Story Slicing
Specification-by-Example
User Story Mapping
Agile Estimation
Agile Roadmaps
UX
Project Management:
Scrum, Kanban
Engineering Practices:
eXtreme Programming
Unit Testing
Test Driven Development (TDD)
Behavior Driven Development (BDD)
Walking Skeleton
Shift-Left Testing
Agile Architecture
Delivery Practices:
DevOps
Continuous Delivery
Infrastructure-as-Code
Portfolio Management / Scaling:
Portfolio Kanban, Scaled Agile, LeSS
8. Scrum Overview
• Values:
• Commitment, Focus,
Openness, Respect, Courage
• Artefacts:
• The Iteration (1-4 weeks)
• Product Backlog
• Sprint Backlog
• User Story
• A way to measure progress
• Roles:
• Product Owner
• Scrum Team
• Scrum Master
• Activities
• Sprint Planning
• Daily Standup
• Product Demo
• Retrospective
• Backlog Refinement
Source: Scrum Inc
9. Lean-Kanban Overview
• Origins
• Toyota Production System
• Principles
• Visualize the workflow
• Limit WIP
• Manage Flow
• Make Process Policies Explicit
• Improve Collaboratively (using models
& the scientific method)
• Artefacts
• A board to visualize the workflow
• Work Items
• Cumulative Chart
• Run Chart
• Lead Time Chart
• Eliminate Wastes
• 7 Wastes of Software Development
Source: https://www.researchgate.net/figure/267514980_fig1_Figure-1-Kanban-board-and-principles-in-action-adapted-from-Boeg-11
Minimize WASTE, Maximize FLOW – Reduce Lead Time – Faster Time to Delivery
11. Lean as applied to Software
Development
• Lean is derived from the Toyota
Product System (TPS).
• TPS had its birth in 1924 with the
Toyoda Model G Loom.
• Focuses on delivering value,
efficiency & quality at the same
time!
• Lean has been applied beyond
manufacturing.
• Many Agile methods have
influences from Lean.
12. Scaled Agile Framework (SAFe)
• Agile practices as applied to
all levels of an enterprise:
• Portfolio
• Value Stream
• Program
• Team
• SAFe optimizes creating an
enterprise-wide cadence to
solve large organization
synchronization challenges.
• Is a framework whereby
various methods can be used
in conjunction with the core
SAFe practices.
13. Complex Adaptive Systems / Cynefin
• Decision making based on the domain.
• Knowing which domain you are in
determines what actions to be taken
and methods to use.
• 5 Domains
• Obvious
• Complicated
• Complex
• Chaotic
• Disorder
• Cliff of despair, between Obvious and
Chaotic.
14. Some other ideas…
• Convergence of Product Management, UX and Agile.
• Lean Enterprise
• DevOps as extension of Agile
• 3X – eXplore, eXpand, eXtract (Kent Beck)
• Scaling Agile (LeSS, SAFe, DSDM, etc)
15. The Agile Journey – Roles, Specializations and Practices
Product
Management
• Product
Ownership
• Product /
Market Fit
• Incremental
Delivery
• …
Software
Engineering
• Test Automation
• Agile
Architecture
• Clean Code /
SOLID
• Refactoring
• …
Test Engineering
• Test Pyramid
• Testing
Quadrant
• Fast Feedback
• Accessibility /
Usability
• …
Production
Operations
• Automated
Infrastructure
• Continuous
Delivery
• DevOps
• …
Agile Values
16. How to Reach Me
Fb.me/tzetang
Twitter.com/tzetang
Linkedin.com/in/tzetang
me@tzetang.com
We’re hiring!
• Software Engineers,
Testers, Data Scientists,
UX, Designers, Agilists.
• Email me at
tctang@seekasia.com
Notes de l'éditeur
The Seven Wastes of Software Development - Introduction
Waste #1 - Partially Done Work
Waste #2 - Extra Features
Waste #3 - Relearning
Waste #4 - Handoffs
Waste #5 - Delays
Waste #6 - Task Switching
Waste #7 - Defects