Der Abschnitt 7,2 beschäftigt sich damit, wie wir Entscheidungen beim Entwurf ausdrücken.
Dazu haben wir eine entsprechende Frage. Wie können Entwurfsentscheidungen effizient dokumentiert werden?
Hier ergänzen wir nochmal, da gehört noch ein Tee dazu.
Nein, das ist die falsche Stelle, das Tee gehört hierher Entscheidungen.
Ja, für diese Entscheidungen, für diese Beschreibung von Entscheidungen,
das wissen Sie vielleicht aus eigener Anschauung,
ist es total wichtig zu wissen, warum macht man denn das?
Die durchschnittliche Beschreibung eines Systems, eines Entwurfs in einem
durchschnittlichen Projekt beschreibt nur, wie ist denn etwas gebaut?
Wie sieht es denn aus, aus welchen Teilen besteht es ist?
Aber nicht, warum? Nicht, was hat zu dieser Entscheidung geführt?
Denn gerade, aber dabei sind es gerade solche Entscheidungen,
die man später widerrufen, revidieren muss, weil sich die Umgebungsbedingungen,
die Ziele, die Besonderheiten geändert haben.
Deswegen kommt es auf beim Entwurf auf die Beschreibung und wenn
wir so wollen, auf die Modellierung von Entscheidungen besonders an.
Auch wenn das Buch dazu nichts enthält,
auf der nächsten Folie haben wir eine Literaturquelle,
die das relativ knapp die wichtigen Sachen zusammenstellt.
Also es geht uns darum, bei einem,
bei einer Entscheidung zunächst zu beschreiben, worin besteht das eigentliche Ziel?
Worin besteht das eigentliche Problem, was ja mit ihrer Entscheidung lösen wollen,
beziehungsweise was sind die Zielkriterien, die Erfolgskriterien?
Das ist ganz wichtig, dass wir sagen, okay,
bei dieser Entscheidung geht es vorrangig um Skalierbarkeit.
Und Sicherheit spielt für uns keine große Rolle. Wenn das
Grillens klar dabei steht und fünf Jahre später spielt die Sicherheit eine große Rolle,
dann weiß man, okay, das ist eine Entscheidung,
die ich sehr wahrscheinlich revidieren muss
Also diese Ziele geben mir an. Kurz und knapp,
es reicht diese Angabe, möglichst, natürlich möglichst genau.
Dann kommt es darauf an, dass wir die beim Recherchieren,
beim Suchen nach Lösungen gesammelten Lösungsoptionen, Lösungsvorschläge,
potenziellen Lösungen, dass wir die auch aufführen.
Nicht nur die eine, die wir am Ende genommen haben,
sondern durchaus die anderen, die wir nicht genommen haben,
die wir verworfen haben.
Weil diese Entscheidung, diese Aussage über Lösungen,
die es nicht geschafft haben,
in den umgesetzt zu werden,
die hatten irgendwelche Nachteile
Das ist eine wichtige Information. Zum einen,
nehmen wir wieder einen fünf Jahre später,
ist nicht nur Skalierbarkeit wichtig, sondern auch Security.
Dann stellt sich die Frage natürlich etwas anders,
aber die damals gefundenen potenziellen Lösungen sind vielleicht in gewisser Weise
heute auch wieder potenzielle Lösungen.
Nur weil jetzt Sicherheit eine Rolle spielt,
Security eine Rolle spielt, wird mir jetzt eine andere nehmen.
Deswegen die potenziellen Lösungen unbedingt aufbewahren, da steckt Arbeit drin,
die Arbeit ist Zusammentragens.
Und nur wenig ändert sich über die Lauf der Jahre.
Natürlich, technischer Fortschritt passiert immer. Aber die grundsätzlichen Prinzipien,
die grundlegenden Pattern, die grundlegenden Taktiken,
die zur Lösung eines Problems
nimmt,
die bleiben doch gleich
Für unser konkrete Situation bei einer Entscheidung haben wir natürlich diese Lösungsalternativen,
die Lösungsvarianten hier bewertet und haben gesagt,
also das hat für Skalierbarkeit die besten Eigenschaften und die ganzen
anderen Eigenschaften sind auch alle toll.
Wir nehmen das. Ja, das heißt,
man schreibt hin, was ist denn daran toll?
Ja, und dann beschreiben wir noch, welches Problem haben wir denn alles berührt?
Welche Probleme haben wir? Natürlich hatten wir hier vor uns schon was geschrieben,
das heißt, der Bezug geht auch auf das,
aber vielleicht auch auf noch weitere Sachen,
die wir in irgendeiner Form berücksichtigt haben
Dieses Verfolgen von Dingen, von Zusammenhängen hat man,
da gibt es auch den Namen Trace Bilited dazu.
Also, dass man etwas verfolgt. Okay, soweit erstmal,
das brauchen wir, diese Informationen brauchen wir für eine Entwurfsentscheidung. Sie haben jetzt gemerkt,
ich habe jetzt ungefähr fünf Minuten darüber geredet,
Sie können sich vorstellen, wenn Sie das alles,
wenn Sie das aufschreiben und Sie treffen am Tag 40 Entscheidungen,
dann haben Sie nicht nur damit zu tun,
dass Sie immer suchen, was sind die potenziellen Lösungen,
vor sich klar gemacht haben, was ist das Ziel,
dann die Bewerte,
sondern Sie müssen das alles auch noch aufschreiben
Die werden denken, ach, Himmel, Herrgott,
was erzählt uns der Rebisch hier,
dass wir so viel Aufwand hier reinstecken sollen?
Wie haben die Zeit nicht? Es kommt darauf an,
das Ganze effizient zu machen. Mit dem Ringem Aufwand
den Nutzen erreichen. Es ist uns hoffentlich klar geworden,
dass es ganz wichtig ist, Entscheidungen zu beschreiben,
weil man liebe Entscheidungen, das helfen das System,
die Lösung zu verstehen.
Und weil diese Entscheidungen etwas sind,
was später vielleicht revidiert werden muss.
Jetzt der Punkt,
effizient mit geringem Aufwand
Dazu möchte ich Ihnen einen Ansatz vorstellen, leichtgewichtige Architekturbeschreibungsaufzeichnungen, Rekord,
Rekord kommt von Aufnahme, also die Schallplatte heißt auch Rekord,
aber es geht hier um das Sammeln,
Aufzeichnen und hier unten steht die Literatur, dran,
Zimmermann, Stuan Capilla, haben einen Beitrag geschrieben,
in Eye Tribley Software, das ist ein Journal,
keine wissenschaftliche Zeitschrift, sondern eher so eine, ja,
die sich einen Entwickler und dann Leute richtet, die den Überblick wollen,
sehr verständlich geschrieben, es gibt das auch als Webseite,
sie haben,
glaube ich, den Link in den Arealien dazu.
Also es geht hier um langfristig Sustainable, heißt nachhaltig auf Deutsch übersetzt.
Also etwas, wo man langfristig was davon hat und langfristig
aufrechterhaltene Entwurfsentscheidungen und das ist das suchende Why-Statement. Why nicht,
deswegen, warum, sondern Amerikaner benutzen ja gerne so Lautmalerei,
sondern hier, weil die grafische Form ein bisschen so aussieht.
Dazu haben, davon haben wir eine Kurzform und eine Langform,
aber jeweils ist es nur im Wesentlichen Einsatz.
Und er sagt, solange das dürfen sie dir natürlich aufteilen,
ja, die, wie wir alle wissen,
mögen die, mag man im amerikanischen und englischen Sprachraum,
Schachtelsätze nicht so sehr wie im Deutschen.
Aber es kommt darauf an, ein Satz im Wesentlichen.
Und deswegen leidweit, wir leicht gewichtig, mit geringem Aufwand.
Ja, also das, was wir hier vorne haben,
wollen wir, was wir brauchen, Informationen leicht gewichtig darstellen.
Deswegen möchte ich Ihnen diesen Ansatz des Vice-Statements hier nachbringen.
Und hier, so sieht das Ganze aus, das in den Kästchen ist.
Der Platzhalter, das müssen Sie dann ersetzen.
Also im Umgebung eines US-Cases. Beim Betrachten eines Ziels entschieden wir
uns für eine Option, um ein bestimmter zum Beispiel Skalierbarkeit,
ein bestimmtes Qualitätsziel zu erreichen.
Und wir haben ein paar Nachteile akzeptiert. Einsatz,
ein bisschen länglich, sagt, warum haben wir,
warum haben wir uns überhaupt hier entschieden?
Was war das Ziel? Was ist die Alternative, die
wir genommen haben? Und was haben wir für positive negative Dinge abgewogen?
Damit haben wir eigentlich hier diese Bewertung der Lösungsvarianten drin.
Wir haben nichts drin, was es noch alles Schwäche gab.
Und wir sagen auch,
worauf sich das Ganze bezieht
Es gibt auch eine Langform. Die Langform ist auch nicht
so sehr viel aufwendiger. Das erste kennen wir aber,
aber hier gibt es die Other Options noch mit dabei.
Das sind die anderen Alternativen. Und man hat ja auch die Möglichkeit,
noch zusätzliche Ziele mitzunennen. Das ist die ausführlichere Form,
die sollte ich nehmen, wenn ich zusätzliche Ziele habe,
wenn es mir wertvoll erscheint, die noch gefundenen Optionen mitzubenennen,
wenn ich keine habe, kann ich natürlich auch die Kurzform verwenden.
Soweit leichtgewichtig denken Sie mir daran,
für einen Entwurf spielt das Ende Entscheiden, eine ganz wichtige Rolle,
damit das System am Ende gut wird,
was ich baue, was ich ins Schirrschchen werfe.
Aber ich möchte auch, dass ich diese Entscheidungen später mal
revidieren kann oder dass ich sie gut,
dass ich sie verstehen möchte, um den Ansatz zu verstehen.
Und das hilft uns, hilft uns diese leichtgewichtigen Darstellungen.
Die ist also in der Praxis gut akzeptabel. So,
und das war auch gleichzeitig die Antwort auf Frage 4.
Effizient dokumentieren heißt mit geringem Aufwand. Also hier ob
diese Frage richtet sich auf das Why Statement.
Soweit zum Abschnitt Entscheidungen