Schritt-für-Schritt-Denken führt zu Systemen, die relativ komplex sind, die Benutzer frustrieren und die nicht robust gegenüber unvorhergesehenen Umständen sind. Nehmen Sie den zielorientierten, ungeordneten Checklistenstil an und ersparen Sie sich und Ihren Benutzern eine Menge Ärger!
Was vorher war...
Letztes Jahr habe ich herausgefunden, wie mich jemand nur mit Post-Its wütend machen kann.
Da das Unternehmen immer größer wird (von 35, als ich anfing, auf derzeit fast 100), konnten wir uns nicht darauf verlassen, dass die Informationen automatisch jeden durch unsere persönliche Kommunikation untereinander erreichen. Das Unternehmen war größer geworden als unsere persönliche Kommunikationsspanne, und wir begannen, Probleme bei der Koordination zu erkennen. "Wollten Sie den Brief nicht schreiben?", "Aber ich habe doch schon...", Sie können sich sicher vorstellen, was für Verwechslungen auftreten können. Aus diesem Grund wollten wir "etwas dagegen tun". Dieses "etwas" war schließlich ein Paar Prozessberater. Wir dachten, dass wir unsere Prozesse vereinbaren und aufschreiben müssten und dass dies die Dinge verbessern würde.
Tod der unnötigen sequentiellen Anordnung
Ich denke, dass die Arbeit mit Anwendungsfällen, Arbeitsabläufen und anderen "erst dies, dann das"-Werkzeugen und -Techniken problematisch ist, weil Sie alle Optionen auf einen begrenzten Pfad festnageln. Viel von der Software, die wir produzieren, ist IMHO zu restriktiv: Du darfst nur Schritt 2 ausführen, nachdem du Schritt 1 ausgeführt hast, und nur nachdem du bis drei gezählt hast, nicht mehr und nicht weniger... Bei Anwendungsfällen und Arbeitsabläufen haben wir uns daran gewöhnt, menschliche Arbeit als eine Reihe von aufeinanderfolgenden Schritten aufzuschreiben und sie auf diese Weise zu implementieren. Aber die Arbeit folgt nur selten einem präzisen Fluss. Viele Faktoren beeinflussen dies: Arbeitsstil, externe Abhängigkeiten, unvorhergesehene Umstände und Verzögerungen tragen alle dazu bei, den einzig wahren Weg zu sabotieren. Unsere normale Reaktion ist es, dem menschlichen Arbeiter zu helfen, den Prozess so gut wie möglich zu durchlaufen, aber das führt zu Systemen, die nur mit viel Aufwand zu implementieren sind, wenn sie überhaupt erfolgreich sind. Es gibt berechtigte Anwendungsfälle für Ordnungsbeschränkungen, aber in vielen Fällen ist es insgesamt viel besser, wenn die Menschen ihre eigenen Wege durch das System (oder den Prozess) bestimmen und sich nur um die wichtigsten Synchronisationspunkte kümmern. Ist die Software ein Werkzeug des Benutzers, oder ist der Benutzer ein Werkzeug der Software...? Das Problem ist, dass die zugrundeliegende Annahme, Schritte zu befolgen, grundlegend fehlerhaft ist. Wir sollten einen ganz anderen Ansatz wählen.
Konzentrieren Sie sich auf die Endergebnisse, nicht auf die Schritte
Um auf meine Geschichte über unsere internen Prozesse zurückzukommen, haben wir den Ansatz "mit dem Ziel vor Augen beginnen" verwendet. Wir haben zunächst unser gewünschtes Ergebnis definiert und uns dann von dort aus rückwärts vorgearbeitet: Was ist die unmittelbare Vorstufe, die benötigt wird, um das Endergebnis zu erreichen? Was ist die unmittelbare Vorstufe dazu? Am Ende hatten wir vier Schritte und für jeden Schritt eine Checkliste mit Ausstiegsbedingungen. Das war ein großer Unterschied zu der 30-Schritte-und-kein-Ende-in-Sicht-Geschichte, die wir vorher hatten. (Kürzlich fand ich heraus, dass ich Bruce Schneiers Attack Trees neu erfunden hatte) Bei meinem aktuellen Projekt haben wir eine ähnliche Situation: Die Mitarbeiter einer Abteilung brauchten Unterstützung für ihre Arbeit, aber es gab viele interne Prozesse zu befolgen. Als ich mir diese Prozesse ansah, stellte ich fest, dass sie sich insofern ähnelten, als dass sie insgesamt zwei Schritte umfassten: zuerst das Sammeln aller Informationen, Genehmigungen und unterzeichneten Dokumente, die für eine "Go/No-Go"-Entscheidung erforderlich sind, dann die Entscheidung und bei einem "Go" die Durchführung der erforderlichen Änderungen. Ich schlug vor, die etwa dreißig Prozesse in eine Reihe von Checklisten umzuwandeln, wobei die einzige Reihenfolge darin bestand, dass eine Checkliste "Entscheidung" vor einer Checkliste "Änderung durchführen" abgearbeitet wurde. Die zukünftigen Benutzer waren begeistert: Sie erhielten ein System, das sie unterstützte, ohne sie in eine willkürliche Reihenfolge ihrer Arbeit zu zwingen. Die Implementierung zeigt einen in der Mitte geteilten Bildschirm, mit der Checkliste "Entscheidung" auf der linken Seite und der Liste "Änderung der Auswirkungen" auf der rechten Seite. So erhalten die Benutzer einen guten Überblick über die Situation eines einzelnen Falles, an dem sie gerade arbeiten.
Checkliste für den Checklistenstil
- Definieren Sie das Endziel als eine Checkliste von Ausstiegsbedingungen Die guten alten Techniken des Anforderungsmanagements sind hier sehr nützlich, um zu definieren, was Sie wirklich erreichen wollen.
- Erstellen Sie eine To-Do-Checkliste mit allen Aktionen, die als direkter Vorgänger der Ausstiegsbedingungen erforderlich sind. Vermeiden Sie sequentielle Abhängigkeiten, und selbst wenn sie in der Realität vorhanden sind, bauen Sie sie nicht in das System ein, wenn sie nicht zu Problemen im System selbst führen. Eine Checkliste mit der Aufforderung "Gehe durch die Tür, öffne die Tür" ist durch physikalische Gesetze sequentiell geordnet: Sie können normalerweise nicht durch eine geschlossene Tür gehen. Aber wenn Sie die Reihenfolge "offene Tür, durch die Tür gehen" erzwingen, lassen Sie die Möglichkeit aus, dass die Tür bereits geöffnet ist, und den "unmöglichen" (Annahmen...) Fall, dass es jemandem tatsächlich gelingt, durch eine geschlossene Tür zu gehen...
- Prüfen Sie für jeden Punkt der Checkliste, ob es Vorbedingungen gibt, unter denen dieser Punkt ausgeführt werden kann. Diese Vorbedingungen werden zu den Ausgangsbedingungen für eine neue Checkliste.
- Vermeiden Sie die Reihenfolge der Checklisten so weit wie möglich, indem Sie sie vorzugsweise kombinieren. Da das "Ausfüllen einer Checkliste" zur neuen Granularität eines "Prozessschritts" geworden ist, gelten die gleichen Regeln wie für die Prozessschritte, die in eine Checkliste umgewandelt wurden.
Auswirkungen
Ich habe festgestellt, dass der zielgerichtete, ungeordnete Checklistenstil etwas dringend benötigte Vernunft in die Welt von Workflow, BPM und anderen prozessorientierten IT-Systemen bringt. In zwei Fällen habe ich es vermieden, ein BPM-Tool wie jBPM, eine BPEL-Engine oder ein großes und schweres Tool wie IBMs Process Server zu implementieren. Wenn Sie jemals eine dieser "Lösungen" implementieren mussten, werden Sie meine Erleichterung über die Hölle verstehen, der ich nur knapp entkommen war... Benutzer - und insbesondere frühere Opfer automatisierter Prozesse - sind ausnahmslos sehr begeistert vom Checklistenstil. Sie bietet viel mehr Freiheit und Robustheit gegenüber unvorhergesehenen Umständen und erzwingt dennoch ein gutes Ergebnis.
Zusammenfassung
Schritt-für-Schritt-Denken führt zu Systemen, die relativ komplex sind, die Benutzer frustrieren und die nicht robust gegenüber unvorhergesehenen Umständen sind. Nehmen Sie den zielorientierten, ungeordneten Checklistenstil an und ersparen Sie sich und Ihren Benutzern eine Menge Ärger!
Verfasst von
Serge Beaumont
Unsere Ideen
Weitere Blogs
Contact



