By Wayne Ariola, VP of Strategy and Corporate Development
Being in the software testing and quality space, I'm always hesitant to deliver predictions for the coming year. Personally, it turns out to be a mental battle between what I want to see and what I think will actually occur.
From a software quality and software development lifecycle perspective, the market moves extremely slowly. Trends and technologies that seem like “no-brainers” for adoption slowly eek their way into an organization's infrastructure at a pace that is beyond conservative.
Instead of making actual technical predictions for 2012, let me entertain a couple of “concepts” that I feel will become broader discussion topics.
1. Switching costs for software solutions will continue to decline.
In the past, when an organization decided to invest in a specific vendor’s software solution, the organization was forging a marriage that could end only in a costly divorce. Software vendors were particularly keen to architect various methods to lock in the client by making it very difficult to separate the vendor’s software from the client’s process. The cost of change far exceeded the cost to customize or extend the currently-implemented solution.
With integration and message communication standards very reliable, browser-based technologies becoming more malleable, and software-as-a-service becoming more acceptable, we are entering an era when switching costs are in decline. Of course, we won’t leave out the impact of change on people as the primary hurdle. However, even people are becoming more amenable to technical change.
For example, let's take a look at mobile phones, mobile apps and internet-based services. If there's a better site to find and purchase airline tickets, then I’m gone to the new site—zero switching costs. If there's a better ninety-nine cent app for my smart phone, then I’m gone to the new app—very, very low switching costs. If a new SaaS-based, subscription-based business service is better than my old application, then I’m gone to the new service—some OpEx and training costs.
In summary, development productivity and software quality count now more than ever! Don’t give your clients a reason to check out the competition.
2. Compliance standards for safety-critical and life-critical software will become imperative.
Device manufacturers that embed software for safety-critical and life-critical applications have been on-notice for years now about process and development techniques to better verify and validate their software. This will make the penalties for non-compliance increase significantly as well as introduce the potential for punitive measures.
The cost of quality is a battle that has been waged for years. However there are some industries where academic conversation must be thrown out the window because the true costs of poor quality have life-critical or safety-critical circumstances. The maturity oftesting tools and quality methods—as well as standard software development processes—means that there is no excuse for non-compliance.
No longer can we complain that unit testing is too tedious or debate the ROI of defect prevention techniques. We must take the stance that if developers and engineers fail to embrace the industry-standard quality processes and write code in a way that reduces risk, they are making potentially critical business decisions.
3. With software presenting a much broader business risk, time to market will shift (slightly) in favor of market-ready.
Ok, I admit that this is more of a dream than a prediction. But the bottom line here is that there's no longer an excuse to not invest in QA. Conversely, we can no longer afford to compress quality efforts into a tiny post-development cycle—we need to look at software quality as a continuous process.
This is where mature software products can assist the development and QA teams to better manage the quality lifecycle when faced with incomplete or evolving software components. Technologies such as Application Behavior Virtualization (or Service Virtualization) can significantly impact the overall quality of an application while assisting the organization to meet market-imposed deadlines.
Furthermore, more collaborative test management frameworks will allow for the true reuse of testing assets throughout the software development lifecycle. Major vendors who have been trying to “lock-out” competition (I’m sure you can’t imagine who I’m talking about) will find it pretty difficult to keep up with the market demand for more ubiquitous collaboration.