How Continuous Integration, Continuous Delivery, and Agile Impact Business: An Interview with Jeff Morgan

[interview]
Summary:

In this interview, chief technology officer and cofounder of LeanDog, Jeff “Cheezy” Morgan, explains how continuous integration and agile are impacting not only technology groups, but the businesses that the people in the technology groups are helping to enable, support, and develop for.

Jennifer Bonine: Hello. We are back with our first interview of the final day of our virtual conference. Thanks to everyone for tuning into our interviews. I'm here with Cheezy. Cheezy, thanks for joining me today.

Jeff Morgan: You're very welcome.

Jennifer Bonine: I appreciate having you. For those folks out there that aren't familiar or haven't had the opportunity to meet you yet, why don't you tell them what your expertise is and your area that you specialize?

Jeff Morgan: Great. I'm an agile coach. That's my profession. I have a specialization in that I work in the technical practices, so more of the XP-type practices. For the last several years that's been a large emphasis on continuous delivery and continuous deployment.

Jennifer Bonine: For all of you out there who are struggling with getting started with continuous integration, continuous delivery, things around agile, this is a good person to know and to reach out to around those topics. You work with a lot of different clients.

Jeff Morgan: Yes.

Jennifer Bonine: Maybe tell us where you're seeing the trend in terms of with some of the CI and the agile, how that's impacting not only the technology groups but the businesses that are obviously the people the technology groups are helping to enable, support, and develop for.

Jeff Morgan: Great question. From a technology standpoint the technology is maturing very, very rapidly. I think that's largely because more and more companies are trying to go down this path. In fact as you've seen it's been a huge topic here at the Conference as well.

Jennifer Bonine: Yes.

Jeff Morgan: While the tools five years ago were nonexistent, now everybody is rushing out and they really are getting more solid. The more interesting question though is really about the business. It is an amazing change for the business to have a development organization that can do this.

For example, most businesses right now, what they tend to do is they tend to go through, well let's talk about a basic project. It goes through a budgeting process. Once you get a budget assigned then they schedule it out for usually the following year.

Let's say the project takes six months, eight months, nine months or so. Often from the time that the business first thought of it till it gets delivered it can be a year to two years or so out the door. In the fast-pace world that we live in that's crazy.

Jennifer Bonine: Yeah.

Jeff Morgan: Businesses that keep road maps of a year to a year and a half it just doesn't seem to make a lot of sense.

Jennifer Bonine: It can be irrelevant by the time you deliver.

Jeff Morgan: Absolutely. By the way, they're not keeping a road map of one project. They're keeping a road map of a lot of projects. It's a lot of time and effort spent on pure speculation.

Jennifer Bonine: Right.

Jeff Morgan: What continuous delivery does is it changes all of that incredibly. Now we have a case where a product owner comes up with an idea today and in a couple of days the user gets to the, actually experience it.

Jennifer Bonine: Yeah.

Jeff Morgan: The product owner can run some experiments. They can start to see how was the user using it and make tweaks and adjustments. You go away from this whole project idea where we're going to run lots of long projects to where you go into this product idea. We've got this beautiful product. We're making tons and tons of little, small, micro-tweaks, watching, learning, and running lots of experiments. Now it's no longer an idea does the user, do the users want this, but we know for sure. I'll give you a really good example that I just ...

Jennifer Bonine: They want this.

Jeff Morgan: ... experienced ...

Jennifer Bonine: Yep.

Jeff Morgan: ... recently. I was working with a client that they decided that they wanted to add a new feature. It went through the whole process. It took them six months to roll it out. Because they were a little uneasy they allowed their end-users to opt in to this option.

Jennifer Bonine: Yes.

Jeff Morgan: At the highest only about 9 percent of the, their users actually opt to the end to use this new feature. Then eventually it went back down to about 2 percent of the users were using it.

Jennifer Bonine: Wow.

Jeff Morgan: They spent lot of time, lot of money building and delivering something that the users really didn't want.

Jennifer Bonine: Right.

Jeff Morgan: With continuous delivery what you can start to do is nudge in different directions or run A/B tests, see how the users like, and move in the direction. Now we're making decisions, product decisions based on data, not based on speculation or conjecture.

Jennifer Bonine: Right. That's a great point. I think it's so fascinating. I saw a major online retailer do something very similar in real time now where they were running a new concept for how they display categories. Right?

Jeff Morgan: Yeah.

Jennifer Bonine: If you're a retailer and you're online you have a category maybe for children, a category for your adult consumer, your tweens, different types of-

Jeff Morgan: A category for cheese, of course.

Jennifer Bonine: Yep. Exactly. Of course.

Jeff Morgan: They have to have that.

Jennifer Bonine: You need your own category. They have each category. They could run that A/B pilot and basically have their standard website up and running and then have this pilot going off a separate site that they were actually saying what's the likeability, are people wanting to use this ...

Jeff Morgan: That's right. That's right.

Jennifer Bonine: ... are they attracted to the site? They could randomly direct people to it. They could have the URL go out to people where they would opt in to be directed to it as an alternative.

Jeff Morgan: That's right.

Jennifer Bonine: They're getting real-time feedback.

Jeff Morgan: That's right.

Jennifer Bonine: I think the interesting thing as testers is now you need to be aware also of what is the feedback you're getting ...

Jeff Morgan: That's right.

Jennifer Bonine: ... and understanding that user in testing and that user mindset as well and knowing what they're thinking so you're building something that works for them.

Jeff Morgan: That's right.

Jennifer Bonine: Because at the end of the day that's who it's for.

Jeff Morgan: That's exactly right.

Jennifer Bonine: Yeah. I think it's really transforming, like you said how we do things. Have you seen some resistance, though? I mean for a lot of folks change is hard.

Jeff Morgan: Yes.

Jennifer Bonine: To change that mindset of it's not ready and that perfection, because I think a lot of people in technology grew up with a mindset of, I want to wait till it's perfect ...

Jeff Morgan: That's right.

Jennifer Bonine: ... right, and not wanting to show people something before it's fully baked or delivered or done. Are you finding in your practice of coaching people along agile, CI, this transformation and shift are, what are some of your techniques to help if someone out there is saying we really want to do this too but we're having struggles with people changing that mindset?

Jeff Morgan: That is the most difficult part of all of this, to be quite honest. The technology is not really hard any more. I mean it's different.

Jennifer Bonine: Right.

Jeff Morgan: It takes people out of the comfort zone but it's not the roadblock any longer. It is all about changing mindsets, changing our view toward how we look at delivery, you know. We mentioned the business changing their mindset. They're so used to budgets and projects and all this planning ...

Jennifer Bonine: Yes.

Jeff Morgan: ... that sometimes it's hard for them to step into the, to a different world. Obviously they realize a lot of benefit from doing that. We often have the wrong view of risk in software development. Sometimes, and we've had this view of what is risky for a very long period of time. Even though when someone might present ideas that show how we can actually drive down risk, it's going to be perceived of the opposite at first. For example when we talk about nobody's going to deploy to production, scripts are going to do it.

Jennifer Bonine: Right.

Jeff Morgan: Nobody is going to change ...

Jennifer Bonine: That makes them nervous. Right?

Jeff Morgan: Nobody is going to change the configuration settings on this machine.

Jennifer Bonine: Right.

Jeff Morgan: Scripts are going to do it. All of a sudden people get nervous about things like that.

Jennifer Bonine: Yup.

Jeff Morgan: When we talk about eliminating source code branches and everybody's working on mainline or working on master, people start to think, oh my goodness, this introduces so much risk, not realizing how much risk all the branching and merging already ...

Jennifer Bonine: Already has.

Jeff Morgan: ... introduces.

Jennifer Bonine: Human error. Right? I mean, just ...

Jeff Morgan: That's right.

Jennifer Bonine: ... if it's left up to ... There can be errors that occur from a human perspective.

Jeff Morgan: That's right. The change doesn't happen rapidly. What I see is that companies that decided they want to go down this path, they have a lot of struggles, they have both the technical struggles. We've got to often retrain our people. Our people have to learn new skills.

Jennifer Bonine: Yeah.

Jeff Morgan: We've got that. We've got to rethink the way we manage our infrastructure. We've got to rethink the way that we interact with the business. Obviously we have to rethink the way we test the software. Now it is no longer this idea where we build the software and after we build it we test it.

Jennifer Bonine: Right.

Jeff Morgan: We can no longer do that. We have to actually test it simultaneously to building it. Everybody on the team has to be involved.

Jennifer Bonine: Yep. We were talking, I wonder your perspective on this, about with agile and running sprints and stuff, that sometimes what happens when people haven't fully adapted we're doing this together ...

Jeff Morgan: Right.

Jennifer Bonine: ... that you have the team, you have the tester, you have the developer, the product owner, and the ScrumMaster who's all part of this team, and what happens is sometimes still the development's going on, the tester's testing, they get behind for some reason and then they start lagging. Everyone else is starting to move on but the testing is still happening and starts to get behind. I was wondering if you're seeing that and if you are if there are any strategies to help people out there who are struggling with that?

Jeff Morgan: In continuous delivery we cannot allow that to happen.

Jennifer Bonine: Right.

Jeff Morgan: Okay?

Jennifer Bonine: Exactly.

Jeff Morgan: That can't happen. Your statement's also sort of implied a hand-off where I'm the developer, you're the tester.

Jennifer Bonine: Yeah.

Jeff Morgan: I'm testing. I'm passing it to you and I keep ... That's a sure way to fail. That's a sure way to drive quality low.

Jennifer Bonine: Yeah.

Jeff Morgan: What we do is in the teams we have constant discussions about risk, what's the right way to mitigate risk? The developers are also riding a lot of tests. They're all doing test-driven development and such as that. Obviously in the teams I'm working with, the testers are primarily writing automation and they're performing exploratory testing.

Jennifer Bonine: Both?

Jeff Morgan: There is all of these ... Yes. There's all these other things that we have to do, for example, accessibility testing ...

Jennifer Bonine: Yes.

Jeff Morgan: ... localization. When we talk about cross-browser there's both the behavior of cross-browsers, make sure it's consistent as to look and feel. Those three things that I just mentioned there, everybody on the team should be able to do.

Jennifer Bonine: Right.

Jeff Morgan: If you and I are working on a story together, you're the tester, I'm the developer. If I believe my development is done you're still are doing, performing some exploratory testing, I need to fire up draws and start doing that.

Jennifer Bonine: The accessibility. Yeah.

Jeff Morgan: Now it's a shared responsibility to lead the quality high. There's no such thing as me moving on because the thing that we're working on together does not move forward until we're both satisfied that it's completed.

Jennifer Bonine: Yeah. That's a good point. For some of you out there that are struggling, that's something we've heard this week from different folks is that idea that you've got to move together as a team.

Jeff Morgan: That's right.

Jennifer Bonine: If that's not happening and you're falling into that practice or kind of that traditional mindset of leave the testers behind, so they have to stay on when everyone else moves, you've got to get away from that practice is what we're hearing in order to fully move ...

Jeff Morgan: Exactly.

Jennifer Bonine: ... into that process and adopt that methodology and that cycle. We don't have a lot of time left. If people want to get a hold of you, have questions for you that weren't answered today, obviously we just scratched the surface with our discussion today, what's the best way to reach you?

Jeff Morgan: Most people that reach me, they reach out on Twitter.

Jennifer Bonine: Yeah.

Jeff Morgan: I have a very easy Twitter handle to remember. It's four characters, @chzy.

Jennifer Bonine: Remember that. Great way for them to reach out to you.

Jeff Morgan: Yes. It sure is.

Jennifer Bonine: I encourage you to do that if you have questions. I know you'll answer those. Thank you for being with us again. I appreciate it.

Jeff Morgan: You're very welcome.

Jennifer Bonine: For those of you that are going to STARCANADA, make sure and check him out. He will be there.

Jeff Morgan: Yes.

Jeff MorganChief technology officer and cofounder of LeanDog, Jeff “Cheezy” Morgan has been teaching classes and coaching teams on agile and lean techniques for twelve years. Most of his work has focused on the engineering practices used by developers and testers. For the past few years, he has experienced great success and received recognition for his work helping teams adopt acceptance test-driven development using Cucumber. Cheezy authored the book, Cucumber & Cheese, and several popular Ruby gems used by software testers.

User Comments

1 comment
Jim Little's picture

This interview is really poorly titled.  I went through the whole transcript and not once was Selenium ever mentioned.  

I tried watching the interview but after the fourth time hearing the word project being mangled I couldn't watch any longer.

March 8, 2017 - 8:59am

About the author

Upcoming Events

Oct 13
Apr 27