Scrum Log Jeff Sutherland

Scrum is an Agile development framework that Jeff Sutherland invented at Easel Corporation in 1993. Jeff worked with Ken Schwaber to formalize Scrum at OOPSLA'95. Together, they extended and enhanced Scrum at many software companies and helped write the Agile Manifesto.

Tuesday, February 20, 2007

A Good ScrumMaster is Hard to Find

A Zen master famous for his collection of wooden Buddhas once said, "Enlightened people are everywhere but a good wooden Buddha is hard to find!"

Really good ScrumMasters are hard to find because they get promoted to VP of Engineering or head of a business unit or run off and start their own company. Why? The math is simple. As soon as someone demonstrates s/he gets twice the results of anyone else in the company, management starts the promotion process. Because they are experts in leading cross functional teams, they can take on anything in the company.

So you have to recruit these people on the way up or get them in the middle of a career change when they will work for less. An excellent way to bring new leadership into the company and to get Scrum started at the same time is to pay a little more for a talented ScrumMaster and give them the first team. Or try recruiting a Director of Engineering level ScrumMaster to lead your Scrum of Scrums. This role must deliver releases of product on an accelerated schedule and needs broad experience.

I know a guy with over 15 years of experience at IBM that just became a Certified ScrumMaster and is looking for a consulting opportunity to build his ScrumMaster resume. Send me email if you have any interest.

Saturday, February 17, 2007

Kaizen Mind: Essential to High Performance Scrum Teams

Ko Sasaki for The New York Times. An instructor ends a class on auto maintenance. The program is part of Toyota's efforts to maintain quality in the face of rapid overseas expansion.

In the typical company where I do Scrum consulting there may be urgency around improving the software development process without any urgency about changing processes that are broken today. A company wide impediment list needs to be maintained and the top item on the list needs a remediation plan and action today, not tomorrow. Eliminating impediments is a primary role for the ScrumMaster who may need help from other parts of the company.

Avoiding complacency and acting aggressively requires "Kaizen mind." Toyota employees do not come to work today assuming nothing is broken. They feel that it is a crisis if they do not improve today by changing what they are doing so they do it better. There is no staying in the same place. Either you deteriorate or you move forward. Honesty, transparency, and trust are needed to surface and openly discuss impediments to progress. You cannot move forward without eliminating impediments.

A major focus of my ScrumMaster Certification courses is to instill "Kaizen mind" in participants. A CMMI Level 5 company did a retrospective on ScrumMaster's trained with this emphasis and found their results in terms of productivity, customer and developer satisfaction where better than those not receiving some "Kaizen mind" training. It's all about the mindset!

Tracking velocity of your Scrum teams is essential to successful planning and implementation. Improving your velocity requires acceleration! Toyota has discovered the secret sauce and will soon be number one in the world of auto manufacturing. They are still accelerating away from competitors. Scrum teams can help software companies do the same.

The ‘Toyota Way’ Is Translated for a New Generation of Foreign Managers
By Maring Fackler, New York Times, February 15, 2007

“There is a sense of danger,” said Koki Konishi, a Toyota general manager who heads the institute (the Toyota Technical Skills Academy in Toyota City). “We must prevent the Toyota Way from getting more and more diluted as Toyota grows overseas.”

It used to be enough for the culture to be transmitted by word of mouth among Toyota’s Japanese employees, on factory floors and around cafeteria tables. But Toyota outgrew these informal teaching methods and created the institute, which is so secretive the company would not allow a reporter to visit it, let alone sit in on any classes. Mr. Konishi said Toyota was building similar centers in the United States, in Kentucky, and in Thailand.

“Before, when everyone was Japanese, we didn’t have to make these things explicit,” Mr. Konishi said. “Now we have to set the Toyota Way down on paper and teach it.”

“Mutual ownership of problems,” is one slogan. Other tenets include “genchi genbutsu,” or solving problems at the source instead of behind desks, and the “kaizen mind,” an unending sense of crisis behind the company’s constant drive to improve.


Monday, February 12, 2007

The Managers Role in Scrum

Open Space hosted by Jens Ostergaard
Minneapolis, Nov 2006
Notes by Stacia Broderick

The purpose of this open space was to discuss the role of the manager in the scrum process. Jens told us that Scrum could be CMMI Level 5 compliant if a manager role were to be defined. By defining this role in the open space, we did not commit to a CMMI list per se; it was only an attempt to get some thoughts around the topic.

Jens opened the discussion by asking "What behaviors does a good manager display?" The group of ten attendees brainstormed and posted sticky note results (aggregated below) to the wall. After a silent grouping, the team began to discuss those behaviors. Most of the discussion centered around the fuzzy line between the scrummaster and a manager. There was agreement that managers handle 'external stuff' to the team, like contract negotiations and procurement. We also discussed the role that a line manager plays in an employee's personal and professional development, often in the form of coaching or assisting in HR-related issues. In matrixed organizations that contain both scrummasters and managers, often the scrummaster does not have the line of authority - or expertise - to handle these types of situations.

Then Jens led us through a discussion of identifying the role of the manager in the scrum process. The team came up with the following distinctions:

- (1) Provides organizational vision
- (2) Removes impediments
- (3) Assists with individual development
- (4) Challenges team beyond mediocrity while respecting team boundaries
- Helps individuals without sucking the responsibility out of the team
- Balances observer and contributor roles
- Gives individuals tools to be a great team member
- Coaches teams through conflict resolution
- Advocates for continuous improvement for teams and the organization at large
- Buys things for the team (manages budget)
- Provides the right environment
- Manages portfolio of projects

Jens then had us place a red dot next to the two most important roles that a project manager plays. Those designations are above in parentheses. Example, a (1) means that this was chosen as the most important role, (2) as the next most important role, so forth and so on.

Some notes around each:

1. Providing organizational vision: Often teams flail because there is no vision 'from on high'. Having this vision is important for team members to be able to relate their daily actions.

2. Removes impediments: The scrummaster is certainly capable of removing impediments, and we also stated the fact that a scrummaster often cannot remove them all. We felt that it was the manager's role in this process to remove escalated impediments from the team(s).

3. Assists with individual development: We all have managers who mentor us in professional and sometimes personal growth. We felt that this is an important role for the manager to continue to play. Not all scrummasters have the authority or expertise to help in this regard.

4. Challenges team beyond mediocrity...: This falls into the leadership realm. Bob mentioned that often teams will plateau after time. The principle of self-managed teams would say "let them be; let them find their own way." A principle of leadership, however, is to challenge teams. We discussed the fine line between challenging teams and taking away their ability to self-manage.

To summarize, a manager role would be like a 'ScrumMaster on steriods'- a person whose job it is to remove all escalated impediments for the team, take care of external stuff to the team, lead the team by challenging it, and assists direct reports with individual development and other HR-related challenges.

Jeff Sutherland's comments:
In a CMMI Level 5 company using Scrum, the manager's role must be defined. Working with my co-authors's (one of whom is a CMMI Level 5 auditor) we are working on the following -

CMMI Level 5 Requirement 2.4.10 Review the activities, status, and results of the Agile Methods with higher level management and resolve issues (GP2.10)

The purpose of this practice is to ensure that higher level management has appropriate visibility into the project activities. Different managers have different needs for information. Agile Methods have a high level of interaction, for example, Scrum has a Sprint Planning Meeting, Daily Scrum Meetings, a Sprint Review Meeting, and a Sprint Retrospective Meeting. Management needs are supported by transparency of status data produced by the Scrum Burndown Chart. This, in combination with defect data, can be used to produce a customized management dashboard for project status. Management responsibilities are (1) provide strategic vision, business strategy, and resources, (2) remove impediments surfaced by Scrum teams that the teams cannot remove themselves, (3) ensure growth and career path of employees, and (4) challenge teams to move beyond mediocrity. The list of impediments generated by the Scrum teams is transparent to management. and it is their responsibility to assure they are removed in order to improve organizational performance.