Coding Coding Coding - Keep That Dev Team Coding!

Submitted by matthew on Wed, 2011-12-07 22:07

In the first two posts in this series I wrote about the planning days at Examiner.com and how those planning days set up the beginning of the code sprint. I also discussing the ancillary activities that set us up for the next timebox - locking down the priorities for the next time box.

Today, Day 3, the coding portion of the sprint begins.

The scrums started out by reviewing the salmon stories (salmon are stories that still need more information to be actionable) in the Google spreadsheet. Each story, as clarified was turned yellow - indicating the team in committing to completing the effort to complete that work. After these stories have been reviewed and clarified, the different groups are tasked with different tasks.

The morning began with three scrums. Each scrum represents a practicing unit that includes:

A Project Manager

A QA Person

A Product Manager

Developer(s)

Themer(s)

Code Reviewer

Theme Reviewer

Release Manager

There is some overlap between the scrum teams - but we try and keep the units as separated as possible.

Developers and Themers
coding coding coding

QA Folks
The QA team works on building test cases to support the next period of the timebox. They take part in meetings, as needed, in the development of use cases and review of artifacts for the next timebox.

Reviewers
The reviewers start to be fed features to engage in code review on. If code passes - it moves to the next development step. This could be theming or it could be Manual QA. If it is ready for QA it is pushed to staging for functional testing.

Release Manager
pushing pushing pushing

Product Managers
Product managers are responsible for delivering the prioritized list for the next timebox today (Day 3) and begin to work through writing user stories for the next timebox. They are also responsible for answering questions about user stories in the current timebox. Any discovery for two timeboxes out and beyond is happening as well.

Project Managers
Project Managers act as defense during this period of time. They are responsible for clearing blockers and preventing the development team from being distracted by tasks outside of directly programming new features, enhancements, and attacking the defect backlog. During this time the Project Managers are also working with the Product Team to develop user stories for the next timebox. The Project Managers are also socializing updates, considering requests, and trouble shooting problems during this period in the spirit of keeping the development team from being distracted.

What Else?
The day also included reviewing processes that were identified as needing adjustment during the previous retrospective. I, personally, worked on setting up meetings with various parties to support future development tasks including a potential upgrade to Open Atrium. We use Open Atrium as our Intranet for Examiners (our writers). We reviewed our defect backlog to start scheduling the highest priority bugs into the current timebox. People in the company make use of this time to discuss potential approaches for new features. Discussions with the Project Management team direct new features towards contributed modules as much as possible. Plans may start for code reviews on contributed modules that might be used in the next time box.

The take away is this - the developers, themers, testers, and reviewers are all focused on what we are developing now. The focus of the product team is starting to move strongly to the next time box. Project management is straddling these two different sets of activities while herding the collective cats.