Agile's Dilution and Evolution: An Interview with Jeff Morgan

[interview]
Summary:

In this interview, LeanDog cofounder Jeff Morgan talks about both the current state of agile and how we can shape its future. He digs into the different ways that people are watering it down, as well as the possibility for some other methodology to break out in the near future.

Josiah: Today, I’m joined by Jeff Morgan, the chief technology officer and cofounder of LeanDog. Jeff, thank you very much for joining us.

Jeff: You’re welcome.

Josiah: First, could you tell us just a bit about your experience in the industry?

Jeff: Sure. I’ve been in the IT industry for about twenty-five years. More specifically, I helped found LeanDog about eleven years ago. For the past eleven years, I have been doing agile coaching. I’ve spent a lot of time coast to coast working with potential teams or teams that want to learn to be agile. A lot of my focus has been on the technical practices, things like test-driven development, pair programming, working with developers, and working with testers. I’ve got a lot of work with acceptance test-driven development as well.

Josiah: Your agile development key note, “The Future of Agile: Dilution, Calcification, or Evolution?” is going to dig into the past, present and future of agile. You bring up the point that agile might be watered down compared to the original vision. Could you give just a few examples of why you think that way?

Jeff: There are new methodologies coming out or new variations of some of the traditional agile methodologies that are making statements like, “it’s okay if we don’t deliver working software every sprint or every couple of weeks.” That’s okay because we’ll just have a hardening phase at the end of it. They’re saying things like we don’t need to incrementally plan. We’ll create a planning period of time, like set aside a week or two to do planning. This just goes against and goes away from some of the principles that were in the original Agile Manifesto.

Josiah: As we know, agile was started by a small group. With such a wide audience today, was there any way it could’ve moved forward on unaltered or along the original creators’ ideal path? Did it have to adapt in order to grow?

Jeff: Agile is all about adapting. We know that agile says that we should create this culture of continuous improvement, and that means that whatever the original founders came up with, we’re going to continue to improve upon it. The improvement comes from the practices that we do. A lot of the practices that we’re doing now weren’t thought of when the original founders wrote the Agile Manifesto. What I will point out is that the manifesto actually doesn’t talk about practices. It talks about values and principles. Those are things that probably shouldn’t change.

Actually, how we achieve those values and principles might change, but the principles themselves, the idea that the customer is the driver, the customer steers the team to deliver the quality software, the values that we deliver working software in short durations, and things such as this. I don’t think those should change. The practices absolutely will continue to find new ways and better ways of building software.

Josiah: Do you think the manifesto has changed? Would you argue that what shouldn’t be changed has begun to alter? Do you think that’s one of the core problems?

Jeff: I believe one of the core problems is that we’re getting away from a lot of the original vision. You mentioned that it was created by a small group of people. They were mostly developers. In fact, all of them but two were developers. It was started by developers to help us find ways to build software better. What’s happened is we’ve gone through a period of time where management has taken over it, and has guided it down various paths and gotten it away from the whole idea that we work with customers, we adapt a change and such. What you see now is a lot of agile methodologies.

We’re still holding on to this whole idea that we should be able to create a big scope, and create a deadline and be able to deliver on that. If the teams don’t deliver on that, we pressure the teams and continue to push them to make that “commitment” or obligation. I don’t think that we should be changing in those perspectives.

Josiah: Who are the groups that are taking a stance against the changing nature of agile, and what have they actually been doing to stop it?

Jeff: A lot of individuals … I don’t that there necessarily is a group per say that has taken a stance, but a lot of the online community, a lot of agile leaders have been blogging about what’s happening and coming up with alternatives and solutions for that. I know that a lot of the mailing lists are very abuzz with talks about this. There was some talks a while ago about a bunch of people meeting at the LeanDog office in Cleveland to have a discussion around the state of agile, and some of the most recent happenings, and to try to talk about it but that hasn’t actually materialized yet. There’s not really a movement or a group that’s doing this. It’s just a lot of individuals who are spot leaders in the agile community or speaking up about it.

Josiah: Like you mentioned, there are individuals coming out that are talking about this, and talking about what can be done, but do you think people are often hesitant to challenge ideas like agile since they’re so established and have such a proven positive impact?

Jeff: I don’t think these people are challenging agile. I think what they’re doing is challenging what a lot of newcomers to the community are saying is agile. What we have again is we have this solid tradition of what it is and what it should be. What’s happening is in order to make it very palatable to large corporations, it’s getting incredibly watered down. The people are speaking out against that whole approach of watering it down. We have to stand true to the original principles that are set forth in the actual manifesto. If we’re not, if you don’t want to do that, that’s fine, but don’t call it agile because then you start to cheapen the word.

Josiah: What about the actual future of agile has you the most excited, and subsequently what has you the most worried?

Jeff: What has me the most excited is that I’m starting to see a reemphasis on technical skills and craftsmanship. As I mentioned, management took over agile some time ago, and really took it in directions that I personally didn’t like. What you saw, you saw the development community walk away from agile, and went out and created a craftsmanship movement where they said we don’t really need agile any longer.

The encouraging thing that I see right now is that’s starting to change. Companies are starting to realize that we have to have these engineering practices in place, and that we have to have craftsman in place if we expect to build and deliver a quality product rapidly. I see a slow, steady resurgence of focus on the engineering practices so that has me very encouraged.

What has me discouraged? Like I said, some of the newer methodologies that are coming out that are not adhering to the principles. Basically, what they’re doing is they’re acknowledging some of the problems that exist in very large companies. They’re saying, okay you had those problems, it’s okay. You don’t have to change. You can keep that, and you can still be agile. I don’t necessarily agree with that. I think that we have to change the cultures that exist in these companies. I think we have to change the way that teams are treated. We have to change the way that we interact with our customer in order to be agile. That’s the thing that’s most discouraging.

Josiah: When I just first heard about agile, to me it seemed like a pretty simple, straight-forward, and maybe even obvious ideology, but its impact is undeniable. Do you think it’s possible for another frame of thinking to appear in our industry and make a big splash? I know you say that the core of agile is still great and a lot of people should use it. It’s just the people who are switching it and trying to alter it a little bit, but do you think something like that could appear?

Jeff: I think it could, yes. There are a lot of people who are looking for what is next already because they come in discouraged or disillusioned with some of what has happened in the agile community, and have separated themselves from it so they’re looking for what is really next. There are a lot of other really great ideas that have come out that weren’t really agile ideas. For example, the whole notion around being a startup, that’s a brilliant idea. A lot of teams are having great success applying those techniques and ideas.

Lean itself is slightly different than agile. A lot of teams are also having success applying lean. I’m not going to say that agile is the only to have success. What I’m rebelling against, or what I want to talk about is if you do these other things that’s fine, and if you’re having success with it, that’s amazing, that’s great perfect for you. Let’s not create a methodology that goes against the core values and principles of the Agile Manifesto and call it agile.

Josiah: You’ve challenged people to shape the future of agile. That’s really the sticking point of your talk. We just talked about possible future frames of thinking that could be the next big thing. Here’s what I want to know: Do we need to continue to work on maintaining agile as it’s being watered down, or is it time to create and foster something new? Could we run into a situation where agile becomes so altered that it would be in our best interest to use a different methodology? Like you said, the cores are correct, but could we have so many people altering it that agile as a methodology is just too … I don’t know if tainted is the right word, but too changed from its original idea that we should just move on to something different?

Jeff: I look at it a little bit differently. For me, agile is the values and principles. If you read the Agile Manifesto, that is what agile is and that hasn’t altered. That still is the same. What has altered is what people have said helped them achieve those things. The Agile Manifesto says that “The primary measure of progress is working software.” That’s one of the core principles of the Agile Manifesto. Whenever we have a methodology that says, “Okay, it’s okay if you don’t really deliver working software every couple of weeks if that’s all right.” Deliver something, and we’ll fix it, and then we’ll make it work in software at the end of two or three months.

Then we’re not altering agile in that case. What we’re doing is we’re creating a methodology that from my perspective is not agile, even though it might have the label or the branding of agile. I think agile is fine. I don’t see any problem with it. I think a lot of the other ideas that are out there are really fine. Lean is fine. Lean startup is fine.

There’s a lot of thought leaders and people pushing new ideas. The no estimates idea, mod programming, a lot of new ideas are coming out that are great and these are all practices. They’re not agile. These are just practices. I think that the start practitioner is somebody who looks across all of these different methodologies, and helps pull the right sets of practices and methodologies in place to help them achieve success.

I don’t believe agile needs to change. I think that we need to make sure that when we re-label something that’s agile, we call it agile. As you mentioned, I’ve challenged people to help shape the future. That’s because agile really is about the people. It is about us, the way that we build software, the way that we craft software, the way we delight our customers. That’s what it’s really about. Do we continue to let watered-down methodologies and practices and processes call themselves agile? That really is up to us to decide.

Josiah: That’s an interesting point. You’re talking about different practices and ideologies stemming from agile being either watered down or morphed in some way. Is your advice maybe to maintain these? People are totally allowed to use them, but like you said don’t call them agile, create a new name for it, create a new subject so that we’re not using agile. Even though this is something that originated from agile and has an agile base, this is a different name. This is a different idea.

Jeff: That would seem to make sense to me. Call it fragile, call it whatever you want but that would seem to make the most sense. What happens is if we allow watered-down practices that call themselves agile, and those of us who are out there trying to do very serious works using agile ideas, agile values and principles get tainted along the way as well. Again, I’m not going to tell somebody that they should do this or they should do that. They’re free to do and to implement whatever methodology and whatever practices they want, but I do want to keep the name Agile for what it originally was, a set of values a set of principles. It’s a mindset, it’s a philosophy.

Josiah: Absolutely. These other ideas could possibly taint or maybe even damage the name of agile by being associated with a name and not really using the correct ideas and principles. What, more than anything do you want your audiences to walk away thinking about after your key note?

Jeff: First of all, I want them to be inspired, to become more agile. I want them to know what’s happening in the community. I want them to know some of the methodologies that are out there, what they’re saying and how they actually aren’t quite in alignment with the original agile views. I want them to make their own decision. I want them to be informed. Hopefully, they’re inspired to continue to push forward toward being agile.

Josiah: Thank you very much for your time, Jeff. I’m looking forward to hear more about what you have to say about agile at your key note in the coming month.

Jeff: Thank you.

Jeff MorganChief technology officer and a cofounder of LeanDog, Jeff “Cheezy” Morgan has been teaching classes and coaching teams on agile and lean techniques since early 2004. Most of his work has focused on the engineering practices used by developers and testers. For the past few years Cheezy has experienced great success and recognition for his work focused on helping teams adopt Acceptance Test Driven Development using Cucumber. He has authored several popular Ruby gems used by software testers and the book Cucumber & Cheese—A Testers Workshop.

About the author

Upcoming Events

Apr 28
Jun 02
Jun 23
Sep 29