Agile Zone is brought to you in partnership with:

Jurgen Appelo calls himself a creative networker. But sometimes he's a writer, speaker, trainer, entrepreneur, illustrator, manager, blogger, reader, dreamer, leader, freethinker, or… Dutch guy. Since 2008 Jurgen writes a popular blog at www.noop.nl, covering the creative economy, agile management, and personal development. He is the author of the book Management 3.0, which describes the role of the manager in agile organizations. And he wrote the little book How to Change the World, which describes a supermodel for change management. Jurgen is CEO of the business network Happy Melly, and co-founder of the Agile Lean Europe network and the Stoos Network. He is also a speaker who is regularly invited to talk at business seminars and conferences around the world. After studying Software Engineering at the Delft University of Technology, and earning his Master’s degree in 1994, Jurgen Appelo has busied himself starting up and leading a variety of Dutch businesses, always in the position of team leader, manager, or executive. Jurgen has experience in leading a horde of 100 software developers, development managers, project managers, business consultants, service managers, and kangaroos, some of which he hired accidentally. Nowadays he works full-time managing the Happy Melly ecosystem, developing innovative courseware, books, and other types of original content. But sometimes Jurgen puts it all aside to spend time on his ever-growing collection of science fiction and fantasy literature, which he stacks in a self-designed book case. It is 4 meters high. Jurgen lives in Rotterdam (The Netherlands) -- and in Brussels (Belgium) -- with his partner Raoul. He has two kids, and an imaginary hamster called George. Jurgen has posted 145 posts at DZone. You can read more from them at their website. View Full User Profile

Three Levels of Control (Example)

06.08.2009
| 1674 views |
  • submit to reddit
In my last post I told you about the three levels of control for managers. I didn't have much time to go into details then, and it was no surprise to see several readers asking for specific examples. I am glad to oblige now, because like you I'm also trying to figure out how these ideas would apply to my daily business.

Let's review the three levels again:

  1. Adjustment of System Performance (in response to a control signal)
  2. Adjustment of Control Setpoint (select desired performance level)
  3. Selection of Control System (decision how to manage performance)

As an example assume that your development teams are facing quality problems in their code due to lack of professional practices, and as a manager you want to do something about that. (Of course, this is just a theoretical exercise, right?) Here's how different types of managers (separated in leaders vs. rulers) could approach such a problem:

A level 1 leader would pick the best tools for unit testing and refactoring. He would select and buy the best books, organize some coding dojos with the team, and he would coach the team members daily, teaching them how to perform as it is expected of them. He might also buy a fluffy rabbit hat, and anyone who caused problems would wear it for day.

A level 1 ruler would not necessarily be leading himself, but he would be judging the team's day-to-day activities relentlessly. He could prescribe in detail what the Definition of Done must look like. He could refuse a vacation request for someone who made a complete mess with untested code. And he might order that the fluffy rabbit hat is replaced by real tar and feathers.

Level 1 is about making sure that people respond correctly to the required performance level. It is about making daily choices for the team: what to do, and what not to do. Many teams need level 1 control, because they lack the experience and skill to make all these choices themselves. However, for managers it is best when they're able to relinquish that control to the team. When the team has reached a certain level of maturity, and is able to self-organize and make its own choices, the manager steps up to level 2...

The level 2 leader would not care about which tools, books, and coding sessions to choose. She just concerns herself with questions about the right performance levels: Do we implement unit-testing first, and TDD (= more difficult) later? Do we start low-profile, with the easiest projects (= low impact)? Or do we adopt a big-bang approach (= high impact)? Or maybe postpone these topics and ask the team to implement automatic builds first?

The level 2 ruler would demand that the team performs some exams, and acquire certificates, as proof that they've mastered these topics and are able to apply them in projects. He could require that every team feeds their daily build status into his digital dashboard, and a lack of status or continuous sequence of red lights on the dashboard would see the team punished with the most horrible pizza toppings.

Choco

Level 2 control is about making sure that the team understands what the desired performance level is. All teams need such control. But if the team is very experienced and high-talented, this type of control could be an insult to their craftsmanship. They already know what's needed to produce high-quality code. And you could relinquish control even further, and step up to level 3...

The level 3 leader does not concern himself with specifying performance levels. He cares about the what, not the how. Is increasing code quality really our highest concern right now? Maybe we must focus on new platforms, and leave our messy legacy code for what it is? Or maybe we must teach our dyslectic mandrills to behave as real people first?

The level 3 ruler has the easiest job of all. She just fires anyone who annoys her. She kills internal projects, and introduces new ones. She decides whether to benchmark with CMMI or ISO 9001, or (when she's really smart) she just ignores the whole industry and devises a company benchmark of her own. Something that includes profit. And product reviews. And cheesecake.

Level 3 control is about selecting what it is that needs to be controlled. There are so many things to choose from, and figuring out what the control system must be is the most important choice of all.

True, the differences between the three levels (and the differences between leading and ruling), are sometimes hard to see. The world is not black and white after all. It's more of a mucky brown with some black-ish and white-ish tints. But I believe this arrangement is helping me in better understanding what to control myself, and what to relinquish to others.

Maybe it helps you too.

References
Published at DZone with permission of its author, Jurgen Appelo. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Tags: