We all want to be really good at what we do… we strive to get better… we want to think that we are making a contribution to the success of our organizations… we want to think that we are adding value. The hard reality… and one we NEED to really come to grips with… is that sometimes we are doing great work… sometimes even building great working software… that has NO market value.
If our activities don’t result in marketable, sellable software… we are wasting time and we are wasting money.
We might justify this to ourselves by saying that we can only control within our circle of influence… that we have to be the best we can be within the areas we can control. Maybe… but if you get really good at creating design documents for projects that get killed… it is still waste. If I build features for a system that never gets sold to a customer… it is still waste. If I build services for a component that never gets consumed by the application… it is still waste.
Anything you document… or code… or test… or even deploy… that doesn’t get sold to a customer is ultimately waste. It doesn’t matter how good… or how fast… or at what velocity you do your work… unless it sells… you have wasted time and money building it. And that… to me… is what makes Lean such an interesting topic right now…
Scrum really brought home some powerful ideas… revolutionary ideas that have changed how we think about product development. We’ve learned the value of building organizations around teams and the value of self-organization. We’ve learned to give the business the power to decide what and empowered the team to decide how. Scrum helped us learn that real improvement comes from keeping everything visible and removing the impediments that are really slowing our teams down.
Lean brings a relentless focus on value… not just valuable software… but real delivered value to our customers. Lean expands the concept of value beyond just the product delivery organization… it recognizes that the enterprise value stream often includes other parts of IT… and other parts of the business. Lean gives us language and principles to really scale agile out to the enterprise.
Individual performance doesn’t matter… team performance doesn’t matter… until we can figure out how to bring it all together into something we can actually sell.