In the previous two parts (part 1, and part 2) we discussed the first six challenges we've encountered implementing Scrum as coaches with Xebia. In this last article, we'll discuss the meta-ScrumMaster role, cowboy behavior, and why agile is not easy.
As in the previous parts the setting is introducing Scrum in fairly large organizations which are mainly waterfall oriented.
#7 Lacking a Meta-ScrumMaster
Adopting Scrum could start from the top in the organization. For example, a CIO needs to handle more projects or shorten their durations and decides to give Scrum a try. But what we often see is that it starts more from the bottom up. Project managers or IT department managers want to improve their project(s) productivity.
When doing Scrum, impediments will pop up that need to be handled. Some of the impediments can be handled by the ScrumMaster and the Scrum teams. On the other hand, we have seen that there are always impediments that show up that are not within the reach of the team, project manager or even the department manager. So these ones often do not get picked up or removed by anyone and remain there during the course of the project. The team just tries to work around them and therefore will not be able to obtain their maximum velocity. Even worse, not being able to solve these impediments leads to local optimization at most. And these local optimizations of IT department managers are often not enough to improve the overall flow of value. Without improving that, the effort and time needed to transform the ideas of the marketing department, by the requirements, development, testing, and maintenance department is not improved and the business benefits are minimal.
So, we need to solve those organizational impediments. To handle those you'll need a senior manager to play the role of Meta-ScrumMaster. You need a person who benefits from global optimization and has the authority to get the right people together to tackle the impediment at hand. A Meta- ScrumMaster operates in the MetaScrum. In the MetaScrum meeting the Product Owners and other stakeholders come together to deal with the adoption of Scrum in the organisation. In these meetings the organizational impediments are discussed and actions set out to resolve them. You could say that in contrast to the ScrumMaster who operates more on the sprint and release level, the Meta-ScrumMaster is operating more on the product portfolio or business strategy level. The focus expands from local optimization to global optimization.
In the MetaScrum you should talk in ‘senior management parlance'. So try to make the impact of encountered impediments visible in terms of delivery time and ROI.
#8 Agile as an excuse for cowboy behaviour
Management has heard about this cool Agile thing. ‘Implementing an Agile method such as Scrum is supposed to fix many problems such as: inability to meet deadlines, improve quality, increase workers happiness, etc ...'
So it is decided to give Scrum a try. Management is convinced, some books were bought and we're good to go! But ... all that happens is that deadlines are still not met, documentation is no longer created, nobody bothers about architecture anymore at all and planning is completely out of the window ... what just happened?
The problem is pretty simple: Management gave the developers sort of carte blanche to forget about all the pesky stuff like plans, deadlines, design, and documentation and just start hacking away. Although scrum is a simple process and propagates principles like "just in time" and "just enough" does not mean you can just discard with any task you might not like as much as creating code. Good Scrum teams are very disciplined teams and do whatever is required to deliver business value with a minimum of waste.
So, how do we prevent this cowboy behaviour from happening? Make sure that you start changing practices or deliverables after a problem or inefficiency becomes clear. Do not throw away things upfront. By doing Scrum inefficiencies, problems and software quality issues surface pretty quickly! Don't try to do pre optimization.
Also make very sure that everybody gets the concept of build-in quality and that self organizing teams do not mean: "We can do whatever we want". Assess critically the deliverables you create during the sprints and how minimal any such deliverable can be.
#9 Thinking agile is easy
Using the Scrum practices gives you some benefits really quickly. However, it is very hard to get the full benefits if you fail to grasp the bigger picture.
There is difficulty at various levels. At the management level the difficulty has to do with a new way of managing. Letting go of the old command and control structures is very hard especially if you do not understand the agile way of dealing with the issues you have. At the level of creating software a whole new set of practices is often needed. You'll have to alter you current practices and apply a set of new practices.
People end up with lots of questions like: How are you going to handle planning and estimating? How do we forecast? How do you manage agile contracting? Can't we fix the deadline? What about architecture, does it just emerge all by itself? How can we possible do requirements, development and testing at the same time? Don't be silly!! How do I measure it and how do you prioritize requirements by value? And then there is this Plan-Do-Inspect-Adapt thing, how should we do that? Isn't doing Agile more expensive?
Failing to address such questions will result into people slipping back to their usual way of working when the pressure rises. The first thing we see is a drop in quality and testing effort. Also the command and control way of managing steps right back in. As a result moral drops, velocity drops even more, the project gets cancelled and the Scrum adoption gets more complicated.
What can you do about it? Learn from other people's mistakes. You can prevent yourself from making too many big mistakes if you have people who already made them. You can greatly benefit from coaching at various levels. Having an agile champion in the organization, evangelizing agile, doing workshops, coaching ScrumMasters and so on is a key factor in successfully adopting Scrum. Equipped with coaching at the various levels and a meta-ScrumMaster you'll have the best chances of adopting Scrum successfully.
With this last part we have come to the end of the three part series. We think that you can use the presented challenges as a sort of reference guide when implementing Scrum. Whether you are in the first stages of adopting Scrum or you are doing Scrum for some time now and want to take the next step, the presented challenges can point you in the right direction for identifying and handling your own.
Implementing Scrum is really great to do and will provide benefits fast, even though there are plenty of challenges to address (lots more then just our top 9). Most important here is to keep track of the bigger picture. It is about values and principles and creating a constantly learning and adapting organization.
About the Authors
Cesário Ramos is a Senior Consultant in Agile methodologies and Enterprise Java at Xebia. He has coached various projects at telecoms, financial and governmental institutions using popular methods including Scrum, XP, FDD and UP.
Eelco Gravendeel is an consultant for Xebia with the unit Xebia Agile Consulting. Eelco has started out his career as a software developer. Later moved on to become a team leader and then became the manager of a Software Development department. During this period he implemented Scrum the first time. Having tasted the Agile fruits he then moved on to become a Consultant and Project Manager. In this position he coaches departments and organizations to implement Scrum and Agile practices or manages Agile projects.