As in many other markets, the SQA/ALM market will soon meet a disruption. Domains like machine learning, deep learning, and cloud computing will force it to evolve in the next few years. This article presents some predictions about the future of quality tools.
Disruption in Software Quality Assessment
A new generation of software quality tools is about to emerge. Machine Learning, Deep Learning, DevOps, Continuous Delivery, Continuous Integration, Cloud Computing- all these movements are influencing SQA/ALM software editors. It has never before been so easy and cheap to produce a new static analysis tool to measure some aspect of a software. The open source movement and the market evolution are the direct contributors to this state. Made famous under the name of “linters,” well-known and unknown developers are creating the tools required to their activities. Software editors are faced with the dilemma: “Should I continue to build my own tools? What should be my behavior confronted with this plethora of scanners?"
Until recently, Software developers were dependent on the highly-specialized skills from quality software editors to detect, analyze, and fix bugs in their software, and it is a big source of frustration on both sides. Developers are usually complaining that the rules do not reflect their real needs or the complexity of their software. Software editors are providing rule sets to the hungry population- standards to satisfy the crowd. A crowd much much bigger than their own forces.
I predict that the disruption may come from these directions:
- Open-Source: Sooner or later, the basic needs of developers will be fulfilled by open-source offerings. Tools like PMD, Findbugs, and so on have inspired a whole generation of developers. The young developers for Angular 2, ReactJS, and Go are already educated on the benefits of quality tools, and they are heavily relying on linters being well-integrated in their CI or in their IDE (Atom, Code). Twitter and Facebook are continuously producing and releasing new open source tools to help the developer community. The recent examples of Flow or PrePack are helping a lot of developers to increase the quality of their products.
- Digital Technologies: The increasing level of maturity of machine learning and deep learning technologies should soon bring us new kinds of tools to predict bugs, predict code defects, and everyday developer decisions. I believe that the scientific research from Microsoft and Google will contribute indirectly to the software quality tool market. This topic is, unsurprisingly, already being discussed.
- Software Development Process Transformation: Movements like Agile, DevOps, continuous integration/deployment, and chatbots are deeply changing the way developers are collaborating. Several aspects are changing, including communication (Slack, Hipchat), software building (Jenkins, Travis CI, Microsoft TSF, and Azure), and software deployment (containers, PaaS, Amazon AWS). The way a product is conceived, built, and deployed requires us to track and measure several quality aspects. The integration effort to produce these metrics and KPIs is tremendous and has to be adapted to each organization. Will developers be satisfied with code quality, or will they require higher level metrics extracted from their development process?
Who will be the future leaders in the ALM market? Who will be the fastest to adapt to the current technology and data disruption? Do you have some tools that could match these descriptions?
If this article has been useful or interesting, stay connected- I will produce new articles on the subject.
One of my future articles will present Codacy, an emerging code quality platform. This platform offers to ease quality control as soon as possible in your development process to detect bugs early and surely. I will compare this solution with the famous market leader SonarQube.