software entwicklung bei microsoft und netscape … in den 90ziger jahren datum: 28.05.2009 autoren:...

23
Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

Upload: gitta-kauth

Post on 05-Apr-2015

102 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

Software Entwicklung bei Microsoft und Netscape

… in den 90ziger Jahren

Datum: 28.05.2009Autoren: Thorsten Bux, Andreas Fichter

Page 2: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 2

Agenda

1. Vorstellung der Artikel

2. Synchronize and Stabilize Software Developing Model

3. Netscape Planning and Developing Process

4. Meinung der Autoren

5. Stellungnahme

6. Zusammenfassung

Page 3: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 3

Vorstellung der Artikel

How Microsoft Builds SoftwareCommunications of the ACM Volume 40, Issue 6Michael A. Cusumano, Richard W. SelbyACMJuni 1997

Software Development on Internet TimeComputer Volume 32,  Issue 10Michael A. Cusumano, David B. YoffieIEEE Computer Society PressOktober 1999

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 4: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 4

Vorstellung der Artikel

Software Entwicklungsprozess von Microsoft und Netscape

Internet Software Firmen müssen flexibler und schneller bei der Entwicklung neuer Produkte sein

Synchronize-and-Stabilize Software Developing Model

Netscape Planning and Developing Process Befragung von Microsoft und Netscape

Mitarbeitern (1996-1998)

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 5: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 5

Firmenvorstellung - Microsoft

Microsoft - Short Facts

Software Entwicklungsphilosophie nur wenige der strukturierten SWE Methoden

einführen wenig Struktur in der Produktentwicklung

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

1996

Mitarbeiter 20.500

Umsatz 8,7 Mrd. $

Produkte 250

2008

Mitarbeiter 91.000

Umsatz 60,4 Mrd. $

Produkte (k.A.)

Page 6: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 6

Synch-and-stabilize

häufiges Synchronisieren und periodisches Stabilisieren Planungsphase Entwicklungsphase Stabilisierungsphase

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 7: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 7

Planungsphase

Visionsbeschreibung Produktziele und Produkt Features

Spezifikation Feature „Festlegung“ und Beschreibung Komponenten mit gegenseitigen

Abhängigkeiten Zeitplan und Teams erstellen

Feature Teams 3-4 Meilensteine

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 8: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 8

Entwicklungsphase

“Do everything in parallel with frequent synchronisation“ viele kleine Teams zusammen ein großes Team

täglich Synchronisieren und Debuggen fester Eincheckzeitpunkt sofortiges Fixen von Build-Fehlern

immer ein auslieferungsfähiges Produkt kontinuierliches Testen einheitliche Entwicklungs-Plattform

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 9: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 9

Stabilisierungsphase

internes Testen vollständiges Testen des fertigen Produktes

externes Testen Beta Releases RC Veröffentlichung

Release Vorbereitung Disks Dokumentation

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 10: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 10

Synch-and-stabilize Modell

Quelle: Software Development on Internet Time Computer Volume 32,  Issue 10Michael A. Cusumano, David B. Yoffie; IEEE Computer Society Press, Oktober 1999

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 11: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 11

Firmenvorstellung - Netscape

Netscape Short Facts (1998)

660 Mitarbeiter 2 Arten von

Produkten Umsatz von 461

Millionen USD

organisatorische Philosophie “Operate as much as possible in small units and

avoid adding too many people in testing”

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Quelle: Software Development on Internet Time Computer Volume 32,  Issue 10Michael A. Cusumano, David B. Yoffie; IEEE Computer Society Press, Oktober 1999

Page 12: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 12

Netscape Planning and Developing Process

Netscape benötigte einen Entwicklungsprozess der zum Internetmarkt passt

keine Neuentwicklung holte sich Mitarbeiter von Microsoft und Borland

die über entsprechende Erfahrung verfügten Abwandlung des Microsoft Models

für die Entwicklung von Internet Browser und Serverprodukten

Prozessimplementierung (9 Phasen)

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 13: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 13

Netscape Planning and Developing Process

1. Product requirements Advance Planning Meeting (APM)

Brainstorming der Features und der Releasepläne

erstellen der Produktvision festlegen der Produktanforderungen

sehr kurz (ca. fünf Seiten) Beginn der funktionalen Spezifikation festlegen des Zeitplans und des Budget

kein festes Auslieferungsdatum die Länge der Phase ist von der

Produktkomplexität abhängig

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 14: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 14

Netscape Planning and Developing Process

2. First executive review Review der Produktanforderungen, des

Zeitplans und des Budget Anpassungen an den Plänen, falls nötig

3. Start of development phase Implementierung der Features regelmäßige Synchronisation des Quellcodes daily builds kontinuierliches erfassen und beheben von

Fehlern

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 15: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 15

Netscape Planning and Developing Process

4. Interim executive review funktionale Spezifikation sollte zu diesem

Zeitpunkt komplett sein Anpassung (falls nötig)

Spezifikation Projektressourcen

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 16: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 16

Netscape Planning and Developing Process

5. First internal (alpha) release dauert ca. sechs Wochen unterbrechen der Entwicklung intensives debuggen und testen des

vorhandenen Quellcodes Alpha-Release für internes Feedback

Entwicklung wird weitergeführt Benutzerfeedback wird eingearbeitet

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 17: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 17

Netscape Planning and Developing Process

6. Public beta 1 or field test 1 dauert ca. sechs Wochen Wiederholung der Test- und Entwicklungsschritte aus

Phase 5 Serverentwicklung wechselt zu Feldtests mit

ausgewählten Kunden

7. Public beta 2 and 3 jedes Beta Release dauert ca. sechs Wochen Wiederholung der Test- und Entwicklungsschritte aus

Phase 5 Feature complete status

nur noch kleine Änderungen sind erlaubt

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 18: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 18

Netscape Planning and Developing Process

8. Code complete es darf kein Quellcode hinzugefügt werden

(außer zur Fehlerbehebungen) die Features sind komplett

9. Final testing and release finales debuggen und stabilisieren des

Release Candidate Abnahme Meeting(s) Release to Manufacturing (RTM)

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 19: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 19

Netscape Planning and Developing Process

Anmerkungen: vor der Implementierung kann nicht alles

spezifiziert werden ohne Planung kann keine komplexe Software

erstellt werden Dokumentation sehr kurz

unvollständige Dokumentation wird toleriert Produktspezifikation meistens in HTML

die funktionale Spezifikation wir bis zu dreiviertel der Projektzeit noch angepasst

Veto-Recht für Entwickler

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 20: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 20

Meinung der Autoren

Grund für erfolgreiche Produkte Anschein einer Ordnung für die meist

chaotische Welt der SW-Entwicklung keine „Silberkugeln“ Hackeransatz

entstanden aus Tradition der PC SW-Entwicklung

sollte nicht ganz aufgegeben werden

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 21: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 21

Stellungnahme

vieles unverändert verteilte Entwicklung in kleinen Teams iteratives Vorgehen CVS und SVN sind heute Standard in der

Softwareentwicklung Bugtracking-Systeme Alpha- und Beta-Releases Vernachlässigung der Dokumentation

viele Dinge in Entwicklungsmodelle eingeflossen Extreme Programming

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 22: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 22

Stellungnahme

guter Einblick in MS Entwicklungsprozess Gratwanderung zwischen Chaos und

Struktur Eigenständigkeit und Disziplin der

Programmierer so viel wie nötig, so wenig wie möglich

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung

Page 23: Software Entwicklung bei Microsoft und Netscape … in den 90ziger Jahren Datum: 28.05.2009 Autoren: Thorsten Bux, Andreas Fichter

28.05.2009 Softwareentwicklung bei Microsoft und Netscape 23

Zusammenfassung

Synch-and-stabilize Planungsphase Entwicklungsphase Stabilisierungsphase

Hackeransatz mit Struktur

Koordination von vielen Entwicklern und Testern

Netscape Planning and Developing Process Abwandlung von Synch-and-stabilize 9 Phasen informell

Artikel ¦ Synch-and-stabilize ¦ Planning & Developing ¦ Meinung der Autoren ¦ Stellungnahme ¦ Zusammenfassung