Flavors of Agile - DSDM
Categories:
Agile
Categories: Agile
| I'm going to keep it short today. At least that is what I am telling myself. Short is such a relative term to someone who can be as longwinded as me. The DSDM Agile Project Framework is a scalable "full project" approach to Agile (it emphasizes more than development) that is supported by a set of eight principles built upon:
…and further founded on an underlying ethos of common sense and practices. The principles are:
After having read the framework, I would think that if you are hesitant to adopt Scrum because it seems too unstructured, DSDM might be a good alternative for you. Keep in mind that I have never used it and have never spoken to anyone who uses it, so I am not speaking as an expert. However, I am experienced enough in the majority of the information, tools, and processes presented in the framework that I am comfortable saying that this is a good approach to consider when deciding which Agile approach to use. There, nice and short. And I'm having to force myself to not go back and add all the detail behind those two short lists. There is a lot of detail, and it's more than two lists, but if you have even minimal experience in Waterfall and Agile, you'll find very little that is new. What makes it unique is how the pieces are put together; it's more than just Scrum. There are things you would do on a Waterfall project that are not specifically called out in Scrum, but it's Agile. I'm starting to feel like a candy bar commercial… Hey, you got Agile in my Waterfall… Next week, I think I'll combine the last few flavors I've been thinking about into one post, so that I can get to scaling Agile a couple of weeks earlier than planned. |
Flavors of Agile - Crystal
Categories:
Agile
Categories: Agile
| Crystal is a family of methodologies that I have not been able to find a wealth of information about. I've found a few books by Alistair Cockburn:
…and there is a website, where Alistair Cockburn indicates that Crystal predates the Agile Manifesto: http://alistair.cockburn.us/Crystal+methodologies …but I haven't been able to find comprehensive coverage of all members of the family. There are several members of the Crystal family, with the intent to scale up from a small project to large, complex projects. The Crystal Family is divided as follows, with Crystal Clear being the smallest (1-6 team members) and, as best as I can tell, the largest is the last three, with Crystal Diamond and Crystal Sapphire including additional complexities, such as risk to human life:
I know, a link to wikipedia… this is not meant to be a scholarly article; please bear with me. Each member of the Crystal family is built on what is referred to as a 'genetic code' made up of:
Notice the use of the word "selected?" I find it interesting that, while there are several members of the Crystal family, there are few hard and fast rules. You are not expected to use each item in the list, above, on every project. Using the properties as an example, Crystal Clear only requires the first three. Furthermore, Crystal (the family) is not opposed to using principles and practices from other project management methodologies. As you dig in to Crystal Roles and Work Products, you'll find artifacts that you expect to see in a waterfall project, that don't get a lot of attention in some of the other Agile flavors. I wouldn't call it the perfect marriage of Agile and Waterfall, maybe more of an evolutionary step between Waterfall and more recently evolved flavors of Agile. I don't know. What do you think? |
Flavors of Agile - Lean and Kanban
Categories:
Agile
Categories: Agile
| Let me start by saying that I am not going to give you the history of the Toyota Production System (TPS). If you're familiar with it, great, you know what I'm talking about. If you're not familiar with it, you should read about it. Toyota provides several pages of information on both history and current practices of TPS that will give you context to the overview I will be providing. Even if you are not familiar with TPS, you may have heard of Lean and Kanban. You've probably heard them used together, more often than not. I would argue that they represent the original Agile approach, but I have not found any evidence that they were used for software development before Agile became a "thing." I think this may be, in part, because production processes do not directly translate into development processes. Using the book "Lean Software Development - An Agile Toolkit," by Tom & Mary Poppendieck, as a reference, Lean gives us the following (highly summarized and subjective, on my part) principles and tools for software development. I should warn you, some of this may seem counterintuitive at first glance, and could be difficult for people to accept without further discussion:
Kanban fits smoothly into Lean Principles, with the following principles of its own:
…as well as the following values:
Similar to Scrum, in Kanban, visualizing work is done with a board and cards. One of the primary differences is that Kanban emphasizes WIP, or the amount of work that the available resources can work on at any given time, as opposed to velocity - how much work can be completed in a time-boxed period. Here are some additional differences, as identified by VersionOne:
While this may change, I currently do not intend to spend a lot of time on hybrid flavors, but I will at least share some links. Here are a couple of Kanban hybrids you may, or may not, have heard about: I'll say this now, and try to remember to repeat it often as I post about agile. If you're going to adopt a flavor of agile, pick the one that fits your company culture best, to the best of your knowledge, and learn how to do it right. Once you have it down, apply the final principle of Agile:
"At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly."
Learn and adapt. Be agile, not just Agile. If you can't adopt a flavor of Agile, adopt as many of the principles as make sense for your organization. You're probably already following some, and can easily identify areas where you can improve. |
Flavors of Agile - Scrum and XP
Categories:
Agile
Categories: Agile
| Holidays and families… It's a good combination, and it's a good thing my writing deadlines are my own. I thought I would take a few posts to review the basics of some of the flavors of Agile. I'll start with Scrum and XP (eXtreme Programming). At its core, Scrum consists of the following: Roles:
Meetings:
Practices:
Artifacts:
I'm not sure that everyone will agree with me, but my perspective on XP is that is it basically Scrum from the developers point of view. Almost everything listed above is part of what XP categorizes as "Business Practices." XP also defines "Developer Practices"…:
…"Coding Practices"…:
…and Values that are in line with Scrum:
I'm not going to go into these, in depth, but it is worth noting that the first business practice of XP is to Add a Customer (Scrum's Product Owner), and that the Tracker role, XPs corollary to the ScrumMaster, is optional. Additional differences worth noting are that XP:
Personally, I think that Scrum and XP are almost interchangeable, and would work well blended together. You could be using a hybrid-Agile approach and not even know it. I touched on when to use Agile, previously. Once I finish discussing the flavors of Agile, I think I'll dedicate a post to Agile certifications. This is something of a personal interest to me, for reasons I'll describe in a moment. For the post, I'll focus on certifications related to the different flavors of Agile, as opposed to the Scrum certifications I am interested in. I'm currently a CSM and will be a CSPO in a couple of months, after I take the class. I'm hoping to be more involved with Agile projects at work so that I can become a CSP (Certified Scrum Professional) before too much longer. One of the career paths I'm considering is becoming a CST (Certified Scrum Trainer) and ultimately a CEC (Certified Enterprise Coach) which will allow me to certify coworkers as CSMs and CSPOs via coaching, not just through teaching classes. I'm not ready to do a lot of traveling to teach classes and coach companies, yet. I'd like wait until my youngest is out of the house before I do too much traveling. |
Okay, We're Agile. What Now?
Categories:
Agile
Categories: Agile
| I occasionally hear things that give me the impression that some people believe that adopting a flavor of Agile makes that company agile. I'd like to disabuse people of this notion. While a company is affected by its development practices, if all you do is adopt a flavor of Agile, it's not enough. The Agile Manifesto and the twelve guiding principles, which essentially represent agile values, must be shared by the whole company, not just IT. I would also argue that being agile is not the end goal; that it is merely an aspect of being responsive and, ultimately, resilient. Let's look at a few definitions. Agile
Responsive
Resilient
Being able to move, or respond to change quickly is the promise of Agile, and it needs to be coupled with Responsiveness to be successful. What good is it to be able to respond to change quickly if IT and the Business are going in different directions? You risk ending up with frustrated leaders who are unwilling to collaborate. I've seen shadow IT evolve and PMOs fail when organizations refuse to be Responsive and work together. Just looking at the definitions, it might not be clear how being Agile and Responsive are part of being Resilient. Try recovering from a negative impact to the business without being Agile and Responsive and see how you fare. Recovering quickly involves moving quickly, having good communication, and common goals, among other things. An organization might not return to its original size and shape as it recovers, but if the negative impact resulted in a change of priorities, that is not unexpected; the company may not have had the correct size and shape, in the first place. There are companies that work with other companies to help them become Resilient. I'm not going to advertise for them; I just want to promote the following:
I can't tell you exactly how to do this; it will be different for each company. Even if your company is already Agile and agile, it will probably take time; culture and process change are not usually quick. My point is that you shouldn't stop once your company becomes Agile; it's just a step toward becoming a more Responsive and Resilient organization. |





