Blog

Quality from an architectural perspective - Richard Seidl

Written by Richard Seidl | May 20, 2024 10:00:00 PM

Are quality requirements the same as non-functional requirements? And what are functional requirements? Which of these are included in the ISO 25010 quality model? And how do you determine whether the requirements are met? In this episode, Mike and Alex discuss the concept of quality from a software architecture perspective.

“For some of my training participants, maintainability and changeability don’t play a role at all, they come from a safety environment, they only want to deploy the thing once and then it should run safely and never be changed again for the next 10 years.” - Alexander Lorz, Michael Sperber

Dr.-Ing. Alexander Lorz, a freelance software architecture trainer and IT consultant, contributes to the development of the iSAQB Foundation curriculum and creates training materials. With experience in research and industry, he has specialized in practice-oriented software architecture training for various industries since 2016. His goal is to empower teams to deliver high-quality software.

Dr. Michael Sperber is Managing Director of Active Group GmbH. He is an internationally recognized expert in functional programming and has written numerous articles and books on the subject. Michael Sperber is co-founder of the blog funktionale-programmierung.de and co-organizer of the developer conference BOB. He is also one of the primary authors of the iSAQB Advanced Curricula “Functional Software Architecture” and “Domain-Specific Languages”.

Highlights of this episode:

  • Discussion about functional vs. quality requirements in architecture
  • Alexander and Michael are ISAQB trainers and work on the software architecture curriculum
  • Quality requirements are often underestimated, but have a major influence on architecture decisions
  • The distinction between functional and quality requirements is often blurred in practice
  • Importance of adaptability and changeability of software
  • Discussion of ISO 25010 and its role in defining software quality
  • The challenge of quantifying quality and the importance of usability
  • The importance of community input in curriculum development
  • The discussion shows how complex and multi-layered the topic of quality requirements is

Quality in architecture: measurement, challenges & adaptability

In this episode, my guests Alexander Lorz and Michael Sperber discuss the complex aspects of quality in architecture, the challenges of defining and measuring quality requirements and the importance of adaptability in software architectures.

An exciting debate

In this episode, Alexander Lorz and Michael Sperber, experienced ISAQB trainers for software architecture, are my guests. Together we dive into the topic: What exactly does quality mean from the perspective of architecture? The exchange promises to shed light on the often elusive concepts of functional and quality requirements.

In search of a definition of quality

Defining quality in architecture is proving to be a complex challenge. Our guests share their insights on how difficult it is to tangibly define quality and make it measurable. They shed light on the difference between functional requirements and quality requirements and explain why the latter are often underestimated. This approach means that architects face particular challenges when planning and evaluating projects.

The role of quality requirements in the curriculum

A central point of our discussion is the revision of the ISAQB curriculum, in particular the section on quality. This project reveals the difficulties in dealing with the topic of quality within the training of software architects. It becomes clear that a clear delineation and treatment of quality requirements is essential in order to better prepare future architects for their tasks.

The challenge of quality measurability

How do you measure quality? This is a question that our guests are very interested in. The discussion shows that the measurability of non-functional requirements such as usability or security is a major challenge. Alexander and Michael share their experiences of dealing with such requirements in projects and how important a conscious approach to them is for the overall quality of a system.

Adaptability as a key quality

Another important aspect of our debate concerns the adaptability of software architectures. The ability to respond to change - whether through evolving functional requirements or new frameworks - is emphasized as a critical component for long-term successful projects. Michael shares his experience that flexible architectures are often better equipped to maintain quality standards over time.

Community work on the curriculum

We conclude our discussion with a look at the open development process of the ISAQB curriculum on GitHub. Alexander encourages the community to actively participate in the further development of the curriculum. This call underlines the collaborative effort to continuously improve and adapt teaching around software architecture.