Über die letzten Jahrzehnte haben wir viele Softwareprojekte in verschiedenen Konstellationen und Organisationen umgesetzt und begleitet. Viele dieser Projekte haben wir in Rekordzeit und unter widrigen Bedingungen abgeschlossen, und dabei unsere Kunden mit den Ergebnissen begeistert.

Natürlich sind uns auch viele Parallelprojekte in der gleichen Kundenorganisation aufgefallen, die nur sehr langsam vorankamen, während wir mit hoher Geschwindigkeit Kundenwünsche in Softwarefunktionen umgewandelt haben.

Wir haben uns daher gefragt: Was macht den Unterschied zwischen sehr erfolgreichen Top-Speed-Projekten und langsamen Schneckentempo-Projekten ohne messbare Ergebnisse aus?

In diesem Blogpost möchten wir die Top-10 Faktoren aufzählen, die wir aus vielen Projekten abstrahiert haben, welche für uns den entscheidenden Unterschied ausmachen.

1. Eine klare Vision für die Software

Einer der wichtigsten Faktoren ist eine klare Vision für die Software, die das ganze Team kennt und nachvollziehen kann. Dies ist wichtig, da alle Projektmitglieder als Teil ihrer Arbeitspakete tausende Mikroentscheidungen treffen, die den Projektausgang beeinflussen. Diese Entscheidungen orientieren sich maßgeblich an ihrem Verständnis des Ziels der Software. Darum ist es wichtig, dass die Vision der Software und des Projekts völlig klar sind.

Ist die Vision unklar oder variiert je nach Projektmitglied, wird die Lösung zu einem inkonsistenten Fleckenteppich, der viele Eventualitäten abdeckt, aber den eigentlichen Zweck der Software nicht erfüllt.

2. Grad des Ownerships der Beteiligten

Wie viel Verantwortung jeder im Team übernimmt, beeinflusst maßgeblich die Qualität der zu liefernden Software. Wenn alle Teammitglieder für das Ergebnis brennen und sich persönlich dem Projekt verschreiben, entsteht eine hohe Energie, die Berge versetzen kann.

Konzentriert sich hingegen jeder nur auf seine zugewiesenen Aufgaben, ohne sich für die eigentliche Lösung zu interessieren, treten unweigerlich Fehler auf, die bis zur Fertigstellung der Software unentdeckt bleiben.

3. Regelmäßige Kommunikation

Das A und O eines jeden effizienten Softwareprojekts ist regelmäßige Kommunikation. Werden wichtige Entscheidungen getroffen und nicht an alle Beteiligten kommuniziert, oder bleiben unerwartete Ereignisse (z.B. Änderungswünsche vom Kunden) unangesprochen, können große Missverständnisse entstehen und das Projekt vom Kurs abbringen.

4. Fokus auf friktionsfreies Arbeiten

Trotz effektiver Kommunikation ist es wichtig, dass die Arbeit am Projekt ohne große Unterbrechung erfolgen kann. Jeder muss alles zur Verfügung haben, was für seine Aufgabe benötigt wird. Wichtig ist auch, dass die Personen nicht von ihren Aufgaben abgelenkt werden und sich auf diese fokussieren können.

Ist dies nicht der Fall, kön