So, you now have an Agile IT organization. Your teams are good craftsmen, and software delivery is consistent. But the rest of your organization does not seem to mesh with what is happening in the IT department. While your software development group is delivering features at a quick pace with great quality, they sometimes wonder if they are delivering the right features.
While Agile started out as a software disciplines and methodology, it has since infected other parts of the business. Now IT can truly have a place at the table with other business departments, like marketing, finance, etc. For those of you brave enough to pursue making your entire organization agile, you are not alone. Luckily, a new breed of entrepreneur uses Agile techniques to run startups (the Lean Startup methods), and we can utilize their experiences to help your organization.
The Qualities of an Agile IT Organization
Agile IT in the context of this article means a mature Agile software development shop. In other words, your teams use good engineering practices like TDD, continuous integration, team rooms, and pair programming. These kinds of teams are high performing, and they deliver features at a quick pace with high quality. In addition, this team has established practices that could pass a CMMI 3 certification.
If the organization uses Scrum, this means that planning your projects has a steady cadence. The IT team has defined the appropriate roles, like Scrum Master, Team and Product Owner. The organization members who fill those roles are comfortable with their roles and do not need coaching to fulfill them.
If the organization uses another method, say Kanban, the process has been well defined on the Kanban board. Again, the roles assigned to each queue on your board are well defined.
The Pain of Not Delivering Value
For those IT organizations that are Agile and meet the above criteria, there is pain when a team delivers software that customers do not use. That is a problem for anyone delivering software, but for Agile teams it is particularly acute. Agile proscribes tight feedback loops and constant collaboration with our customers. In the beginning, Agilists thought that would allow the team to consistently deliver value.
For many teams the collaboration is with someone in their business representing the customer (a product owner, for instance). Depending on the product owner’s data-gathering methods, the team may deliver what the product owner wants, but not what the market wants. If that happens, the team can rationalize who is to blame for this problem, but most team members would like to have a hit on their hands, not a dud.
The Lean Startup movement is a business movement that aligns with Agile principles. Let’s look at the lessons of the Lean Startup movement and see if it can provide insight into how all organizations can be agile!
The Lean Startup Movement
In the past two years or so, Silicon Valley insiders have been studying how startups thrive in that location specifically. People like Steve Blank and Eric Ries are using iterative methods to help startups discover their best business opportunities. Keeping in mind that startup companies are searching for a viable business model, they recommend that these companies “fail fast “as the quickest way to discover the viable business.
This fail fast mentality does not mean to just wing it and try anything. There is a methodology to these experiments. Collect metrics about the business value you believe you are providing to customers. Analyze those metrics and see what has the best response from real customers. As in Agile development, this methodology encourages short feedback loops, and feedback directly from customers.
For example, suppose you have a great name for your Web travel startup. Instead of just using that name, you would test the response rate of potential customers to your name against another control name or more. Let’s say the name your team likes is Travel1. So in true Lean Startup fashion, you come up with two other names, Travel2 and Travel3.
Your team buys the domain names and sets up some simple landing pages for each site. Then your team purchases some Google AdWords and links those to each domain name. Next, you validate over a time period if there is any difference in clickthroughs on either name. Once you determine whether there is any significant difference through this data, you can continue to create the actual site using some validated information on what customers perceive as good value.
Applying Lean Startup Methods to Your Organization
Lean Startups give us a model that we can bring into our existing organization to make the organization’s decisions more agile in nature. Software developers can help their organizations with this decision making. Simply extend your team’s Agile methods to include Lean Startup-style metrics. Since your team will be asking for metrics that directly tie back to business value, this should not be a hard sell. Still many teams encounter resistance, so let’s go over ways to get your organization’s support.
The principles that we will look at are Quick Customer Feedback, Measurement, and Pivoting. Quick Customer feedback is needed to test our hypothesis in a real situation. Measurement shows all involved the results, in a consistent way without emotion or guesswork being involved. Pivoting ensures that your organization can move quickly to take advantage of the opportunity shown through the Quick Customer Feedback and Measurement.
In this instance, the team is working on a feature for a consumer website. The team splits features into stories and uses a flow-based Kanban system to monitor the progress. The Product Manager has requested a feature to display merchandise the customer would be interested in when they first log in. The first story specifies that the top five sellers will display to all customers. There are other stories that specify other visual cues on different pages that the Product Manager hopes will entice the customers to purchase other products.
Lean Startup Principle 1: Quick Customer Feedback
When the Product Manager introduces these stories to the team, this is where the team can start to integrate Lean principles into the whole process. Starting with Quick Customer feedback, we can suggest to the product manager that we can get actual feedback before investing heavily in this.
To accomplish this, the team can suggest to the Product Manager that they could quickly do a controlled experiment. By placing quick links at the top of the page, they can identify whether any of the stories look to be larger wins than others. For instance, they can place a top five link at the top of the home page, and also a link to recommended products. The experiment will run for a limited amount of time.
Lean Startup Principle 2: Measurement
Now that we have established a way to get quick customer feedback, we must determine how to measure this. Since we are just utilizing links, it should be simple to measure how many are clicked. We are assuming that interest in those links will also translate to sales down the road.
If we run the experiment for a week, and we see that the top 5 link is getting 25% of the clickthrough that the recommended products are getting. When something is 3x the number of interest, that would indicate we might want to implement that first.
Lean Startup Principle 3: Pivot
With that information in hand, we can now pivot and place the recommended products story before the top 5. The product manager will place that story at the top of the Backlog queue for the team. After that story goes through she can see what kind of increase it brings in sales. That may mean baking the collection of those metrics into the story.
Pushing the Agile Principles Back Up the Food Chain
Now that your team has implemented these ideas, you can push them back up the food chain. For your team, make it a requirement that each customer-related feature has to get actual feedback and measurement quickly before actually implementing it. If the whole team has bought into it, this can be implemented easily.
Make your measurements and feedback highly visible and transparent to anyone who wants to see them. For a team that has a collaborative space (for example, a team with a Kanban board), put those experiments on the board. Split up the tasks for the experiment as you would a story, and show this on another board. Show winners and losers on the board, along with numbers. Again, make this highly visible and the process transparent.
Next, show the transparent process and results to the part of your organization that is deciding what teams work on next in your portfolio. This should spark conversations on using these techniques to decide which project or feature they can work on next. In fact, the portfolio could start moving toward what is the next feature rather than making expensive guesses on what is the next project.
The Agile Organization
These techniques can help your Agile IT department start talking the talk of business, and helping the entire organization to be agile! An organization that can respond quickly to market changes and customer wants is poised to do extremely well in the marketplace. Plus, Agile organizations are quite frankly more fun to work for!