November 12th, 2014 by inflectra
In days gone by, when projects were slow, lumbering proceedings, process improvement could only be implemented once a project was finished. Trying to evolve a methodology midstream was too disruptive because processes were overly complex, excessively detailed and heavily documented. In theory, following the process was mandatory but, rules don’t always work in practice and so people found alternative ways to do their jobs regardless. These many undocumented variations to the formal process, employed just to get the job done, further complicated any attempts at process improvement. Projects succeeded (or frequently did not) despite process, not because of it.
Agile development methods almost always involve some form of iterative development which provides an ideal opportunity for process improvement. Iterations are self-contained so that rules applied in one cycle do not have to be the same as the rules used in the next. At the beginning of each iteration a new set of requirements or user stories will be selected and the cycle begins again, but before this happens, work pauses, just momentarily, creating the perfect opportunity for change.
Process improvement requires an understanding of what is, and is not, working well. This can be deduced formally through measurement or informally through observation and anecdotal evidence. From this data, changes are made to working practices. In some methodologies this is called a feedback loop or retrospective. There are numerous documented techniques for these procedures but it not our intention to explore them here in this article.
Without examining the various feedback loops themselves, it is worth mentioning a couple of principles that make them more valuable. The effectiveness of process improvement can be enhanced if you:
As we said, process improvement in Agile projects should only be attempted between iterations; it is very risky to make changes mid-iteration. While change during a traditional project can be disruptive, those projects are usually long enough that delays can be made up. Agile iterations however, are very short so that disruptions during an iteration can easily lead to failure to complete that cycle on time.
So, perhaps it is playing with words, but constant process improvement is unsettling; it is a bad idea. What should be constant is the measurement and observation that feeds into the reviews without which, change would be for change’s sake, not for any expected gain in efficiency or likelihood of success. Constant change is a myth, constant scrutiny is not.
You may also be interested in:
Agile is Nothing New
Agile Waterfalls
Ask an Inflectra expert:
SpiraTest combines test management, requirements traceability & bug-tracking
SpiraTeam brings your teams together, managing the entire application lifecycle
SpiraPlan lets you manage your programs and portfolio of projects like never before
Orchestrates your automated regression testing, functional, load and performance
The ultimate test automation platform for web, mobile, and desktop applications
The help desk system, designed specifically for software support teams
Cloud hosted, secure source code management - Git and Subversion
Exploratory testing capture tool that automatically records your testing activity
Let us deal with the IT pain so you don't have to. Or use on-premise if you prefer.
Our customers work in every industry imaginable. From financial services to healthcare and biotech to government and defense and more, we work with our customers to address their specific needs.
Our products do not enforce a methodology on you, instead they let you work your way. Whether you work in agile development, Scrum and XP, Kanban and Lean, Waterfall, hybrid, or Scaled Agile Inflectra can help.
If you want to learn more about application delivery, testing, and more take a look at our whitepapers, videos, background papers, blog, and presentations.
Customers use our tools to help automate repetitive tasks and streamline their business processes using our Robotic Process Automation (RPA) solutions.
We collaborate with a wide range of teams to bring our customers a range of services (including load testing, training, and consultation), complimentary technologies, and specialized tools for specific industries.
Learn how different organizations have benefited from using Inflectra products to manage their software testing and application develooment.
Outstanding support is the foundation of our company. We make support a priority over all other work. Take a look at our support policy.
Discover great tips, discussions, and technical solutions from fellow customers and Inflectra's technical experts.
If you can't find the answer you're looking for, please get in touch with us: over email, phone, or online.
We are constantly creating new videos to help customers learn about our products, including through in depth webinars, all freely available along with a wide selection of presentations.
We provide a number of resources to help customers learn how to get the most out of our products, with free online resources, virtual classrooms, and face to face.
Read about Inflectra, our manifesto, and values. Meet our incredible customers who are building awesome things. We are focused on their success using our tools.
The Inflectra Blog contains articles on all aspects of the software lifecycle.
In addition we have whitepapers,
background articles, videos and
presentations to help get you started.
Events are a big part of our awesome customer service. They are a chance to learn more about us, our products, and how to level up your skills with our tools.
We partner with educational institutions and individuals all over the world. We are also a great place to work and encourage you to explore joining our team.
Please contact us with your questions, feedback, comments, or suggestions. We'll get back to you as soon as possible.
When you need additional assistance (be it training, consulting, or integration services) our global certified solution provider partner network is ready to help.
At Inflectra, we are fully committed to provide our customers with the very best products and customer service.
We want to help developers extend and customize our tools to fit in with their needs. We provide robust APIs, sample code, and open source projects.