ADM Overview - Customers


Published on

ADM (Adaptive Development Methodology) Overview for Customers

Published in: Business, Technology

ADM Overview - Customers

  1. Adaptive Development Methodology Steve Greene Sr. Director, Tools & Agile Development
  2. Core Values <ul><li>KISS </li></ul><ul><li>Listen to your customers </li></ul><ul><li>Iterate </li></ul>
  3. What is ADM? ADM is a modified Scrum/XP style of product development that is specific to Salesforce. It employs Scrum project management framework, adopts certain XP practices and is based on lean principles.
  4. What is ADM? Re-factoring Self-organizing Predictable releases Transparent Ftest - Selenium Continuous integration Debt free Just-in-time Iterative Always Potentially Releasable Time-boxed User stories Agile Lean Early feedback Code Reviews Collective Code Ownership Self-correcting
  5. What is Scrum? <ul><li>An agile project management framework for developing software </li></ul><ul><li>Simple </li></ul><ul><li>Prioritized work </li></ul><ul><li>Time-boxed, 30-day sprints </li></ul>
  6. <ul><li>Self-organized, empowered teams </li></ul><ul><li>Daily, verbal communication </li></ul><ul><li>Potentially “production quality” every 30 days </li></ul>What is Scrum?
  7. <ul><li>Eliminates waste </li></ul><ul><li>Increases throughput </li></ul><ul><li>Provides transparency </li></ul>What is Scrum?
  8. Scrum Lifecycle Daily Scrum Meeting Sprint Review: Demo Potentially Releasable New Functionality Product Backlog Sprint Backlog Retrospective 24 Hours 2 - 4 Weeks
  9. The Scrum Team QE Engineer Developer Developer QE Engineer Developer Tech Writer UE Designer Product Owner
  10. Roles: Product Owner <ul><li>Single throat to choke </li></ul><ul><li>Fully accountable for the success or failure of the scrum team </li></ul><ul><li>Owns and prioritizes Product Backlog </li></ul>
  11. Roles: Product Owner <ul><li>Leverages team to break down Product Backlog </li></ul><ul><li>Creates Release Backlog by targeting priority Product Backlog </li></ul><ul><li>Directly drives development </li></ul><ul><li>Fully engaged </li></ul>
  12. Roles: ScrumMaster <ul><li>Ensures Scrum Team lives by the principles and practices of Scrum </li></ul><ul><li>Removes obstacles </li></ul><ul><li>Coach </li></ul>
  13. Roles: Scrum Team <ul><li>Cross-functional team </li></ul><ul><li>Has tasks on the Sprint Backlog </li></ul><ul><li>Self organizing, Self correcting. Teams decide best way to deliver </li></ul><ul><li>Makes their own commitment with the resources available, decides how best to distribute tasks to team members </li></ul><ul><li>Members are dedicated resources (as much as possible) </li></ul><ul><li>Optimally 6-10 people </li></ul>
  14. Product Backlog <ul><li>Key to success of Scrum </li></ul><ul><li>Master list of functional and non-functional items desired in the product (features, bugs, re-factoring) </li></ul><ul><li>Anyone can add to Product Backlog </li></ul><ul><li>Product Owner is the only person that prioritizes Product Backlog </li></ul><ul><li>Includes relative estimate of size of features (design, code, test, automate, refactor, doc, fix bugs) </li></ul>
  15. Product Backlog Sample
  16. Release Planning <ul><li>Communicate a common vision for the release </li></ul><ul><li>Initial Design </li></ul><ul><li>Align team on proposed functionality </li></ul><ul><li>Determine target functionality for the release </li></ul>
  17. Sprint Backlog <ul><li>Tasks necessary to complete user stories </li></ul><ul><li>Many-to-one relationship with user stories </li></ul><ul><li>Coding, testing, automation, specs, doc, design, etc. </li></ul>
  18. Sprint Planning <ul><li>Determine the Sprint Goal </li></ul><ul><li>Determine work necessary to complete the goal (with time estimates) </li></ul><ul><li>Make commitments for the Sprint </li></ul>
  19. Sprint Planning Meeting <ul><li>Team “dog piles” on user stories </li></ul><ul><li>Team figures out how to deliver Sprint Goal even without a resource on the team who normally does a particular type of work </li></ul><ul><li>Product Owner may negotiate but Team always determines what they can complete during the sprint </li></ul>
  21. <ul><li>The standards by which we define &quot;done&quot; for sprint functionality is key to the success of iterative, incremental development. Functionality that meets these standards at the end of a sprint will be considered potentially release-able and demoed at the Sprint Review. </li></ul>Definition of “Done”
  22. <ul><li>User Stories </li></ul><ul><li>All defined Acceptance Criteria for a user story have been met. </li></ul><ul><li>Code </li></ul><ul><li>Code implementing the user story functionality is checked in and follows department standards . </li></ul><ul><li>No open regressions (you break it, you own it), with automated tests written for all regressions. </li></ul><ul><li>No open P1 & P2 bugs for the implemented functionality in the sprint. </li></ul><ul><li>Quality </li></ul><ul><li>Code Coverage of 70% </li></ul><ul><li>Test plan, cases and execution for sprint functionality, regression and cross functional test cases related to sprint functionality, need to be 100% executed, and all P1/P2 cases passing. </li></ul><ul><li>All resolved bugs have been verified and closed for the sprint functionality. </li></ul>Definition of “Done”
  23. <ul><li>Performance/Scalability </li></ul><ul><li>Performance/Scalability impact of sprint functionality understood and quantified, and systesting scheduled, if required, with the sys test team. </li></ul><ul><li>User Experience </li></ul><ul><li>UE reviewed new features or significant changes in the UI, feedback incorporated, all resulting P1 and P2 UI bugs fixed. </li></ul><ul><li>Usability testing completed, feedback has been incorporated into the backlog. </li></ul><ul><li>Localization </li></ul><ul><li>All UI components have labels ready for localization vendors. </li></ul><ul><li>Documentation </li></ul><ul><li>User doc describing all aspects of sprint functionality complete / checked in. </li></ul>Definition of “Done”
  24. Autobuild Page
  25. Sprint Review <ul><li>It’s all about feedback, visibility and course correction </li></ul><ul><li>All teams demo done functionality to All Technology / Stakeholders </li></ul><ul><li>Takes place after the last day of the Sprint </li></ul>
  26. Sprint Review User Story Doneness Checklist User documentation complete and checked in. All UI labels ready for localization vendors. Usability testing scheduled when necessary, and feedback incorporated into backlog. UE has reviewed any new features; P1 and P2 UI bugs fixed. Performance/scalability impact ascertained and sys testing scheduled if required. All resolved bugs verified and closed. 100% of test cases logged in QA Tracker and executed in a QA environment, and all P1/P2 cases passing. Code Coverage of 70% (or as agreed with team) No open P1 & P2 bugs No open regressions. Automated tests written and reviewed for all regressions. Code checked in and follows department standards. BT & Profile Perm Setup Page Handshake POC Done Criteria
  27. <ul><li>Looks at “how” team operates and product is built (process, tools, etc.) </li></ul><ul><li>Occurs after every Sprint </li></ul><ul><li>What went well? </li></ul><ul><li>What didn’t go well? </li></ul><ul><li>What will you do differently next time? </li></ul>Retrospective
  28. ADM Principles <ul><li>Eliminate Waste – Optimize the delivery of customer value </li></ul><ul><li>Build Quality In – Design and engineer quality into our products rather than ensuring quality through late-cycle manual testing </li></ul><ul><li>Respect People – Build empowered, self-organizing, high performing teams </li></ul><ul><li>Optimize the Whole – Overall throughput of customer value is more important than individual utilization </li></ul><ul><li>Create Knowledge – Encourage continuous learning, improvement, and innovation </li></ul><ul><li>Just-in-Time Decisions – Break dependencies, maintain options, and make irreversible decisions at the last responsible moment </li></ul><ul><li>Deliver Fast – Deliver customer value early and often </li></ul><ul><li>Based on Lean Principles </li></ul>
  29. ADM Customer Advantage <ul><li>Time-to-market : Frequent value delivery </li></ul><ul><li>Flexible, responsive & effective R&D team </li></ul><ul><li>Predictable and reliable </li></ul><ul><li>Customer influence : priority of features </li></ul><ul><li>More of the right value, more often </li></ul>