15 December 2023
Set yourself up for Quality
6 min read
Written by: Wouter Knigge, Edwin Ouwehand
Historically, software quality was elusive and difficult to define. Unsurprisingly, it has been hard to build a case for the importance of software quality as one of the leading factors in running a successful business. As software has become integral to products and services, the attention on the software delivery processes has intensified, and software quality is now a board-level priority.
And rightly so.
We have come a long way since software quality was a mere ambiguous term. Today, we have the research and experience to demonstrate that Software Quality can be defined and measured consistently.
Software quality is now tangible, it is elusive no more!
We’ll do you one even better. In a world where software quality is of rising importance, we can see who is outperforming the market and how they do it. Although the main driver is easy to understand, structural attention to Software Quality – the devil is in the details.
So, why is software quality so important?
The negative impact of badly written software is widely known and can be summarized as; delayed time to market, security vulnerabilities, and loss of productivity. All of these lessen the effectiveness of a company and its market value. Low software quality is often the driver behind the problems within a company, for example:
- An ever-increasing backlog of items with the team unable to finish features to build speed
- A lot of discussion on non-functional improvements for which there is no time
- Delayed releases to the market
- Difficulty to schedule penetration testing findings in the running sprints
Companies are all too aware of the pitfalls of bad software development and understand that software is no longer a cost center but a strategic asset. Leadership grasp that software quality directly impacts the company’s agility, creativity, and resilience.
Software Quality is a key market differentiator.
Realizing the value of software quality technology executives are now faced with a new challenge the upcoming tech expertise shortage. But… !
Software Quality helps solve the tech expertise shortage issue.
Our clients are feeling the effects of a shortage in developers, product owners, architects, etc. It is forecasted this problem will get worse in the months and years ahead. As more companies enter the digital arena and innovation keeps pushing us forward, more digital solutions will need to be designed and built than ever before. In addition, the sheer magnitude of code repositories to be maintained will be astounding.
People are an increasingly scarce resource in our industry. As an effect, tech experts of tomorrow will have their pick of the litter, in line with what some markets are already showing us. So companies will need to ask themselves: How do I ensure that the tech expert of tomorrow wants to work for me?
Do you want to work for a company fraught with problems that struggle to get its product out? Or an organization that values craftsmanship and lets software engineers take pride in their work?
Of course, there needs to be a balance, and the beautiful thing is this is a win-win situation. High-quality craftsmanship brings a high degree of efficiency in building software products that allow for better utilization of the scarce resource that tech expertise is becoming.
So, now is the time to ensure your company is delivering high-quality software.
How difficult is it to get high-quality software development under control?
The honest answer? Not that difficult. We can draw a parallel to software itself here: even a functionally complex piece of code does not need a complex code implementation. The art and skill of software engineering ensure a simple implementation can handle complexity.
Inherently complex businesses are rarely so complex that a good engineer can’t build quality software for it and arrange a process to mirror this.
SIG has been pioneers in this space for the past 20 years, we’ve worked with a myriad of companies on software quality improvement and impacting business goals that bring them a competitive advantage. We fully believe in the power of measuring and steering the various parts of Software Quality. We also believe that craftsmanship is not embedded in the tool but in the hands of the expert. It is about the journey to maturity of the person, team, and organization in applying the right tools and practices, rather than running checks.
Our experience is that Software-with-a-Service is the way to go. Supplying development teams with the right data and the right coaching to help build a robust knowledge base that can deliver high-quality software. This allows teams to balance the ever-important scale of speed/flexibility of developing new features versus keeping maintenance/technical debt in check. Thus ensuring non-functionals are being continuously met while accelerating what is being delivered to the market.
So, why are we so solid in our beliefs here? Because we can measure it.
Seeing the benefits in practice
With our Sigrid platform, we support a large body of clients with their portfolios. The platform brings a holistic approach to software engineering and helps teams. Additional stakeholders from CIO to Product Owner have complete control by accessing a single pane of glass that supports decision-making in a fact-based manner.
This is where the key point of “structured” attention comes in because quality is multi-faceted and it is difficult to know where to direct your attention. And we all know the list of To Do’s can be too large to handle. However, by benchmarking measurements against the market we can provide a definition of done rather than a bag of findings that appears to be endless. And thus avoiding two important drawbacks of the generic Static Code Analysis (SCA) Tools out there:
- Analysis Paralysis – The SCA space has broadened and niche and specialized tooling are becoming available at an alarming rate. To cover various parts of Software Quality one can go nuts with stacking a variation of tools into and on top of your pipeline. But every tool needs configuration, maintenance, and curation of rules and results.
- Finding overflow – Most of the tooling support in the SCA space is indiscriminate towards the contextual situation one is operating in. This means that findings are just that: findings against a generic framework. This results in long lists of findings without prioritization. More is not better here and the sheer magnitude of findings tends to drown its users before any improvement can be made.
By applying a more holistic and structured approach to the development of software we can see companies making a difference.
The above data shows that companies embracing a truly structured approach to managing software quality and adopting the tenets of software quality engineering, as supported through the Sigrid platform, attain a significantly higher success ratio when improving the quality of software in their landscape.
Our experience is that this effect compounds over time. Teams can steadily increase development velocity and reach a situation where software is truly a differentiator, bringing value to the market and their clients.
So don’t wait, make sure you start your structural journey to high software quality today.
Senior software engineer
Let’s keep in touch
We'll keep you posted on the latest news, events, and publications.