Agile Awakenings and the Rules of Agile
- by Robert May
For those that care, you can read my history of management and technology to understand why I think I’m qualified to talk about this at all. It’s boring, so feel free to skip it. Awakenings I first started to play around with the idea of “agile” in 2004 or 2005. I found a book on the Rational Unified Process that I thought was good, and attempted to implement parts of it. I thought I was agile, but really, it wasn’t. I still didn’t understand the concept of a team. I still wanted to tell the team what to do and how to get it done. I still thought I was smarter than the team. After that job, I started work on another project and began helping that team. The first few months were really rough. We were implementing Scrum, which was relatively new to everyone on the team, and, quite frankly, I was doing a poor job of it. I was trying to micro-manage every aspect of the teams work, and we were all miserable. The moment of change came when the senior architect bailed on the project. His comment to me was: “This isn’t Agile. Where are the stand-ups? Where are the stories?” He was dead on, and I finally woke up. I finally realized that I was the problem! I wasn’t trusting the team. I wasn’t helping the team. I was being a manager. Like many (most?), I was claiming to be Agile and use Scrum, but I wasn’t in fact following the rules Scrum. Since then, I’ve done a lot of studying, hands on practice, coaching of many different teams, and other learning around Scrum, and I have discovered that Scrum has some rules that must be followed for success, even though the process is about continuous improvement. I’ve been practicing Scrum right for about 4 years now and have helped multiple teams implement it successfully, so what you’re about to get is based on experience, rather than just theory. The Rules of Scrum In my experience, what I’ve found is that most companies that claim to be doing Scrum or Agile are actually NOT doing either. This stems largely because they think that they can “adopt the rules of Agile that fit their organization.” Sadly, many of them think that this means they can adopt iterations (sprints) and not much else. Either that, or they think they can do whatever they want, or were doing before, and call it Scrum. This is simply not true. Here are some rules that must be followed for you to really be doing Scrum. I’ll go into detail on each one of these posts in future blog posts and update links here. My intent is that this will help other teams implementing scrum to see more success. Agile does not allow you to do whatever you want A Product Owner is required A ScrumMaster is required The team must function as a Team, and QA must be part of the team Support from upper management is required A prioritized product backlog is required A prioritized sprint backlog is required Release planning is required Complete spring planning is required Showcases are required Velocity must be measured Retrospectives are required Daily stand-ups are required Visibility is absolutely required For now, I think that’s enough, although I reserve the right to add more. If you’re breaking any of these rules, you’re probably not doing Scrum. There are exceptions to these rules, but until you have practiced Scrum for a while, you don’t know what those exceptions are. Breaking the Rules Many teams break these rules because they are the ones that expose the most pain. Scrum is not Advil. It’s not intended to mask the pain, its intended to cure it. Let me explain that analogy a bit more. Recently, my 7 year old son broke his arm, quite severely (see the X-Ray to the right). That caused him a great deal of pain. We went first to one doctor, and after viewing the X-Ray, they determined that there was no way that they’d cast the arm at their location. It was simply too bad of a break for them to deal with. They did, however, give him some Advil for the pain and put a splint on his arm to stabilize the broken bones. Within minutes, he was feeling much better. Had we been stupid, we could have gone home and he’d have been just as happy as ever . . . until the pain medication wore off or one of his siblings touched the splint. Then, all of that pain would come right back to the top. Sure, he could make it go away by just taking more Advil and moving the splint out of the way, but that wasn’t going to fix the problem permanently. We ended up in an emergency room with a doctor who could fix his arm. However, we were warned that the fix was going to be VERY painful, and it was. Even with heavy sedation (Propofol), my son was in enough pain that he squirmed and wiggled trying to get his arm away from the doctor. He had to endure this pain in order to have a functional arm. But the setting wasn’t the end. He had to have several casts, had to have it re-broken once, since the first setting didn’t take and finally was given a clean bill of health. Agile implementation is much like this story. Agile was developed as a result of people recognizing that the development methodologies that were currently in place simply were ineffective. However, the fix to the broken development that’s been festering for many years is not painless. Many people start Agile thinking that things will be wonderful. They won’t! Agile is about visibility, and often, it brings great pain to surface. It causes all of the missed deadlines, the cowboy coders, the coasters, the micro-managers, the lazy, and all of the other problems that are really part of your development process now to become painfully visible to EVERYONE. Many people don’t like this exposure. Agile will make the pain better, but not if you remove the cast (the rules above) prematurely and start breaking the rules that expose the most pain. The healing will take time and is not instant (like Advil). Figuring out what the true source of pain and fixing it is very valuable to you, your team, and your company. Remember as you’re doing this that Agile isn’t the source of the pain, it’s really just exposing it. Find the source. My recommendation is that ALL of these rules are followed for a minimum of six months, and preferably for an entire year, before you decide to break any of these rules. Get a few good releases under your belt. Figure out what your velocity is and start firing as a team. Chances are, after you see agile really in action, you won’t want to break the rules because you’ll see their value. More Reading Jean Tabaka recently published a list of 78 Things I Have Learned in 6 Years of Agile Coaching. Highly recommended. Technorati Tags: Agile,Scrum,Rules