Chad Greenslade | Weebly
  • About
  • Blog
  • On the Web

Lessons Learned from Agile Transformations: Part 15

12/29/2020

 
Fifteenth in a Fifteen Part Series
By Chad Greenslade
 
I have often been asked about my lessons learned in delivering Agile transformations.  Below is the fifteenth in a fifteen part series examining my lessons learned while instituting Agile concepts & practices.  I hope that these lessons help you on your journey to Agile nirvana.
 
Lesson 15: Execute Subsequent Sprints
 
With Sprint Zero (0) in your rear-view mirror, you’re now ready to execute the Sprints required to build your product. 
 
A Sprint typically begins with a two-hour, time-boxed Product Backlog “grooming” session.  Since your Product Roadmap is complete, your Product Owner should already be writing User Stories and appending them to relevant Epics.  User Story “grooming” is a continuous process executed by the Product Owner throughout the product’s lifecycle.  Grooming sessions are formal meetings that give the delivery team the chance to ask questions of the Product Owner about their User Story. Grooming sessions are supposed to occur during the Sprint, however, it is not uncommon for grooming sessions to be held in Sprint 0 or earlier.  Grooming sessions are attended by the Product Owner, anyone else the Product Owner deems as required, and the entire delivery team.  It may not be possible to discuss every User Story in the Product Backlog, therefore the team must endeavor to review this highest priority User Stories first; those the Product Owner would like to see released first.  Ahead of the grooming session, the Product Owner must provide draft acceptance criteria for those stories with the highest priority.  During the grooming session, the Product Owner will explain the User Story to the delivery team and participate in clarifying discussion.  During the course of the grooming session, user stories may be split and / or new stories written.  For each user story discussed, the acceptance criteria are agreed and the Product Owner confirms the story’s priority.  If required, the Scrum Master will schedule additional grooming sessions to ensure that at the very least, the stories expected to be included within the Sprint are reviewed.  Again, the goal is not to review every story in the product backlog, but rather to review just enough stories to fill the Sprint backlog.
 
Day 1 of your Sprint must include the Sprint Planning ceremony.  I recommend a two-part Sprint Planning session with both sessions time-boxed at two (2) hours each.  Sprint Planning sessions are attended by the Product Owner, anyone else the Product Owner deems as required, and the entire delivery team.  The Product Owner delivers a list of “candidate” User Stories that he / she wishes to have solutioned (ideally based on the product’s roadmap and priority).  The Product Owner verifies the priority of “candidate” User Stories, Acceptance Criteria is finalized and agreed, and Story Points are assigned.  Lastly, with an understanding of the team’s velocity, the delivery team will “pull” the Stories from the Product Backlog into the Sprint backlog that they believe they can deliver within the sprint.
 
Part 2 of the Sprint Planning session should also occur on Day 1 of your Sprint.  The Product Owner is not required to attend Part 2, but the entire delivery team must be in attendance.  Tasks for “pulled” User Stories are reviewed, augmented, finalized, and confirmed by the delivery team.  Story Points are confirmed for each Story.  The Scrum Master compares total story points for “pulled” User Stories against the team's velocity.  The delivery team will pull additional User Stories or push lower priority User Stories out of the Sprint.  Final User Stories are committed to the Sprint by the delivery team, and the delivery team develops their “Working Agreements”.
 
With Sprint Planning complete, the Daily Stand-Up meetings will begin.  Ideally, the Product Owner and the entire delivery team attend the Daily Standup, however, only personnel tasked with actually completing work are mandatory.  The meeting is time-boxed to a maximum of fifteen (15) minutes and the standard stand-up questions are asked by the Scrum Master of all team members.  A Kanban board for the Sprint is displayed showing User Story Tasks as they progress through the statuses: “To-Do”, “In-Progress”, "Blocked", "Cancelled", and “Done”.
 
At some point towards the end of the Sprint, the delivery team will conduct a demonstration of the user stories completed.  Demonstrations are attended by the Product Owner, anyone else the Product Owner deems as required, and the entire delivery team.  The Scrum Master will explain to the audience what the team committed to for this sprint and why those stories were selected.   The Scrum Master will spend a few minutes going over what the sprint metrics are and what they mean (e.g. the burn down chart and the team's velocity).  The Scrum Master will identify any stories that were not finished and why.  The delivery team will demonstrate to the Product Owner the shippable code and functionality that has been developed during the Sprint.  The Product Owner is encouraged to provide feedback, suggestions, and ask for changes to what has been done.  The Scrum Master will begin drafting applicable User Stories for the Product backlog based on the Product Owner's comments.  Finally, the Product Owner should give the delivery Team a view into what's coming in the next sprint, and show the updated roadmap, if available.
 
Not every Sprint will result in a release into a production environment for general availability, but every Sprint will result in working, shippable code.  Your release plan will define when a release occurs, whereas Sprint Planning defines what work will be completed in a given Sprint.  At the end of the Sprint, the delivery team must release their shippable code into appropriate repositories and / or environments.  This activity may include the submission of relevant change control (a.k.a. request for change) records and obtaining management authorization to release. 
 
The final ceremony that occurs during a sprint is the Retrospective.  Ideally this is completed on the last day of the Sprint.  The entire delivery team must attend.  The Product Owner’s attendance is not required and may be discouraged, depending on the team dynamic.  The retrospective is when the delivery team will examine themselves, their processes and tools, and make changes so they are a healthier team.  It is a private opportunity for the team to celebrate their work and inspect and adapt their own processes and interactions.  Some key questions to answer are:
 
(1) What did we do well in this sprint?
(2) What could we improve on in the future?
(3) What will we commit to improving in the next sprint? 
 
The Scrum Master will capture discussion points from these questions and ensure they are implemented in the next Sprint.

Lessons Learned from Agile Transformations: Part 14

12/18/2020

 
Fourteenth in a Fifteen Part Series

​By Chad Greenslade
 
I have often been asked about my lessons learned in delivering Agile transformations.  Below is the fourteenth in a fifteen part series examining my lessons learned while instituting Agile concepts & practices.  I hope that these lessons help you on your journey to Agile nirvana.
 
Lesson 14: Execute Sprint Zero (0)
 
As with any other project, you’ll want to ensure you have all materials procured, all contracts signed, environments built, tools selected, etc.  While this is occurring, your Product Owner should continue writing and grooming User Stories. 
 
Sprint Zero (0) is when all preparation work takes place to ensure your team can begin writing software free from obvious impediments such as environmental or procurement constraints.  To ensure your team can begin work on schedule, ensure your Sprint Zero (0) accomplishes the following:
 
  • Architecture: Once you have the Product Roadmap defined, an Architect is then able to define major system components such as application, database, and web servers, environments, programming languages, software development kits to be used, etc.
 
  • Contracts: If the product’s architecture requires you to contract with new vendors, you’ll need to get any legal documents drafted and signed during Sprint Zero (0), if they have not been done already.
 
  • Materials Procurement: If the product’s architecture requires you to procure materials, procurement activities must be completed during Sprint Zero (0).
 
  • Determine the Sprint Duration: Most teams have two (2)-week Sprints.  A Sprint should never be longer than four (4) weeks and no shorter than one (1) week.  If a project has significant risk, it is best to have shorter sprints.  The shorter the sprint, the less amount of time elapses between the sprint inspection activities, which allows management to course correct much faster.  You always want to find out sooner rather than later if your project is going “off the rails.”
 
  • Release Plan: Once the Sprint duration is determined, the initial release plan can be developed.  Using the Product Roadmap, lay out the Features, Themes, and Epics over a three-to-six month period.  Your Release Plan will now be connecting the Product Roadmap and the Sprints themselves.  A Release Plan can either be built from a feature or a schedule perspective.  A feature-based roadmap determines those features that make the most sense to release together, whereas a schedule-based roadmap picks a date in the future and then determines which features can be delivered by that date.  If you know that features contain specific risks, it is a good idea to attempt to release those first.
 
  • Determine the Team’s Beginning Velocity: Since this is a transformation initiative, your team will have no historical information from which to base its Velocity.  The Normalized Estimation Technique provides a one-time method for getting a team’s Velocity defined such that it can informatively pull User Stories from the Product Backlog into the Sprint Backlog.  For every full-time developer and tester on the team, give the team 8 points (adjust for part-timers).  Subtract 1 point for every team member vacation day and holiday.  Find a small User Story that would take about a half-day to develop and a half-day to test and validate, and call it a "1".  Estimate every other Story relative to that one using the Fibonacci sequence.  Never look back and do not worry about recalibrating.  Remember, a team's velocity is inherent to the team, and is not transferable to another team.
 
I do not recommend agile training be undertaken during Sprint Zero (0), but if there are members or your team that are unfamiliar with Agile, the training must be completed during Sprint Zero (0).

    Author

    Chad Greenslade studied Information Systems at the University of Texas at Arlington and graduated Magna Cum Laude.

    Archives

    December 2020
    November 2020
    October 2020
    September 2020
    August 2020
    July 2020
    April 2020
    March 2020
    January 2020
    May 2019
    February 2019
    January 2019
    December 2018
    November 2018
    August 2018
    July 2018
    June 2018
    May 2018

    Categories

    All
    Agile
    Atheism
    Biology
    Chad Greenslade
    Chemistry
    COVID-19
    DNA
    Evolution
    God
    HDTV
    IT Cost
    ITIL
    IT Profit
    IT Service Management
    ITSM
    IT Strategy
    Leadership
    Life
    Love
    Over-the-Air
    Project Management
    Religion
    Science
    Scrum
    SDLC
    Spirituality
    Streaming
    Waterfall

    RSS Feed

Powered by Create your own unique website with customizable templates.
  • About
  • Blog
  • On the Web