Danksagung
An dieser Stelle möchte ich mich bei den Personen bedanken, die mich moralisch sowie finanziell während meiner Studienzeit unterstützt, und nie den Glauben an mich verloren haben.
An erster Stelle möchte ich mich bei der Familie Haberl - insbesondere Herr Dipl. -Ing. Walter und Frau Annemarie Haberl - sowie meiner Mutter Frau Dorothea Dormann bedanken, ohne deren maßgebliche Unterstützung ich das Studium nie so zielstrebig hätte abschließen können.
Von meinen Studienkollegen möchte ich vor allem Herrn Andreas Pongratz, Frau Elham Hedayati Rad und Herrn Martin Saupp hervorheben, deren Zusammenarbeit eine große persönliche Bereicherung dargestellt und das Studium zu einer außergewöhnlichen Erfahrung gemacht hat.
Und abschließend gilt mein Dank meinen Diplomarbeitsbetreuern: Insbesondere Herrn Dipl.-Ing Wolfgang Zuser, der durch seine ausgezeichnete Betreuung eine rasche Fertigstellung dieses Werkes ermöglicht hat sowie Herrn Univ. - Prof. Thomas Grechenig.
Wien, Februar 2004 Maresa Dormann
II
Abstract
Durch die Komplexität, welche die Software Entwicklung in den letzten Jahrzehnten erreicht hat, muss neben den strategischen und technischen Aspekten zunehmend dem Faktor Mensch Aufmerksamkeit - in seiner ganzen “Menschlichkeit“gewidmet werden.
Während das frühere wirtschaftliche Bild vornehmlich von hierarchischen Unternehmensstrukturen und Automatisierung von Prozessen die
Arbeitsplatzgestaltung dominiert wurde, geht der aktuelle Trend im Zuge des Wertewandels hin zu flacheren hierarchischen Organisationen, welche im zunehmenden Maße auf Gruppen- und Teamarbeit Wert legen.
Das heutige Jobprofil verlangt Flexibilität und Bereitschaft zu (interdisziplinärer) Teamarbeit. Diese Arbeitsform erfordert ein breites Spektrum an Fähigkeiten, um sich zusammen mit anderen einem komplexen Problem zu stellen. Im Bereich der Software Entwicklung sieht die Projektbilanz leider noch sehr traurig aus. 2/3 aller Software Entwicklungsprojekte werden sowohl zeitlich und damit auch budgetär überzogen oder gar nicht abgeschlossen. Die Entwicklungsmethoden und Prozesse tragen hier allerdings nur einen kleinen Teil der Schuld. Der Erfolg eines Projekts steht und fällt zu einem großen Teil mit den dafür ausgewählten Mitarbeitern.
Gründe für Projektmisserfolge auf zwischenmenschlicher und organisatorischer Ebene sind in dieser Diplomarbeit zusammengetragen worden, um das Thema „motivatorische Aspekte, Produktivitätsfaktoren und organisatorische Rahmenbedingungen für die Gestaltung einer erfolgreichen Teamarbeit in Software Entwicklungs Teams“ genau zu untersuchen.
III
Inhaltsverzeichnis
Inhaltsverzeichnis..................................................................................................................... IV
Abbildungsverzeichnis VII
Tabellenverzeichnis. VII
Kapitel 1 Einleitung 8
Kapitel 2 Grundlagen der Software Entwicklung 11
2.1 Software Entwicklung 11
2.1.1 Einleitung und Begriffserklärung. 11
2.1.2 Einführung in Software Entwicklung. 12
2.2 Software Entwicklungsprojekte 13
2.2.1 Projektarten 13
2.2.2 Projekttypen 14
2.2.3 Projektphasen 15
2.2.4 Projektstrukturen 16
2.2.5 Rollen in Software Entwicklungs-Teams. 18
2.3 Einbettung von Teams in Organisationen 19
2.3.1 Organisationskultur 20
2.3.2 Wertewandel. 22
Kapitel 3 Grundlagen der Teambildung. 24
3.1 Teams 24
3.2 Gruppendynamische Prozesse in Teams 25
3.2.1 Der Prozess Teambildung: 25
3.3 Rollenmodelle 27
3.3.1 Team Management Kreis 28
3.3.2 Sozi-emotionale Rollen 32
3.3.3 Zerstörerische Rollen 33
3.4 Teamführung - Modelle 35
3.4.1 Macht - und Entscheidungsspielraum. 35
3.4.2 Aufgaben- und Mitarbeiterorientierung 36
3.4.3 Der Prozess „Teamführung“ 38
3.5 Leistung und Produktivität 39
3.5.1 Kommunikationsstrukturen. 42
3.5.2 Interaktionsprozesse 43
3.5.2.1 Kreativität, Fehlerrate und Organisationsaufwand. 44
3.5.3 Spitzensport. 46
Kapitel 4 Anforderungen an SE Teams und seine Mitarbeiter 47
4.1 Mitarbeiter als Teil des Ganzen 47
4.1.1 heutige Ansprüche und Anforderungen an Mitarbeiter. 48
4.2 Das Vier Kompetenzmodell 51
4.2.1 fachliche Kompetenz. 53
4.2.2 methodische Kompetenz 53
4.2.3 Unternehmerische Kompetenz 54
4.2.4 soziale Kompetenz 55
4.3 Soziale Kompetenz. 55
4.3.1 Kommunikation. 55
4.3.1.1 Nonverbale und verbale Kommunikation 56
IV
4.3.1.2 Sender Empfänger Modell 57
4.3.2 Teamführung 57
4.3.3 Konfliktmanagement. 59
4.3.3.1 Konflikt-Ursachen 60
4.3.3.2 Konflikt-Strategien. 60
4.3.4 Motivation 62
4.4 Motivationsformen 63
4.4.1 Motivationstheorien 65
4.4.1.1 Maslowsche Bedürfnispyramide 65
4.4.1.2 Herzberg 66
4.4.1.3 Motivationsfaktoren in Teams 67
4.5 Gegenmaßnahmen bei mangelnder Produktivität 68
Kapitel 5 Anforderungsanalyse. 70
5.1 Die Rolle der Anforderungsanalyse in einem Projekt. 70
5.2 Anforderungsportfolios an die Mitarbeiter 71
5.3 Qualitativ hochwertige Spezifikation. 72
5.4 Qualitativ hochwertige Kommunikation mit NLP 73
5.4.1 Methodisches Vorgehen. 74
5.4.1.1 Die Tilgung 75
5.4.1.2 Generalisierungen. 75
5.4.1.3 Verzerrungen. 76
5.5 Prioritätensetzung und Zielarten 76
5.6 Zusammenfassung. 77
Kapitel 6 Systementwurf. 79
6.1 Systementwurf, Design 79
6.1.1 Produktionsbedingungen des Systementwurfs. 79
6.2 Kreativität. 80
6.2.1 Handlungsspielraum. 81
6.2.2 Ziele. 82
6.3 Zusammenfassung. 85
Kapitel 7 Implementierung 86
7.1 Ziele der Implementierung 86
7.2 Beste Vorraussetzungen 87
7.2.1 Mitarbeiterprofile 87
7.2.2 Arbeitsbedingungen 89
7.2.2.1 Führung 90
7.2.2.2 Teamkollegen 90
7.2.2.3 Flow. 90
7.2.2.3 Arbeitsbedingungen 91
7.3 Zusammenfassung. 94
Kapitel 8 Test - Inbetriebnahme. 95
8.1 Qualitätssteigerung durch Fehlersenkung 95
8.2 Produkte 97
8.2.1 Testprinzipien. 98
8.3 Qualität und Menschen. 99
8.4 Anregungen in der Testphase. 100
8.4.1 Testteam 101
8.4.2 Vom Mitarbeiter zum Mitunternehmer 102
8.4.3 Der Sinn der Software 103
8.5 Zusammenfassung. 104
Kapitel 9 Inbetriebnahme und Wartung. 105
V
9.1 Der letzte Schritt. 105
9.2 Produkte der Phase 106
9.3 Umgang mit Kunden 107
9.3.1 Soziale Kompetenz. 107
9.4 Förderung sozialer Kompetenzen. 109
9.4.1 Ältere Mitarbeiter. 110
9.4.2 Vorbildwirkung 110
9.5 Zusammenfassung. 111
Kapitel 10 Zusammenfassung. 112
Literaturverzeichnis. 114
VI
Abbildungsverzeichnis
Abb. 2.1: Entwicklung von Software Engineering aus Shaw96
Abb. 2.2: Unternehmensentwicklung und Qualifikation der beschäftigten Softwareentwickler Bern02
Abb. 2.3: Die Struktur eines Chefprogrammierteam nach Bake72
Abb. 2.4: Eine moderne Gruppenstruktur nach Scha99
Abb. 2.5: Personen, Prozesse und Produkte aus Zuse01
Abb. 2.6: Aspekte der verschiedenen Unternehmenskulturen Bull94
Abb. 2.7: Tendenzielle Verlagerung der individuellen Wertvorstellungen Bull96
Abb. 3.1: Gruppenleistung versus Teamleistung aus Haug94
Abb. 3.2: Die Teamuhr - die Prozessphasen der Teamentwicklung nach Tuck92
Abb. 3.3: Teammanagementkreis nach C. Margerison und D. McCann Marg92
Abb. 3.4: Entscheidungsspielräume in Abh. von Führungsstilen nach Tann73
Abb. 3.5: Hersey und Blanchards Modell der situationsbezogenen Führung aus Kone95
Abb. 3.6: Gruppenvorteil hinsichtlich Fehlerrate, Organisationsaufwand, Ideen Clem85
Abb. 4.1: Mitarbeiteranforderungsprofil in den SW Entwicklungsphasen Bern02
Abb. 4.2: Das vier Kompetenzen Modell nach Geip03
Abb. 4.3: Interaktionsmodell der Kommunikation nach Bateson und Watzlawick.
Abb. 4.4: Erweitertes Kommunikationsmodell ausgehend von Shan49
Abb. 4.5: Anteile des vier Kompetenzmodells als Software Projektleitung nach Geip03
Abb. 4.6: Die 3 Dimensionen der Konfliktgestaltung nach Geip03
Abb. 4.7: Spektrum der Reaktionsmöglichkeiten auf Konflikte Geip03
Abb. 4.8: Handlungsdimensionen nach Bull96
Abb. 4.9: Bedürfnispyramide nach Maslow aus Bull96
Abb. 4.10: Einflussfaktoren auf die Arbeitsgestaltung nach Herzberg Bull96
Abb. 4.11: Produktivitätsfaktoren nach Bull94
Abb. 5.1: Die häufigsten sprachlichen Defizite in Anforderungsspezifikationen Rupp01
Abb. 6.1: Konstellationsmöglichkeit verschiedener Ziele nach Stoc01
Abb. 6.2: Anspruchsniveau von Zielen Stoc01
Abb. 7.1: Teamfähigkeit aus http://beat.doebe.li/bibliothek/a00129.html
Abb. 7.2: die durchschnittliche Leistungskurve aus Geip03
Abb. 7.3: Sägeblatteffekt aus Geip03
Abb. 8.1: Kostenzusammenhang von Fehler und Entdeckung aus Zuse01
Abb. 8.2: Fehlerentdeckung bei Tests Diet00
Abb. 8.3: Wirkungskette des Motivationsprinzips Stoc01
Tabellenverzeichnis
Tab. 2.1: Überblick über Aufgabenrollen innerhalb eines SE Teams nach Zuse01
Tab. 3.1: Übersichtstabelle über die sozi-emotionalen Rollen nach Bade90
Tab. 3.2: Übersicht über die zerstörerischen Rollen nach Bade90
Tab. 3.3: Beurteilung der Teamleistung anhand folgender Faktoren nach Witt98
Tab. 5.1.:Zuordnung von Zielarten nach Züst97
Tab. 6.1: Überblick über Führungspotentiale und Maßnahmen Bull94
Tab. 8.1: Fehlerursachen und deren Ursprung Zuse01
Tab. 8.2: Testmethoden und deren Kontext aus Zuse01
VII
Kapitel 1 Einleitung
Die heutige Software Entwicklung hat nur mehr wenige Gemeinsamkeiten mit den Ursprüngen dieser Ingenieursdiziplin. Die zunehmende Entwicklung dieses Gebiets sowie die Änderungen der - immer vielfältiger werdenden Anforderungen in den letzten Jahrzehnten - erhöhen stetig die Komplexität der zu entwickelten Software und damit des Prozesses.
Es wurde erkannt, dass neben den strategischen und technischen Aspekten der Faktor „Mensch“ in seiner ganzen Persönlichkeit in einem Arbeitsprozess mitwirkt und entsprechend zunehmend in einen solchen Prozess einbezogen werden muss, um in Projekten erfolgreich zu sein. Während technische Hilfsmittel, Strategien und geeignete Maßnahmen sich lediglich als das was sie sind - als Werkzeuge - erwiesen haben, wird nun zunehmend das Individuum zum Zentrum der Beobachtung und Forschung.
Daher handelt das zentrale Thema dieser Diplomarbeit von der Persönlichkeit eines Menschen - insbesondere von ihren Skills, ihren motivatorischen und produktivitätsfaktorischen Aspekten - im Rahmen der Entwicklung von technischer Software. Ergänzend wurden Gründe für Projektmisserfolge auf menschlicher Ebene zusammengetragen und Möglichkeiten aufgezeigt, um Teamarbeit erfolgreicher zu Gestalten, beschrieben.
Während die Arbeitsplatzgestaltung in Unternehmen vorwiegend von hierarchischen Unternehmensstrukturen geprägt war, geht der aktuelle Trend im Zuge des Wertewandels hin zu zunehmend flacher werdenden hierarchischen Organisationen mit Gruppen- und Teamarbeit als häufigste Arbeitsform. Einhergehend mit diesem Wandel erfolgte eine Anpassung der Prozesse sowie eine Adaptierung der Anforderungsprofile an Mitarbeiter, wobei den so genannten „Soft Skills“ in den letzten Jahrzehnten eine immer größer werdende Bedeutung beigemessen wurde.
8
Mehr denn je ist Teamfähigkeit, Teams zu führen, Verantwortungsbewusstsein und eigenständiges kreatives Potential zu entwickeln um Projekte erfolgreich abzuschließen, von exorbitanter Bedeutung.
Begleitend dazu entwickelt sich die heutige Projektkultur in den interdisziplinären Bereich. Tendenz stark steigend. Mit ihren vielen und oft unterschiedlichen Aufgaben fordern wird ein breites Spektrum unterschiedlichster Kompetenzen gefordert, welche - je nach Projektphase - in unterschiedlicher Ausprägung zum Einsatz kommen müssen, um das Team zum Erfolg zu führen. Zurecht, wie sich allmählich herausstellt.
Die Ergebnisse der Standish Group 1995 von mehr als 8000 Projekten ergab nahezu frustrierende Projektergebnisse. Die durchgeführte Erhebung zeigte, dass 30% aller Projekte vorzeitig scheitern und 70% der verbleibenden Projekte nicht die gewünschten Leistungsmerkmale aufweisen. Nur 16% der Projekte seien erfolgreich gewesen und davon seien 31% ohne Ergebnis und 53 % der Projekte nicht im Plan. Im ersten Teil dieses Dokuments (Kapitel 2 - 4) werden verschiedene Aspekte der Teamarbeit aus der Sicht der Organisation, des Unternehmens und des Mitarbeiters betrachtet. Neben allgemeinen Teamdefinitionen und -phänomenen wie Gruppendynamikprozesse, Rollenmodelle und Führung werden auch die Anforderungsprofile von Mitarbeitern anhand des „Vier Kompetenzen“ Modells genauer erörtert. Abschließend wird auf das Thema der Motivation in Zusammenhang mit Produktivität sowie ihre Gegenpole und mögliche Ursachen für dieses Verhalten eingegangen.
Im zweiten Teil (Kapitel 5 - 9) wird konkret auf die Umstände und Anforderungen der einzelnen Software Entwicklungsprozess Phasen eingegangen. Beruhend auf den aktuellen Untersuchungsergebnissen von [Bern02] werden für jedes Kapitel hinderliche wie förderliche Faktoren aufgezeigt und Entfaltungsmöglichkeiten beschrieben. Die zuvor erwähnte Expertenbefragung, hatte die Aufschlüsselung von Mitarbeiterkompetenzen und deren Eigenschaften, welche im Rahmen der jeweiligen Software Entwicklungsphase als besonders wichtig gelten, zum Ergebnis. Basierend
9
auf diesen Eigenschaften liegt jeder Kapitelschwerpunkt auf den Faktoren organisatorischer und zwischenmenschlicher Rahmenbedingungen, um den Erwerb bzw. die Entfaltung der jeweiligen Kompetenzen zu optimieren. Die wesentlichsten Erkenntnisse dieses Dokuments werden im abschließenden Kapitel Zusammenfassung beschrieben.
10
Kapitel 2 Grundlagen der Software Entwicklung
2.1 Software Entwicklung
Dieses Kapitel gibt einen kurzen Überblick über die Grundlagen der Software Entwicklung. Auf Detailinformationen kann wegen des enormen Umfangs dieses Fachgebietes nicht eingegangen werden, jedoch werden die wichtigsten Meilensteine in der Geschichte der Software Entwicklung wie folgt beschrieben.
2.1.1 Einleitung und Begriffserklärung
Während andere Wissenschaften seit Jahrhunderten bereits entwickelte und standardisierte Forschungs- und Entwicklungsmethoden vorweisen können, handelt es sich bei Software Entwicklung um eine äußerst junge Ingenieurdisziplin, deren Entfaltungspotential sich erst am Beginn ihrer Entwicklung befindet. Ihren Ursprung findet der Begriff Software Engineering im Jahr 1967, als von einer Forschungsgruppe, der NATO, [Naur69] gefordert wurde Software Engineering als ingenieurmäßige Tätigkeit zu betrachten und als solche anzuerkennen. Bis heute gibt es noch keine allgemein anerkannte, feststehende Definition dieses Begriffs [Mayr01].
In den darauf folgenden Jahren wurde auf den NATO Konferenzen zunehmend von „Software Industrieprodukten“ gesprochen und - ausgelöst durch den Begriff „Software Krise“ - dazu übergegangen, standardisierte und erprobte Vorgehensmodelle zu entwickeln und publizieren, sowie bewährte Methoden zu formalisieren und veröffentlichen
Abb. 2.1: Entwicklung von Software Engineering aus [Shaw96]
11
Bis zum heutigen Tag ist die Thematik von Software Entwicklungsmethoden und Standardisierungen sehr ergiebig und unterliegt vielen Einflüssen, wie zum Beispiel den wirtschaftlichen Entwicklungen.
Die zusammenhängende Entwicklung von Softwarearten blieb auch nicht ohne Konsequenzen für die damit verwendeten Techniken und die jeweiligen Mitarbeiterprofile, wie die folgende Grafik 2.2 aus [Bern02] veranschaulicht.
Abb. 2.2: Unternehmensentwicklung und Qualifikation der beschäftigten Softwareentwickler [Bern02].
2.1.2 Einführung in Software Entwicklung
Wie eingangs erwähnt, existiert keine einheitliche Definition des Begriffs „Software Engineering“. Die verschiedenen Aspekte dieses Begriffs können aber anhand folgender Definitionen aus der Literatur veranschaulicht werden.
- [Fair85]: „Software Engineeringist die technische und organisatorische
- [Somm85]: „Software Engineeringbefasst sich mit dem Bau von
- [Baue75]: „Das Zielder Softwaretechnik ist die wirtschaftliche Herstellung zuverlässiger und effizienter Software“.
- [Boeh79]: „Software Engineeringist die praktische Anwendung
- [Denn75]: „Software Engineeringist die Anwendung von Prinzipien,
2.2 Software Entwicklungsprojekte
In diesem Abschnitt geben wir einen kurzen Überblick über die Arbeitsform Projekt in seinen unterschiedlichen Anwendungen und Formen.
2.2.1 Projektarten
Bevor wir von Attributen, Prozesse, Personen und Produkte der Projektarbeit sprechen, ist eine einheitliche Definition des Begriffes notwendig. Folgende Merkmale und charakterisieren den Begriff „Projekt“ nach [Tjoa97] und [Zuse01]:
13
1. Ein Projekt ist ein einmaliges Vorhaben. Der Inhalt eines Projekts ist eine einmalige Tätigkeit, die in absehbarer Zeit in derselben Form nicht wiederholt wird.
2. Ein Projekt ist zeitlich begrenzt. Es gibt einen Start- und Endtermin.
3. Projekte besitzen vorgegebene Ziele bzw. vorgegebene Leistungen.
4. In Projekten werden neuartige und unbekannte Probleme gelöst, welche aus unterschiedlichen Fachgebieten stammen können.
5. Ein Projekt besitzt begrenzt verfügbare (Ressourcen oder finanzielle) Mittel.
6. Aufgrund der hohen Komplexität von Projekten und übergreifenden fachlichen Anforderungen ist eine interdisziplinäre Zusammenarbeit (Personen aus unterschiedlichen Fachgebieten) erforderlich.
7. Ein Projekt hat ein besonderes Risiko. Aufgrund der Einmaligkeit von Projekten kann es bezüglich Zeit, Kosten und Technologie zu Problemen kommen.
8. Ein Projekt besitzt ein eigens kalkuliertes Budget.
2.2.2 Projekttypen
Jedes Projekt verlangt einen gewissen Entwicklungsprozess. Bevor ein solcher aber festgelegt werden kann, müssen die Faktoren eines Projektes fixiert werden. Diese Faktoren - also die Prozesse, die Personen und Produkte - sind vom Projekttyp abhängig. Die Unterscheidung von Projekttypen wird nach [Zuse01] und [Mayr01] anhand von bestimmten Merkmalen unterschieden. Die Unterscheidung erfolgt nach:
- Größe: Dieser Faktor gibt Auskunft über den erforderlichen Aufwand in Form von Personenjahren und den daran beteiligten Personen.
- Dauer eines Projektes: Die Dauer eines Projektes bezieht sich auf Kalenderwochen.
- Zielsetzungen: Diese Faktoren bestimmen den grundsätzlichen Verlauf eines Projekts.
- Domäne: Anhand der Domäne lassen sich Schwierigkeiten aufgrund von fachlich schwierig umzusetzenden Anforderungen bereits vor Projektbeginn erkennen.
14
- Verwendete Technologien: Diese beeinflussen den Realisierungsaufwand des Projekts.
- Vorhandene Ausgangsprodukte und Zielprodukte: Bestimmen Projektverlauf und Aufwand.
- Projektbesonderheit: Was macht das Projekt zu einem besonderen Vorhaben? Was für eine Komponente ist neuartig bzw. einmalig?
- Projektkomplexität: Anzahl und Verschiedenartigkeit der Projekt-Teilaufgaben, sowie ihre Verflechtung und gegenseitige Abhängigkeit.
- Projektbedeutung: Die Bedeutung ist der Einfluss auf Teil- oder Gesamtziele des Unternehmens.
Keine Vorgehensweise kann für jede Art von Projekten verwendet werden, jedoch lassen sich Arbeitsweisen so formalisieren, dass zumindest grundlegende Prinzipien für eine möglichst große Anzahl von Projekten geeignet sind.
2.2.3 Projektphasen
Jedes Entwicklungsmodell oder -verfahren bezeichnet und besitzt einen Prozess, oder eine Vorgehensweise, die sich in verschiedene Abschnitte gliedert. Diese werden als Arbeitsschritt bezeichnet, wobei jeder seinen ganz eigenen Zweck hat und an alle Projektbeteiligten unterschiedliche Anforderungen stellt [Bern02].
2.2.3.1 Arbeitsschritte
Je nach der gerade erforderlichen Zielgruppe (Kunde, Systemanalytiker, Programmierer) werden perspektivische Wechsel des zu kreierenden Systems vorgenommen und entsprechend leicht verständliche Werkzeuge eingesetzt, um Fehler möglichst vorzeitig auszuschließen.
Nach [Zuse01] unterteilen sich die einzelnen Arbeitsschritte in Analyse, Entwurf, Implementierung, Test, Inbetriebnahme und Wartung:
- Arbeitsschritt Analyse: Im Arbeitsschritt Analyse werden in Gesprächen mit dem Kunden die Anforderungen an das System ermittelt und diese in einem Systemmodell beschrieben. Die Analyse dient zur Vorbereitung aller nachfolgenden Arbeitsschritte und schließt mit einer groben Projektplanung für die Realisierung ab.
15
- Arbeitsschritt Entwurf: Es werden alle technischen Vorbereitungen und Planungen getroffen, welche für eine fehlerfreie und rasche Implementierung des Systems notwendig sind. Parallel dazu wird auch ein Testplan erstellt.
- Arbeitsschritt Implementierung: Dieser Arbeitschritt dient zur Umsetzung des Entwurfs in einer konkreten Programmiersprache und der Erstellung eines lauffähigen und lieferbaren Systems. Die Implementierung gliedert sich in die Erstellung einzelner Module und deren abschließende Integration zum gesamten System.
- Arbeitsschritt Test: In der vorletzten Phase des Software Engineering Prozesses wird die angestrebte Korrektheit des Systems in Bezug auf Anforderungen und Technik sichergestellt und gefundene Fehler vor der Auslieferung an den Kunden beseitigt.
- Arbeitsschritt Inbetriebnahme und Wartung: Das in Betrieb befindliche Produkt ist ständigen Änderungen unterworfen. Neben dem Ausbessern von noch bestehenden Fehlern müssen gleichzeitig für Anforderungsänderungen alle Arbeitsschritte nochmals im kleinen Rahmen durchgeführt werden.
2.2.4 Projektstrukturen
Zwei theoretische Projektstrukturen von [Wein71] und [Bake72] seien hier auszugsweise vorgestellt, da deren Kombination in der Praxis in Form der „modernen Gruppenstruktur [Scha99] durchaus zur Anwendung kommen kann und sich in diesem Sinne bewährt hat.
2.2.4.1 Theoretische Modelle
- Demokratische Arbeitsgruppe nach [Wein71]: In dieser Struktur gibt es keinen Gruppenleiter. Die dahinter stehende Idee ist es die Beziehung der Programmierer zu ihren Produkten aufzulockern. Grundvoraussetzung ist hierbei eine gesunde Feedbackkultur, in der Fehler nicht als Mangel gesehen werden, sondern als Fortschritt in Richtung eines qualitativ wertvollen Ergebnisses. Das Klima ist geprägt von gegenseitigem Respekt und Wertschätzung. Der Motor ist die gemeinsame Vision.
16
- Chefprogrammierteam nach [Bake72]: Hierbei handelt es sich um ein Team mit einer Gruppenleitungsposition, welche dazu dient aufwendige Kommunikationswege zu reduzieren. Der Chefprogrammierer vereint gleichzeitig die Vorteile eines fachlich hoch entwickelten Programmierers und guten Managers in einer Person. Er übernimmt die heiklen Teile der Arbeit und teilt den Entwicklern des Teams Aufgaben zu und übernimmt die notwendigen Überprüfungen der gesamten Produkte. Im Gegenzug dazu wird er von Spezialisten unterstützt. Da die Qualitäten eines Managers und eines Programmierers nur selten in einer Person kombiniert auftreten, ist die Wahrscheinlichkeit gering unter diesen Vorraussetzungen eine Chefprogrammierposition besetzen zu können, was in diesem Ansatz allerdings Bedingung für die praktische Anwendung ist.
Abb. 2.3: Die Struktur eines Chefprogrammierteam nach [Bake72]
- Typische Gruppenstruktur [Scha99]: Die zuvor erläuterten theoretischen Modelle besitzen Schwachpunkte. In der demokratischen Struktur gibt es keine Hierarchie, was zu einem hohen Kommunikationsaufwand innerhalb der Gruppe führt. Der Ansatz des Chefprogrammierteams ist nur schwer umsetzbar, da an die Position des Chefprogrammierers hohe Anforderungen gestellt werden.
[Scha99] hat die Vorteile beider Modelle kombiniert und eine Gruppenstruktur entworfen, die in der Praxis anwendbar ist. In diesem Modell ist eine geringfügige Struktur vertreten, wobei gleichzeitig durch eine
Qualifikationsaufteilung auf verschiedene Rollen, eine ausreichende Verteilung der Ressourcen sichergestellt ist. Abbildung 2.4 veranschaulicht das Modell.
17
Abb. 2.4: Eine moderne Gruppenstruktur nach [Scha99] Die Aufgabenteilung erfolgt in einen technischen und einen wirtschaftlich-organisatorischen Bereich. Während der Gruppenleiter sich um die technischen Belange kümmert, ist es Aufgabe des Gruppenmanagers die wirtschaftlichen und organisatorischen Dinge zu verwalten. In der Regel werden wichtige Entscheidungen gemeinsam getroffen und die Programmierer werden je nach Bedarf eingeteilt. Innerhalb der Entwickler, also innerhalb der technisch versierten Ebene, gibt es weitere Rollenunterteilungen auf die wir im folgenden Abschnitt konkreter eingegangen wird.
2.2.5 Rollen in Software Entwicklungs-Teams
Personen werden Rollen - in diesem Fall sind es konkrete Aufgabenrollenzugewiesen. Eine Rolle in einer Gruppe dient der Erfüllung von expliziten sowie impliziten Anforderungen und Aufgaben, welche speziell an diese Rolle geknüpft sind. Die Anzahl der Rollen ist abhängig vom Umfang eines Projekts und der Größe des Projektteams. Klare Aufgabenzuteilungen für jedes Rollenprofil sind ebenso wichtig, wie die Zuweisung der Rolle an die am meist(en) qualifizierte(n) Person(n).
Tab. 2.1: Überblick über Aufgabenrollen innerhalb eines SE Teams nach [Zuse01]
2.3 Einbettung von Teams in Organisationen
Software Entwicklungsteams sind in Organisationen eingebettet und stehen in unmittelbarer Wechselwirkung mit dieser. Die Art wie Organisationen ihre Mitarbeiter sieht, wirkt sich unweigerlich auf die Arbeitseinstellung der Mitarbeiter (respektive Teams) aus, was sich in weiterer Folge auf die Qualität der Produkte auswirkt. Abbildung 2.5 aus [Zuse01] veranschaulicht grafisch diese Zusammenhänge.
Abb. 2.5: Personen, Prozesse und Produkte aus [Zuse01]
Traditionelle Organisationsformen sind strikt hierarchisch gegliedert. Entwickler werden in Gruppen bzw. Abteilungen zusammengefasst, die einen bestimmten Schwerpunkt haben (z.B. Systemprogrammierung, Datenbankanbindung usw.). Dadurch sind auch Kommunikationswege, zwischen den Abteilungen und Ebenen, strikten Prozessen unterworfen, wodurch nur ein geringes Maß an Flexibilität
19
gewährleistet und erhebliche Einbußen in der Reaktionszeit hingenommen werden müssen.
Aus diesem Grund ist speziell für stark technisch versierte Branchen diese Form der Organisation ungeeignet. In modernen Software Projekten ist eine fachübergreifende Zusammenarbeit notwendig, die eine direkte Kommunikation zwischen den Projektmitgliedern und eine abteilungsunabhängige Organisationsform ermöglicht. Aus diesem Grund setzte sich im Laufe der Zeit die wesentlich flexiblere Projektorganisation im Bereich des Software Engineering durch.
2.3.1 Organisationskultur
Es folgt eine Übersicht über die Bedeutung der Unternehmenskultur sowie die verschiedenen Aspekte einer solchen. Nach Gablers Wirtschaftslexikon 1993, Brockhaus Enzyklopädie 1990 ist eine Unternehmenskultur: „Die Unternehmenskultur stellt die Summe von Wertvorstellungen, Verhaltens-Normen, Denk- und Handlungsweisen dar, die von den meisten Mitgliedern eines Unternehmens gemeinsam getragen werden. Das selbstverständliche Verhalten und Handeln und somit die Steuerung des Gruppenverhaltens beruht auf nicht offensichtlichen Werten und Normen sondern auf begründeten Annahmen, die einer oberflächlichen Beurteilung weitgehend verschlossen bleiben. Sie weisen oft über längere Zeiträume eine große Beständigkeit auf“
Diese interne Prägung des Arbeitsklimas und der Umgang miteinander können stark variieren. Die Aspekte der verschiedenen Unternehmenskulturen nach [Bull94] werden in Abbildung 2.6 veranschaulicht.
20
Nach [Krul90] können solchen Unternehmenskulturen fünf wesentliche Merkmale zugewiesen werden:
- Tradierung: Eine Kultur entstand in der Vergangenheit und hat sich über längere Zeit entwickelt.
- Wandlungsfähigkeit: Eine Kultur ist nicht statisch, sondern kann nur aufgrund ihrer Wandlungsfähigkeit überleben.
- Zeitbedingtheit: Eine Unternehmenskultur ist einerseits entsprechend einer übergeordneten gesellschaftlichen Kultur ausgerichtet. Andererseits ist die Gültigkeit der darin ausgedrückten Werte trotz ihrer langfristigen Bewahrung zeitlich begrenzt.
- Erfahrbarkeit: Sie ist durch Symbole zumindest teilweise verständlich und wahrnehmbar
21
- Erlernbarkeit: Ein Außenstehender besitzt die Möglichkeit, sich in eine bestehende Unternehmenskultur zu integrieren
Der Wunsch nach Sinngebung, nach symbolischer Führung, nach Orientierung sowohl außerhalb als auch innerhalb eines Unternehmens kurz - nach einer Unternehmenskultur - wird stärker [Bull96]. [Rose90] hat folgende Formulierung dafür verwendet:
„Das wachsende Wertebewusstsein in der Gesellschaft sensibilisiert für Indikatoren der Unternehmenskultur, bringt einen spontanen Wandel dieser traditionellen Unternehmenskultur und lässt es ratsam erscheinen, aktiv Veränderungen der Unternehmenskultur anzustreben, die es dem einzelnen erleichtern, sich mit dem Unternehmen zu identifizieren „
Ausgelöst werden diese strukturellen Änderungen durch einen so genannten „Wertewandel“, der sich zuerst gesellschaftlich bemerkbar macht. Darauf reagiert der Markt und in weiterer Folge die unternehmerischen Organisationen, die den Markt versorgen.
2.3.2 Wertewandel
Durch einen wirtschaftlichen wie gesellschaftlichen Wertewandel, der sich neben anderen zahlreichen Änderungen - so auch in den Organisationskulturen bemerkbar machte - wurde der Grundbaustein der Entwicklung zu einer, von Teamarbeit geprägten, Arbeitswelt gelegt [Bull94]. Ausgelöst durch Entwicklung und Einsatz neuer Technologien formte auch der Markt andere Ansprüche (von der Produktorientierung zur Kundenorientierung) was unmittelbar eine Änderung der Führungs- und Unternehmensstrukturen forcierte, um weiterhin rentabel zu wirtschaften. Damit wichen die hierarchischen Strukturen zunehmend Unternehmen mit mitarbeiter- und teamorientierten Arbeitsplatzanforderungen [Luka95]. Im Zuge dessen vollzog sich auch ein individueller Wertewandel, was bedeutet, dass sich auch die Mitarbeiteranforderungen an Unternehmen stark verlagert haben, wie in Abbildung 2.7 dargestellt.
22
Abb. 2.7: Tendenzielle Verlagerung der individuellen Wertvorstellungen [Bull96]
Anerkennung, Verantwortung, Selbstentfaltung und (Pro)Aktivität sind nach [Bull96] heute die Erwartungshaltungen der Mitarbeiter an ihre Aufgaben im Job. Persönliche Weiterbildung sowie der Wunsch Arbeit und persönliche Interessen zu kombinieren erhalten eine immer höhere Priorität. Unternehmen die auf lange Zeit gesehen, ihren Mitarbeitern komplexe und eigenverantwortliche Aufgabenstellungen geben, Ziele und Visionen vermitteln, sie in diverse Entscheidungsprozesse miteinbeziehen und in diese investieren, bewirken eine erhöhte Identifikation des Einzelnen mit der Organisation, wodurch eine deutliche Steigerung des Engagements beobachtet werden kann. Kurz: Die Einbindung des einzelnen Mitarbeiters in die Unternehmenskultur fördert die Qualität der Ergebnisse und die Leistung des Individuums.
23
Kapitel 3 Grundlagen der Teambildung
3.1 Teams
Teams werden gebildet, um ein komplexes Vorhaben - häufig in interdisziplinärer Form - gemeinsam zu bewältigen, wobei Auslöser, Zweck, Zielsetzung, Art und Dauer hierbei variieren können. Die Mitarbeiter eines Teams arbeiten innerhalb eines gewissen Ordnungssystems ihren eigenen produktiven Arbeitsstil und zeigen unter ihren persönlichen Bedingungen produktivere Ergebnisse als unter „aufoktroyierten Bedingungen“. Zusätzlich entlastet Teamarbeit das Management und damit das Unternehmen um einen hohen Kostenfaktor, wodurch diese Arbeitsform in Weise auch eine Vorraussetzung für den Fortbestand eines Unternehmens darstellt. „Teams werden meist als sich selbst organisierende und sich selbst steuernde Einheiten eingerichtet. In diesem Sinne ist ein Team eine Gruppe von Mitarbeitern, die für einen ganzen geschlossenen Arbeitsgang verantwortlich ist und für die das Ergebnis ihrer Arbeit als Produkt oder Dienstleistung an einen internen oder externen Empfänger liefert. Sie leisten nicht nur Arbeit - Sie organisieren sich selbst“ [Haug 94].
Die Differenzen zwischen einer Gruppe und einem Team sind - generell betrachtetunwesentlich, weisen aber im Bereich des Leistungsniveaus sehr markante Unterschiede auf, wie Abbildung 3.1 veranschaulicht.
hoch
niedrig
Abb. 3.1: Gruppenleistung versus Teamleistung aus [Haug94]
24
Arbeit zitieren:
Diplom Ingenieur Maresa Dormann, 2004, Motivation und Produktivitätsfaktoren in den Phasen der Softwareentwicklung, München, GRIN Verlag GmbH
Dieser Text kann über folgende URL aufgerufen und zitiert werden:
Einbetten
DOI
Workflow-Management und Anwendungen in der Praxis
Informatik - Wirtschaftsinformatik
Seminararbeit, 21 Seiten
Identifikation und Darstellung der Gründe für das häufige Misslingen d...
BWL - Unternehmensführung, Management, Organisation
Hausarbeit, 28 Seiten
Einfluss der Globalisierung auf die Unternehmenskultur
BWL - Unternehmensführung, Management, Organisation
Seminararbeit, 61 Seiten
Kontext und Bedeutung - offene und versteckte Dimension von Kultur
Medien / Kommunikation - Interkulturelle Kommunikation
Seminararbeit, 79 Seiten
Internationale Unterschiede im organisationalem Verhalten
Psychologie - Arbeit, Betrieb, Organisation und Wirtschaft
Hausarbeit, 61 Seiten
Zeitliche Bedingungen für den Gruppenprozess und das Gruppenergebnis
BWL - Unternehmensführung, Management, Organisation
Seminararbeit, 49 Seiten
Maresa Dormann's Text Motivation und Produktivitätsfaktoren in den Phasen der Softwareentwicklung ist nun auf dem Buchmarkt erhältlich
Maresa Dormann hat den Text Motivation und Produktivitätsfaktoren in den Phasen der Softwareentwicklung veröffentlicht
Maresa Dormann hat einen neuen Text hochgeladen
Con los Mayores [With Star Stickers and Motivation Progress Chart]
Patricia Geis, Sergio Folch
Produktivitätsfaktor Betriebliche Gesundheit
Organisation und Medizin
Gerhard Westermayer, Bertolt A. Stein
Faktor V: Die fünf Phasen erfolgreichen Verhandelns
Die fünf Phasen erfolgreichen ...
Friedhelm Wachs
UNIVERS PROFESSIONNEL ET MOTIVATION DES ENSEIGNANTS
Rôle de la satisfaction ou de ...
ANSOUMANA SANE
PERCEPTION, MOTIVATION ET AUTONOMIE CONCEPT DE SOI ET APPRENTISSAGE
APPRENTISSAGE EN ÉDUCATION PHY...
Chawki DERBALI
0 Kommentare