Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Agile Development
 An Executive Overview
Professional Background
   Benjamin Scherrey ā€“ Proteus Technologies, Ltd.
ā€¢ Accidentally started first company, Business Data Management, in
  1989.
ā€¢ Found out managing software development was very hard!!
ā€¢ Read Tom Gilbā€™s ā€œPrinciples of Software Engineering Managementā€
ā€¢ Discovered iterative development, metrics & clear requirement
  definitions!
ā€¢ Got involved with ISO-9001 ā€“ learned that processes can go wrong!
ā€¢ Early adopter of SEIā€™s Capability & Maturity Model
ā€¢ Started second company, Proteus Technologies, in 1994.
ā€¢ Finally became Agile in 2002 and enjoy software development once
  again!


 Twitter @proteusguy              scherrey@proteus-tech.com
Professional Background
     Sinaporn Suebvisai ā€“ Proteus Technologies, Ltd.
ā€¢ Bachelor Degree in Computer Engineering from
  Chulalongkorn University in 2001
ā€¢ Worked as Research Assistant at NECTEC for 1 year
ā€¢ Master Degree from Computer Science School, Carnegie
  Mellon University, in 2004
ā€¢ Joined Thomson Reuters in 2004 as Software Engineer
ā€¢ Became Development Group Leader in 2007
ā€¢ Led the effort to adopt Agile process into the team, and
  kept making improvements
ā€¢ Joined Proteus Technologies Co. Ltd. as Thailand's first ever
  Agile Evangelist in 2008


   sinapam@proteus-tech.com
Another Process?
ā€¢ Software Development :
   Art or Science?
  The Art of Managing Complexity
ā€¢ Unfulfilled Promises
ā€¢ False Belief that we know more about a project than we
  possibly can.
ā€¢ Hiding from Risk is NOT Managing Risk!
ā€¢   ā€¦quit pretending and get to the real value.
What is Agile?
     The Agile Manifesto ā€“ Utah 2001
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 Utilizes Best Practices
ā€¢ Evolutionary Delivery vs. All at Once
   ā€“ Barry Boehmā€™s Spiral Model
ā€¢ User Stories
   ā€“ Kent Beckā€™s Xtreme Programming
ā€¢ Short, Focused, Meetings of Cross Functional
  Teams
   ā€“ Jeff Sutherland, et al, SCRUM
Culture Over Process
ā€¢ Agile is a CULTURE not a PROCESS.
ā€¢ A culture is the set of beliefs & goals that drive
  ALL of your organization.
ā€¢ All successful processes must be driven by your
  culture.
ā€¢ An Agile Culture will help you determine what
  aspects of any particular process are right for
  you.
How is Agile Unique?

ā€¢ Completely Value Driven




                             8
Mayo-Smith Pyramid




Grandiose Designs Incur Grandiose Risks
     Scope fixed, budget & schedule may suffer.
Focus on immediate, practical functionality maximizes value of
each increment while reducing risk.
     Scope flexible, budget & schedule under control.




                                                                 9
Agile Fixes Costs & Schedule to
           Drive Features




Ā© www.StickyMinds.com
                                    10
How is Agile Unique?

ā€¢ Completely Value Driven
ā€¢ Time Boxed Iterations




                             11
Time Boxed Iterations
ā€¢ Iterations are fixed length.
   ā€“ Typically 2 weeks, no more than a month.
ā€¢ Every iteration ends with a demo and
  retrospective.
ā€¢ Short Iterations allows for frequent directional
  corrections.
ā€¢ Reduced Cycle time is Major competitive
  advantage!
What we do in Iteration Close-down
ā€¢ Conclude the Iteration
  ā€“ Which stories have been closed
ā€¢ Update the Progress in relation to the
  Release
ā€¢ Demo
  ā€“ Customers are happy when they see
    progress
  ā€“ Early feedback from customers

                                           13
How is Agile Unique?

ā€¢ Completely Value Driven
ā€¢ Time Boxed Iterations
ā€¢ Test Driven Development




                             14
Test Driven Development
ā€¢ Unit Testing
  ā€“ Integrated in the build environment.
ā€¢ Continuous Integration
  ā€“ Always ready to ship. Allows you to embrace change!
ā€¢ Automated Testing
  ā€“ Ensure constant quality and prevent regressions.
ā€¢ Fully integrates the test group and developers
  love writing tests!




                                                       15
How is Agile Unique?

ā€¢   Completely Value Driven
ā€¢   Time Boxed Iterations
ā€¢   Test Driven Development
ā€¢   User Stories describe Features



                                     16
What is a User Story?
ā€¢ User Story is a Brief statement of
  Functionality but told from the Userā€™s
  perspective.
       As a <stakeholder>, I want to <goal> so that <reason>.


ā€¢ INVEST in User Stories
  ā€“ Independent
  ā€“ Negotiable
  ā€“ Valuable
  ā€“ Estimable
  ā€“ Small
  ā€“ Testable
User Story
Description
                  Story Card   Story ID




                               Notes from
                               Discussion

 Exit
Criteria




              Story
              Points
The Story Board




                  19
The Story Board




                  20
How is Agile Unique?

ā€¢   Completely Value Driven
ā€¢   Time Boxed Iterations
ā€¢   Test Driven Development
ā€¢   User Stories describe Features
ā€¢   Planning & Estimating with
    Story Points
                                     21
Why Traditional Planning Fails
ā€¢ Planning is by Activity rather than Feature
  ā€“ Activities donā€™t finish earlier than planned
  ā€“ Lateness is passed down the schedule
  ā€“ Activities are not dependent
ā€¢ Estimates become Commitments
  ā€“ This has to be done by this date and with all these
    features.
ā€¢ Features are not developed by Priority
ā€¢ Uncertainty is ignored
Estimating the Agile Way
Estimating the Real World

Each building is a task
whose complexity is
determined by its height.




                                   23
Absolute Estimation
Hard to get good numbers.
Perspectiveā€™s may
radically impact results.
Humans just not good at
this.




                                 24
Absolute Estimation
Humans good at making
relative judgments.
Consensus can be
reached quickly.
Assessment accuracy is
ā€œclose enoughā€.




                                 25
Story Points Support Relative
                Estimates
ā€¢ Measure Relative Complexity of User Stories
ā€¢ Considers the Entire Efforts of Dev & Test
ā€¢ Use the Fibonacci Sequence in order to prevent
  arguments over a 10% estimate difference.
  ā€“ 1, 2, 3, 5, 8, 13, 21, etcā€¦
ā€¢ Far less likely for management to successfully
  play ā€œTime Mathā€ with.



                                                   26
Velocity & Release Planning
ā€¢ Velocity is the average number of story points
  achieved over the last several iterations.
ā€¢ A Release is a set of User Stories (Features) that
  must be present in order to be worth shipping.
ā€¢ Velocity allows you to estimate your release date
  while still being responsive to changing
  requirements by trading out User Stories.




                                                       27
Why Agile Planning Works
ā€¢ Instead of creating the perfect plan, create a
  plan that is useful right now
    ā€“ But update plan often
ā€¢ Effort Size and Duration are separated
    ā€“ Duration estimate is harder to match
ā€¢   Plans are made at different levels
ā€¢   State Uncertainty in no Uncertain terms
ā€¢   Tracking is at the Team level, not Individual
ā€¢   Plans are by Features, not Tasks
    ā€“ Team understands more of the product
ā€¢ Transparency Builds Trust and Credibility!
How to Better Utilize Agile
ā€¢ Use an Agile Coach as a full team
  member, not process enforcer.
ā€¢ Team-member Driven Process
ā€¢ Have Small Cross-Functional Teams that
  work side by side.
ā€¢ Automate Everything



                                           29
So what do we get from being
                Agile?
ā€¢ Happy customers
    ā€“ they get what they really want!
ā€¢   Faster feedback
ā€¢   Quick response to changes
ā€¢   Trust from customers due to Transparency
ā€¢   Increase in Team Participation
ā€¢   Risk management built-in
ā€¢   Better software quality

                                               30
Opportunities
ā€¢ Best Case for Risk Management
ā€¢ Lowest Overhead while being Effective
ā€¢ Better Able to Capitalize on Opportunities
ā€¢ Integrate Kano Analysis to help drive
  feature plan
ā€¢ Involve business to achieve maximum ROI



                                          31
Challenges
ā€¢   Keeping User Stories Small
ā€¢   Exit Criteria for User Stories
ā€¢   Avoiding Over-specification
ā€¢   Distributed Teams Incur Additional Overhead
ā€¢   Some Projects (medical devices, flight systems)
    need more formal processes than Agile
    reasonably supports.



                                                  32
Thank you for your kind attention.




                                     33
References
Agile Estimating and Planning
    - Mike Cohn
Principles of Software Engineering Management
    - Tom Gilb
Agile Retrospectives: Making Good Teams Great
    - Esther Derby, Diana Larsen, Ken Schwaber

Email me: scherrey@proteus-tech.com
Web site: http://proteus-tech.com
Follow me on Twitter: @proteusguy

                                                 34

More Related Content

Introductionto Agile Executive Overview Gpi Asia Rev2

  • 1. Agile Development An Executive Overview
  • 2. Professional Background Benjamin Scherrey ā€“ Proteus Technologies, Ltd. ā€¢ Accidentally started first company, Business Data Management, in 1989. ā€¢ Found out managing software development was very hard!! ā€¢ Read Tom Gilbā€™s ā€œPrinciples of Software Engineering Managementā€ ā€¢ Discovered iterative development, metrics & clear requirement definitions! ā€¢ Got involved with ISO-9001 ā€“ learned that processes can go wrong! ā€¢ Early adopter of SEIā€™s Capability & Maturity Model ā€¢ Started second company, Proteus Technologies, in 1994. ā€¢ Finally became Agile in 2002 and enjoy software development once again! Twitter @proteusguy scherrey@proteus-tech.com
  • 3. Professional Background Sinaporn Suebvisai ā€“ Proteus Technologies, Ltd. ā€¢ Bachelor Degree in Computer Engineering from Chulalongkorn University in 2001 ā€¢ Worked as Research Assistant at NECTEC for 1 year ā€¢ Master Degree from Computer Science School, Carnegie Mellon University, in 2004 ā€¢ Joined Thomson Reuters in 2004 as Software Engineer ā€¢ Became Development Group Leader in 2007 ā€¢ Led the effort to adopt Agile process into the team, and kept making improvements ā€¢ Joined Proteus Technologies Co. Ltd. as Thailand's first ever Agile Evangelist in 2008 sinapam@proteus-tech.com
  • 4. Another Process? ā€¢ Software Development : Art or Science? The Art of Managing Complexity ā€¢ Unfulfilled Promises ā€¢ False Belief that we know more about a project than we possibly can. ā€¢ Hiding from Risk is NOT Managing Risk! ā€¢ ā€¦quit pretending and get to the real value.
  • 5. What is Agile? The Agile Manifesto ā€“ Utah 2001 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
  • 6. Agile Utilizes Best Practices ā€¢ Evolutionary Delivery vs. All at Once ā€“ Barry Boehmā€™s Spiral Model ā€¢ User Stories ā€“ Kent Beckā€™s Xtreme Programming ā€¢ Short, Focused, Meetings of Cross Functional Teams ā€“ Jeff Sutherland, et al, SCRUM
  • 7. Culture Over Process ā€¢ Agile is a CULTURE not a PROCESS. ā€¢ A culture is the set of beliefs & goals that drive ALL of your organization. ā€¢ All successful processes must be driven by your culture. ā€¢ An Agile Culture will help you determine what aspects of any particular process are right for you.
  • 8. How is Agile Unique? ā€¢ Completely Value Driven 8
  • 9. Mayo-Smith Pyramid Grandiose Designs Incur Grandiose Risks Scope fixed, budget & schedule may suffer. Focus on immediate, practical functionality maximizes value of each increment while reducing risk. Scope flexible, budget & schedule under control. 9
  • 10. Agile Fixes Costs & Schedule to Drive Features Ā© www.StickyMinds.com 10
  • 11. How is Agile Unique? ā€¢ Completely Value Driven ā€¢ Time Boxed Iterations 11
  • 12. Time Boxed Iterations ā€¢ Iterations are fixed length. ā€“ Typically 2 weeks, no more than a month. ā€¢ Every iteration ends with a demo and retrospective. ā€¢ Short Iterations allows for frequent directional corrections. ā€¢ Reduced Cycle time is Major competitive advantage!
  • 13. What we do in Iteration Close-down ā€¢ Conclude the Iteration ā€“ Which stories have been closed ā€¢ Update the Progress in relation to the Release ā€¢ Demo ā€“ Customers are happy when they see progress ā€“ Early feedback from customers 13
  • 14. How is Agile Unique? ā€¢ Completely Value Driven ā€¢ Time Boxed Iterations ā€¢ Test Driven Development 14
  • 15. Test Driven Development ā€¢ Unit Testing ā€“ Integrated in the build environment. ā€¢ Continuous Integration ā€“ Always ready to ship. Allows you to embrace change! ā€¢ Automated Testing ā€“ Ensure constant quality and prevent regressions. ā€¢ Fully integrates the test group and developers love writing tests! 15
  • 16. How is Agile Unique? ā€¢ Completely Value Driven ā€¢ Time Boxed Iterations ā€¢ Test Driven Development ā€¢ User Stories describe Features 16
  • 17. What is a User Story? ā€¢ User Story is a Brief statement of Functionality but told from the Userā€™s perspective. As a <stakeholder>, I want to <goal> so that <reason>. ā€¢ INVEST in User Stories ā€“ Independent ā€“ Negotiable ā€“ Valuable ā€“ Estimable ā€“ Small ā€“ Testable
  • 18. User Story Description Story Card Story ID Notes from Discussion Exit Criteria Story Points
  • 21. How is Agile Unique? ā€¢ Completely Value Driven ā€¢ Time Boxed Iterations ā€¢ Test Driven Development ā€¢ User Stories describe Features ā€¢ Planning & Estimating with Story Points 21
  • 22. Why Traditional Planning Fails ā€¢ Planning is by Activity rather than Feature ā€“ Activities donā€™t finish earlier than planned ā€“ Lateness is passed down the schedule ā€“ Activities are not dependent ā€¢ Estimates become Commitments ā€“ This has to be done by this date and with all these features. ā€¢ Features are not developed by Priority ā€¢ Uncertainty is ignored
  • 23. Estimating the Agile Way Estimating the Real World Each building is a task whose complexity is determined by its height. 23
  • 24. Absolute Estimation Hard to get good numbers. Perspectiveā€™s may radically impact results. Humans just not good at this. 24
  • 25. Absolute Estimation Humans good at making relative judgments. Consensus can be reached quickly. Assessment accuracy is ā€œclose enoughā€. 25
  • 26. Story Points Support Relative Estimates ā€¢ Measure Relative Complexity of User Stories ā€¢ Considers the Entire Efforts of Dev & Test ā€¢ Use the Fibonacci Sequence in order to prevent arguments over a 10% estimate difference. ā€“ 1, 2, 3, 5, 8, 13, 21, etcā€¦ ā€¢ Far less likely for management to successfully play ā€œTime Mathā€ with. 26
  • 27. Velocity & Release Planning ā€¢ Velocity is the average number of story points achieved over the last several iterations. ā€¢ A Release is a set of User Stories (Features) that must be present in order to be worth shipping. ā€¢ Velocity allows you to estimate your release date while still being responsive to changing requirements by trading out User Stories. 27
  • 28. Why Agile Planning Works ā€¢ Instead of creating the perfect plan, create a plan that is useful right now ā€“ But update plan often ā€¢ Effort Size and Duration are separated ā€“ Duration estimate is harder to match ā€¢ Plans are made at different levels ā€¢ State Uncertainty in no Uncertain terms ā€¢ Tracking is at the Team level, not Individual ā€¢ Plans are by Features, not Tasks ā€“ Team understands more of the product ā€¢ Transparency Builds Trust and Credibility!
  • 29. How to Better Utilize Agile ā€¢ Use an Agile Coach as a full team member, not process enforcer. ā€¢ Team-member Driven Process ā€¢ Have Small Cross-Functional Teams that work side by side. ā€¢ Automate Everything 29
  • 30. So what do we get from being Agile? ā€¢ Happy customers ā€“ they get what they really want! ā€¢ Faster feedback ā€¢ Quick response to changes ā€¢ Trust from customers due to Transparency ā€¢ Increase in Team Participation ā€¢ Risk management built-in ā€¢ Better software quality 30
  • 31. Opportunities ā€¢ Best Case for Risk Management ā€¢ Lowest Overhead while being Effective ā€¢ Better Able to Capitalize on Opportunities ā€¢ Integrate Kano Analysis to help drive feature plan ā€¢ Involve business to achieve maximum ROI 31
  • 32. Challenges ā€¢ Keeping User Stories Small ā€¢ Exit Criteria for User Stories ā€¢ Avoiding Over-specification ā€¢ Distributed Teams Incur Additional Overhead ā€¢ Some Projects (medical devices, flight systems) need more formal processes than Agile reasonably supports. 32
  • 33. Thank you for your kind attention. 33
  • 34. References Agile Estimating and Planning - Mike Cohn Principles of Software Engineering Management - Tom Gilb Agile Retrospectives: Making Good Teams Great - Esther Derby, Diana Larsen, Ken Schwaber Email me: scherrey@proteus-tech.com Web site: http://proteus-tech.com Follow me on Twitter: @proteusguy 34