Sunday, August 23, 2009

Enterprise scrums - A Tiered Approach (Implementation)

I want to continue on tiered discussion in this blog and specifically talk about the  implementation aspect of the tiered approach. In the earlier blog, I discussed the guidance process and how we are ensuring that all scrum teams are aligned towards a common goal. Let me take this a step further and see how we plan to integrate and demo the value-driven functionality at monthly boundaries that showcases each team's contribution towards Tier1 vision.


The guidance process gives direction and generates prioritized iteration backlog with sufficient details for scrum teams. Next step is to glue deliveries from these individual scrum teams together to have a viable end-to-end demo at monthly boundaries. To achieve this, we have setup integration-level scrum development team. This scrum team by itself does not develop any functional software, but it develops a framework to build and test the deliveries generated by feature and component teams for Tier1 goal. This scrum team also owns release management activities for the product being developed.


To achieve integration at the monthly boundary, we broke down the monthly sprint schedule for all scrums into 3 weeks of development with the last week of each month reserved for hardening phase. With this approach all scrum teams plan for 3 weeks worth of work and are done with their feature deliveries by end of 3rd week. In the hardening week, each scrum team verifies that they have met the "Done" criteria for their planned user stories - "Done" means all automated end-to-end integration tests passed, acceptance tests passed, functional specs and design updated on wiki, etc. 


During the hardening phase each scrum team also makes their deliverables available to the integration-level scrum for overall integration. If there are any hiccups during the integration testing, scrum teams makes themselves available to fix those issues.  An additional point to note is, integration is not just happening at Integration-level scrum, it's also happening between component teams and feature teams. As and when code is ready for integration, feature teams consume deliveries from component teams. Integration-level scrum is where all scrums deliver and everything comes together for end-to-end value-driven feature that customers value. 


To further align and ensure all teams are working in unison and bring transparency, we have daily Scrum of Scrum at Integration-level scrum with participants from all scrum teams. At this forum, we help resolve any team impediments as well as dependency issues.


This is the strategy we are using to align scrums and develop value-driven feature for our customers in enterprise environment with global teams. Are you using a different approach that worked for you? if yes, I would be really glad to hear your experiences.

1 comments:

oviya said...
This comment has been removed by a blog administrator.

Post a Comment