Choosing a methodology or a set of software development practices is just the beginning. In order to truly find success using agile methods you need to embrace Whole Agile.
2. PERSONAL BACKGROUND
Peter Scheyen (pscheyen@gmail.com, @pscheyen)
CTO, Richard Ivey School of Business
Formerly with Comcast, TVWorks, Liberate, Cableshare
Experience includes Software Developer, Management, VP Eng
Traditional software development methodologies
Introduced Agile methods in different contexts
Small team of 10 members
Large organization of 10 teams of 5-10 members each
24. A BRIEF HISTORY
Iterative methods date back to the 1950s
Object oriented programming from the 1960s
Adaptive methodologies from the early 1970s
Lightweight methods developed in the 1990s
Agile Manifesto signed in early 2001
Scrum, XP, Crystal, Adaptive Software Development, FDD
25. AGILE MANIFESTO
We 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
http://agilemanifesto.org
26. IN A NUTSHELL
Working software product as the primary deliverable
Iterative and incremental product development
Close collaboration between customer/business and technical
roles
Dave Rooney, An Organizational Structure for Agile Projects
28. WHAT IS WHOLE AGILE?
Successful agile is more than...
working software delivered iteratively in collaboration with customers
a set of processes
a set of software development practices
Whole Agile looks at the organization as a system taking into
account not only Process but also People, Culture, Communication,
Physical Environment, Requirements, Organizational Roles
30. ESSENTIAL ASPECTS OF WHOLE AGILE
Basic Agile Practices
Software Development Practices
Culture
People
Organization and Roles
Communication
Feedback and Adaptation
31. ASPECT: BASIC AGILE PRACTICES
Backlog of remaining work
Iteration planning
Short, frequent meetings (daily standups)
Available customer or customer representative (Product Owner)
Burn down charts or similar progress tracking
Deliverable software at the end of each iteration
Retrospective
32. ASPECT: SOFTWARE DEVELOPMENT PRACTICES
Out of scope for this discussion
Important to trust the technical team to decide
34. ASPECT: CULTURE
Agile Cultural Norms
Whole Team
Customer Value-Oriented
Honesty
Transparency
Trust
Commitment
Excellence
Sustainable Pace
Hunger for feedback
Continuous Learning
Adaptable
Accountable
35. ASPECT: PEOPLE
Alistair Cockburn: non-linear, 鍖rst-order components of software
development
People are:
sensitive to communication timing and modality
inconsistent over time
variable day to day and place to place
good citizens that want to do a good job
36. ASPECT: PEOPLE
Leadership - it takes courage
Frequency and impact of decisions increased
Empowerment and trust
Holding people accountable
38. ASPECT: ORGANIZATION
Key Roles (Dave Rooney, An Org. Structure for Agile Projects)
Customer or Customer Proxy
Coach
Subject Matter Expert
Generalizing Specialist
QA
Comptroller
Organizational Structure pseudo-matrixed
Dual Career Paths
39. ASPECT: COMMUNICATION
High bandwidth
Open and honest
Directly with customer
Transparent at all levels
Real-time as possible
Meetings
40. ASPECT: FEEDBACK AND ADAPTATION
Culture demands constant feedback and adaptation
Relentless identi鍖cation and elimination of waste
Self-assessment through retrospectives
Guided by metrics (generated automatically)
Peer feedback
Experimentation and feedback (failure is an option)
Feedback isnt enough alone -- adaptation
41. OTHER WHOLE AGILE ASPECTS
Physical Environment
Tools
Portfolio management
Simplicity
Just enough, just in time, just do it
42. LEAN THINKING
Lean Software Development -- Mary and Tom Poppendieck
Borrows heavily from Toyota Production System
7 Principles
Optimize the whole
Eliminate waste
Build in quality
Learn constantly
Deliver as fast as possible
Engage everyone
Keep getting better
43. IN SUMMARY (10 min)
Software companies want to deliver more, faster
Non-software companies want to better leverage IT resources
Whole Agile means:
Iteratively deliver working software in collaboration with the customer
PLUS
Whole Team
Deep commitment to delivering customer value
Healthy culture
Open and honest communication and transparency
Feedback and adaptation
Relentless elimination of waste
44. READING LIST
http://scheyeniam.blogspot.com/2012/01/agile-reading-list.html