Forget continuous integration, continuous delivery, and even continuous deployment. The new wave in software development is continuous improvement. Teresa Ann Gracias at ThoughtWorks says there’s a definite shift toward this ongoing search for excellence and it requires an even grander vision of teamwork. “It’s not just about DevOps where the Developers and Operations work together, but Dev/Design/Ops. The designers sit in with developers and operations people to create the continuous improvement cycle.” Here are three tips for making the mental and procedural shift to an environment that supports continuous improvement.
#1 Expand the feedback cycle
Continuous improvement is only as good as the feedback that’s available. A feedback loop from Operations to Development is just the start. Consider whether it’s possible to have that loop extend all the way from end users to designers. This may mean implementing new systems of communication and documentation. With the consumerization trend in software development, there may even be ways to use social media and big data to identify areas for improvement.
#2 Don’t fall into negativity
Continuous Improvement can seem like nitpicking if it is carried out like an endless fault-finding expedition. Team members may get discouraged or resist change if they feel that they are under the microscope. Or, they may decide to start pointing fingers. Make sure all improvements are recognized and rewarded, not taken for granted. Striving to do things better every day should make everyone feel better, not worse, about the work they do.
#3 Know when to let go
To crib from Voltaire, “Don’t let the perfect be the enemy of the good”. Continuous improvement is no longer useful when it leads to stagnation rather than innovation. Focus on the big picture rather than on making every detail perfect. The resources available for improvement are finite. In the final analysis, achieving a 2% increase in efficiency for an existing application may be less beneficial than coming up with a completely novel feature to tap a new market or address a previously unmet need.
How do you ensure continuous improvement? Let us know.
How Docker improves the application development lifecycle