Bevor wir mit Qualitätsmanagement im Abschnitt Test weitermachen,
möchte ich Ihnen den Überblick geben. Das ist der Inhalt
dieses kurzen Videos und ich möchte Ihnen einen Baum skizzieren.
Qualitätsmanagement, so hatten wir es schon gesagt, geht darum,
gezielt etwas zu erreichen, Eigenschaften gezielt zu erreichen.
Ich lasse das gleich mal hier stehen, Qualitätsmanagement,
Maßnahmen, das ist der erste Punkt.
Und das heißt, gewünschte Eigenschaften Heggen schafften, soll das heißen.
Erreichen. Und dazu haben wir zwei große Blöcke,
zwei große Möglichkeiten, zwei große Gruppe von Maßnahmen.
Maßnahmen ist etwas, was wir wirklich einsetzen können,
was wir machen können. Und die erste Gruppe heißt konstruktive
Maßnahmen. Und die zweite Gruppe analytische Maßnahmen
Konstruktiv heißt die deswegen, weil wir das Aufbauen beeinflussen.
Dinge gleich von Anfang an richtig tun.
Also gar nicht erst Fehler tun, Fehler vermeiden.
Das ist der richtige Punkt. Ja,
und hier bei dem analysischen Maßnahmen,
da geht es darum,
Probleme zu finden
Natürlich in der Folge die Probleme zu beheben, aber die Probleme sind schon entstanden.
Und wenn sie diese beiden Sachen einfach nur so hören,
wie ich sie jetzt gerade argumentiere, dann ist schon jedem klar,
ohne große Ausführung, dass es eigentlich viel wichtiger ist,
diese Dinge gleich richtig zu tun.
Dieses Rework, von dem ich eben sprach,
im vorganggegangenen Abschnitt, dass das der Aufwand,
den Aufwand wirklich so hoch treibt und dass das der Schlüssel ist,
zur Produktivitätsverbesserung.
Das wäre also das Beste. Wir sollten uns vorrangig auf
die konstruktiven Maßnahmen konzentrieren. Die analytischen sind wichtig,
um zu prüfen, Was machen wir denn hier?
Was liefern wir zum Kunden aus, um das sicherzustellen?
Das ist richtig. Aber wir würden nachträglich die Probleme erst beheben können.
Besser wäre es doch, die Probleme erst gar nicht zu erzeugen.
Und das ist jetzt der Punkt, wo wir hier ansetzen.
Bei den konstruktiven Maßnahmen haben wir drei Untergruppen.
Ich schreibe mal hier nur um, siehe folgende Folie.
Ich wechsle gleich dahin, nur damit wir dieses Bild irgendwie komplett haben.
Und bei den analytischen Maßnahmen gehen wir auch in der Folge
noch weiter
Und zwar haben wir statische Maßnahmen.
Das ist der Abschnitt 3.6. Da gehen wir vor allem,
werden wir vor allen Dingen auf Reviews und Inspektionen eingehen.
Und bei den dynamischen Maßnahmen.
Das ist der Abschnitt
In dieser Vorlesung, da gehen wir vor allen Dingen auf den Test ein.
Es gibt jeweils noch weitere, auf die wir im Rahmen
dieser Vorlesung nicht eingehen, nur dass sie den Überblick haben.
Diese Folie soll so den Überblick bieten. Sie sehen also schon von der Nummerierung her,
dass wir für eine Reihenfolge her, wir gehen jetzt,
ich spreche, sage gleich noch was zu den konstruktiven Maßnahmen,
dann werden wir uns mit Test beschäftigen.
Das hat damit zu tun, dass wir in der Reihenfolge
für die Übung brauchen und dann die statischen Maßnahmen Reviews, Inspektionen.
All diese Gruppe dient nur darum, Probleme zu finden,
dynamisch, wenn irgendetwas ausgeführt wird,
das können wir an dem Namen schon lesen und statisch,
da wird nichts ausgeführt, da wird etwas begutachtet.
Doch dazu zu dem Unterschied dieser beiden Gruppen,
sagen wir später nochmal was, wenn wir einen Abschnitt 3,5 sind,
jetzt etwas noch zu den konstruktiven Maßnahmen.
Und bevor wir dazu kommen, noch etwas zu der Folie,
zu den Fragen dazu. Ja,
hier haben wir vor allen Dingen die Fragen mit Inspektionen und Tests,
die wir im Abschnitt 3-5 haben.
Das heißt, dieser Überblick selber ist in den Fragen nicht repräsentiert.
So, weiter mit diesem Überblick jetzt, wie angekündigt,
was für konstruktive Maßnahmen das sind. Ich möchte gleich einführend dazu sagen,
leider, leider ist, obwohl diese konstruktiven Maßnahmen,
die viel wichtigeren sind, ja, und die,
die viel stärker für die Produktivität sich auswirken,
widmen wir ihnen nicht so viel Zeit.
Das halt ein bisschen damit zu tun,
wie das in der Praxis ist. Es ist so,
dass in der Praxis sehr in großen Projekten diese konstruktiven Maßnahmen
eine große Rolle spielen sollten, aber praktischerweise im Praxisleiter nicht so tun.
Wir konzentrieren uns leider, muss ich sagen, das tut mir selber ein bisschen weh.
Wir müssen zeitlich ein bisschen beschränken. Wir kümmern uns um dynamische Maßnahmen den Test,
weil das einfach eine große Rolle im Berufsalltag der Informatiker spielt,
um statische Maßnahmenreviews, Inspektionen,
weil die auch eine sehr große Bedeutung haben,
weil sie viel besser sind als Test, was sie im Sinne des Findens.
Und hier ist leider nur das, was auf der
folgenden Folie steht. Ich stelle Ihnen kurz vor,
worum es dabei geht
Ich nenne ihn drei Gruppen. Und diese drei Gruppen sind ausgerechnet hier noch in der Reihenfolge geordnet,
wie sie umgekehrt zu dem, was sie bringen.
Also am meisten bringt die unterste Gruppe, mittler,
mittlermäßig die nächste und am wenigsten schafft die oberste Gruppe,
aber das ist bei Leuten die Informatik machen und die meisten seinen Technikfokus haben,
auch zuerst im Fokus.
Ich fange trotzdem mal in dieser Reihenfolge an,
wie sie bei uns, ich gehe mal von mir auch aus,
bei technisch orientierten Menschen, die dieses Fach Informatik wählen,
im Vordergrund steht.
Wenn man sagt, wir wollen Dinge gleich richtig tun,
denken viele an Tools
Ja, und das sind deswegen Tools und vielleicht auch noch Methoden,
ja, also was für Werkzeuge können wir einsetzen, die uns helfen, Dinge gleich richtig zu tun.
Und das ist zunächst erstmal Methoden und Werkzeuge,
das ist genau diese Disziplin, wo diese Vorlesung dazugehört,
sagt, wer Engineering, Softwaretechnik ist der deutsche Name dafür,
ja, also wo können wir durch Autocomplete, durch Korrektur,
durch Korrektheitsbeweiser, durch Constraints, durch Modelle unterstützen,
dass Fehler gar nicht erst auftreten, dass einem auffällt,
wenn dort etwas inkonsistent ist, das einem auffällt,
wenn dort etwas nicht ganz korrekt ist,
nicht vollständig ist.
Natürlich fällt einem auch Programmiersprachen ein, es gibt Programmiersprachen,
die unterstützen das ein bisschen besser, dass man keine Fehler macht, andere ein bisschen weniger.
Wobei ich sagen muss, das sollten wir nicht überbewerten. Es gibt die wenigsten Projekte,
bei denen man über die Programmiersprache noch entscheiden kann,
weil meistens das vorgegeben ist,
weil im Umfeld schon ganz viel entstanden ist mit Python C. Sharp,
Java,
was auch immer,
oder weil die Kompetenz der verfügbaren Mitarbeiter eben in einem bestimmten Bereich liegt und da werde ich nicht anfangen,
jetzt Eifel oder Smalltalk zu machen,
nur weil es diese Sprache gibt oder ein Go
So, also dieser Bereich ist der, der technikaffinen Menschen
zuerst einfällt, zur Unterstützung, Fehler nicht zu machen.
Aber der kleinste Einfluss. Die nächstgrößeren Einfluss haben bei großen Projekten
sogenannte organisatorische Maßnahmen. Da mögen sie vielleicht denken, ja,
hier steht noch Projektmanagement, ich bin doch kein Projektmanager.
Tatsächlich können sie es in wenigsten Fällen beeinflussen,
aber das Projektmanagement hat einen großen Einfluss.
Wenn wir nämlich gut geplant arbeiten, dann verhindern wir Zeitdruck.
Dann verhindern wir Leerlauftätigkeit. Nur verhindern wir,
dass improvisiert werden muss.
Wer verhindern zusätzliche Zyklen
Wenn gute Koordinationen stattfindet, dann verhindern wir,
dass Leute mit Arbeit zugeschüttet werden und dadurch mehr Fehler machen.
Der Anteil von geplanten Tätigkeiten ist besser. Konfigurationsmanagement ist ganz wichtig,
es liegt leider immer noch Projekte, wo es sowas nicht gibt,
schützt vor Veränderungen, schützt vor Inkonsistenz, nichts ist insbesondere vor Ungeplanten Veränderungen.
Sorgt dafür, dass wir nur abgesicherte,
also geprüfte Dinge überhaupt einfrieren und dann,
dass sie eingefroren sind und dann vor Veränderungen geschützt sind,
dieses Check-in, Check-out, soll die jeder kennen,
aber es gibt immer noch Projekte,
die Konfigurationsmanagement nur über Versionierung,
über Dateinamen machen
Da ist es eben nicht vor Veränderungen wirklich geschützt,
sondern es erfordert die Disziplin. Und Disziplin ist nun mal
löchrig. Wenn ich unter Zeitdruck bin, denke ich,
ach, das mache ich jetzt mal schnell.
Und dann hat es jemand anderes aber nicht gewusst und
dann wird eine Änderung überschrieben und wir haben einen Fehler,
der eigentlich schon behoben ist, über eine alte Version wieder drin.
Und was hier auch noch hilft, ist ein Vorgehensmodell.
Ja, dieses Vorgehensmodell ist erstmal für Sie, Marc,
sehr abstrakt klingen. Das klingt so,
als würden wir ja nur, wie organisieren wir unser Projekt?
Ja, das ist ganz entscheidend. Zum Beispiel,
dass im Vorgehensmodell drinsteht, dass die Anforderungen geprüft werden
Dass ein Entwurf geprüft wird, welches Szenarien das sind.
Was gehört alles zu einer Anforderungsbeschreibung? Was sind die wichtigen Entscheidungen?
Wie werden Entscheidungen dokumentiert? Alles, das sind Dinge,
die dazu beitragen, dass wir Fehler gleich erkennen oder noch besser,
dass wir Fehler gar nicht erst machen,
weil es klar wird, was die Ziele sind.
Und frühzeitige Prüfung ist das eine,
aber Bereitstellung des Richtigen und richtige Rollen, Zuordnungen,
Tätigkeiten, Folge von Tätigkeiten bereitstellen, der Informationen,
die ich brauche, eine Tätigkeit richtig zu führen.
All sowas wird im Vorgehensmodell festgelegt mit seinen Rollen
Aktivitäten und Dokumentstrukturen
Geht über das hinaus,
was ich hier in meinem Teil der Vorlesung sagen möchte,
in der anderen Vorlesung wird ja ein bisschen was dazu gesagt.
Ja, und die größte Gruppe ist ausgerechnet die,
die den technikaffinen Menschen am wenigsten liegt.
Die Psychologie, ach, kommen Sie mir doch nicht damit.
Tatsächlich hat das den größten Einfluss. Ich fange mal hier
mit den vorletzten und dem letzten Punkt an. Kommunikationsverbesserung,
Motivationsförderung, Kommunikationsverbesserung, wir tauschen uns über Abschlüsse Stimmungen aus.
Wir tauschen uns über Entscheidungen aus, über Ideen,
über Konzepte. In der Informatik ist es ja so,
die Konzepte sind manchmal sehr abstrakt und sind nur schwer greifbar.
Entsprechend wichtig ist es, das richtig darzulegen. Und wenn wir Menschen haben,
die gut kommunizieren können, wo ein gutes Kommunikationsklima herrscht,
dann gelingt es uns, dass wir Informationen auch gut empfangen können.
Sie kennen diesen stillen Posteffekt, gesagt,
ist noch nicht verstanden und wenn man das so weiter sagt,
kann es schon ganz schön zu Änderungen kommen, die sich im Laufe dieser Kette,
dieses stille Postspiels zeigen und so passiert es in Projekten auch.
Ja, ich zeige das weiter. Vielleicht erinnern Sie sich,
wir hatten die Kommunikationsweglänge als Prozessqualitätsmerkmals,
wenn ich das über eine Hierarchie erst hochgebe,
ich muss meinem Chef sagen und der sagt seinem Chef und dann geht es wieder runter,
woanders hin, ist das auf jeden Fall viel mehr Informationsverlust,
als wenn ich das direkt weitergebe.
Und einfach nur, wenn man,
ich hatte zum Beispiel in einem Workshop mal,
da macht er in einem Projekt mal,
da machte man ein großes Team-Event mit gemischten Teams,
dass man die Leute aus dem Datenbank-Team und aus dem Operating-Team und aus dem Inbetriebnahmeteam kennenlernte.
Das war einfach nur, man denkt, ach,
geben mir viel Geld aus mit Animateur und tollem Essen und
einem Event und drei Tage waren alle irgendwo in einer netten Location.
Da denkt man, was das kostet, ja,
aber wenn wir dadurch Fehler vermeiden,
weil es direkte Kommunikationsbeziehungen etabliert, weil es einfach mal erlaubt,
dass ich meine Rückfrage bei den Menschen vom Operating sammle,
sag mal, wie funktioniert euer Locking-Framework nochmal,
dass wir gleich die richtigen Fehlermeldungen am richtigen Platz platzieren.
All sowas hilft, also deswegen Kommunikationsverbesserung ist der Schlüssel,
weil man sagt ja so 30 Prozent unserer Arbeit sind Kommunikation
Motivation, hier steht Motivationsförderung, das liest man so oft.
Eigentlich möchte ich dem gleich widersprechen. Motivation kann man nicht
fördern. Ja, man kann nur Demotivationen vermeiden. Ganz,
je größer die Firma, desto schwieriger ist dieses Thema,
ja, weil so viele Hierarchie-Ebenen gibt.
Und ja, von oben kommen manchmal völlig weltfremde Anweisungen. Ja,
alle arbeiten total am Limit und dass da Termin gehalten wird und von oben kommt,
ja, ihr dürft jetzt aber die Überstunden nicht an den Urlaubstag dranhängen und da sagen alle,
boah, wozu arbeite ich hier eigentlich überhaupt?
Wenn es auf solche Sachen ankommt
Ja, also Demotivation vermeiden ist das, was Aufgaben,
was Projektleiter, was Gruppenleiter und sowas tun müssen,
weil sie dann teilweise schon auch Regelungen,
diese konzernweit gelten, irgendwie abfedern vom Projektteam.
Ja, ich wurde mal gefragt, vom nächsten Mal im
nächsthöheren Schiff, Heribisch arbeiten Sie gegen mich?
Ja, ich hätte am liebsten geantwortet, ich arbeite für mein Projekt. Ja,
das ist mein Job als Projektleiter und da gehört auch manchmal dazu,
solche Melde, solche Sachen wie gerade das,
was ich schilderte als Beispiel mit dem Überstunden,
eben nicht weiterzugeben an mein Team.
Und zu sagen,
wir machen das irgendwie anders
Ja, ich habe hier,
ganz offiziell gibt es natürlich in den ganzen Lehrbüchern viele Sachen,
wie kann ich etwas dazu beitragen, dass Awareness geschaffen wird.
Das Bewusstsein für die kritischen Punkte geschaffen wird.
Und das ist tatsächlich Motivation. Wenn ich weiß,
die anderen kümmern sich da auch drum,
kümmere ich mich ein bisschen mehr drum, um gute Quellcode-Dokumentation,
um klare Modelle, um Einfachheit, um Mut zum Reflectoring.
All das muss ich motivieren, kann ich motivieren?
Und ein Beispiel, es sind Qualitätscircle. Ja,
vielleicht haben Sie gehört,
in der Universität haben wir Qualitätscircle für gute Lehre,
in Softwareprojekten hat man auch
gut Qualität
Die sich darum kümmern, wie können wir Fehler vermeiden?
Tatsächlich ist dieses Fehler vermeiden, das ist ja das,
was das ganze Überschrift hier ist. Das ist der tatsächliche Schlüssel.
Und das kann man auch in so einem Qualitätszirkel adressieren,
kann darüber diskutieren, was kann man tun,
zum Beispiel Vorschriften anpassen, verbessern, verschlanken,
all das kann gut helfen.
Und diese Sachen dann unter die Leute bringen,
dass möglichst viele da mitwirken, das sind dann Überschulungen möglich.
All diese Maßnahmen, diese drei Gruppen mit den jeweiligen Untersachen,
geben ihnen nur einen Überblick,
mehr können wir hier leider nicht tun an dieser Stelle.
Die Zeit ist
ein bisschen beschränkt
Wenn sie Gelegenheit haben, sich mit sowas zu beschäftigen,
nützen sich diese Möglichkeit,
wenn sie in irgendeiner Führungskoordinationsrolle kommen als Gruppenleiter, als Teamverantwortlicher,
als jemand, der für ein Thema verantwortlich ist.
Denken Sie vor allen Dingen daran,
dass die Kommunikation der Austausch das wesentlich ist.
Und das hilft, Fehler zu vermeiden. Und das ist
ja das, was konstruktive Maßnahmen zum Ziel hat.
Soweit. Dazu weiter geht es jetzt mit dem nächsten Abschnitt,
wo wir darüber sprechen werden,
wie wir testen