Bangalore India Talks About Scaling Scrum

by Jesse Fewell on August 5, 2010

NewImage.jpg

This week featured the latest gathering of Scrum prapractitioners in Bangalore. This free event drew a solid 50 participants for the second straight time, and featured some really smart technology workers. The group was about 50% developers, 25% testers, and 25% managers. I did get to do my standard presentation on Agile Contracts, but the broader theme for the day was “Scaling Scrum”. This was of great interest to me, since RippleRock is helping a large dotcom implement Scrum across two strategic pilot programs using 4 teams on 2 continents. Needless to say, I took copious notes below

Scaling Scrum

First off was Vibhu Srinivasa from Solutions IQ. People laughed out loud as he facilitated a team dynamics game. But what people came to hear were his points about using Agile techniques on really large projects:

  • Understand Why You’re Scaling – The point is not merely to have an official standard for managing work. The point is to create alignment across larger projects, to make sure people are on the same page about delivering on a business objective.
  • Understand What Scale Means – To help bring alignment to our own large group Vibhu offered this definition of large-scale agile projects: “A group of teams working together on a common product or project or portfolio”.
  • Well groomed backlog is required to scale Scrum. For a single team of 7 people, a poorly formed backlog will only impact that team. On a larger project of a dozen teams working on the same poor backlog of project work, then you’ve just scaled the associated pain and errors.
  • There are several ways to nest Scrum teams. In general you can have nested backlogs of increasing degrees of detail, but there needs to be a clear, singular owner of each product backlog.
  • Charter a Product Owner team, responsible to keep the backlog groomed and prioritized. In larger organizations, the Product Owner role can quickly get to be too much work for one person. Have relevant stakeholders meet as required, above and beyond any other meetings with the Scrum team.
  • Align the sprint schedules. Namely, it helps if everyone is working to the same deadline.
  • Use the Scrum-of-Scrums only to coordinate dependencies. The overhead associated with the Scrum-of-Scrums is best utilized less as a status meeting, and more of an impediment removal meeting.
  • Relentless Automation – Just scaling scrum management is not enough. You need continuous integration, low-cost regression testing, and  ”touch free” deployment.
  • Rotate ScrumMasters – Spreads skill and awareness of Scrum and alleviates anxieties about career path.
  • Ambassador Pattern – Fly people to their distributed counterparts for key meetings or even for an entire sprint . This help preserve team dynamic,  when individuals return to their home base.

Vibhu Srinivasan

 

Globally Distributed Agile Teams

Then, Rini van Solingen. the CTO of iSense Prowareness, joined the group over skype. He started off with describing the “30 meters principle”: When teams are distributed more than 30 meters apart, the communication frequency drops to near zero. So, it doesn’t matter if your 3 time zones away or 3 miles away, the real limit is 30 meters.

This is a bit of an obsession for Rini, who is working a research project at TUDelft called “Creating the virtual 30 meters”. In this research, he has found some best practices:

  1. If a single roof is possible, do it! Don’t distribute if it’s not absolutely necessary.
  2. First, deploy Scrum locally and effectively before working distributed.
  3. Assign Scrum roles explicitly. The Product Owner and proxy roles becomes even more critical.
  4. One team in one rhythm. Staff your regional teams with people from all other locations. This is the “ambassador pattern” described above.
  5. Meet. Teams are not built by themselves. You need to actively establish relationships by traveling to each other’s sites.
  6. Impediment removal and retrospectives are even more crucial. In fact, meet collectively for retrospectives (see previous item).
  7. Work at the customer location at least between 10-20% of the time.
  8. Personal mindset is crucial: “what did *I* do wrong? what can *I* do different? how can *I* help?”.
  9. Don’t focus on tools: discussion and interaction are more important.
  10. However, communication and awareness don’t happen automatically. Here, tools can help, but only if implemented with the right purpose in mind.
  11. Fail fast: improve empirically. Both success and failures are sources for learning.

 

Open Conversations

The day wrapped up with an open space session. A number of topics were suggested, but the top two were two key topics:

scrum-bangalore-open-space.jpg

 

  • Estimation: In this conversation, there was a lot of discussion about the expectations around estimates. Managers expect your estimates to be internally consistent, when in reality they aren’t. They also expect your actuals to match those estimates exactly, but in reality they were really just estimates. One suggestion was to begin using the word “forecast” instead of “estimate”. Doing so may emphasize the fact that the numbers are rigorous, but not iron clad.
  • Careers. Here, there was concern about the impact Agile roles and responsibilities have on your career. For example, if a developer takes the risk of helping lower-paid testers learn code-based automation, will that make him less needed? If a BA takes the risk of not writing all the details for all the requirements up front, how will her skill be judged? If we take the risk to move in the professional direction of Agile skills, is there a job market for those skills? The answers are not easy. If you work for bad managers, then they may punish you for doing the right thing. But then again, they’re probably already doing that. And really, the your career should not be based on a choice between Agile jobs or non-Agile jobs. Your career should be based on what makes you and your team most successful.

 

It was an eventful day. iSense does a really good job of organizing this. I look forward to the next one at the end of September.

  • Share/Bookmark

{ 2 comments }

Bad Requirements? Actually, That’s Your Fault

by Jesse Fewell on July 6, 2010

This is a reprint of my column in this month’s PM Network magazine. Click here, and then search for “The Agile Project Manager”

I’m growing weary of project managers whining about bad requirements. The truth is, no one can possibly be surprised. From research studies to high-profile disasters, we hear over and over that incorrect requirements and poor scope management are key reasons projects fail. If we know this is a recurring problem in our profession, why do we mindlessly continue engaging in the rote repetition of what doesn’t work? I’d like to share some suggestions to keep us from stumbling over the same mistakes:

Surrender the pipe dream of complete requirements.
There’s always going to be one dependency missed, one stakeholder we didn’t interview, one nuance hidden, one more thing we wished we had known. Don’t fall into the trap that more is better or you’ll never get started.

Always assume the initial requirements are wrong.
Sometimes the scope is inappropriately slanted toward one stakeholder or hasn’t been properly vetted. Sometimes the bulk of the requirements are actually “nice-to-haves.” Today’s project manager is expected to have the organizational savvy and facilitation skills to get to the root of these problems. To ensure that you yield the right priorities at the right time, take the initial scope statement as a starting point, then work with the sponsor to refine it.

Accept that all requirements change.
Traditional project management culture portrays change as a necessary evil, like traffic laws: If drivers did everything right, we wouldn’t need them. To mitigate the “risk” of change, we install intimidating change-control boards and financial penalties. But what if the scope you’ve been implementing for the last two years is no longer relevant to the market? Does it make sense to have your sponsor continue paying for what is now
essentially a useless deliverable? Not in my estimation. If we accept that our requirements are incomplete and incorrect, then we need to edit them to reflect reality. Indeed, A Guide to the Project Management Body of Knowledge (PMBOK® Guide) warns: “Because of the potential for change, the project management plan is iterative and goes through progressive elaboration throughout the project’s life cycle.”

Simplify your change-management approach.
Agile project managers explicitly embrace the value of responding to change and institute project policies accordingly. Start by implementing a contract structure that supports authorized change rather than penalizes it. At the start of each iteration, mandate a high-level yet thorough revision of scope priorities. If your sponsor has difficulty determining priorities, coach him or her through the tradeoffs. Once changes are accepted, re-baseline earned value metrics at least every three to four iterations to match the latest scope. And while you’re at it, proactively communicate the latest scope to all stakeholders.

If you consistently find your requirements getting you into trouble, do something about it. It’s your responsibility as the project manager to be adaptable to your sponsor’s needs. Stop taking the requirements for granted and start equipping your sponsor to make the right scope choices.

  • Share/Bookmark

{ 8 comments }

Agile Co-Founder Issues a Call to Action: Stop Bickering

June 13, 2010

As a project manager, a member of the PMI, and an Agile Project Management practitioner, I get yelled at a lot. PMP-certified project managers call me irresponsible for advocating the Agile approach to projects, and Agile practitioners call me a turncoat for collaborating with members of the PMI. It’s understandable that people who are used [...]

  • Share/Bookmark
Read the full article →

Scrum Gets Going In Bangalore

June 6, 2010

This past Sunday, May 31, 2010 saw the kickoff event for the Scrum Bangalore user group (photos available here). It was a 6-hour mini-conference that featured 2 speakers, and open-space, networking, and several prizes. Also in attendance were the Agile Bangalore user group, an online community led by Vinay Krishna. Rahul Sah Kicks Off The [...]

  • Share/Bookmark
Read the full article →

The 19 Keys to Successful Agile Projects

June 6, 2010

This past Sunday saw the kickoff of the Scrum Bangalore User Group in Bangalore, India (more on that later). At the meeting, Scrum expert Pete Deemer gave us these 19 nuggets of wisdom from his many years as an Agile coach for organizations across the world. Do it for the right reasons: Like Harry Potter, [...]

  • Share/Bookmark
Read the full article →