Cognizant Technology Solutions India Private Ltd, Senior Manager - Projects
November 2009 - Present, Chennai, Tamil Nadu, India
Joined Cognizant in the year Nov 2009 and from there on worked on the projects in domain like Life Sciences, Logistics and currently in Healthcare.
My experience with Agile started way back in Feb 2010 with one of the major Logistics client. i played the role of scrum master from offshore and was responsible for running a scrum team. The project was kickstarted initially to come up with our product backlog by gathering requirements from POs, SAs in Sprint 0. Later on, after 2 months, the project was shelved.
Again my experience with Agile started with my project in healthcare serving one of the global healthcare provider in USA from Apr 2010.
Drivers for going towards Agile
Client's situation was to implement their member portal with latest intutive design along with latest technologies to be on the radar and noticed by the consumers and to become one of the leaders in the healthcare industry
Client's requirement was to deliver the portals quicker, faster with iterative based requirements, with limited availability of Client’s SMEs, frequent business changes in requirements and priorities drove Client to go for Agile
Since client need is to have frequent releases that needs to reach out to the end users, client opted for Agile and they approached Cognizant.
The project started off with a 20 member team completely at client site. Initially, Agile training was provided by a CSC from Cognizant to the client stake holders and to the developers. We started off with a 4 scrum teams with 5 members in each team. Sprint duration initially was 2 weeks. Later on with lot of dependencies from other stake holders, increased the Sprint duration to three weeks.
Later on, with the changes in the framework / design of the project, we started off with a distributed agile team at offshore with a single scrum team focussing on refactoring of the components. After we gained experience, slowly the teams got extended and currently we have 7 scrum teams with multiple locations one at client site in USA and another two being from India, one at Chennaia nd another one at Coimbatore.
By showcasing process improvements, we showcased year on year productivity improvement of 10% on the velocity.
Daikibo is our large-scale Agile/Scrum framework. Daikibo states that we should separate cross-functional teams and bifurcated responsibilities (a producer/consumer model) operating in an incremental/iterative pipeline approach, following Agile principles with Scrum. The teams will be organized in three areas: concept team, delivery team and the system integration test team. The concept team is responsible for the story production/generation, the delivery team will consume the stories and the system integration test team will validate the stories.
My Roles and responsibilities
I played the role of a scrum master for the refactoring team when I was at client site from june 2010 till Dec 2011. During that time, I was responsible for conducting daily stand ups with the team at offshore, gathering requirements as part of refactoring and conducting sprint planning to commit the user stories for that sprint, conducting sprint reviews with client stake holders and retros with the development team.
Later on, after I moved to offshore, i played a scrum master role for 3 teams by working with each team individually on their status, removing the road blocks for them by coordinating with my onsite counterpart, participate in scrum of scrums, daily stand ups, sprint planning and review from offshore during onsite morning time. In between sprints, conducted the sprint grooming sessions for the next sprint by doing estimation for the stories that is ranked in the product backlog. reviewing each story for the dependency and take them up for estimation for the work to be done in the next sprint.
Responsible for sending metrics like burn down chart and velocity chart and also continuously monitoring the RALLY tool for the burn down of the capacity entered during the first day of the sprint. Based on the capacity entered, work will be allocated and stories and tasks for the stories will be created on the first day of the sprint. usually, duration of the sprint planning will be 4 hrs and we have 7 sprint teams with each team consists of 4 members at onsite and 4 members at offshore.
This project is currently ongoing and we are in the 64th sprint with sprint duration of 3 weeks and release for every 2 months.
Being a scrum master for distributed Agile team, being remotely placed at offshore, I make sure, we collaborate with onsite Scrum teams through webex, conf call, video calls and through IM to resolve any queries that arise on the work we do during a specific sprint
We focus continuously on development discipline like Peer Code reviews, code formating tools, following code governance standards etc
Teams Support Delivery
1. Architecture & technology
3. Service integration
4. QA SIT & regression
1. Entire Scrum team is involved in the estimation planning
2. Sizing will be done relative to another one and sizing will be done based on the units of complexity rather than on time.
3. Sizing is done in the emasure of User Story points
4. Pseudo-Fibonacci series is used for sizing each story
5. Higher the complexity of the story will lead to splitting of stories into smaller stories
6. Stories are estimated for complexity, duration and uncertainty
Critical Success factors
1. Collaborative approach – ‘We’ as against ‘You’ vs. ‘Me’. Even Concept and QA teams contributed to better code quality by constant interaction with Development team. Team was driven by a single vision of delivering quality product to the end users at quick time
2. Effective Defect Management
Triage meetings happened to bring the concept team, development and QA on the same platform for discussing current or potential defects
QA focussed not only on finding bugs, but also ensured that development team is more alert while coding as they share the sanity checklist ahead of development
3. Code Quality
Peer code review
Periodic smoke testing on the lower environments
As part of continuous process improvements, we called in a CSC from Cognizant to do an assessment. THe CSC did assessments of Agile policies and processes being followed in various scrum teams which started later last year and it is continuing and will go for further two months.
Findings of Agile Coach
1. Team with ability to adapt to change
2. Daily Stand up meetings scheduled and stick to the time slot of 15 minutes
3. Development team individuals with whatever it takes approach to make delivery successful
4. Desire to build the product that client needs
5. Strong functional SME knowledge
6. Good synergy between limited business stake holders and delivery teams / leadership
To bring in further improvements
1. Role-based Agile training to reinstate process and fundamentals
2. Introducing or customizing Agile frameworks
3. Configuring/re-configuring and enabling tools
4. Enhance the existing processes & tools to capture & report metrics
Agile Practices Used – Best practices followed
1. Team is cross trained by working on different modules and in different scrum teams. This makes the team take up any new tasks which saw a successful release whenever release is planned
2. Productivity Improvements incorporated by having automated build using Maven along with bamboo, having junits along with PMD, Check style to improve the code quality. Also Code reviews ensured defect free product which helped the product to reach faster to the marketa nd also improved the over all velocity of 10% YoY
3. Scalable Agile model by having dedicated agile scrum sprint team at offshore with a presence of SA at onsite to coordinate on the stories. With this model, was able to successfully deliver for teh release planned by having a 5 mmber small scrum team focussing on the deliverables.
1. Faster time to market with shorter release duration
2. End User specific enhancements competitive to their peers in the healthcare industry
3. Modified Agile Development with priority for freezing User Stories
4. High performing app with larger user base. Adoption rate has increased many fold over a period of 2 years
1.Major releases every 3 months and interim releases every 1 month made sure Client’s portal stay ahead of competitors with enhanced product features & increased adoption rate by end users
2. 10% improvement in velocity YoY through Modified Agile model ensured faster time to market
3. Having co-located development team along with business SMEs enabled Client’s business team to showcase the enhanced version to the end users within shorter duration
1. Periodic Agile assessments made sure correct Agile model is followed that benefitted client to understand the intrinsic nature of the Agile development model to deliver better
2. Knowledge sharing sessions across the teams ensured better understanding of the modules and reduced the wrap-up time
3. Metrics driven Project Management & Status tracking through ALM tool using Rally
4. Synergy between limited stakeholders and delivery leadership gained momentum in delivering the user stories for the planned releases
Peak Team Size of 70 with onsite 33 and offshore 37.
Benefits to client
1. Sprint-wise demos ensured on-going feedback from business
2. Client’s business team in turn has been able to showcase progress to their customers and generate feedback to improve the user experience, which is the primary objective of every release of the Program
3. Co-location and collaboration across business and IT teams contributed to significant increase in velocity
4. “Offshore” resources leveraged and distributed Agile was followed