![](https://image.jimcdn.com/app/cms/image/transf/dimension=297x1024:format=jpg/path/s7637a3fcec5efe31/image/ie8278ad4ad5530f0/version/1513801379/image.jpg)
Um effiziente und effektive Lösungen für Software und Systeme zu entwickeln oder anspruchsvolle Projekte richtig steuern zu können, ist Transparenz essentiell.
Es ist elementar, dass allen Beteiligten die Fragestellungen transparent und verständlich sind, die Risiken, Abhängigkeiten und zu erledigenden Arbeiten klar sind.
Wie können Projekte und Software- sowie Systementwicklungen besser sichtbar und damit greif- und begreifbar und planbar gemacht werden?
Dieser Artikel zeigt wie mit einfachen visuellen Mitteln diese Transparenz erreicht werden kann.
Sichtbare und unsichtbare Arbeit
Was bedeutet sichtbare Arbeit? Es geht darum den aktuellen Stand, den Status einer Arbeit oder Tätigkeit zu sehen. In handwerklichen Berufen und Tätigkeiten, in welchen Handfestes geschaffen
wird, ist die Sichtbarkeit meist automatisch gegeben. Zum Beispiel ein Feinbäcker, welcher ein Kuchenblech voll Törtchen macht, sieht auf einen Blick, bei welchen Törtchen welche Arbeitsschritte
schon gemacht wurden respektive was noch fehlt:
![](https://image.jimcdn.com/app/cms/image/transf/dimension=374x10000:format=jpg/path/s7637a3fcec5efe31/image/if900243986c824b3/version/1513801398/image.jpg)
Wie sieht das aber in unserem Umfeld aus? Wir haben eher kopflastige Arbeiten. Vieles ist vom Handwerk zur Wissensarbeit geworden. Was ist beispielsweise der Status des folgenden Codefragmentes? Ist es fertig? Was fehlt noch? Welche Schritte sind schon gemacht?
![](https://image.jimcdn.com/app/cms/image/transf/dimension=601x10000:format=jpg/path/s7637a3fcec5efe31/image/i286e96e2976685ba/version/1513800800/image.jpg)
Das lässt sich nicht so ohne weiteres beantworten. Selbst wenn wir den Code genauer ansehen könnten und uns Zeit dazu nehmen würden, wäre es immer noch sehr schwierig den genauen Status dieses
Artefakts zu benennen.
Ähnlich verhält es sich mit den folgenden in einem Software Projekt anfallenden Tätigkeiten:
- Kundenanforderung umsetzen
- Anforderung testen
- Code überprüfen
- Architektur erstellen und dokumentieren
- Risiken behandeln
- Use Case implementieren
Warum ist Sichtbarkeit und damit Transparenz wichtig?
Wie beim Feinbäcker ist es auch für uns als Wissensarbeiter wichtig, den Stand der Arbeiten in einem Projekt zu kennen. Unsere Arbeiten sind vernetzt. Arbeitsergebnisse hängen voneinander
ab. Es ist deshalb wichtig zu wissen wann etwas fertig wird, oder wie lange es geht um etwas fertig zu machen. Kurz es geht um Planbarkeit.
Auf Projektarbeit bezogen sollten jedoch auch Risiken, Abhängigkeiten oder sämtliche Projekterzeugnisse wie Dokumente, Funktionen, Use Cases, Anforderungen,… sichtbar gemacht werden. Denn wie Tom
DeMarco sagt: «You can’t control what you can’t measure» ist es essentiell in der Projektarbeit Kontrolle sprich eine aktive Steuerungsmöglichkeit zu haben. Folgenden Fragen stellen sich: Was ist
der Status der Arbeit? Was ist fertig, was noch nicht? Was läuft gut, was nicht? Wo muss ich als Projektleiter steuernd eingreifen? Wo sind Massnahmen notwendig?
Was sind Kriterien für sichtbare Arbeit? Wann ist der Status einer Arbeit transparent und sichtbar?
Es müssen dazu 4 Kriterien erfüllt sein.
- Der Typ der Arbeitseinheit muss eindeutig definiert sein. Das heisst, es muss klar sein für welche Arbeitseinheit Sichtbarkeit erreicht werden soll.
- Für die definierte Arbeitseinheit muss der Workflow (Arbeitsablauf) bekannt und definiert sein. Welche Arbeitsschritte sind für die komplette Abarbeitung notwendig. In welcher Feinheit ist Sichtbarkeit gefordert?
- Der Kontext in der sich die konkrete Arbeitseinheit befindet muss bekannt sein.
- Für die konkrete Arbeitseinheit muss nun der Status im Workflow aufgezeigt werden. Oder anders gesagt: Es muss aufgezeigt werden, in welchem Arbeitsschritt sich die Arbeitseinheit befindet.
Wie gelingt es nun unsichtbare oder schlecht sichtbare Arbeit sichtbar und damit transparent zu machen?
Im Agilen und Lean Umfeld ist es üblich sogenannte Kanban Boards zu erstellen um Sichtbarkeit von Arbeit zu erzeugen. Visualisierung ist auch eines der 5 Prinzipien von Kanban. Nachfolgend ein
einfaches Kanban Board mit einer Visualisierung von Arbeitseinheiten (Tasks):
![](https://image.jimcdn.com/app/cms/image/transf/dimension=669x10000:format=png/path/s7637a3fcec5efe31/image/ifb5c6ef07c44c888/version/1513755387/image.png)
Aber reicht es ein Kanban Board zu erstellen und jede Arbeitseinheit als Karte (real oder digital) in der "Todo", "In Progress" oder "Done" Spalte aufzuführen?
Sehen wir uns dazu nochmals die Kriterien für Sichtbarkeit an und prüfen dann, ob diese erfüllt sind:
- Typ der Arbeitseinheit muss eindeutig definiert sein.
- Für die Arbeitseinheit muss der Workflow bekannt und definiert sein.
- Kontext muss bekannt sein.
- Status im Workflow muss sichtbar sein.
Zu Kriterium 1:
Ist der Typ der Arbeitseinheit eindeutig definiert? Aus meiner Sicht nicht. Es ist nicht klar, ob das alles Implementierungsarbeiten sind. Oder vielleicht Fehleranalysen? Oder
Fehlerbehebungsarbeiten? Oder gar Dokumentationsarbeiten? Wahrscheinlich haben die verschiedenen Typen auch unterschiedliche Workflows. Natürlich kann alles generalisiert als "Task" dargestellt
werden. Aber gibt das wirklich die geforderte Sichtbarkeit und damit Planbarkeit?
Zu Kriterium 2:
Ist der Workflow bekannt und definiert? Ja. Der Workflow ist "Todo" --> "In Progress" --> "Done". Aber ist das wirklich der richtige Workflow, welcher uns genügend Sichtbarkeit
bringt?
Zu Kriterium 3:
Ist der Kontext bekannt? Rein mit diesem Kanban Board wohl eher nicht. Zeigt das Board alle Arbeiten eines Projektes? Von welchem Team? In welchem Sprint? In welchem Teilgebiet? Es ist wichtig
hier den Kontext (Scope) zu wissen und explizit zu machen.
Zu Kriterium 4:
Ja, der Status der Arbeitseinheiten ist im Workflow sichtbar - sofern alle Arbeitseinheiten den gleichen Workflow haben (wie bereits bei Kriterium 1 in Frage gestellt).
Zusammenfassend kann man sagen, dass nur mit dem Eintragen von Karten für jeden Task auf einem einfachen Kanban Board üblicherweise noch nicht genügend Sichtbarkeit erreicht wird.
Verbesserte Sichtbarkeit würden folgende Definitionen/Massnahmen erreichen:
- Jede Karte steht für eine "Software Implementierungsarbeit"
- Der Workflow sieht wie folgt aus: "Open" --> "Design in Progress" --> "Coding in Progress " --> "Testing in Progress" --> "Reviewed" --> "Done"
- Kontext: Teilprojekt ABC; Sprint 22
- Die entsprechenden Karten (vom Typ "Software Implementierungsarbeit") sind im Kanban Board den entsprechenden Workflow Schritten zugeordnet.
Oft macht es Sinn nicht nur von generalisierten Tasks zu sprechen, sondern von den konkreten Artefakten, auf welche sich die Tätigkeiten und Arbeiten beziehen. Wenn es beispielsweise darum geht Use Cases umzusetzen, auch diese Use Cases als sichtbare Arbeitseinheiten visualisiert werde sollten - und nicht "Tasks".
Gar sehr komplexe Themen wie Architekturarbeit lohnen sich sichtbar zu machen. Vor allem bei grösseren Systemen kann damit eine Planbarkeit, ein gemeinsames Verständnis und somit Effektivität und Effizienz erreicht werden. Anhand einer systematischen Architekturerstellung könnte hier eine sinnvolle Arbeitseinheit ein "Architektur Signifikantes Requirement" sein.
Damit ergibt sich beispielsweise die folgende Definition von Sichtbarkeit:
- Arbeitseinheit: "Architektur Signifikantes Requirement"
- Der Kontext mit dem angedeuteten Architekturprozess könnte dann so aussehen:
![](https://image.jimcdn.com/app/cms/image/transf/dimension=458x10000:format=jpg/path/s7637a3fcec5efe31/image/iee1b99169a8e5807/version/1513800442/image.jpg)
- Der Workflow könnte dann folgendermassen formuliert werden:
- "To be addressed"
- "partly addressed"
- "addressed"
Mit diesen Angaben lässt sich Architekturarbeit leicht in einem Kanban Board mit dem entsprechenden Workflow sichtbar machen.
Zusammenfassend lässt sich folgendes festhalten:
- Sichtbarkeit ist essentiell für kontrollierbare Projektarbeit.
- Sichtbarkeit bezieht sich nicht nur auf generalisierte "Tasks". Bessere Sichtbarkeit ist möglich für konkretere und auch komplexere Typen von Arbeitseinheiten.
- Sichtbarkeit kann durch die Definition der folgenden 4 Elemente erfüllt werden:
- Typ der Arbeitseinheit
- Workflow
- Kontext
- Sichtbarer Status der Arbeitseinheiten im Workflow.
- Einfache Handskizzen als Visualisierung sowie einfaches Wallwork (Flipchart oder Whiteboard mit Post-Its) reichen oft aus um eine gute Sichtbarkeit und damit Transparenz zu erreichen.
Kommentar schreiben