際際滷

際際滷Share a Scribd company logo
Whole Agile



Copyright 息 2012 Peter Scheyen
                                               Version 1.0
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
Whole Agile



              Version 1.0
COMMON PERCEPTIONS OF
   AGILE METHODS
Quick Fix



Quick Fix?
Repackaged Waterfall


Repackaged Method X?
No More Project Managers



No PMs? No QA?
Change Orders for Free


Free Changes?
Cowboy Coding?


                 Cowboy Coding
For Elite Programmers Only


                Requires Elite Programmers?
For Web Development Only



                 Web Programming Only?
For Small Teams Only



Small Teams Only?
Its Hard!


Its Hard
WHY BOTHER?
Deliver working software faster
     and more frequently
Fewer quality issues
Self-managing, adaptive, learning teams
Less reliance on individual heroes
Greater reliance on high performing teams
More effective use of resources
Can create space for organic innovation
Higher visibility into the true state of projects
No place to hide
WHAT IS AGILE ANYWAY?
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
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
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
Sounds simple enough
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
ESSENTIAL ASPECTS OF
   WHOLE AGILE
ESSENTIAL ASPECTS OF WHOLE AGILE

 Basic Agile Practices
 Software Development Practices
 Culture
 People
 Organization and Roles
 Communication
 Feedback and Adaptation
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
ASPECT: SOFTWARE DEVELOPMENT PRACTICES




 Out of scope for this discussion
 Important to trust the technical team to decide
Requirements sidebar
ASPECT: CULTURE
 Agile Cultural Norms
    Whole Team
    Customer Value-Oriented
    Honesty
    Transparency
    Trust
    Commitment
    Excellence
    Sustainable Pace
    Hunger for feedback
    Continuous Learning
    Adaptable
    Accountable
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
ASPECT: PEOPLE



 Leadership - it takes courage
 Frequency and impact of decisions increased
 Empowerment and trust
 Holding people accountable
No place to hide
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
ASPECT: COMMUNICATION


 High bandwidth
 Open and honest
 Directly with customer
 Transparent at all levels
 Real-time as possible
 Meetings
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
OTHER WHOLE AGILE ASPECTS


 Physical Environment
 Tools
 Portfolio management
 Simplicity
 Just enough, just in time, just do it
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
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
READING LIST




               http://scheyeniam.blogspot.com/2012/01/agile-reading-list.html

More Related Content

Whole Agile

  • 1. Whole Agile Copyright 息 2012 Peter Scheyen Version 1.0
  • 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
  • 3. Whole Agile Version 1.0
  • 4. COMMON PERCEPTIONS OF AGILE METHODS
  • 7. No More Project Managers No PMs? No QA?
  • 8. Change Orders for Free Free Changes?
  • 9. Cowboy Coding? Cowboy Coding
  • 10. For Elite Programmers Only Requires Elite Programmers?
  • 11. For Web Development Only Web Programming Only?
  • 12. For Small Teams Only Small Teams Only?
  • 15. Deliver working software faster and more frequently
  • 18. Less reliance on individual heroes Greater reliance on high performing teams
  • 19. More effective use of resources
  • 20. Can create space for organic innovation
  • 21. Higher visibility into the true state of projects
  • 22. No place to hide
  • 23. WHAT IS AGILE ANYWAY?
  • 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
  • 29. ESSENTIAL ASPECTS OF WHOLE AGILE
  • 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
  • 37. No place to hide
  • 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