Content Management System

Agiles Projektmanagement

*
CMS Mittelstand
CMS kostengünstig
CMS XML CMS preiswert CMS Mittelstand
CMS WYSIWYG Verfahren zur agilen Softwareentwicklung wie z.B. Extreme Programming oder Scrum helfen, Projekte in Zeiten knapper Budgets, kurzer Realisierungszeiten und schnell wechselnder Anforderungen zum Erfolg zu führen CMS .NET CMS Mittelstand
Content Management CMS
CMS Mittelstand

Das Problem

Die im Rahmen eines Angebotes erforderliche Aufwandsschätzung benötigt oft mehr Zeit, als zur Verfügung steht. Pauschale Angebote mit Stundensätzen und der Verweis auf ein zunächst zu erstellendes Pflichtenheft finden jedoch zu Recht wenig Gefallen beim Kunden. Mit dem bestätigten Angebot stehen Leistungsumfang, Lieferdatum und Kostenrahmen oft im wesentlichen fest. Doch ebenso oft entwickeln und verändern sich die Anforderungen erst im Laufe des Projektes, erfahrene Projektleiter sprechen von 30 bis 50%.

Agiles Projektmanagement in der Softwareentwicklung

Pragmatische Verfahren helfen durch verstärkte Einbindung des Kunden und schrittweises Vorgehen, diesen Widerspruch zu lösen. Sie gehen von folgenden Voraussetzungen aus:

  • Die handelnden Personen und deren Zusammenarbeit bei der Zielerreichung sind für den Erfolg wesentlicher als Tools und Methoden
  • Funktionierende Lösungen sind wichtiger als eine lückenlose Dokumentation
  • Das einvernehmliche Ändern überholter Anforderungen hat Priorität gegenüber bloßer Vertragserfüllung
  • Die Reaktion auf veränderte Anforderungen geht vor Erfüllung eines starren Projektplanes
  • Die vorgenommenen Änderungen werden kurzfristig ausgeliefert und vom Kunden hinsichtlich der Benutzbarkeit bewertet 

Diese Verfahrensweise bedingt eine tägliche, enge Zusammenarbeit und direkte Kommunikation zwischen Kunden, Projektleitern und Entwicklern, die ein sich selbst organisierendes Team bilden. Die Dynamik im Projekt wird als alltäglicher Faktor akzeptiert - und nicht als Störung der Projektziele empfunden.
Dabei werden die Anwendungen zunächst mit Grundfunktionalitäten entwickelt, am besten unter Verwendung modularer Komponenten (Rapid Prototyping) und später spezielle Anforderungen in kurzen Schritten hinzugenommen.

Einsatz von Komponenten

Der Einsatz fertiger Komponenten bildet eine sichere Basis, weil diese in Ihrer erprobten Funktionalität bereits feststehen und dokumentiert sind. Man muss also nicht bei Null beginnen. Grundfunktionen stehen sofort zur Verfügung. Sie bilden die Grundlage des Kick-Off Workshops. Darin werden eventuelle Abweichungen bzw. Erweiterungen definiert. Einfache Lösungen haben dabei den Vorrang.  Jede Modifikation wird gründlich auf deren Notwendigkeit und Nebenwirkungen hin geprüft.

Anforderungsmanagement

Im Rahmen des Workshops werden die Anforderungen festgelegt, und auf Schlüssigkeit und Widerspruchsfreiheit geprüft. Die Abnahmekriterien werden anhand von identifizierbaren Merkmalen bestimmt.
Im weiteren gilt es die Anforderungsliste im Blick zu behalten. Einzelne Anforderungen werden u.U. an verschiedene Teams oder auch extern vergeben. Der Status ist zu kontrollieren und Abhängigkeiten zu beachten. Die Priorisierung stellt die Konzentration auf die für die Lösung relevanten Leistungsmerkmale sicher.

Extreme Programming

Hier liegt der Schwerpunkt des agilen Prozesses auf der Programmierung. Der Projektleiter auf Kundenseite wird direkt in den Entwicklungsprozess eingebunden, möglichst im Team vor Ort - zumindest mit direkten Zugriff auf das zur Verwaltung eingesetzte System. Er kann so alle auftretenden Fragen sehr kurzfristig klären und es gibt weniger Verluste bei der Übermittlung der Informationen. Diese Vorgehensweise setzt jedoch einen von der fachlichen Kompetenz und Entscheidungsfähigkeit her voll handlungsfähigen Projektleiter auf Kundenseite voraus.

Die Realisierung erfolgt in sehr kurzen Schritten, so werden Fehlentwicklungen vermieden. Möglicherweise erforderliche Fallbacks betreffen immer nur wenige Iterationen. Der Kunde erhält zu jeder Iteration ein lauffähiges System (build to date). Das begrenzt das Risiko für Kunden und Dienstleister. Natürlich entsteht hier ein gewisser zusätzlicher Aufwand. Doch dieser bleibt gering verglichen mit den Kosten von Fehlentwicklungen über einen längeren Zeitraum.  

Der Blick auf das bereits gemeinsam geschaffene vermittelt Zufriendenheit - und Sicherheit hinsichtlich der Lösung der ebenso transparenten Defizite. Gleichzeitig steigt durch das gemeinsame Vorgehen die Akzeptanz der Lösung.

Scrum

Diese Vorgensweise stammt aus dem Sport. Dort wird im Rugby die Teambesprechung vor dem nächsten Spielzug so bezeichnet. Entsprechend wichtig sind hier die täglichen zu festen Angangs- und Endterminen (!) stattfindenden Besprechungen. Die Teilnehmer konzentrieren sich auf die Fragen

  • Was wurde seit dem letzten Treffen erledigt
  • Was hat mich dabei behindert
  • Was nehme ich mir bis zum nächsten Scrum vor

So werden Synergien oder auch Konflikte schnell deutlich. Diskussionen über technische Einzelheiten sind nicht Bestandteil des Scrum. Das Team arbeitet mit einer priorisierten Aufgabenliste, die die Projektleiter (Scrum Master) auf beiden Seiten gemeinsam pflegen. Hier werden in festen Intervallen (Sprints, ca. 2-4 Wochen) gemeinsam (Sprint Planning Meeting) die nächsten Aufgaben festgelegt und Rückstände (Backlogs) ermittelt. Während der Sprints arbeitet das Team weitgehend störungsfrei. Wärend der Sprints bleibt die Teamzusammensetzung konstant. Idealerweise wird dieses vorgehen mit bewährten Methoden wie Pair Programming und Unit Tests kombiniert. Es werden jedoch keine speziellen Verfahren vorgeschrieben.

Fazit

Agile Prozesse werden von den Entwicklern sehr gut angenommen. Sie entsprechen ihrer natürlichen Vorgehensweise.

  • Wesentliche Aufgaben werden früher erledigt
  • die Auslastung ist gleichmäßiger
  • die Produktivität steigt
  • Überlastung zu Projektende wird vermieden

Probleme haben eher die Projekt- und Kostenverantwortlichen auf beiden Seiten. Agile Prozesse erfordern eine agile Preisgestaltung. Auswege bietet z.B. ein iteratives Festpreis-Modell. Dabei vereinbaren die Beteiligten jeweils auf der Basis der Erfahrungen der letzten Stufen einen Festpreis für die nächste Iteration. Ähnlich wie bei den technischen Anforderungen

  • steigt dabei die Sicherheit, richtig zu liegen.
  • Unnötige Ausgaben werden vermieden.
  • Die Projektlaufzeiten werden verkürzt.
Die neuen Anforderungen können also durch eine enge Zusammenarbeit überwunden werden. Gelingt dies, bestehen beste Voraussetzungen, daß am Ende auch jeder Einzelne seine Erwartungen erfüllt sieht.

Quellen:


 
| print | send |
Valid XHTML 1.0 Transitional
03:10 gen. in 0.421sec. and cached 24h.
© 2008 contentXXL. All rights reserved. | Terms and Conditions | Imprint | Sitemap