Organizations across industry domains are witnessing their IT landscapes completely transform, owing to the shift from traditional software development models towards the much nimbler and flexible Agile methodology. The reason? With the advent of Digital, organizations today are technology driven. And, IT agility is necessary for business agility.
Quality Assurance (QA) has an important role to play in this paradigm shift. Once considered a "necessary evil" and a "reactive, slowing down" activity occurring at the very end of the SDLC, QA today has evolved to a proactive and critical to success discipline in a "customer at the heart of everything" economy. However, successfully transitioning to Agile QA is no walk in the park and clients have significant concerns that need to be addressed.
I recently conducted a workshop for one of my clients, on the topic "Benefits of transitioning to QA in an Agile environment". Not surprisingly, she brought up the most common concern almost every client has thrown at me regarding the topic, i.e., "What is the cost associated with this activity? Is there a method to effectively calculate ROI?"
For Organizations to successfully transition to Agile QA, a large number of hurdles need to be overcome. These include: existing work culture, inaccurate estimation of resources due to volatile environments, communication gaps between various teams based out of different locations, learning how to implement and use new tools and terminologies, orchestrating and managing scrum teams etc. The list looks almost endless and unfortunately as a consequence, an aspect most often overlooked is the overall budget of the entire exercise. Agile being a completely new concept to the organization makes expense planning significantly difficult. Teams are usually unaware of the various activities and the potential costs involved.
Is effective budgeting in Agile a myth?
Given the volatile nature of today's business environment and to ensure high quality of project deliverables as well as the entire process itself, effective budgeting for Agile QA can be achieved by a complete revamp of the budgeting method used most often -
doing away with the Fixed Pricing method.
Fixed price equates to fixed scope. In Agile, there is always a high risk of building / developing features as per the specifications rather than the stakeholder's demand. This increases the financial risk multiple fold. The best way to address this is by using a flexible funding method which allows stakeholders to budget as per their learning from previous iterations and results in teams working towards developing the most effect effective product. Teams should provide a reasonable estimate after thoroughly doing high-level requirements modelling. With a fixed price, there are chances of increasing the overall IT spend, as teams will have to establish a change management process to prevent requirements changes.
Flexible funding also enables testers to focus on essential areas and quickly mitigate the defects. Early detection can save a lot of money which can be channelized for other needs.
So what are the various flexible budgeting models an organization could use?
- Minimum Viable Product (MVP) approach
A MVP sports only the core features which denotes the product deployment ready. The MVP is typically deployed only to a subset of possible clients, such as early adopters, who are more likely to give feedback which in turn would be helpful in adapting to the market's need and lead to higher quality of the final product.
In waterfall methods, requirements are set before project begins. The developers can determine cost right away and allocate additional funds for when potential issues arise. However, since agile is a flexible approach, teams should think about their budget differently. They should determine what all activities can be performed and delivered within the available funds. The developers should ascertain and inform the stakeholders of what to expect based on the cost and time restrictions along with providing an effective agile test management platform.
In agile testing engagements, the estimation is done in a similar way as development i.e. incrementally. All this is done within the boundary of an agreed budget which is arrived upon after collaboration with the client at the very beginning. Hence MVP enables a team to manage budget constraints better and avoid long term expenses, deliver the product on time, and of higher quality.
- Dividing project and recalculating
One of the benefits of Agile projects is that they are divided into short sprints. The expenses of one sprint can be used to decide the budget for the next sprint or phase more efficiently. For example, cases can be introduced across Testing Lifecycles, which can affect the app's functionality and the budget to accomplish these tasks. Nonetheless, these phases prevent scope creep and funds can be readjusted to support these needs. This will ensure optimum and appropriate usage of funds by teams as well as meeting the user requirements. Dividing a project into fewer smaller projects and treating them as individual projects boils down the risks involved while providing adequate time to win the client's trust. Staying on budget for enterprise agile software teams is certainly possible, as long as they follow these best practices.