Software Development Quality

Explore your potential

The job of creating first-rate software is a matter of pride for every development team. But what happens when something goes wrong and the software fails to live up to its billing?

This is when the Software Development Quality Map should be put to work: This map will take teams on journeys of discovery through 80 different topics. They will sail through the “Stream of Team Building”, unwind briefly in the “Gulf of Legacy Code” before they set off for “Bug Bay” and the “Release Monster”, and ultimately reach the land of the “Product Release”. Go on a treasure hunt with your team!

Discover Quality Map
BBV

Marco Ravicini

Senior Software Architect

Good quality pays off

This graphic shows just how important good software quality is (source: J.B. Rainsberg). Every new feature, bug fix or change in technology can be added faster, more efficiently and, thus, more cost effectively over the years with the help of this map. When investments dry up, costs skyrocket exponentially.

Both curves describe the situation:

  • f: Software that was developed without a thought being given to quality
  • g: Software that was developed from the outset with quality in mind

The red function (f) is somewhere between a square function and an exponential function. It illustrates the steep rise of costs that occurs with every change. The green function (g) rises slightly here. Why? We think that teams that focus continuously on the quality of their products can keep costs at a similar level or even lower them.

Starting at t0, every investment in quality represents real monetary savings in software development. This is why we invest in quality at the very start:

Discover software quality

Improving software quality is one of those jobs that are easier said than done. What exactly is software quality anyway? And how can it be managed?

These are the type of questions that usually lead to hours and hours of discussions. But that is not surprising because the term “software quality” has a motley mix of definitions that initially must be reconciled before any measures can be decided.

The Software Development Quality Map turns these discussions into a journey of discovery: The Quality Map covers 80 topics, each of which is visually illustrated in various countries.

Software Development Quality Map

The Software Development Quality Map has one goal: to remind both you and your team about the issue of software quality and to facilitate a smooth pace of delivery during the entire life cycle.

The map can also serve as a basis for discussions: Set off on a journey through the countries and talk with your team about the attributes that you think are most frequently neglected and the areas where you see problems.

With these thoughts in mind, you can click each topic to obtain more detailed information and recommended actions. You will find a brief summary of each topic on this cheat sheet.

The topic of quality has a reputation for being dry. But this map makes it exciting. We have had lots of fun with it, particularly in team discussions - Marco Ravicini

Open the Quality Map and take off!

How to use the Quality Map: You can follow the orange route or set off on your very own to discover each country. You can move forwards and backwards, exploring the countries along with their quality aspects.

The map also includes a second path that you can take to increase the product or service quality of a software: For each quality topic, which is also known as a quality attribute, three of the total of 80 quality topics that have the most positive influence on the quality attribute are listed.

But be careful: Some of the quality attributes conflict with one another. This means that compromises have to be found to achieve the optimal result.

How you can improve software quality

All topics do not have to be explored to the same degree. Even so, you should examine each one of them. We believe the following three requirements will play a crucial role in your discussion with the team:

  • Define quality: Identify your key issues and develop quality scenarios.
  • Make compromises: Set priorities. Everything cannot be optimised at once.
  • Define controls: Identify how you will determine whether you reached your defined quality goals.
  • Make a commitment to quality: There are no short cuts, compromises or local optimisations. Define which exceptions should be addressed.

Source and note

Most of these ideas did not originate at bbv. But we have depicted them together on this map to create our own overview of the topic and selected terms that are generally used. You will find a detailed description of the topic. And if you want to learn more, simply go online. Please let us know if we happened to have forgotten a source. Thank you. Have fun – Marco

Discover Quality Map

Attention!

Sorry, so far we got only content in German for this section.