Universität Trier Fachbereich IV Lehrstuhl für Wirtschaftsinformatik I Übungsaufgabe Titel: Management von Softwareprojekten Case 4a Übungsleiter: Jürgen Schneider Vorlesung: Dr. Axel Kalenborn Vorgelegt am: 09.12.2009 von Sebastian Dieterle Aylin Sahin
Inhaltsverzeichnis Inhaltsverzeichnis... II 1 Einleitung... 1 2 Spezialisierung... 1 2.1 Bedeutung... 1 2.2 V-Modell... 1 2.3 Scrum... 2 2.4 Projekt... 2 3 Koordination... 3 3.1 Bedeutung... 3 3.2 V-Modell... 3 3.3 Scrum... 4 3.4 Projekt... 4 4 Konfiguration... 4 4.1 Bedeutung... 4 4.2 V-Modell... 5 4.3 Scrum... 5 4.4 Projekt... 6 5 Delegation... 6 5.1 Bedeutung... 6 5.2 V-Modell... 6 5.3 Scrum... 7 5.4 Projekt... 7 6 Formalisierung... 7 6.1 Bedeutung... 7 6.2 V-Modell... 8 II
6.3 Scrum... 8 6.4 Projekt... 9 7 Zusammenfassung... 9 Quellenverzeichnis... 10 III
1 Einleitung Im Folgenden werden gemäß der Aufgabenstellung 1 die einzelnen Strukturdimensionen Spezialisierung, Koordination, Konfiguration, Delegation und Formalisierung betrachtet und auf die einzelnen Vorgehensmodelle, die in den vorherigen Lösungen zu den Übungsaufgaben ausgewählt wurden, sowie auf das Projekt angewandt. Ziel ist es, zu einer Entscheidung darüber zu gelangen, welches Vorgehensmodell sich am besten für die Umsetzung unseres Projekts mit einem stark innovativen Charakter eignet. 2 Spezialisierung 2.1 Bedeutung Die Tätigkeiten einer Organisation, die der Erfüllung ihrer wirtschaftlichen Ziele dienen, werden auf die einzelnen Stellen verteilt. Dies wird als Arbeitsteiligkeit bezeichnet. Unter Spezialisierung wird hierbei verstanden, dass die verschiedenen Stellen Aufgaben bearbeiten, die von unterschiedlicher Beschaffenheit sind. Mit einer Spezialisierung wird bezweckt eine höhere Wirtschaftlichkeit zu erreichen. Die Einarbeitungszeit wird verkürzt. Einfache Tätigkeiten können von geringer qualifizierten Personen kostengünstiger durchgeführt werden. Die Geschicklichkeit und damit Qualität der Arbeit steigt beim Ausüben einer immer gleichen Aufgabe durch eine Stelle. 2 2.2 V-Modell Es gibt beim V-Modell die Tätigkeitsbereiche Projektmanagement, Konfigurationsmanagement, Qualitätssicherung und Softwareerstellung im engeren Sinne, die im Normal- 1 Sie kommen gerade aus einem Projektmeeting mit den Auftragnehmern. Diese haben Ihnen das V Modell als Vorgehensmodell für das Projekt präsentiert. Aufgrund des innovativen Charakters des Projekts halten Sie dieses Modell jedoch für ungeeignet. Insbesondere die Integration in die neu zu schaffende Organisation dieser Sparte erscheint Ihnen als ein schwieriger Punkt. Diskutieren Sie für dieses Projekt und die verschiedenen Vorgehensmodelle die Strukturdimensionen und deren Ausprägungen. Vergleichen Sie anhand der Ausprägungen die verschiedenen Modelle. Bereiten Sie eine Entscheidungsvorlage für die Verifikation des gewählten Vorgehensmodells auf. Management von Softwareprojekten Case 4a. 2 Vgl. Kieser, Alfred; Walgenbach, Peter (2007), S. 78 ff. 1
fall jeweils von unterschiedlichen Personen ausgeführt werden. Des Weiteren werden Aktivitäten in Teilaktivitäten zerlegt und wiederum arbeitsteilig erledigt. 3 Das bedeutet es findet eine Spezialisierung bzw. Arbeitsteilung statt, in dem Sinne, dass eine Person beispielsweise für das Programmieren eines Moduls (Softwareerstellung) und eine andere für das Projektmanagement zuständig ist. 2.3 Scrum Beim Scrum findet eine intensive Kooperation und Kommunikation des Auftraggebers und des Managements mit dem eigentlichen Entwicklungsteam statt, mit dem Ziel, den Entwicklungsprozess vor äußeren Störungen zu schützen. 4 Es ist also festzustellen, dass eine Arbeitsteilung in der Form erfolgt, dass bestimmte Aufgaben vom Auftraggeber übernommen werden. Diese Aufgabe besteht darin, alle vier Wochen in einem sogenannten Backlog noch nicht fertiggestellte Anforderungen nach Wichtigkeit zu priorisieren und festzulegen. 5 2.4 Projekt Da es sich um ein innovatives Projekt handelt zu dem noch keine Lösungen vorhanden sind 6, erscheint es besonders wahrscheinlich, dass im Laufe der Entwicklung noch unvorhergesehene Änderungen erforderlich sein werden, die am Anfang überhaupt nicht berücksichtigt wurden. Aus diesem Grund ist eine Einbeziehung des Kunden in die Entwicklung sinnvoll. Es findet also eine Arbeitsteilung in dem Sinne statt, dass der Kunde die Aufgabe übernimmt, die Anforderungen fortlaufend zu überprüfen. Auch das V-Modell kennt regelmäßige Besprechungen, die der fortlaufenden Kontrolle und Koordination des Projekts dienen 7. Des Weiteren wird beim Scrum-Modell voraus gesetzt, dass alle Teammitglieder im Rahmen eines Sprints alle Aufgaben bearbeiten können müssen. Dies erscheint jedoch unrealistisch, da nicht alle über eine entsprechende Qualifikation verfügen, sondern auf bestimmte Bereiche wie Qualitätssicherung spezialisiert sind. 8 Aus diesem Grund ist für unser Projekt das V-Modell vorzuziehen. 3 Vgl. Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995), S. 16 ff. 4 Vgl. Schweitzer, Raffael (2003), S. 4. 5 Vgl. Coldewey, Jens (2003), S. 49. 6 Vgl. Management von Softwareprojekten Case 2a, Lösung, S. 2. 7 Vgl. Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995), S. 161. 8 Vgl. Management von Softwareprojekten Case 3b, S. 9. 2
3 Koordination 3.1 Bedeutung Um eine Organisation mit hoher Spezialisierung zu koordinieren bedarf es einer größeren Anzahl an Koordinationsinstrumenten wie bei einem geringen Spezialisierungsgrad. Es gibt die folgenden Koordinationsinstrumente: Die persönliche Weisung, die Selbstabstimmung, die Programmierung sowie die Planung. Bei der persönlichen Weisung gibt die übergeordnete Stelle der untergebenen direkte Anweisungen. Bei der Selbstabstimmung tauschen sich Stellen direkt untereinander aus. Bei der Programmierung gibt es allgemeine Richtlinien nach denen die Stellen sich aufeinander abzustimmen haben. Bei der Planung erhalten die Stellen entsprechende Plandaten, die zu einer Koordination der Stellen führt. 9 3.2 V-Modell Beim V-Modell gibt es eine Steuerungsebene, die Gremien zur Kontrolle und Steuerung des Projekts bildet. Diese versuchen möglichst frühzeitig Schwierigkeiten zu erkennen und dagegen zu steuern. Dazu werden regelmäßig Besprechungen mit dem Auftraggeber, dem Projektleiter, der Leitung der Qualitätssicherung sowie der dem Projekt übergeordneten Stelle geführt. 10 Es gibt einen Regelungsteil, der vorschreibt, wie die Softwareentwicklung ablaufen soll und welche Aktivitäten wie durchgeführt werden sollen. Dies gilt auch für die Tätigkeiten der Qualitätssicherung, Konfigurationsmanagement und Projektmanagement. Es handelt sich dabei also um das Koordinationsinstrument der Programmierung. Des Weiteren gibt es beim V-Modell auch bereichsspezifische Regelungen, diese stellen eine Programmierung im Sinne der Organisationstheorie dar. Außerdem gibt es noch die Erläuterungen zu den einzelnen Produkten, die den genauen Inhalt definieren, der von einem Produkt gefordert wird. 11 9 Vgl. Kieser, Alfred (1998), S. 173. 10 Vgl. Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995), S. 161. 11 Vgl. ebenda, S. 21 f. 3
3.3 Scrum Anstelle einer umfangreichen Planung im Voraus, was die einzelnen Stellen zu tun haben, wird bei agilen Verfahren wie Scrum mehr Wert darauf gelegt, dass das Projekt änderbar bleibt. Es gibt hierfür so wenige Regeln wie möglich und dafür wird auf die Selbstorganisation gesetzt. Das heißt, die einzelnen Stellen arbeiten möglichst selbstständig und mit wenigen Vorgaben. 12 Allerdings sind tägliche Kurzmeetings sowie monatliche Sprints vorgesehen, wodurch ein Projektmanager die Selbstabstimmung der Mitglieder herbei führen kann. 13 3.4 Projekt Ist nun eher eine restriktive Form vorzuziehen, bei der die Koordinationsinstrumente der Programmierung und Planung zum Einsatz kommen, wie beim V-Modell oder eine freiere Form, bei der die Selbstabstimmung dominiert wie beim Scrum-Modell? Wieder davon ausgehend, dass wir noch nicht genau wissen, ob sich die Anforderungen noch verändern und da wir noch keine Erfahrungswerte haben, die zeigen wie ein solches Projekt umgesetzt werden soll, können wir die Entwicklung schwerlich dem Zufall überlassen, ob sich die Mitarbeiter richtig miteinander abstimmen. Da es beim V- Modell auch ein Steuerungsgremium gibt, das dazu dient frühzeitig Schwierigkeiten aufzudecken und ggf. die Regelungen zu ändern, an die die Mitarbeiter gebunden sind, ist im Bezug auf die Koordination dem V-Modell der Vorzug zu geben. 4 Konfiguration 4.1 Bedeutung Die Konfiguration beschreibt die äußere Form des Stellengefüges 14, die in Form eines Organigramms grafisch abgebildet werden kann. 15 Eine Organisation ist in Hierarchieebenen unterteilt, d.h., die Stellen haben in Bezug auf Entscheidungsbefugnisse und Status unterschiedliche Ränge innerhalb der Organisation inne. 16 Unter einer Lei- 12 Vgl. Coldewey, Jens (2003), S. 46. 13 Vgl. ebenda, S. 48. 14 Kieser, Alfred; Walgenbach, Peter (2007), S. 137. 15 Vgl. ebenda, S. 137. 16 Vgl. ebenda, S. 160. 4
tungsspanne versteht man die Anzahl der einer durchschnittlichen Stelle untergeordneten Stellen. Diese beiden Dimensionen stehen in einer Beziehung: Je mehr Hierarchieebenen es gibt, desto geringer ist die Leitungsspanne und umgekehrt. 17 Des Weiteren sind noch Unterstützungsstellen von den Leitungsstellen abzugrenzen. Es handelt sich dabei um solche Stellen, die über keine eigene Weisungsbefugnis verfügen, sondern lediglich eine Leitungsstelle unterstützen bzw. beraten. 18 4.2 V-Modell Beim V-Modell werden bestimmte Rollen gebildet, die von Personen oder Abteilungen vertreten werden. Das sind für das Projektmanagement der Leiter, Stellvertreter und Assistent, der Leiter der Qualitätssicherung und das Qualitätssicherungsteam, der Leiter und Assistent des Konfigurationsmanagements sowie der Leiter und das Team für die Softwareerstellung. Regelmäßig vertritt jede Person für ein Projekt nur eine einzige Rolle. 19 Beim V-Modell gibt es also klare Aufgabenverteilungen und auch so etwas wie Hierarchien ( Leiter ) und Unterstützungsstellen in Form von Assistenten innerhalb des Projekts. Die konkrete Ausgestaltung erfolgt aber abhängig von den Erfahrungen und Fertigkeiten der Mitarbeiter, nicht von dem vorgegebenen organisatorischen Aufbau. 20 4.3 Scrum Beim Scrum gibt es nur wenige Hierarchieebenen. Die Rolle der Leitung des Teams übernimmt der Scrum-Master. Über ihm stehen noch der Auftraggeber und das Management. Aber projektintern übernimmt er die Verantwortung und Überwachung, leitet die täglichen Scrum-Meetings und greift bei Konflikten und Schwierigkeiten ein. Er nimmt also die oberste Hierarchieebene innerhalb des Projekts ein. Alle anderen Teammitglieder sind hierarchisch gleichgestellt und nicht wie typischerweise beim Projektmanagement, bei dem es viele kleine Projektleiter gibt. Das bedeutet für jedes einzelne 17 Vgl. ebenda, S. 161. 18 Vgl. ebenda. S. 146. 19 Vgl. Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995), S. 158 f. 20 Vgl. ebenda, S. 31. 5
Teammitglied eine besondere Verantwortung die richtigen Entscheidungen zu treffen und sich mit den anderen Mitgliedern abzustimmen. 21 4.4 Projekt Unser Projekt ist ein mittelgroßes Projekt 22, das einen gewissen bürokratischen Aufbau in unterschiedliche Hierarchien, Bereiche und Unterstützungsstellen rechtfertigt. Der Scrum-Master steht sonst schnell auf verlorenem Posten, wenn er über keinen Assistenten wie beim V-Modell verfügt und zugleich noch für das Qualitätsmanagement, Konfigurationsmanagement zuständig ist. Aus diesem Grund ist im Hinblick auf die Konfiguration dem V-Modell der Vorzug zu geben. 5 Delegation 5.1 Bedeutung Delegation bedeutet, dass einzelne Stellen von ihren Vorgesetzten mit Verantwortlichkeiten und bestimmten Befugnissen ausgestattet werden, um Entscheidungen und Weisungen zu treffen. Sie erhalten damit die Berechtigung verbindlich Sachverhalte festzulegen und das Unternehmen diesbezüglich nach innen und/oder außen zu vertreten. Die Zahl der delegierten Entscheidungen ist demnach die Anzahl der Entscheidungen, die abgetreten werden. Partizipation bedeutet dagegen, dass eine Stelle Entscheidungen nicht alleine treffen darf, sondern noch weitere Stellen in die Entscheidung einbeziehen muss. Diese haben entweder ein Recht ihre Meinung zu äußern, bevor eine Entscheidung getroffen werden darf, mitzuentscheiden oder verfügen gar über ein Vetorecht. 23 5.2 V-Modell Der Projektmanager plant und verwaltet Änderungen auf Grundlage von Änderungsaufträgen, in denen die verantwortliche Person für den Änderungsvorschlag genannt werden muss. Kommt es beim Projekt, das mittels V-Modell realisiert wird, zu Konflikten in Bezug auf die Entscheidung über eine Änderung, dann muss die Entscheidung der 21 Vgl Schweitzer, Raffael (2003), S. 7. 22 Vgl. Management von Softwareprojekten Case 3a, Lösung, S. 7. 23 Vgl. Kieser, Alfred; Walgenbach, Peter (2007), S. 163 ff. 6
übergeordneten Stelle vorgelegt werden. 24 Es liegt hier also eine Form der Partizipation vor. 5.3 Scrum Beim Scrum-Modell wird eine große Anzahl an Entscheidungen auf der untersten hierarchischen Ebene gefällt, also im operativen Geschäft. Dies bedeutet, dass das Management seinen Mitarbeitern ein besonderes Vertrauen entgegen bringen muss. Die Mitarbeiter müssen im Gegenzug bereit sein diese höhere Verantwortung zu tragen. Diese Delegation geht mit Chancen und Risiken für die Unternehmensleitung einher. Einmal im Monat findet ein Backlog-Meeting statt, an dem auch die Manager des Auftraggebers teilnehmen. Darin wird die Umsetzung im Zeitraum des letzten Monats vorgestellt, die noch offenen Punkte werden im Backlog festgehalten. 25 5.4 Projekt Die Aufgaben, die im Rahmen des Projekts umgesetzt werden sollen, also eine Logistikschnittstelle bzw. ein Portal zum Gepäcktracking zu entwickeln, sind so noch nicht von der Konkurrenz umgesetzt worden. Es kann also nicht auf Erfahrungswerte aus der Vergangenheit zurück gegriffen werden. 26 Damit handelt es sich nicht um ein Routine- Projekt, bei dem die Mitarbeiter sowieso schon genau wissen was zu tun ist und nicht mehr intensiv gelenkt werden müssen. In dieser Konstellation wäre es besonders gefährlich den Mitarbeitern zu viele Freiräume zu lassen, Entscheidungen eigenständig zu treffen. Daher sollte die Delegation in den Händen der Projektleitung bleiben, dies ist beim V-Modell gegeben. Daher ist in Bezug auf die Delegation das V-Modell zu bevorzugen. 6 Formalisierung 6.1 Bedeutung Unter Formalisierung versteht man die Verwendung von schriftlich festgehaltenen Regeln zur Organisation, etwa in Form von Stellenbeschreibungen, Organigrammen 24 Vgl. Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995), S. 158. 25 Vgl. Coldewey, Jens (2003), S. 48 f. 26 Vgl. Mangement von Softwareprojekten Case 1, Lösung, S. 4. 7
oder Handbüchern. 27 Man unterscheidet hierbei zwischen drei Dimensionen: Die Strukturformalisierung legt den Umfang fest, in dem diese Regeln schriftlich festgehalten werden. Es handelt sich hierbei also um eine schriftliche Fixierung der Punkte Spezialisierung, Konfiguration und Delegation. 28 Die Aktenmäßigkeit wird auch als Formalisierung des Informationsflusses bezeichnet. Sie legt fest in welchem Umfang die Kommunikation schriftlich zu erfolgen hat. Sie dient insbesondere der Kontrolle und vereinfacht den Austausch von Personal. Hierbei wird also die Menge der entstehenden Akten in Form von Papier und immer mehr auch in Datenbanken abgelegte Informationen verstanden. 29 Die Leistungsdokumentation ist ein schriftlicher Nachweis über erbrachte Leistungen von einzelnen Mitgliedern einer Organisation. 30 6.2 V-Modell Beim V-Modell werden verbindliche Regelungen in Bezug auf ein Projekt in einem Projekthandbuch festgehalten. Es existieren auch Werkzeuge, die ein computergestütztes Erstellen dieses Projekthandbuches ermöglichen und damit den Aufwand verringern. 31 Es findet eine Überwachung von Änderungen statt, indem diese auf einer Änderungsstatusliste erfasst und verfolgt werden. Des Weiteren werden alle Änderungen und diesbezüglichen Entscheidungen auf einer Bearbeitungsliste chronologisch festgehalten und in einer Computerdatenbank dokumentiert. 32 Es lässt sich also zusammengefasst sagen, dass die Formalisierung im V-Modell stark ausgeprägt ist. 6.3 Scrum Bei agilen Verfahren wie Scrum ist es wichtiger, eine gute und lauffähige Software zu entwickeln, als zu viel Wert auf eine ausführliche Dokumentation der geleisteten Arbeit zu legen, diese soll auf ein notwendiges Minimum beschränkt werden. Die Leistungsdokumentation ist damit nur gering ausgeprägt. 27 Vgl. Kieser, Alfred; Walgenbach, Peter (2007), S. 169. 28 Vgl. ebenda, S. 170 ff. 29 Vgl. ebenda, S. 175 f. 30 Vgl. ebenda, S. 176 f. 31 Vgl. Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995), S. 168 f. 32 Vgl. ebenda, S. 158 f. 8
Es ist auch wichtiger, flexibel auf Änderungen reagieren zu können, als einen vorgefertigten Plan zu verfolgen. Das bedeutet, die Aufgaben werden nicht im Voraus im Detail schriftlich festgehalten, sondern ergeben sich im Rahmen der Ausführung. Da Regeln nur sehr selten schriftlich vorgegeben werden, ist die Strukturformalisierung nur schwach ausgebildet. Wichtiger ist beim Scrum stattdessen die mündliche Interaktion der Teammitglieder. Eine stark ausgeprägte Aktenmäßigkeit ist damit nicht charakteristisch für Scrum, da wenig Akten bzw. Dokumentationen entstehen. 33 6.4 Projekt Beim Vergleich der beiden Vorgehensmodelle in Bezug auf die Formalisierung fällt auf, dass es beim V-Modell wesentlich mehr Regeln gibt 34, die Leistungen zu dokumentieren und den Mitarbeitern vorzuschreiben, was sie tun müssen. Das Scrum-Modell zeichnet sich hingegen durch Einfachheit 35 statt umfangreiche Vorschriften aus. Da es sich bei unserem Projekt um eines mit einem besonders innovativen Charakter handelt, ist das Projekt besonders risikobehaftet, da es nicht möglich ist, auf Erfahrungswerte aus der Vergangenheit mit ähnlichen Projekten zurück zu greifen. Aus diesem Grund sollten weitere Risikoquellen minimiert und keine Experimente in Bezug auf die Formalisierung eingegangen werden. Daher ist das V-Modell als etabliertes Vorgehensmodell die bessere Wahl und die Dokumentation sollte nicht minimiert werden. 7 Zusammenfassung Wir sind bei den Strukturdimensionen Spezialisierung, Koordination, Konfiguration, Delegation und Formalisierung übereinstimmend zu dem Ergebnis gekommen, dass das V-Modell die bessere Wahl ist, da es bewährt und ausgereift ist und dem Projekt eine gute organisatorische Struktur gibt. Dies bedeutet, dass wir mit dem V-Modell eine bessere Softwarequalität erreichen können und daher der Geschäftsleitung empfehlen, dieses einzusetzen. 33 Vgl. Coldewey, Jens (2003), S. 48 f. 34 Vgl. Munzert, Philipp (2008), S. 13 f. 35 Vgl. ebenda, S. 14. 9
Quellenverzeichnis Bröhl, Adolf-Peter; Dröschel, Wolfgang (1995) Das V-Modell Der Standard für die Softwareentwicklung mit Praxisleitfaden, 2. Aufl., München 1995. Coldewey, Jens (2003): Agile Entwicklung ein Überblick, in Praxis der Wirtschaftsinformatik, Heft Nr. 231, S. 46-54, 2003. Kieser, Alfred (1998): Organisationstheorien, 3. Aufl., Stuttgart et. al 1998. Kieser, Alfred; Walgenbach, Peter (2007): Organisation, 5. Aufl., Stuttgart 2007. Munzert, Philipp (2008): Warum ist Scrum so erfolgreich? Scrum im Vergleich mit klassischen und agilen Vorgehensmodellen, Seminararbeit, Hochschule Karlsruhe, Online im Internet: URL: <http://www.philippmunzert.de/www/images/phm/seminar_scrum_ausarbeitung.pdf> (Abfrage: 8.12.2009). Schweitzer, Raffael (2003): Scrum eine agile Methode zur Software Entwicklung, Seminararbeit, Universität Zürich, Online im Internet: URL: <http://www.ifi.uzh.ch/req/courses/seminar_ws03/07_schweitzer_scrum_ausar beitung.pdf> (Abfrage: 8.12.2009). 10