Database Reference
In-Depth Information
nige Annahmen für die Erklärung des Performanz-Problems benötigen, welche wir nicht
verifizieren können. Die einfachste Erklärung, die die minimale Anzahl der Tatsachen und
noch wichtiger die minimale Anzahl der Annahmen benutzt, soll die beste sein.
Ich habe für mich 3 einfache Regeln erarbeitet, die das Prinzip von Ockham befolgen:
• versuchenieeinPerformanz-ProblemalleinanhandderSymptomezulösen(alsoohne
Basis, bzw. ohne Untersuchung der Datenbank und ohne Ermittlung der Tatsachen),
• versuchemöglichstohneAnnahmen(alsonuranhandderTatsachen)einProblemzu
klären,
• versuchedasProblemeinzugrenzen.FangemitderAnalysemöglichstnahezuderStelle
an, wo dieses Problem entstand. So kann man sich unnötige Tatsachen ersparen, ge-
schweige denn unnötige Annahmen.
Den letzten Punkt möchte ich etwas ausführlicher angehen. Ich habe bereits erwähnt, dass
ich meistens als Feuerwehr an den akuten Performanz-Problemen arbeite. Aus diesem
Grund ist es für mich wichtig, dass der Kunde möglichst genau das aufgetretene Problem
beschreibt. Die allgemeinen Informationen über das System, die der Kunde mir oft mitzu-
teilen versucht, lenken mich eher von dem eigentlichen Problem ab. Ähnlich einem Arzt,
der mit einem bewusstlosen Patienten zu tun hat. Für diesen Arzt sind die Einzelheiten
der Biografie des Patienten zunächst nicht wichtig (beispielsweise die Tatsache, dass er
glücklich verheiratet ist). Der Arzt muss diesen Patienten schnell reanimieren, für ihn ist es
deshalb wichtiger zu wissen, unter welchen Umständen der Patient zusammenbrach, wie
lange er sich bereits in diesem Zustand befindet und so weiter. Ich versuche mich in der
Anfangsanalysephase vor den überflüssigen Informationen zu schützen, um mich auf das
jeweilige Problem besser konzentrieren zu können.
Das Prinzip von Ockham ist formal und beschäftigt sich nicht mit der Gültigkeit einer
Theorie. Für uns ist es aber wichtig, dass unsere Analyse zutreffend ist. Wie kann man sich
vergewissern, dass die jeweilige Analyse richtig ist? Ich sehe grundsätzlich die folgenden 2
Möglichkeiten dafür:
• fallsmananhandderAnalyseeineProblemlösungfindet,diezuimplementierenist,
kann man diese Lösung umsetzen und prüfen, ob das Problem damit gelöst ist. Das ist
sicherlich die beste Methode,
• leiderliefertnichtjederichtigeAnalyseeineProblemlösung(wiez. B.imFallausdem
Abschn. 6.1.7.2). Es kann auch sein, dass die jeweilige Problemlösung nicht umzuset-
zen ist (im Fall aus dem Abschn. 8.3.1 war es beispielsweise ein großes Glück, dass die
Anwendung zuließ, die Kommentare in die SQL-Anweisungen einzufügen). In so einer
Situation kann man entweder auf einen ähnlichen Fall verweisen (z. B. auf eine Notiz
aus dem MOS) oder das Performanz-Problem mit einem Test-Case reproduzieren, der
auf der Analyse basiert.
Search WWH ::




Custom Search