Episode 99: Qualitätsanforderungen

iX/heise Developer

Podcast SoftwareArchitekTOUR (iX/heise Developer)

Episode 99: Qualitätsanforderungen

Podcast SoftwareArchitekTOUR (iX/heise Developer)

Software-Architektur. Der Podcast für Software-Architekten. Auf heise-developer.

Software architecture. The podcast for software architects. On heise-developer.

Herzlich willkommen zu einer neuen Folge des Software-Architektur-Podcasts.

Welcome to a new episode of the Software Architecture Podcast.

Mein Name ist Gernot. Heute geht es um den sperrigen Begriff Qualität.

My name is Gernot. Today we are going to talk about the cumbersome term quality.

Was der mit Software und Software-Architektur zu tun hat.

What that has to do with software and software architecture.

Ich freue mich sehr, mit Johannes hier zu sitzen.

I am very happy to sit here with Johannes.

Johannes, magst du dich vielleicht ganz kurz vorstellen?

Johannes, could you perhaps introduce yourself briefly?

Hallo, ich bin der Johannes. Ich bin einer der Neuen in der Runde.

Hello, I am Johannes. I am one of the newcomers in the group.

Ich bin Senior-Consultant bei der Firma InnoCube, wo auch der Gernot mit mir ein Kollege ist.

I am a Senior Consultant at the company InnoCube, where Gernot is also a colleague of mine.

Und beschäftige mich dort ganz viel mit Software-Architektur in verschiedenen Rollen.

And I deal a lot with software architecture there in various roles.

Mit Software-Architektur in guter Qualität.

With software architecture of good quality.

Ja, zu mir, Gernot, ich bin InnoCube-Fellow seit langer Zeit.

Yes, to me, Gernot, I have been an InnoCube Fellow for a long time.

Software-Architektur-Coach und so weiter.

Software architecture coach and so on.

Mehr brauchen wir gar nicht dazu zu sagen. Lass uns direkt ins Thema einsteigen.

We don't need to say more about that. Let's dive right into the topic.

Ja, Gernot, was ist denn Qualität überhaupt? Kannst du mir das erklären?

Yes, Gernot, what is quality anyway? Can you explain that to me?

Ich erkläre das, ich antworte mit einer Gegenfrage.

I explain that, I respond with a counter-question.

Ich bin auf dem Weg zu einer Qualität, die ich mir nicht vorstellen kann.

I am on my way to a quality that I cannot imagine.

Ich bin auf dem Weg zu einem Kundenprojekt letztens im sehr, sehr schönen malerischen Dorf im Frankenland

I was on my way to a client project recently in a very, very beautiful picturesque village in Franconia.

an einem kleinen Textilgeschäft vorbeigekommen.

passed by a small textile store.

Und da stand ein großes Schild im Schaufenster.

And there was a large sign in the shop window.

Seit 60 Jahren der Qualität verpflichtet.

Committed to quality for 60 years.

Und ich habe diese Frage seit 60 Jahren der Qualität verpflichtet

And I have been committed to quality with this question for 60 years.

dann mit in mein Projektteam genommen und habe die Leute im Team gefragt,

then brought into my project team and asked the people in the team,

was sie denn darunter verstehen, wie sie das denn interpretieren,

what do you mean by that, how do you interpret it,

im Textilgeschäft steht, seit 60 Jahren

In the textile store for 60 years.

der Qualität verpflichtet.

committed to quality.

Da kamen sehr interessante Meldungen raus,

There were some very interesting reports.

weil die

because the

Einzelne aus dem Team

Individuals from the team

gehen klettern, die dann gesagt haben,

go climbing, who then said,

ja, so eine Textilie,

yes, such a textile,

also wenn da wir

So if we

über Qualität reden, muss diese Textilie halt

Talking about quality, this fabric has to hold up.

abriebfest sein, auch

to be abrasion-resistant, also

auf Gestein und Granit, wenn ich klettere.

on rock and granite when I climb.

Wiederum andere haben gesagt,

Others have said again,

ja, aber mir ist, also Qualität,

Yes, but to me, quality...

das bedeutet ja Langlebigkeit.

that means longevity.

Und ich habe dann gefragt,

And then I asked,

Langlebigkeit, ja, das kann ich halt oft waschen

Longevity, yes, I can just wash it often.

und die Farbe bleibt erhalten.

and the color is preserved.

Und wieder andere haben einen Kopf

And others have a head.

geschüttelt und gesagt, nee,

shaken and said, no,

also viel wichtiger ist doch die

so much more important is the

Produktion

Production

nach

after

Öko-Bedingungen oder Öko-Siegeln

Eco conditions or eco labels

oder so.

or something like that.

Und mein Fazit war,

And my conclusion was,

dass dieser Begriff

that this term

Qualität, oder das war für mich ein Beweis,

Quality, or that was proof to me,

dass der Begriff Qualität

that the term quality

sehr diffus und unspezifisch

very diffuse and unspecific

verwendet wird, also dass Leute

is used, so that people

über Qualität sprechen

talk about quality

und implizit lassen, was damit so genau

and implicitly leave what exactly is meant by that

gemeint ist.

what is meant.

Es klingt auch so, als wäre das eine

It also sounds like that would be a

sehr subjektive Sache, also was

very subjective matter, so what

meine Qualität ist, muss nicht deine Qualität

My quality doesn't have to be your quality.

sein. Genau.

to be. Exactly.

Aber wenn ich so Softwareentwicklerinnen und

But when I look at software developers and

Softwareentwickler frage,

Software developer question,

bekomme ich natürlich häufig die Antwort so,

I often get the answer like that, of course,

ich habe Clean Code geschrieben.

I have written clean code.

Der lässt sich gut lesen, er ist

It is easy to read, it is

richtig eingerückt, er hat die

properly indented, he has the

richtige Formatierung,

correct formatting,

sprechende Bezeichner

self-descriptive identifiers

und keine XYZ

and no XYZ

unterstrich 30F, solche

underlined 30F, such

Dinge. Ich habe keine Sonar Cube

Things. I don't have a Sonar Cube.

Issues, ich habe vielleicht sogar 100%

Issues, I might even have 100%.

Testabdeckung, das ist doch der Gipfel

Test coverage, that is really the peak.

der Qualität. Geht es denn noch

the quality. Is that still possible?

besser, wenn ich Software

better if I software

hochqualitativ entwickeln möchte?

wants to develop high quality?

Ja,

Yes,

die Zuhörerinnen und Zuhörer können mich

the listeners can me

jetzt nicht schmunzeln sehen,

don't smirk now,

aber eine sehr ähnliche Formulierung

but a very similar formulation

und Stolz in der

and pride in the

Stimme habe ich bei, in einem

I have a voice in a

Mandat gehört, dass wir von

It is mandated that we are from

U-Seite betreut haben, in einer

Have taken care of the U-side, in a

Anwendung, die unter Grotten

Application that is under caverns

schlechter Performance gelitten hat.

has suffered from poor performance.

Ja, Clean Code auf der einen Seite

Yes, Clean Code on one side

ist für manche Stakeholder eine

is for some stakeholders a

wünschenswerte und auch aus meiner,

desirable and also from my,

ich habe so eine Techie-Seele,

I have such a techie soul,

also ich mag sauberen

Well, I like clean.

und verständlichen Code,

and understandable code,

aber manchmal ist eben

but sometimes it just is

diese Lesbarkeit von Code

the readability of code

gegenüber der

opposite to the

notwendigen Performance der Anwendung

necessary performance of the application

vielleicht irgendwie nachgelagert.

maybe somehow subsequent.

Ja, das heißt, es ist

Yes, that means it is.

schwierig, wenn wir so Qualität

difficult when we have such quality

auf eine Dimension beschränken,

restrict to one dimension,

wo in Wirklichkeit

where in reality

halt viel mehr Dimensionen existieren,

many more dimensions exist,

über die wir halt reden sollten.

about which we should talk.

Was sind das denn für

What kind of things are those?

Dimensionen? Also du hast jetzt schon gesagt,

Dimensions? So you've already said,

Performance könnte so eine

Performance could be such a

Dimension, so eine Eigenschaft

Dimension, such a property

sein, die irgendwie

be, somehow

relevant sein

to be relevant

könnte für ein System, aber gibt es

could be for a system, but is there

noch andere Dinge, die du

other things that you

sagen würdest, die gehören damit dazu?

Would you say that they belong there?

Also alle, die uns zuhören, wissen

So everyone listening to us knows

das natürlich, dass es noch mehr

of course, that there is even more

solche Eigenschaften gibt

such properties exist

und um das möglichst kurz zu

and to keep that as short as possible

formulieren,

formulate,

sag ich mal, die Produkte, die wir

let's say, the products that we

bauen, die Systeme, die wir bauen,

build, the systems that we build,

die müssen halt den Zielvorstellungen

they just have to meet the objectives

der beteiligten

of the participants

Stakeholder genügen.

Satisfy stakeholders.

Und was jetzt

And what now?

zu diesen Zielvorstellungen gehört, das ist halt dann eine andere

This vision includes, well, that's just a different one.

Frage, aber das wäre so,

Question, but that would be like this,

also wenn ich halt eine Textilie kaufe,

So when I buy a textile,

dann erwarte ich halt, dass sie,

then I expect that they,

dass die von mir

that the one from me

als wichtig empfundenen Eigenschaften

perceived important qualities

dort auch enthalten sind.

are also included there.

Also letztlich

So ultimately

halt diese Menge an Eigenschaften, die halt

maintain this amount of properties that just

so ein bestimmtes Produkt für

such a specific product for

mich haben soll, das ist halt schon

should have me, that is just how it is

relevant.

relevant.

Jetzt ist das ja aber so bei

Now it is the case that

Software-Systemen, dass die nicht

Software systems that do not

so ganz offensichtlich

so quite obviously

Eigenschaften haben, die ich ihnen sofort

Have qualities that I can immediately...

ansehe. Also ich lese mir

I look at it. So I read it to myself.

zum Beispiel den Code durch

for example through the code

und sehe, ach, das performt wahnsinnig

and see, oh, that performs чудесно

gut oder das skaliert wahnsinnig

Good or that's scaling tremendously.

gut, sondern häufig ist es

good, but often it is

ja so, manche

yes, some

Eigenschaften, manche Merkmale merke

Characteristics, remember some features.

ich auch erst, wenn ich das System irgendwie

I only do so when I somehow manage the system.

gewissen Reizen aussetze, wenn ich

subject myself to certain stimuli when I

das in Produktion deployed habe,

that I have deployed in production,

wenn ich da gewisse

when I have certain

Nutzergruppen draufgelassen

User groups allowed on.

habe.

have.

Was ist denn so deine Erfahrung damit?

What is your experience with it?

Also wenn ein Produkt,

So if a product,

ein System spezifiziert

a system specifies

wird, wenn es in die Produktion

will, when it goes into production

gepackt wird, stimmt

It is packed, that's right.

dann diese Qualität dieses

then this quality of this

Systems in der Regel oder

Systems in general or

was passiert da?

What is happening there?

Das ist schon wieder was, wo du mich jetzt schmunzeln siehst

That's something that makes me smile again.

oder ihr mich vielleicht

or maybe you me

schmunzeln hört. Das

smiling stops. That

stimmt natürlich nicht. Also ganz häufig

that's not true, of course. Quite often

ganz häufig,

very often,

also in meiner Erfahrung,

in my experience,

System, an dem ich beteiligt war,

System in which I was involved,

haben wir natürlich ein paar Eigenschaften

of course we have a few features

geschafft.

done.

Die unsere Stakeholder wollten, aber

The our stakeholders wanted, but

es ist immer mal wieder passiert,

it has happened from time to time,

dass wir halt so eine implizite

that we just have such an implicit

Annahme hatten

to have an assumption

für so eine Zielvorstellung

for such a target vision

und leider an der

and unfortunately at the

Realannahme der beteiligten

Acceptance of the parties involved

Stakeholder vorbeigearbeitet

Stakeholders pre-processed

haben.

to have.

Ich mache

I am doing

jetzt mal ein Beispiel, was nicht aus der Software

Now an example that is not from the software.

kommt, aber wir haben Freunde

comes, but we have friends

zum Salatessen oder zum Essen eingeladen.

invited to eat salad or to a meal.

Es gab halt so einen Vorspeisensalat.

There was just this kind of appetizer salad.

Das hat halt ja auch bestimmte Eigenschaften

That certainly has specific characteristics.

von

from

Frische und Aussehen und

Freshness and appearance and

vielleicht gewisse Geschmacksaspekte

perhaps certain taste aspects

in der Soße und eine

in the sauce and a

wesentliche Eigenschaft, die wir schlicht

essential feature that we simply

vergessen hatten, war, dass

forgot, was, that

einer der Beteiligten, also einer unserer

one of the participants, that is, one of our

Gäste, eine

Guests, a

ganz massive und sogar

quite massive and even

lebensbedrohliche Zwiebelallergie besitzt.

has a life-threatening onion allergy.

Das heißt, wenn dieser Mensch

That means, if this person

irgendwas isst, wo rohe

something eats, where raw

Zwiebeln drin sind, dann

if there are onions in it, then

bekommt er lebensbedrohliche

does he get life-threatening

Schwellungen im Hals.

Swelling in the throat.

Und

And

das muss man dann schon sagen, das haben wir ja völlig

You have to say that, we completely...

verbockt. Also wo wir was geliefert

messed up. So where we delivered something.

haben, wo

have, where

alle minus eins gesagt haben,

everyone said minus one,

ist ein leckerer Salat, aber genau diese

is a delicious salad, but exactly this

eine Person, Klaus heißt

a person named Klaus

da, Klaus dann gesagt hat, sorry,

that Klaus then said, sorry,

aber kann ich nicht essen. Also

but I can't eat. So

vorbei geliefert.

delivered past.

Das Äquivalent zu einem

The equivalent to a

IT-Projekt, das zwar wunderbar

IT project that is indeed wonderful

durch die Qualitätskontrolle

through quality control

in Anführungszeichen kommt,

in quotation marks comes,

alle Funktionen sind umgesetzt und

all functions are implemented and

kaum ist es irgendwie im Internet verfügbar,

barely is it available on the Internet in any way,

wird es sofort von irgendjemandem gehackt

it will be hacked by someone immediately

und alle Daten liegen offen

and all data is publicly available

und das System ist im Prinzip.

and the system is in principle.

Soll ja schon vorgekommen sein.

It has been said to have occurred before.

Also Digitalisierung in

Also, digitization in

deutschen Behörden, sag ich nur, aber egal.

German authorities, I say only, but it doesn't matter.

Das führt uns zu weit.

That's too far for us.

Und

And

im Vorgespräch, Johannes, haben wir

In the preliminary discussion, Johannes, we have

halt über diese Eigenschaften gesprochen

talked about these characteristics

und über implizit und explizit und so

and about implicitly and explicitly and so on

weiter. Und du hast im Vorgespräch

continue. And you mentioned in the preliminary conversation

zwei

two

interessante Begriffe benutzt, nämlich die

uses interesting terms, namely the

inhärenten und die emergenten Eigenschaften

inherent and emergent properties

von Produkten.

of products.

Und da

And there

kann ich mir vorstellen, dass du uns

I can imagine that you...

ein klein bisschen aufschlauen kannst, was das

you can learn a little bit about what that is.

denn so bedeutet.

for that means.

Das ist tatsächlich

That is indeed

ganz interessant. In der Systemtheorie

quite interesting. In system theory

unterscheidet man halt über

one distinguishes, however, about

Charakteristika, die

Characteristics that

irgendwie grundlegende Merkmale

somehow fundamental characteristics

sind, die das System von Natur aus

are, which the system is inherently

hat. Also ich kann zum Beispiel hergehen und

has. So I can, for example, go over and

kann sagen, ich stelle das

can say, I set that

System auf irgendwie sechs

System on somehow six

Threads ein und mehr als sechs

Threads one and more than six

Threads darf es nicht benutzen, um seine

Threads must not use it to its

um seine

to his

Requests zu handeln.

Requests to act.

Die

The

die Eigenschaft, wie viel

the property, how much

Requests pro Sekunde ich dann

Requests per second I then

allerdings in der Praxis,

however in practice,

wenn das Ding mit Traffic

when the thing with traffic

befeuert wird, in

is fueled, in

einer entsprechenden

a corresponding

Response Time handeln kann,

Response Time can be acted upon,

das wäre zum Beispiel eine emergente

that would be, for example, an emergent

Eigenschaft, also die sich erst aus

Property, which only emerges from

der Komplexität und aus den Wechselwirkungen

the complexity and from the interactions

der verschiedenen Bestandteile,

the various components,

meines Systems ergibt. Weil wenn

of my system. Because when

ich jetzt zwar sechs

I am now six.

Threads habe, aber alle machen als

I have threads, but everyone acts as if...

allererstes erstmal, dass sie sich

first of all, that they sich

den einen globalen Mutex holen

get the one global mutex

und blockieren dann

and then block

so lange, bis sie mit ihrer Arbeit fertig

until they are done with their work

sind, dann bringen die mir effektiv

are, then they effectively bring me

nichts, weil nicht parallel gearbeitet wird.

Nothing, because there is no parallel work being done.

Auch wenn ich das

Even if I do that

Potenzial dazu hätte.

It could have potential.

Da könnten wir

There we could

überlegen, dass vielleicht als eine Art

considering that perhaps as a kind of

Gedankenhilfe

Thought assistance

zu verwenden, diese

to use, this

Differenzierung zwischen

Differentiation between

inhärenten und emergenten

inherent and emergent

Eigenschaften.

Properties.

Aber wir haben

But we have

ja eben schon gesagt, also es geht,

yes, I just said it, so it works.

wenn wir über Qualität reden,

when we talk about quality,

definitiv mal um Eigenschaften,

definitely about properties,

um eine Menge von Eigenschaften.

about a range of characteristics.

Ich glaube, was es

I believe, what it is.

irgendwie tricky macht, ist meistens

somehow tricky, is mostly

sind die Qualitäten so Dinge, die

are the qualities such things that

eher so emergent sind, also die dann

more emergent, so then

auftreten, wenn das System

occur when the system

wirklich in Benutzung ist und nicht in den

really in use and not in the

relativ künstlichen

relatively artificial

Qualitätssicherungsanforderungen.

Quality assurance requirements.

Also wenn ich zum Beispiel

So when I, for example,

das in der Testumgebung teste,

testing in the test environment,

habe ich meistens vielleicht maximal

I mostly maybe have a maximum.

zwei Nutzer gleichzeitig, die das System

two users simultaneously using the system

benutzen. Ja, bestimmt.

Use. Yes, certainly.

Und dann passieren halt solche

And then such things happen.

Made-for-QA-Systems,

Made-for-QA-Systems,

wo ich wunderbar

where I am wonderful

durch alle Tests durchgegangen bin

went through all the tests

und dann in der Produktion allerdings feststelle,

and then in production, however, I find that,

gerade die Sachen, die dann

especially the things that then

auftreten, wenn ich sehr viel komplexe

occur when I have a lot of complex

Interaktionen habe,

I have interactions,

die habe ich einfach nicht bedacht. Also was

I just didn't consider that. So what?

passiert, wenn zum Beispiel gewisse

happens when, for example, certain

Ressourcen ausgehen, wenn mir der

Resources run out when the

Arbeitsspeicher ausgeht, wenn mir der Connection

The memory runs out when the connection...

Pool ausgeht,

pool goes out,

dann habe ich nicht bedacht, wie

then I didn't consider how

reagiert das System und meistens

the system responds and mostly

fliegt dann irgendeine sehr technische,

then some very technical one flies,

sehr kryptische Exception, die uns erstmal

very cryptic exception that initially leaves us

nichts sagt um die Ohren.

Nothing says around the ears.

Ja, aber

Yes, but

wie gesagt, zurückführen

As mentioned, lead back.

können wir das letztlich auf so eine Art

Can we ultimately do it in such a way?

Menge von Eigenschaften,

Amount of properties,

die halt IT-Systeme oder

do the IT systems hold or

Produkte haben

Have products

oder haben sollen.

or should have.

Ja. Und da

Yes. And there

haben wir halt dann wieder dieses

then we just have this again

Dilemma, dass manchmal uns

Dilemma that sometimes us

Leute sagen, was sie

People say what they

sich wünschen, also ihre

to wish for themselves

Anforderungen explizit machen oder aber, dass sie es

Make requirements explicit or that they do it.

halt auch nicht sagen oder vergessen.

Don't say or forget either.

Was

What

ich persönlich gut finde, um es zu

I personally find it good to do it.

vermeiden, dass man es vergisst, ist tatsächlich,

avoiding that one forgets it is actually,

dass man so eine Art Checkliste

that you have some kind of checklist

benutzt und halt wirklich sagt,

uses and really says,

ich gucke mir an, was sind die

I'm looking at what they are.

Eigenschaften, die ich vielleicht nicht

Qualities that I might not

bedacht habe, die

considered that the

allerdings vielleicht irgendwie wichtig

however, perhaps somehow important

sein könnten. Also, dass ich mir überlege,

could be. So, that I think about it,

was ist zum Beispiel mit dem Thema

What about the topic, for example?

Barrierefreiheit, was ist

Accessibility, what is it?

mit dem Thema Usability,

with the topic of usability,

was ist mit dem Thema

What is the topic?

Disaster Recovery.

Disaster Recovery.

Ich habe zum Beispiel einen Kunden, der

I have, for example, a client who

macht sich enorme Sorgen darüber, dass

is extremely worried about that

irgendwie so ein Kryptotrojaner in deren

some kind of a crypto Trojan in their

Datacenter wütet

Data center raging

und sie dann tatsächlich

and then they actually

irgendwie sehr schnell aus Backups

somehow very quickly from backups

wiederherstellen müssten.

would have to restore.

Und all das sind Dinge,

And all of this are things,

wenn ich sie bedenke

when I consider them

und wenn ich die wie so eine Art Checkliste

and when I have it like some sort of checklist

benutze, dann kann ich natürlich sehr

use it, then I can of course very

viel eher drauf eingehen

much sooner address it

und kann sagen, okay, was sind die Sachen,

and can say, okay, what are the things,

die wirklich wichtig sind für diese Software,

that are really important for this software,

die ich da habe. Ja, das ist eine

that I have there. Yes, that is a

super Anmerkung, finde ich,

super note, I think,

weil diese Checklisten uns ja auch

because these checklists help us as well

im täglichen Leben, also

in daily life, so

manche von uns nehmen ja vielleicht auch mal so eine Art

Some of us might also take a kind of that.

Einkaufsliste mit zum Einkaufen,

Shopping list for shopping,

um uns daran zu erinnern, woran wir

to remind us of what we

alles denken müssen. Und

have to think about everything. And

interessanterweise gibt es ja für

Interestingly, there is for

Qualität oder für Qualität

Quality or for quality

von IT-Systemen

of IT systems

schon relativ lange Zeit

already quite a long time

solche Checklisten, solche

such checklists, such

Eigenschaftenlisten

Property lists

unter dem Oberbegriff Qualitätsmodelle.

under the umbrella term quality models.

Ja, da über

Yes, there above.

Details kann man vielleicht sogar

One might even be able to provide details.

nochmal eine eigene Folge machen, da das

make another episode on its own, since the

ist auch ein spannendes Ding, aber

is also an exciting thing, but

aus meiner Sicht eine relativ bekannte

from my point of view, a relatively well-known

solche Checkliste ist der

such a checklist is the

ISO 2510 Standard,

ISO 2510 Standard,

der letzten November

the last November

in einer

in a

aktualisierten Fassung erschienen

updated version published

ist, ein bisschen vervollständigt,

is, a little completed,

der etwa 40

the approximately 40

mögliche, nein, der 40

possible, no, the 40

Eigenschaften aufzählt,

lists properties,

also die halt IT-Systeme haben,

so they have IT systems,

mehr oder weniger davon

more or less of it

haben können, aber sie haben sie halt

could have, but they just have it

und mit 40 Eigenschaften, das ist

and with 40 features, that is

ja schon mal ein guter Start,

yes, a good start already,

die sind auch

they are also

sehr breit thematisch,

very broad in terms of topics,

diese ISO-Begriffe,

these ISO terms,

sodass das, glaube ich, schon

so I think that already

hohe Wahrscheinlichkeit besitzt,

has a high likelihood,

dass Dinge, die für Stakeholder

that things that are important for stakeholders

relevant sind, auch in

are relevant, also in

dieser ISO 2510

this ISO 2510

Aufzählungsliste mit dabei sind.

List of inclusions.

Ja, ich habe die

Yes, I have the

auch schon in meinen Projekten benutzt,

also already used in my projects,

so als Checkliste, dass ich auch

as a checklist, so that I also

wirklich an alles gedacht habe.

I really thought of everything.

Die leidet allerdings

She is indeed suffering.

in meinen Augen so ein bisschen an

in my eyes a bit like

ein paar Nachteilen, auf die ich jetzt gar nicht so

a few disadvantages that I'm not really going to mention now

groß eingehen möchte,

would like to elaborate on it,

aber das ist auf jeden Fall ein

but that is definitely a

Anlaufpunkt, sich diese ISO-Norm

Contact point to obtain this ISO standard.

mal anzugucken, man

to take a look at it, man

muss die dafür auch nicht kaufen, also es

doesn't have to buy it for that, so it

gibt Grafiken, wo man einfach diese

There are graphics where you can simply do this.

verschiedenen Begriffe einmal

different terms once

so als Mindmap aufgelistet sieht

it looks like this listed as a mind map.

und das kann schon.

and that can already.

Also die Paywall bei ISO ist

So the paywall at ISO is

verhältnismäßig hoch, aber wie du sagst,

relatively high, but as you say,

man bekommt diese

one gets this

Visualisierung an verschiedenen

Visualization at different

Stellen und aber selbst vom ISO,

Positions and but also from the ISO,

ganz offiziell bekommt man halt so

officially, that's just how you get it

eine Reihe Begriffsdefinitionen,

a series of definitions of terms,

um sich halt einen Überblick

to get an overview

zu verschaffen, was könnte da relevant sein.

to provide, what could be relevant there.

Das

The

Dilemma, was ich dahinter

Dilemma, what I mean by that.

sehe, ist, dass diese

I see that this

reine

pure

Aufzählung

Enumeration

dieser Eigenschaften halt in der Praxis

the practical application of these properties

ja als, erstmal ist das

Yes, as, first of all, that is the

cool, dass ich so eine Checkliste habe,

Cool that I have such a checklist.

aber als Entwicklungsteam weiß ich jetzt immer noch nicht so richtig,

but as a development team I still don't really know,

was ich machen soll.

what I should do.

Du sollst jetzt ein sicheres,

You should now create a secure,

sicheres System bauen, nicht nur ein System

build a secure system, not just any system

bauen.

to build.

Ja, und

Yes, and

dann kann ich mich halt immer leicht rausreden und sagen,

then I can always easily bluff my way out and say,

ja, ich habe da jetzt ein sicheres System gebaut,

Yes, I have now built a secure system.

also kein Kindergartenkind

so no kindergarten child

der Welt kann das angreifen.

the world can attack that.

Und ja, du

And yes, you.

lachst jetzt, aber du hast mir nicht gesagt,

you are laughing now, but you didn't tell me,

wie viel Sicherheit du haben willst.

how much security you want.

Meine Annahme war,

My assumption was,

also ich weiß, dass dein Kind noch sehr, sehr klein

So I know that your child is still very, very small.

ist und dein Kind, weiß ich, das kann es nicht angreifen.

It is, and your child, I know, it cannot attack.

Also ich möchte natürlich

So I want of course

die absolut maximale Sicherheit

the absolute maximum security

zu dem absoluten minimalen Preis.

at the absolute minimum price.

Ja, und jetzt hast du direkt

Yes, and now you have directly

zwei Eigenschaften auf einmal in die

two properties at once into the

Waagschale geworfen. Das ist halt eine

Scales thrown. That's just how it is.

spannende Sache, dass wir

exciting thing that we

nur mit dem Namen

only with the name

der Eigenschaft, ich möchte gerne Performance

the quality, I would like to have performance

oder ich möchte gerne Sicherheit,

or I would like security,

da

since

sind wir begrifflich so

are we conceptually so

schwammig, dass das eher

vague, that it's more so

negativ nutzen

negative use

als positiv nutzen in der Praxis hat.

as a positive benefit in practice.

Das heißt, wir müssen in der Praxis

That means we need to put it into practice.

noch ein kleines

just a little more

begriffliches Schrittchen weitergehen.

to take a conceptual step further.

Wir müssen uns nämlich damit beschäftigen,

We need to deal with this,

was die Ausprägung dieser Eigenschaften

what the manifestation of these characteristics

sind.

are.

Also auch wenn ich bei einer Textilie Langlebigkeit

So even if I want durability in a textile

sage,

sage,

ich muss explizit sagen,

I must explicitly say,

meine ich tatsächlich länger

I actually mean longer.

als einen Monat oder

as a month or

wie viel länger meine ich?

how much longer do I mean?

Nennen wir das mal

Let's call that.

die zweite Dimension der

the second dimension of

Qualität. Also wenn die erste Dimension

Quality. So when the first dimension

das ist, dass ich überhaupt mal die Eigenschaften

that is that I ever once the properties

aufzähle, die auf so einer gedachten

list, which is based on such a thought

Achse alle hintereinander

Axis all in a row.

aufzähle, also da 40 von ISO oder

List, so 40 from ISO or

88

88

bei Wikipedia oder so,

at Wikipedia or so,

also ich zähle die jetzt mal auf, aber das

So I'll list them now, but that

sind ja im Moment nur Schlagworte.

They are just buzzwords for the moment.

Und was uns dann weiter

And what will happen to us then?

helfen würde in der Praxis wäre,

what would help in practice would be,

wenn ich jetzt ausprägen würde und sagen,

if I were to express this now and say,

ja, ich möchte, dass das System

Yes, I want the system to

so performant

so efficient

ist, dass ein Request garantiert

is that a request guaranteed

in 50 Millisekunden beendet

completed in 50 milliseconds

ist. Also dass ich als User

is. So that I, as a user

nach x Millisekunden

after x milliseconds

die Antwort auf meine Frage auf dem

the answer to my question on the

Bildschirm sehe.

I see a screen.

Dann hätte ich eben nicht nur

Then I just wouldn't have only

blöd nach Performance gefragt, sondern ich hätte

stupid to ask about performance, instead I would have

dann konkretisiert in dieser zweiten

then specifies in this second

Dimension eine Ausprägung der Eigenschaft

Dimension is an expression of the property.

für diesen

for this

einen Use Case hätte ich gerne 50

I would like to have one use case, 50.

Millisekunden an Performance. Das

Milliseconds of performance. The

wünsche ich mir.

I wish for.

Und das würde

And that would

so ein bisschen weiterhelfen

to help out a little bit

und damit wir das schaffen, muss ich mich halt

and to make that happen, I just have to

mit Messen und Vergleichen

with measuring and comparing

rumschlagen. Also ich muss halt dann überlegen,

to struggle. So I just have to think then,

wie kann ich bestimmte Eigenschaften

how can I achieve certain properties

messbar oder vergleichbar machen.

make measurable or comparable.

Und ja.

And yes.

Das ist ja

That's indeed

super. Das heißt also, ich gehe

Great. So that means, I'm going.

jetzt hier und sage zu meinem Product Owner,

now here and say to my Product Owner,

lieber Product Owner, guck mal, hier ist diese

Dear Product Owner, take a look, here is this

ISO-Norm. Sag mir doch mal,

ISO standard. Just tell me,

was willst du haben und was

What do you want to have and what?

in welchem Grad?

To what extent?

Und dann sollte er mir das sagen.

And then he should tell me that.

Ja, das kann ich mir super vorstellen, wenn du halt

Yes, I can really imagine that, when you just...

mit so einer 40 Liste,

with such a 40 list,

mit so einer Liste mit 40 Begriffen kommst

with a list of 40 terms like that you come

und nicht so jeder in dieser 40 Begriffe.

and not just anyone in these 40 terms.

Ich übertreibe

I'm exaggerating.

jetzt nicht, wenn ich sage,

not now, when I say,

in dieser ISO-Norm, das ist ja nur ein

in this ISO standard, that is just a

Vorschlag. Also, wie gesagt,

Proposal. So, as I said,

Wikipedia listet 88

Wikipedia lists 88.

und andere Qualitätsmodelle liegen bei deutlich

and other quality models are clearly at

über 100 Eigenschaften.

over 100 features.

Ich persönlich könnte mir

I personally could imagine

vorstellen, dass deine POs

imagine that your POs

nicht genügend Langeweile

not enough boredom

haben, um wirklich

to have, in order to really

zu 80,

to 80,

100 solchen Eigenschaften

100 such characteristics

dir genau zu beschreiben, in welcher

to describe to you exactly in which

Ausprägung sie das gerne hätten.

The expression they would like to have.

Weil es bestimmt Eigenschaften

Because it definitely has properties

gibt, wo sie sagen,

there are, where they say,

das interessiert mich in feuchtem

That interests me in moist.

Kehricht. Also, die Eigenschaft ist einfach

Rubbish. So, the property is simply

für mich nicht wichtig. Es ist egal, ob die

not important to me. It doesn't matter whether the

hoch oder niedrig ausgeprägt ist,

whether it is strongly or weakly developed,

brauchen wir nicht.

We don't need it.

Ein Beispiel dafür

An example of that

ist ein Thema, das

is a topic that

lange Zeit in meiner beruflichen Jugend

long time in my professional youth

sehr hoch gehalten wurde,

was held in very high regard,

ist Portabilität. Also, ich soll

is portability. So, I should

jetzt ein System bauen, das auf

now build a system that is based on

x Betriebssystemen,

x operating systems,

laufen muss. Und als ich noch

must run. And when I was still

jung war, gab es halt viele Serverbetriebssysteme.

When I was young, there were just a lot of server operating systems.

Heute ist halt ganz viel, was auf dem

Today there is just a lot happening on the

Server passiert, ist halt Linux

Server happens, it's just Linux.

oder Linux-Derivate. Und da muss

or Linux derivatives. And there it has to

ich mich nicht mit VEX-VMS

I don't get along with VEX-VMS.

und IBM-Großrechner-Betriebssystemen

and IBM mainframe operating systems

und XYZ-Betriebssystemen

and XYZ operating systems

rumschlagen, kompatibilisieren.

flail about, make compatible.

Es ist einfach nicht interessant.

It's just not interesting.

Ich brauche es halt für

I just need it for

genau eine Zielumgebung,

exactly one target environment,

die ich mit

the one I have with

Containern sogar in der Dev-Umgebung,

Even containerizing in the dev environment,

Prima testen kann.

Can test perfectly.

Und dann ist Portabilität

And then there is portability.

potenziell

potential

weniger wichtiges Thema.

less important topic.

Das heißt, an manchen Stellen könnte

That means, in some places it could

ich die Ausprägung dieser Eigenschaft

I the manifestation of this property.

sogar nahezu weglassen und sagen,

even nearly leave out and say,

nee, ich brauche das halt für

no, I just need it for

genau eine Zielumgebung.

exactly one target environment.

Da muss ich das nicht viel weiter beschreiben.

I don't need to describe it much further.

Also, du sagst

So, you say

jetzt, dein Rat wäre es,

now, your advice would be,

nicht mit der ganzen Liste zu deinem

not with the whole list to your

Product Owner zu gehen, sondern wirklich

Not just to go as a Product Owner, but really

eher zu sagen, okay,

rather to say, okay,

was sind denn so die

What are the

Top-Eigenschaften, die das

Top features that the

System haben sollte und lass uns

should have a system and let's

die dann konkretisieren.

which then specify.

Ja, so wie

Yes, just like that.

ich

I

liebäugle mit einem neuen Fahrrad

I'm toying with the idea of getting a new bicycle.

und das müsste

and that should

für mich bestimmte Eigenschaften haben.

have specific qualities for me.

Also, ich bin kein Bike-Guru,

Well, I'm not a bike guru,

aber es müsste für

but it should be for

mich bestimmte Eigenschaften haben, so

I have certain characteristics, like this.

hinsichtlich Bequemlichkeit.

regarding convenience.

Preis wäre für mich schon

The price would already be fine for me.

eine wichtige Größe, aber Farbe

an important size, but color

ist mir wirklich nahezu egal.

It really doesn't matter to me.

Also, wenn es nicht gerade Gold mit

Well, if it's not just gold with

Brillanten glänzend ist,

Diamonds are shining.

ist mir die Farbe wirklich völlig egal.

I really couldn't care less about the color.

Da würde ich halt sagen, so,

Well, I would say, like,

das für mich wichtigste

the most important thing for me

Merkmal ist Rahmendimension

Characteristic is frame dimension

und das zweitwichtigste ist vielleicht

and the second most important thing is perhaps

eine Länge des

a length of

Federwegs,

spring travel,

der Vordergabel und

the front fork and

eigentlich ist mir nahezu alles andere egal.

Actually, I don't really care about anything else.

Die Rat-Expertinnen und Experten

The council experts

unter euch mögen mir das verzeihen,

may you forgive me among you,

aber so von der Priorität,

but in terms of priority,

von der Priorisierung her, ist dann halt Farbe

In terms of prioritization, it's just color.

sehr nachgelagert und

very downstream and

ja, also das

Yes, so that.

glaube ich, kann man sich ganz gut vorstellen,

I believe one can imagine quite well,

dass es halt Eigenschaften gibt, die für bestimmte

that there are certain characteristics that are suitable for specific

Stakeholder halt hohe Relevanz und für andere

Stakeholders have high relevance and for others

gar keine Relevanz besitzen.

have no relevance at all.

Wie gehst

How are you?

du denn damit um, wenn ich jetzt mir

What do you mean by that, if I now...

vorstelle, ich habe sowas in einem

Imagine, I have something like that in a...

Projekt und dann habe ich verschiedene Stakeholder,

Project and then I have different stakeholders,

wie du schon gesagt hast,

as you already said,

die einen sagen, das Allerwichtigste für mich,

some say, the most important thing for me,

weil ich Head of IT Security

because I am Head of IT Security

bin, ist, dass das System Bomben sicher

is, that the system is bomb-proof

ist und die anderen vom Fachbereich sagen,

is and the others from the department say,

das ist mir vollkommen egal, Hauptsache es ist schnell am

I don't care at all, as long as it happens quickly.

Markt. Wie geht

Market. How are you?

man um, wenn man jetzt

"One around, if one now"

verschiedene Stakeholder-Gruppen

various stakeholder groups

hat, die komplett konträre

has the completely contrary

oder zumindest nicht unbedingt kompatible

or at least not necessarily compatible

ja,

yes,

Vorstellungen

Representations

davon haben, was das System leisten soll?

to have what the system is supposed to deliver?

Ja, lass uns ruhig

Yes, let's do it calmly.

nochmal einen ganz kleinen Schritt zurücktreten.

take a tiny step back again.

Wir haben gesagt, Qualität,

We said quality,

das sind erstmal Eigenschaften von Systemen,

these are initially properties of systems,

von Produkten oder IT-Systemen,

from products or IT systems,

wenn wir

if we

mit Qualität differenzierter umgehen, dann müssen wir

handle quality more differentiated, then we must

diese Eigenschaften irgendwie ausprägen.

to somehow shape these qualities.

Also ich habe jetzt so eine zweidimensionale,

So I now have a two-dimensional,

eine Dimension ist

a dimension is

die Eigenschaften, die zweite

the properties, the second

Dimension sind die Ausprägungen.

Dimensions are the manifestations.

Was du jetzt beschreibst, ist letztlich

What you are describing now is ultimately

die dritte Dimension, dass

the third dimension, that

nämlich unterschiedliche Stakeholder

namely different stakeholders

unterschiedliche

different

Eigenschaften priorisieren und auch unterschiedliche

Prioritize properties and also different ones.

Ausprägungen haben wollen. Also eigentlich haben wir ein

We want to have manifestations. So actually we have a...

dreidimensionales Optimierungsproblem.

three-dimensional optimization problem.

Ja, das

Yes, that.

du, Johannes, sagst, ja, aber

you, Johannes, say, yes, but

ich glaube, das ist bei dir nicht so,

I don't think that's the case with you.

aber vielleicht möchtest du halt ein Fahrrad in einem

but maybe you just want a bicycle in a

ganz bestimmten Rotton, damit sich das in deine

very specific shade of red, so that it matches your

Sammlung schön einsortiert. Das ist für

Collection nicely sorted. This is for

dich sehr wichtig und

you very important and

mir ist das halt völlig egal. Ich möchte halt

I really don't care about that. I just want to.

dafür aber einen langen Federweg, den du

but instead a long travel distance, which you

gar nicht magst. Und dann haben wir halt

don't like at all. And then we just have

unterschiedliche

different

und möglicherweise sogar

and possibly even

in Konkurrenz stehende Anforderungen

competing demands

und

and

ja, deswegen brauchen

Yes, that's why we need.

wir Softwarearchitektur.

we software architecture.

Ja, damit

Yes, with that.

Menschen so global

People so global

für Produkte entscheiden können, was ist

to be able to decide for products, what is

bitte das passende

please the appropriate one

Eigenschaftenportfolio,

property portfolio,

das eine, also

that one, so

das möglichst viele Stakeholder zufriedenstellt,

that satisfies as many stakeholders as possible,

möglichst

as much as possible

viele Stakeholder maximal zufriedenstellt

satisfies many stakeholders to the fullest extent

und Zuhörerinnen, Zuhörer

and listeners

wissen, dass natürlich nicht alle Stakeholder

know that, of course, not all stakeholders

gleich wichtig sind, also dass wir

equally important are, that we

diese Eigenschaften,

these characteristics,

Ausprägungsvektoren genau genommen noch gewichten

Weighting the manifestation vectors, to be precise.

müssen und spätestens dann ist es

must and at the latest then it is

halt saukompliziert.

It's just super complicated.

Und meiner Ansicht nach, meiner Erfahrung

And in my opinion, from my experience.

nach ist das, Entschuldigung,

then it's, sorry,

einfach harte Arbeit. Ich muss

just hard work. I have to

mir als Entwicklungsteam,

to me as a development team,

als Architekt oder Architektin halt

as an architect

die Mühe geben, ich muss mir diese

make the effort, I have to give this to myself

gewünschten, benötigten Eigenschaften

desired, needed qualities

halt angucken und muss letztlich auch

just look at it and ultimately have to

prüfen, gibt es da irgendwas,

check, is there anything there,

was halt krass gegeneinander spricht.

which is really in stark contrast to each other.

Du hast am Anfang auch

You also had at the beginning

gesagt, minimale Kosten,

said, minimal costs,

wenn ich halt nur

if I just

ganz wenig Euro habe,

I have very little euro.

dann werde ich das System

then I will the system

bestimmt nicht

certainly not

abhörsicher für die amerikanischen

wiretap-proof for the Americans

Geheimdienste hinkriegen. Da bräuchte

Intelligence services to manage. That would require

ich möglicherweise ein bisschen mehr Budget für.

I possibly have a little more budget for it.

da gibt es, meine ich,

there is, I think,

nur Individualentscheidungen, wo

only individual decisions, where

ich halt sagen kann, so, ich gucke mir jetzt die konkret

I can say that, so I'm now looking at the specifics.

gewünschten Eigenschaften des Produktes an,

desired characteristics of the product,

der verschiedenen Stakeholder und dann

the various stakeholders and then

kann ich vielleicht rausfinden, dass es

can I perhaps find out that it

gewisse Dinge gibt, von denen ich weiß,

there are certain things that I know,

aus meiner Erfahrung her weiß das

From my experience, I know that.

sie nicht miteinander kompatibel sind.

they are not compatible with each other.

Also du sagst, da muss

So you say, it has to be.

eigentlich jemand mit drauf gucken,

actually someone to take a look at it,

der Sachverstand

the expertise

hat in Sachen Softwarearchitektur,

has in terms of software architecture,

der weiß, okay, wenn du das und das

he knows, okay, if you do this and that

haben möchtest, dann wird es schwierig,

if you want to have, then it will be difficult,

das da drüben zu haben, weil das

to have that over there, because that

so ein klassisches Ding ist, das

such a classic thing is that

beißt sich. Also zum Beispiel,

it bites itself. For example,

wenn ich super schnelle Performance

when I super fast performance

haben möchte, dann kann es zum Beispiel

want to have, then it can for example

sein, dass ich nicht hergehen kann und sagen

to be that I cannot go there and say

kann, gleichzeitig

can, simultaneously

äh,

uh,

soll das, äh, super

Should that, uh, be great?

günstig im Betrieb sein, weil, äh,

be cost-effective in operation, because, uh,

vielleicht muss ich sehr viel Hardware

Maybe I need a lot of hardware.

auf das Problem werfen. Ja,

to throw on the problem. Yes,

das ist ein sehr, sehr schönes Beispiel, ne? Ich kann

that's a very, very nice example, isn't it? I can

halt, ähm, throw hardware

stop, um, throw hardware

at the problem ist ein

at the problem is a

Verfahren, eine Taktik, wie

Method, a tactic, how

ich halt Performance steigern kann.

I can increase performance.

Heute könnte ich mir halt in der Cloud

Today I could imagine myself in the cloud.

statt eine kleine, ähm,

instead of a small, um,

eine kleine Computeinheit

a small computing unit

eine große Computeinheit kaufen, die kostet

buy a large computing unit, it costs

halt was mehr. Oder ich kaufe mir eine

Hold something more. Or I'll buy myself one.

GPU-Einheit, die kostet noch was mehr.

GPU unit, which costs a bit more.

Mhm. Ja, oder ich könnte hergehen

Mhm. Yes, or I could go over there.

und sagen, ich, ähm, statt den Code

and say, I, um, instead of the code

in interpretiertem

in interpreted

Python zu schreiben, schreibe ich den halt in

To write Python, I just write it in.

handoptimiertem Assembler-Code.

hand-optimized assembler code.

Na, und das ist von der

Well, and that is from the

Änderungsfreundlichkeit her definitiv

Changeability definitely.

erst mal schlechter. Mhm.

First of all, worse. Hmm.

Na, weil es also weniger Leute gibt, die

Well, because there are fewer people who

Assembler-Code verstehen, als die, die Python-Code

Understanding assembly code, like understanding Python code.

verstehen und, äh, Einarbeitungszeiten

understand and, uh, integration periods

sind höher, äh,

are higher, uh,

Fehlerraten werden bei Assembler-Code möglicherweise

Error rates may occur in assembler code.

höher sein. Und, äh, das...

be higher. And, uh, that...

Da wird, da wird jetzt auch die von dir

There will be, there will also be the one from you.

bereits erwähnte Portabilität

previously mentioned portability

wieder zum Problem, weil jetzt kann ich nur eine

Back to the problem, because now I can only do one.

Form von Prozessor noch

Still form of processor.

benutzen, wenn ich jetzt, äh,

use, if I now, uh,

andere haben möchte. Genau.

want to have others. Exactly.

Ja, aber das ist halt, ähm,

Yes, but that's just, um,

so ist die Welt, ja,

that's how the world is, yes,

und es ist halt ein Riesenfehler,

and it is just a huge mistake,

Software für die Anforderungen

Software for the requirements

einer bestimmten Stakeholder-Gruppe

a specific stakeholder group

auszulegen,

to interpret

und sich dann zu überlegen, ach, vielleicht

and then to consider, oh, maybe

könnten wir mal die Ops-Leute noch fragen,

could we ask the Ops people as well,

ob sie auch Wünsche haben, und, na, Security

if they have any wishes, and, well, security

fragen wir am besten erst gar nicht, die haben ja immer,

let's not ask at all, they always have,

na ja, komische Wünsche, ähm,

well, strange wishes, um,

das führt dann halt schnell ins Desaster,

that quickly leads to disaster,

dass wir, also,

that we, well,

nicht, dass es schon mal passiert wäre, na ja, aber dass

not that it has ever happened before, well, but that

wir halt Software liefern, die den Bedürfnissen

We provide software that meets the needs.

bestimmter Stakeholder überhaupt nicht

certain stakeholder at all

genügt. Ja, ich erinnere an den Salat mit den

is enough. Yes, I recall the salad with the

Zwiebeln, also, ja, ja,

Onions, well, yes, yes,

das sind halt desaströse

those are just disastrous

Situationen, gerade,

Situations, just,

na, Operations-Anforderungen zu vergessen,

Well, to forget about operational requirements,

Security-Anforderungen zu vergessen,

Forgetting security requirements,

ähm, ist ein Weg ins sichere

Um, it's a way to safety.

Desaster, na, das wollen wir nicht machen.

Disaster, well, we don't want to do that.

Jetzt hast du schon ganz viel darüber

Now you already have a lot about it.

gesprochen, dass wir Dinge vergessen oder zu

spoken, that we forget things or too

wenig liefern, ich habe auch schon das Gegenteil

deliver little, I've also had the opposite

erlebt, äh, also, dass Teams

experienced, um, well, that teams

wahnsinnig viel, ähm,

insanely a lot, um,

äh, Wert auf

uh, importance on

irgendetwas gelegt haben,

to have laid something down,

wo ich sagen würde, dass es eigentlich

where I would say that it actually

für das, was sie dort baut, äh,

for what they are building there, uh,

gar nicht so wahnsinnig relevant

not so insanely relevant at all

gewesen, also, die haben sich dann

been, so, they then got together

verkünstelt und haben dort mit,

artificial and have there with,

äh, Metaprogrammierung

uh, metaprogramming

gearbeitet, um eine,

worked to a,

äh, bessere, äh,

uh, better, uh,

Portabilität, äh, zu erlangen,

Portability, uh, to achieve,

und von, äh, C-Sharp

and from, uh, C-Sharp

auch, äh, zu anderen, äh,

also, uh, to others, uh,

Programmiersprachen wechseln zu können, sollte

Being able to switch programming languages should

irgendwann die Notwendigkeit, äh,

at some point the necessity, um,

äh, da sein, wo

uh, to be there, where

wir auch gesagt haben, sehr viel,

we also said, very much,

ähm, Energie, sehr

uh, energy, very

viel Geld, sehr viel Entwicklungsaufwand

a lot of money, a lot of development effort

reingesteckt in irgendetwas,

stuck in something.

äh, was eigentlich niemand

uh, what actually nobody

gefordert hat und was halt einfach nur,

demanded and what just simply,

also, ich, ich gehe davon aus, es hat

So, I assume it has

Spaß gemacht, weil das sind

It was fun because those are

tolle, tolle Werkzeuge,

great, great tools,

so, äh, äh, Metaprogrammierung,

so, uh, uh, metaprogramming,

äh, Programmiersprachen zu

uh, programming languages to

lernen und damit herumzuspielen,

to learn and play around with it,

aber so richtig, äh,

but really, uh,

Grund gab es dafür eigentlich

There was actually a reason for that.

nicht, dass man das gemacht hat. Ja,

not that anyone did that. Yes,

das, äh, ist so ein Phänomen,

that, uh, is such a phenomenon,

wir haben das ab und zu mal Überleisten

We occasionally have that overlaid.

genannt, ne, also, dass Teams

called, no, so, that teams

gewisse Eigenschaften weiter optimieren

further optimize certain properties

als nötig, und

as needed, and

wir wissen, dass alle, das kostet mehr

We know that everything costs more.

Geld, ne, das, also, das dauert

Money, no, that, well, that takes time.

einfach länger, das, äh,

just longer, that, uh,

sozusagen Arbeitszeitvergeudung,

so to speak, a waste of working time,

ne, und, äh,

no, and, uh,

natürlich passiert auch das genau Gegenteilige,

of course the exact opposite also happens,

dass wir halt unterliefern, also unterleisten,

that we just underdeliver, so to speak,

also minder leisten, zu wenig,

also perform less, too little,

ne, also, beispielsweise zu

no, well, for example to

schlechte Performance oder eben zu

poor performance or just too

schlechte Security, und

poor security, and

um das auszutarieren, also,

to balance that out, so,

um wirklich halt hinzukriegen, dass wir

to really manage to get that we

passgenau als Entwicklungsteam

tailored as a development team

liefern können,

can deliver,

müssen wir einfach konkrete

we just need to be concrete

Qualitätsanforderungen haben,

have quality requirements,

ne, da müssen wir einfach diese

No, we just have to do this.

Eigenschaften, Ausprägungen,

Properties, manifestations,

ne, gegeneinander müssen wir einfach,

no, we just have to face each other,

ne, so gut kombinieren,

no, to combine so well,

dass sowohl Stakeholder sich

that both stakeholders are

verstanden fühlen, als auch, dass

to feel understood, as well as that

Entwicklungsteams

Development teams

verstehen können, was denn wirklich die

to be able to understand what really the

Zielgröße ist, also, die wir halt

The target size is, well, the one we have.

erreichen müssen.

must reach.

Ja, ich glaube, da gibt's

Yes, I think there is.

doch irgendwas von, äh,

but something about, um,

ARC 42 zu dem Thema

ARC 42 on the topic

Qualitätsanforderungen, also, ich glaube,

Quality requirements, well, I think,

mich zu erinnern, dass da irgendetwas

to remind me that there is something

drin stand, von wegen, äh,

it said, like, uh,

das Wort Qualitätsziele

the term quality objectives

kommt darin vor, und das Wort Qualitätsziele

is included, and the term quality goals.

Szenarien, äh, kommt mir

Scenarios, uh, come to me.

in den Sinn, ähm,

comes to mind, um,

das ist tatsächlich eine Form,

that is indeed a form,

äh, die ich auch schon in der Praxis

uh, which I have already experienced in practice

benutzt habe, um diese,

used to, to this,

diese Sachen, äh, mit

these things, uh, with

Stakeholdern zu diskutieren, festzuzurren

Discussing and finalizing with stakeholders.

und zu sagen, lasst uns

and to say, let us

das doch mal konkret machen, wie viel ihr

let's make it concrete, how much you

tatsächlich wirklich braucht,

actually truly needs,

oder zumindest wie viel wir annehmen,

or at least how much we assume,

dass ihr braucht, das ist natürlich eine

that you need, of course, is a

ungeschriebenes Gesetz der

unwritten law of the

Informatiksoftware auszuliefern,

to deliver computer software,

ändert die Anforderungen,

changes the requirements,

äh, das, äh, werden wir damit

Uh, that, uh, we will do with that.

auch nicht aushebeln, aber wir kriegen

not undermine either, but we’ll get it

zumindest eine Chance, einige der Dinge

at least a chance, some of the things

schon frühzeitig zu fangen.

to catch early on.

Ähm, äh, um das, also,

Um, uh, to that, well,

danke, dass du das ansprichst,

Thank you for bringing that up,

ne, auf dieses, äh, ARC 42

no, on this, uh, ARC 42

Zeugs kommen wir vielleicht, äh,

Stuff might come, uh,

äh, gleich nochmal zu sprechen,

uh, let's talk again soon,

aber lass uns noch einen Schritt zurückgehen.

But let's take a step back.

Du hast, äh, Qualitätsziele,

You have, um, quality goals,

Qualitätsanforderungen gesagt,

Quality requirements said,

ähm, der

um, the

Begriff aus der Literatur, den ich da

Term from literature that I am referring to

schon seit langer Zeit kenne,

I have known for a long time,

äh, ist der der

uh, is he the

Qualitätsszenarien, ähm, dass

Quality scenarios, um, that

die, das amerikanische Software Engineering

the American software engineering

Institute vor Urzeiten mal,

Institute a long time ago,

ne, mal propagiert hat, erfunden hat,

no, has propagated, has invented,

ne, du hast mir im Vorgespräch gesagt,

No, you told me in the preliminary discussion,

dass, äh, du dich damit auch

that, um, you also with it

in der Praxis häufiger mal auseinandergesetzt hast,

you have dealt with in practice more often,

vielleicht magst du das jetzt nochmal,

maybe you like that again now,

na, konkret für uns

Well, specifically for us.

hier

here

kurz erklären, zusammenfassen, was sich mit

briefly explain, summarize what is happening with

diesem Qualitätsszenarien, also Szenario,

this quality scenarios, thus scenario,

da hab ich so eine Vorstellung, was das ist, aber

I have some idea of what that is, but

Qualitätsszenario, ähm,

Quality scenario, um,

äh, erklär es doch bitte nochmal eben.

Uh, could you please explain it again?

Das ist tatsächlich relativ

That is actually relatively.

ähnlich zu, äh, wenn man sich das

similar to, uh, when you look at it

vorstellt wie so eine Art Szenario,

imagines something like a scenario,

zum Beispiel im, äh,

for example in, uh,

äh, Acceptance Test Driven oder

uh, Acceptance Test Driven or

Behavior Driven Development, dass

Behavior Driven Development, that

ich wirklich hergehe und versuche

I really go there and try.

ganz konkret auszuformulieren,

to formulate very concretely,

was es denn eigentlich ist, was ich mit

what it actually is that I have with

so einem, äh, mit so einer

such a, uh, with such a

Anforderung erreichen möchte. Also ich hab

I want to meet the requirement. So I have

mal ein Beispiel mitgebracht für,

brought an example for,

äh, das Qualitätsziel,

uh, the quality goal,

äh, der, äh,

uh, the, uh,

ich glaub, das war Fehlerfreiheit,

I believe that was error-free.

ich hab's mir nicht dazu geschrieben, äh,

I didn't write it down for myself, um,

auf jeden Fall, das Entwicklungsteam erweitert

In any case, the development team is expanding.

das System um eine neue Funktion,

the system for a new function,

im Durchschnitt führt das Hinzufügen

On average, adding

einer neuen Funktion

a new function

während der ersten 10

during the first 10

Betriebstage zu 1,5

Operating days at 1.5

neuen Defects im Issue Tracker.

new defects in the issue tracker.

Das wäre zum Beispiel

That would be for example.

so eine Sache, wenn ich ein

such a thing, when I am a

sehr zuverlässiges System haben

have a very reliable system

möchte, das halt einfach sehr wenige,

want that, well, just very few,

äh, Issues oder

uh, issues or

Defects in Production, äh, hat,

Defects in production, uh, has,

dann könnte ich dadurch eine messbare

then I could achieve a measurable

Metrik, äh, vereinbaren

Metric, uh, agree

oder messbare Anforderungen

or measurable requirements

niederschreiben, die mir ganz

write down, which is completely to me

genau sagt, wann ich dieses Ziel

exactly says when I achieve this goal

erfüllt habe oder wann ich dieses Ziel

I have fulfilled or when I will achieve this goal.

nicht erfüllt habe. Ja,

I have not fulfilled. Yes,

und da, na, das ist jetzt ein, finde ich

And there, well, I think that's now a...

ein schöner Rückgriff auf zu dem, was wir

a nice reference to what we

vorher, was du vorher uns erklärt hast

before, what you explained to us earlier

über, äh, inhärente, emergente

about, uh, inherent, emergent

Eigenschaften, na, dem

Properties, well, the

Source Code selber, dem seh ich erst mal nicht

I don't see the source code itself for now.

an, ja, also dem Hello World

Ah, yes, so the Hello World.

Source Code, ja, vielleicht, aber realistisch,

Source code, yes, maybe, but realistically,

realistischem Source Code seh ich halt erst mal nicht an,

I don't see any realistic source code at first.

wie viel neue Fehler der

how many new errors the

Emissio Tracker auslösen wird,

Emissio Tracker will be triggered,

na, weil das halt erst

Well, because that's just the way it is.

durch die zusammen,

through the together,

das Zusammenspiel mit

the interplay with

anderen Systemteilen und

other system parts and

Usern und Infrastruktur und so weiter,

Users and infrastructure and so on,

na, rauskommen wird. Aber, na,

Well, it will come out. But, well,

ich finde das ein sehr schönes Beispiel,

I find that a very nice example,

äh, weil das eine,

uh, because that's one,

ähm, so eine diffuse, ja, soll

uhm, such a diffuse, yes, should

fehlerarm oder fehlerfrei sein

to be error-free or to be without errors

Formulierung, ähm,

Formulation, um,

entscheidbar macht. Also ich kann

decidable. So I can

als Entwicklungsteam, ne, kann ich jetzt

As a development team, no, I can't do that now.

in die Historie gucken und sage, guck mal, die letzten

looking into history and saying, look, the last

fünf Mal haben wir es, äh, geschafft,

we have managed it five times, uh,

na, und das ist

well, and that is

natürlich keine Prognose, dass wir das immer

of course no prediction that we will always

schaffen werden, aber

will succeed, but

äh, ich halte das,

uh, I'll hold this,

solche Art Formulierungen für,

such types of formulations for,

für riesen viel besser, als

for giants much better than

gar nichts zu wissen oder als nur so

to know nothing at all or just so

eine Lexikon-Definition von Fehlerfreiheit

a dictionary definition of flawlessness

zu hören. Ja.

to hear. Yes.

Und, ähm,

And, um,

Qualitätsszenarien als

Quality scenarios as

Begriff, ähm, na, das,

Term, um, well, that,

äh, das fände ich schon schön, wenn du deinen

Uh, I would really like it if you...

POs statt zu sagen, na, sag mir mal für

POs instead of saying, well, tell me for

alle Eigenschaften, was du willst, na,

all the qualities you want, well,

sagen würdest, ja, gib mir doch mal die

would you say, yes, just give me the

fünf wichtigsten Qualitätsszenarien.

five most important quality scenarios.

Man kann

One can

das zum Teil sogar richtig, äh,

that's partially even correct, uh,

gut scopen und kann sagen,

good scoping and can say,

bei dieser Funktion ist mir diese Eigenschaft

In this function, this property is important to me.

sehr wichtig und bei anderen Funktionen

very important and in other functions

ist sie mir zum Beispiel nicht wichtig. Also,

for example, she is not important to me. So,

Klassiker ist, ähm, wenn ich, äh,

A classic is, um, when I, um,

Report-Generierung habe,

I have report generation,

äh, kann es zum Beispiel

uh, can it for example

sein, dass es vollkommen egal ist, ob es so ein

to be that it doesn't matter at all whether it is such a

Report innerhalb von zwei Minuten

Report within two minutes.

oder von zehn Minuten bereitgestellt wird,

or provided within ten minutes,

weil er einmal am Monatsende ausgeführt

because he was executed once at the end of the month

wird und die Person, die

will and the person who

den anfordert, vielleicht einen Kaffee trinken

requesting that, maybe have a coffee

gehen kann. Während das vielleicht

can go. While that might

bei einem anderen System,

in another system,

wenn das täglich, äh, alle fünf Minuten

if that daily, uh, every five minutes

passiert, äh, etwas ganz, ganz

happens, uh, something very, very

anderes ist, dass ich sage,

the other is that I say,

alles, was dieses System macht, ist mir

everything this system does is to me

Reports zu generieren und, äh,

Generating reports and, um,

deswegen muss das einfach zackig,

that's why it has to be done quickly,

äh, äh, funktionieren.

uh, uh, function.

Äh, das Szenario gibt

Uh, the scenario gives

mir halt die Möglichkeit, nicht nur zu sagen,

I have the opportunity to not only say,

es muss gut performen, sondern was muss gut

It must perform well, but what must perform well?

performen und wie gut muss es performen.

perform and how well does it need to perform.

Genau. Das, äh, das

Exactly. That, uh, that

finde ich ist ein sehr wertvolles,

I find it very valuable,

ähm, sehr, sehr wertvolle

um, very, very valuable

Methodik, sehr wertvolles Verständnis,

Methodology, very valuable understanding,

dass ich damit halt sehr, sehr feingranular,

that I am therefore very, very granular,

gleichzeitig aber auch sehr, sehr

at the same time also very, very

einfach, also methodisch einfach

simple, thus methodically simple

in der Lage bin, so Anforderungen,

able to meet such requirements,

Ziele hinsichtlich bestimmter Qualitätseigenschaften

Goals regarding specific quality characteristics

zu beschreiben.

to describe.

Das, das ist nicht trivial, das fällt auch

That, that is not trivial, that also falls.

nicht vom Himmel, ähm, aber

not from the sky, um, but

es ist, ähm, na, ich brauche dafür

Well, um, I need that for...

kein spezielles Tool, keine spezielle

no special tool, no special

Notation, das ist letztlich

Notation, that is ultimately

Plaintext, also Klartext, na,

Plaintext, also clear text, well,

auf einer verbalen Ebene,

on a verbal level,

der aber durch dieses, na, das hast du halt

but through this, well, you just have it

gesagt, es gibt halt eine Metrik da drin,

said, there is a metric in it,

äh, dieser 1,5 Defects,

uh, this 1.5 defects,

äh, in 10 Tagen oder,

uh, in 10 days or,

na, die 500 Millisekunden

well, the 500 milliseconds

bis ein Ergebnis irgendwo erscheint

until a result appears somewhere

und das macht es

and that makes it

einfach, zwischen verschiedenen

simple, between different

Stakeholdern auch so ein gemeinsames Verständnis

Stakeholders also have a common understanding.

zu produzieren.

to produce.

Schon, schon ganz

Already, already quite

hilfreich. Ich kann mir das sehr gut

helpful. I can imagine that very well.

vorstellen bei so Dingen wie bei Performance

Imagine things like performance.

oder auch selbst bei Defects

or even in the case of defects

oder so, dass ich da messbare Metriken

or so that I have measurable metrics there

dran packe, aber es gibt so Wischi-Waschi

I can get to it, but there's so much wishy-washiness.

äh, Anforderungen, wie

uh, requirements, how

das System muss hübsch aussehen oder

the system has to look nice or

das System muss, äh,

the system must, uh,

nutzerfreundlich sein

be user-friendly

und da muss man, glaube ich, auch so ein bisschen

and I think you have to be a little bit like that too

kreativ werden, was die Metriken

become creative with the metrics

betrifft, also irgendwie sagen,

concerns, so somehow say,

ich formuliere das als Experiment

I formulate that as an experiment.

und sagen, ähm, ich zeige

and say, um, I show

das 100 zufälligen Leuten, die ich

the 100 random people that I

auf der Straße treffe oder die auf meiner

On the street, I meet or the one on my...

Webseite vorbeikommen und frage, die

Come by the website and ask, which

findest du das schön? Oder so.

Do you find that nice? Or something like that.

Ähm, das,

Um, that,

das klingt immer brutal aufwendig,

that always sounds brutally elaborate,

ja, also ich kann ja nicht 100 Leute fragen,

Yes, well, I can't ask 100 people,

aber, äh, du könntest ja mal

but, um, you could maybe once

zufällig 10 Leute in der Kaffeeküche

coincidentally 10 people in the coffee kitchen

fragen, ja, und, ja,

questions, yes, and, yes,

wenn ich, äh, na, wenn ich das blöd

if I, uh, well, if I find that stupid

formuliere und sage, ich will das von 10.000

I want that from 10,000.

Leuten, ne, 9.000

People, no, 9,000.

das irgendwie cool finden,

to find that somehow cool,

na, aber da könnte man ja auch so ein Kompromiss,

Well, but one could also come up with a compromise.

finden und sagen, hm, ne, ich nehme

find and say, hmm, no, I'll take

eine etwas kleinere Zielgruppe,

a slightly smaller target audience,

ne, und mache damit halt mal so einen Versuch.

No, and just give it a try.

Ja, ja, ja.

Yes, yes, yes.

Vielleicht können wir, äh,

Maybe we can, um,

Johannes, jetzt noch einen kleinen

Johannes, now just a little more.

Rückgriff machen. Du hast eben schon mal angesprochen,

Make a reference. You just mentioned it earlier.

dass es da von AKT 42

that there is from ACT 42

einen Vorschlag gibt.

there is a proposal.

Der ist, äh, wirklich

He is, um, really

entstanden aus der Not

born out of necessity

aus Projekten, dass wir gesagt

from projects that we said

haben, also ich in Projekten

have, so I in projects

das Problem hatte, dass

the problem was that

ich nicht so richtig genau wusste, wie ich bestimmte

I wasn't quite sure how I should handle certain things.

Eigenschaften beschreiben soll.

Should describe properties.

Und mir fällt immer sowas viel leichter, wenn ich

And it always comes much easier to me when I

eine Vorlage habe, ein Vorbild.

I have a template, a role model.

Also habe ich mich auf die Suche gemacht nach

So I set out in search of

Vorbildern, na, nach, nach Beispielen

Role models, well, after, according to examples.

für alle Arten

for all kinds

von Eigenschaften und

of properties and

ich habe 10 Jahre lang

I have been for 10 years.

auf der, auf irgendeinem GitHub-Repo

on the, on any GitHub repo

bei AKT 42 so ein Word-Dokument

at ACT 42 such a Word document

gepflegt, ne, wo ich, wo halt

Well-groomed, no, where I, well, where

so ein paar Szenarien gesammelt waren. Das war

a few scenarios had been gathered. That was

relativ, ähm,

relatively, um,

dünn, na, es waren

thin, well, there were

jetzt keine, so, nicht, nicht viele Dutzend,

now none, so, not, not many dozen,

solcher Szenarien. Ich glaube,

such scenarios. I believe,

es war besser als gar nichts. Und irgendwann habe ich

it was better than nothing at all. And at some point, I have

dann gesagt, ja, die Idee ist gut, aber die

then said, yes, the idea is good, but the

Umsetzung ist noch nicht gut genug. Ich, ich brauche

Implementation is still not good enough. I, I need

mehr Szenarien, weil ich einfach,

more scenarios, because I simply,

na, in, in größeren Systemen doch

well, in larger systems yes

eine Vielzahl von Eigenschaften

a variety of characteristics

habe, wo es keine Vorbilder gab. Also nichts

I have, where there were no role models. So nothing.

zum Abschreiben. Ja. Ja, und dann haben

to copy down. Yes. Yes, and then we have

wir bei AKT 42, äh,

we at AKT 42, uh,

gesagt, so, wir machen, wir, wir versuchen das

said, so, we do, we, we try that

jetzt mal in bisschen größerem Maßstab,

now on a slightly larger scale,

sodass wir zumindest mal,

so that at least we,

ähm, für diese ISO-Norm

um, for this ISO standard

sowieso und am liebsten auch,

anyway and preferably also,

direkt für diese 90, die bei

directly for these 90, which are at

Wikipedia stehen, na,

Wikipedia stands, well,

dafür jede dieser genannten Eigenschaften

for each of these mentioned characteristics

mal ein, zwei solche konkreten

maybe one or two such specifics

Beispiele haben, also solche konkreten

Have examples, so concrete ones.

Szenarien haben. Mhm. Und

to have scenarios. Mhm. And

das ist Open Source, also das ist eben

that is open source, so that is just

komplett frei benutzbar, also im Gegensatz

completely free to use, in contrast

zum ISO hat das überhaupt keine Paywall.

There is no paywall at all for the ISO.

Wir verlinken das mal in

We'll link this in.

den Shownotes, ähm,

the show notes, um,

und das war halt für mich ein,

and that was just a,

äh, erst mal, das ist ein

Uh, first of all, that's a

relativ junges Projekt, also im Gegensatz zu

relatively young project, so in contrast to

AKT 42 selber ist das halt, na,

ACT 42 itself is just that, well,

relativ jung, na, freut sich

relatively young, well, is happy

auch über Pull-Requests und, ähm,

also about pull requests and, um,

und Vorschläge, aber das war halt wirklich

and suggestions, but that was really just

aus der Not geboren, na, dass

born out of necessity, well, that

ich halt auch keine Antwort geben konnte

I also couldn't provide an answer.

aus dem Stehgreif auf so,

on the spot like that,

ja, wie mache ich das denn mit Ästhetik

Yes, how do I do that with aesthetics?

oder Usability oder im Security-Umfeld

or usability or in the security environment

gibt es so einige, na, ein bisschen

There are quite a few, well, a little.

diffizile, nicklige

difficult, tricky

Eigenschaften, äh, und

Properties, uh, and

ja, jetzt gibt es zumindest so

Yes, now at least there is so.

eine Art Portal, wo halt solche

a kind of portal, where such

Beispiele mal gesammelt sind und,

Examples have been collected and,

ähm, ja, ich kann nur

Um, yes, I can only

sagen, dass Leute, die da dieses Problem

saying that people who have this problem

haben, Eigenschaften, Qualitätseigenschaften

have, properties, quality characteristics

zu beschreiben, mal dort mal suchen gehen.

to describe, sometimes go there, sometimes look.

Ja, super.

Yes, great.

Das, äh, klingt doch

That, uh, sounds good.

auf jeden Fall nach einem guten

definitely after a good one

nächsten Schritt, wenn ihr diesen

next step, when you have this

Podcast gehört habt.

listened to the podcast.

Schaut euch quality.akt42.org

Check out quality.akt42.org

an oder klickt in den

on or clicks in the

Shownotes.

Show notes.

Dann würde ich sagen, Gernot?

Then I would say, Gernot?

Ähm, dir, Johannes, ganz, ganz vielen Dank

Um, thank you very, very much, Johannes.

für das interessante Gespräch.

for the interesting conversation.

Euch und Ihnen,

To you and you,

allen Zuhörerinnen und Zuhörern, ganz

to all listeners, very

vielen Dank fürs, hoffentlich

Thank you very much for, hopefully.

bis hierhin zuhören. Wir freuen uns

Listen up to this point. We are pleased.

über Rückmeldung und Feedback.

about feedback and response.

Ähm,

Um,

und, äh, ich bin ziemlich

and, um, I'm pretty

sicher, dass wir zu diesem Thema

sure that we are on this topic

Qualität nochmal weiter

Quality once again further.

reden werden. Wir werden

talking will be. We will

definitiv mit, äh, Micha Stahl

definitely with, uh, Micha Stahl

zusammen nochmal eine Episode

together again one episode

fortsetzen, wo wir drüber reden,

continue where we left off discussing,

wie kann man denn vielleicht diese

How can one perhaps this?

jetzt geforderten Eigenschaften

currently required properties

auch erreichen. Ja, weil das,

also achieve. Yes, because that,

ähm, wäre ja für euch Architektinnen

Um, that would be for you architects.

und Architekten noch ein großer Schritt.

and architects is still a big step.

Und der Johannes hat da ganz, ganz viele Ideen,

And Johannes has so many ideas there,

deswegen müssen wir den dann, wenn wir den

That's why we have to do it then, when we do it.

auch wieder dazu einladen.

also invite again.

Also, vielen Dank und

Well, thank you and

euch alles Gute bis zum nächsten Mal.

Wishing you all the best until next time.

Macht's gut, ciao. Tschüss.

Take care, bye. See you.

Continue listening and achieve fluency faster with podcasts and the latest language learning research.