Football “Theater of the Absurd” feat. Defined Process

football_board
Defined process is one of two major models to control any process. It implies that everything is known from the beginning and nothing will change along the way. A waterfall project management model is based on it and is traditionally (been) used to manage various projects. The problem arose with developing complex systems (like software) where defined process is not appropriate. Now we know that a second major model, an empirical process control model (EPC), is a better fit for complex systems. This model uses change to build a better product. Agile development relies on EPC.

Despite agile development maturity and proven superiority compared to waterfall model, every now and then we mess with questions should we still use waterfall in software development for some cases. Keeping in mind non trivial software projects, my answer is always NO. In environment where change is likely to happen, we should always use EPC. Moreover, forcing defined process in complex circumstances is not only harmful, but could be ridiculous, too.

I was always impressed how some other industries are not effected by defined process at all, and use EPC by default. My favorite is sport.
For example, let’s try to imagine a football team preparations for FIFA World Cup. It is a real project with people, deadline, goals, etc. Right? In 1998, Croatian national team achieved a great success by winning bronze medal at FIFA World Cup in France. There were many great players there like Šuker, Boban, Bokšić, Prosinečki,… led by a charismatic football coach Ćiro Blažević (Ćiro is his nickname).
Now, let’s put them in a defined process and try to imagine big upfront planning like this:

Ćiro: “OK, guys. A plan is to win all three games in a group stage. It’s very important step toward gold medal.
Boban: “Excuse me, Boss, but shouldn’t we stick to short term goal to pass the gr…
Ćiro: “No! Listen, Zvone (Boban’s nickname), you’re a smart guy, but you know nothing about project management. It is my responsibility to derive a plan and your responsibility is to realize that plan. I planned every single detail for every game that we’re going to play.
Bokšić: “But, how did you plan all games when we don’t even know against who we’re going to play?
Ćiro: “Objection Boka (Bokšić’s nickname)! Maybe you don’t know against who we’re going to play, but I know. I know it because I did a very comprehensive analysis and planned other team’s games, too. It’s my job to know and to plan, and again, your job is to realize that plan.
Ćiro: “But guys, don’t be so unorganized. Let everybody do their own job, not other’s job. Do you have some questions from your area of ​​responsibility?
Players: “No Boss.

After a group stage, Croatia had 6 points and passed to a second round. They won against Jamaica and Japan, but lost against Argentina in a match with no significance. Ćiro called an emergency meeting.

Ćiro: “Guys, you screwed the plan. You wasn’t supposed to lose any game. That was a plan!
Šuker: “But Boss, we passed, who car…
Ćiro “No! We have to follow the plan. That’s what plans are for – to be followed.
Ćiro: “But, I have to admit, you’re not the only one who failed…
Team: ?
Ćiro: “I failed, too. Other teams screwed their games, so my original plan about our opponents is now dead. I should know it, but I failed…
Ćire: “But let’s go back to our case. Luckily enough, the game that we lost wasn’t in our critical path, so we still have a chance. Of course, that doesn’t mean that we can forget about that fail, it only means that we’re going to postpone consequences of it until the end of a tournament.
Ćiro: “BTW, Šuker, you’re not going to play next game, because it was planned to recuperate you for the next game.
Šuker: “But Boss, I feel fantastic! And I scored twice! Why I’m out now?
Ćiro: “Here we go again smart asses… remember the plan?
Team: “OK Boss…

Later on, Croatia “failed” to win a gold medal. They won “only” bronze medal and failed to realize a plan. Not realizing a plan implies a project was not successful.

Can you imagine such nonsense? Does this case sounds ridiculous to you? It is only a one-month project, so can you imagine how it would be with a whole season upfront planning? Indeed, it is ridiculous to use defined process in sports, so they never use it. They inspect and adopt before tournament, before game, during a game and after a game. They replan all the time. They never used defined process. They don’t even try to think to use it. EPC is natural to them.
Like in sports, EPC is natural in software development, too. We should stop questioning about that, and focus to deliver a value.

Coexistence Model between Traditional PMO and Agile Development

I know there is a lot of debate if coexistence between traditional PMO and agile is possible. A friend of mine usually say that being agile or not is pretty much the same as being pregnant or not – you are agile or you are not. Instead in this way, I like to think of this topic like agile is an art of possible. Sometimes is just not possible to adopt all agile practices, because of a thousands of reasons. At least is not possible in short time and for a whole organization.

A month ago I was involved in an initiative to establish such coexistence between traditional PMO and agile  development. It is a quite large organization where agile development grown bottom-up, so a number of development teams already practicing agile (mostly Scrum) for some time. Because of a good results, a consensus in high management resulted in initiative to better organize work between PMO (which is still organized traditionally) and agile teams. After a discussion, I proposed a model like this:

An idea is to enable agile teams to function as much agile as it’s possible inside large organization which is still mostly organized in a traditional way. So, let me explain this idea:

IMG_1171[1]

Every agile team is responsible for a single product (application). Notice that I did not say project, but product. Every agile team has Scrum master (SM) and Product owner (PO). So, this part is fully agile and use Scrum.

From the other side, there is a PMO. A PMO will designate a Project manager (PM) for every project they decide to start. PMO is influenced by stake holders, some boards etc. This is a traditional side of story.

So, where is the bond between these two sides? An idea is that PMs will work with all POs whose products are related to a particular project. PMs will influence POs to adjust their Product backlogs to fulfill project goals. Also, PMs will do all administrative project tasks and generally all job that they are familiar. At the same time, development team is isolated by SM and they do their job in an agile way.

Some early results of such approach are very good. A good thing is that only PMs had to modify their behavior, but only partially. Another important thing is to look at this model only as a step in a process of making all organization agile. Any other goal doesn’t make sense.