fit 2002: Produktionsverhältnisse: Chief Programmer Team |
[ eXtreme Programming | Programmieren als Kunst | Chief Programmer Team | Software Factories | Community Programming ] |
ÜberblickDas Chief Programmer TeamKurzbeschreibung der Organisationsform "Chief Programmer Team", kurz "CPT".Entstehungsgeschichte Wie sind "CPT"s enstanden? Wer entwickelte dieses Konzept?Rollenverteilung/Organisationsform Welche Rollen gibt es innerhalb des "CPT"s? Wer hat welche Aufgaben/Rechte/Veranwortlichkeiten? Wo sind "CPT"s in der Firmen-Aufbauorganisation angesiedlet?Motivation und Beispiel aus der Praxis Erklärung der Motivation und der Auswirkungen von "CPT"s anhand von Beispielen.Anwendungsbereiche/Probleme Wo macht die Anwendung des "CPT"-Konzeptes Sinn? Welche Voraussetzungen müssen gegeben sein?Vor- und Nachteile Beschreibung der Vor- und Nachteile des "CPT"-Konzeptes. Das Chief Programmer TeamBeim Chief Programmer Team handelt es sich um eine kleine, hierarchisch aufgebaute Gruppe von IT-Spezialisten mit unterschiedlichen Fähigkeiten und Kompetenzen, die gemeinsam ein Softwareprojekt realisieren. Unterstützt werden diese Spezialisten von einigen Hilfskräften, die "nicht-technische" Aufgaben (z.B. administrative Aufgabe) übernehmen, damit sich die IT-Spezialisten ausschliesslich auf die Implementierung der Software konzentrieren können. Die bestimmende Person in diesem Projektteam ist der sogenannte "Chief Programmer". Er sollte sowohl als Führungspersönlichkeit als auch als Techniker überdurchschnittliche Fähigkeiten aufweisen. Dem Chief Programmer unterstehen einige weitere IT-Experten, die gemeinsam mit ihm das Softwareprojekt realisieren. Die Idee des Chief Programmer Teams ist, eine Aufgabe nicht mit Einsatz von vielen "normalen" Programmierern, sondern mit Hilfe von einigen wenigen Spezialisten zu lösen, um dadurch die Projektlaufzeit zu reduzieren. EntstehungsgeschichteDie Idee des "CPT"s entstand bei IBM in den späten 60er bzw. frühen 70er-Jahren. Der Vater des Konzepts ist Mills. Durch die Publikation von Baker und Brooks wurde das Konzept bekannt. Baker berichtete über einen erfolgreichen Einsatz bei der Enwicklung eines Online-Informationssystems bei der N.Y. Times und schlug einige Verbesserungen des Konzeptes vor. Brooks publizierte das Konzept ("Mythical Man-Month") Mitte der 70er-Jahre. Weiteres zur EntstehungsgeschichteRollenverteilung/OrganisationsformEin "CPT" ist hierarchisch aufgebaut. Es besteht folgenden Rollen: Chief Programmer, Co-Pilot, Projektadministrator/-sekretär, Editor, Testspezialist, Sprachspezialist der verwendeten Programmiersprache, Dokumentenverantwortlicher, Tool-Verantwortlicher, und einige weitere hochqualifizierte IT-Experten. Der Hauptverantwortliche für den Entwurf und die Implementierung ist der Chief Programmer. Er implementiert selbst kritische Funktionalität, weist den anderen Entwicklern entsprechende Aufgaben zu und kontrolliert den Arbeitsfortschritt. Weiteres zur Rollenverteilung/Organisationsform Motivation und Beispiel aus der PraxisDurch die vielen Informationskanäle bei grossen Projekt-Teams (Kommunikation zwischen vielen Projektmitgliedern) ist der Overhead für den Informationsaustausch enorm. Dadurch steht weniger Zeit für die eigentliche Aufgabe zur Verfügung. Durch Verkleinerung der Projektgruppe, klare Definition von Aufgaben und Verantwortlichkeiten und den Einsatz von Spezialisten kann die Projektdauer (und dadurch auch die Kosten) verringert werden. Das Chief Programmer Team wurde erstmals für die Entwicklung eines Informationssystems der New York Times eingesetzt. Details zur Motivation und PraxisbeispielAnwendungsbereiche/ProblemeDie Voraussetzung für die Anwendung des "CPT"-Konzeptes ist, dass das Problem wenig Kreativität erfordert (Entscheidungen und Richtungsvorgaben werden ausschliesslich von einer Person, dem Chief Programmer, bestimmt), der Umfang des Projekts gross ist und die Laufzeit trotzdem gering sein muss. Probleme enstehen beispielweise dadurch, dass es schwer ist, eine Person zu finden, die die Aufgabe des Chief Programmers erfüllen kann. Auch wenn es eine solche Person innerhalb der Firma gibt, setzen die Manager ungern "CPT"s ein, da sie für die gesamte Projektdauer alle Weisungsbefugnisse und Verantwortlichkeiten an den Chief Programmer abgeben müssen. Ausserdem ist das Projekt durch den gleichzeitigen Ausfall des Chief Programmers und seines Assistenten sehr gefährdet. Details zu Anwendungsbereichen/Problemen
Vor- und NachteileDer Chef (der Chief Programmer) ist im Gegensatz zu anderen Projektorganisationen direkt in die Programmierung eingebunden und kann daher seine Kontrollfunktion besser wahrnehmen, was sich positiv auf den Projektablauf auswirkt. Durch den Einsatz von kleinen Teams mit Spezialisten kann die Projektdauer stark reduziert werden. Ein wichtiger Nachteil des "CPT"-Konzeptes ist, dass das Projekt überdurchschnittlich stark von einer einzigen Person abhängt (dem Chief Programmer). Ausserdem haben Teammitglieder schlechte Aufstiegsmöglichkeiten, da das "CPT" ausserhalb der "normalen" Betriebsaufbauorganisition angesiedelt ist.
QuellenangabenWir haben haupsächlich Materialien verwendet, die im Internet in Form von Artikeln, Buchauszügen und Berichten zuverfügung standen.
|
(c) FIT 2002 Gruppe 2 |