7. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 7 / 44 Gap between Business and IT
10. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 10 / 44 Evolution eines Softwareproduktes
11. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 11 / 44 Projekt- und Produktgeschäft
12. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 12 / 44 Von Release zu Release
13. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 13 / 44 Iterativ inkrementelle Entwicklung
18. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 18 / 44 Aufgaben des SCM
22. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 22 / 44 Effiziente SCM Konzepte
26. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 26 / 44 Was sind Codelines, Baselines, Branches ?
35. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 35 / 44 Durchgängige Prozesslandkarte
36. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 36 / 44 Prozessverbesserung (Bsp. SPICE)
37. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 37 / 44 Saubere Produktarchitektur
41. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 41 / 44 Collaboration Management: Trac Timeline
42. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 42 / 44 OS Toolchain als Entwicklungsinfrastruktur
43. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 43 / 44 Zentrales Repository
1. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 1 / 44 Projektmanagement trifft Konfigurationsmanagement Die optimale Verzahnung von PM- und KM-Prozessen 2008 - Thomas Obermüller (Stand: 21.02.2008)
19. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 19 / 44 Aktivitäten des KM Nach IBM Rational Unified Process
27. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 27 / 44 SCM Pattern Language Map nach Software Configuration Management Patterns Ber czuk/Appelton
31. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 31 / 44 Variability Management - Produktlinien Copyright 2006 Charles W. Krueger – Methods & Tools
39. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 39 / 44 Aktives Management von Codelines (Streams) Streambrowser AccuRev
44. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 44 / 44 Vielen Dank für Ihre Aufmerksamkeit! thomas.obermueller@elego.de , olaf.kosel@elego.de elego Software Solutions GmbH Gustav-Meyer-Allee 25 13355 Berlin www.elego.de
14. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 14 / 44 Funktionale Dekomposition – Use Cases Use Cases als Grundlage für Planung der Inkremente und zur Verfolgung von der Analyse bis zum Test
25. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 25 / 44 Branching und Merging Konkurrierende Parallelentwicklung auf Branches Synchronisierung konkurrierender Entwicklungslinien mittels Merge
28. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 28 / 44 SCM Pattern: Release Line Branching bei Auslieferung - Trennung der Wartungs- bzw. Release-Entwicklung von d er aktiven Entwicklung als eigenständige Entwicklungslinien. A usgelieferte Versionen werden in einer Release Line geführt. Bug Fixes der Entwicklungslinien werden auf diesen Release Lines durchgeführt. BugFixes werden durch Merge in die Mainline rückwärts i ntegriert. nach Software Configuration Management Patterns Ber czuk/Appelton
29. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 29 / 44 SCM Pattern: Codeline Policy Richtlinien für Entwicklungslinien - Definition einer Policy für jede Entwicklungslinie b zw. Branch, die beschreibt wie und wann ein Check-out, Check-in, Me rge, und eine Propagierung einer Änderung erfolgt. nach Software Configuration Management Patterns Ber czuk/Appelton
23. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 23 / 44 Konfigurationsdatenbank - Repository Checkout/Checkin Modell - Parallelisierung durch Copy-Modify-Merge Modell (kon kurrierend) - Serialisierung der Entwicklung durch Locking Mechanis men
24. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 24 / 44 Warum parallele Entwicklungsprozesse? Verkürzung der Entwicklungszyklen bzw. Antwortzeite n bei der Implementierung von Anforderungen, Fehler und Änder ungen. Isolation von Entwicklungslinien für Features, Bugf ixes, etc. und Möglichkeit der Rückintegration Strukturierung der Entwicklung nach organisatorisch en, geografischen oder sonstigen team-abhängigen Vorgab en Parallele Pfade als Über- bzw. Freigabestufe innerha lb des Entwicklungsprozesses
38. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 38 / 44 Umsetzung von SCM Patterns Branch-by-Purpose Modell (mit Brücke) statt Branch-by-Release
40. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 40 / 44 Iterativ inkrementellen Entwicklung nach nach SDTimes SDTimes 2005: Will 2005: Will the build bottleneck put the brakes the build bottleneck put the brakes on agile? on agile?
30. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 30 / 44 Anforderungen unter Konfigurationskontrolle KM auf Anforderungsartefaktebene (Ziele,Szenarien, lösungsorientierte Anforderungen und Beziehungen vo n Anf.) Konfiguration von Anforderungsartefakten fasst eine Menge log. zusammengehörender Versionen von Artefakten zusammen. Baselines als Auszeichnung stabiler (für den Kunden sichtbare) Anforderungskonfigurationen Natürlichsprachliches oder modellbasierendes Darstellungsformat Basis für die Planung von Auslieferung und Abschätz ung des Realisierungsaufwandes
9. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 9 / 44 Problemindikatoren/Ursachen - 2 Risiken eskalieren und bedrohen den Projektfortschr itt: - Einfluss von Änderungen auf Risiken werden nicht an alysiert oder ignoriert Unklarheit über umgesetzte Anforderungen,gefixte Bu gs und durchgeführte Patches (Inhalte von Releases, Patches un d BugFixes) - Konfigurationsmanagement fehlt oder mangelhaft Alter Fehler tauchen wieder auf oder nicht freigege bene, unvollständige Features gelangen in die Produktion. - Konfigurationsmanagement fehlt oder mangelhaft
16. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 16 / 44 Schnittstellen PM und KM Aus der Prozessstruktur und Produktarchitektur abge leitete Projektstruktur (s. Vorgehensmodell) Aktives Change Management Anforderungs-, Konzept- und Produktkonfigurationen Aus Anforderungen, Features bzw. Use Cases - abgeleite te Tasks als Planungseinheiten Zuordnung von Änderungen zu Releases und Entwicklun gslinien Status Reporting (Fehlerrate, Umgesetzte Features, Metriken)
32. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 32 / 44 Effizientes SCM Frühzeitige Einbindung des SCM in Projekt- und Produ ktplanung Verwendung von “Best practices” zur Umsetzung paral leler Entwicklungsprozess mittels SCM-Patterns Ein verständliches, nicht zu komplexes Entwicklungs linienmodell (Branching Strategie) Einsatz von Change-based SCM (Change Sets) Visualisierung von Entwicklungsmodellen Wesentliche Teile des SCM Prozess können automatisi ert werden
34. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 34 / 44 Was brauchen wir für verlässliche Releasezyklen? Einen vollständigen und verständlich dokumentierten Entwicklungsprozess, der durch einen einheitlichen und exakt definierten Änderungsprozess geführt wird Einen dafür ausgelegten SCM-Prozess, der ebenfalls eine effiziente Parallelentwicklung unterstützt Eine adäquate Granularität der Planungseinheiten un d eine zentrale Task/Prioriätenlisten für Release- und Iter ationsplanung Ein gut strukturiertes, sauber dokumentiertes Produ kt Ein systematisches, allgemein zugängliches Informationsmanagement Tools zur Automatisierung und Zusammenarbeit bzw. z ur Unterstützung der Prozesse (keine Papierprozesse!)
3. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 3 / 44 Unternehmen Softwareentwicklungs- und Beratungsunternehmen mit e inem hohen professionellen Anspruch Fokussierung auf Optimierung von Softwareentwicklun gs- prozessen mit Schwerpunkt Configuration Management Sitz Berlin: 15 Mitarbeiter im Jahr 2000 gegründet Mitgliedschaften: - ASQF - INTCCM
15. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 15 / 44 Best Practices im Software Projektmanagement Produktorientierte Sichtweise Iterativ inkrementelle Softwareentwicklung Umsetzbare, verfolgbare und überprüfbare Planungsei nheiten Laufende Qualitätskontrolle Anforderungen und Änderungen führen den Prozess Forcierung einer Komponenten-orientierte Architektu r Für alle Projektmitglieder zugängliche Informations plattform
21. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 21 / 44 Rollen und Aufgaben im KM Konfigurationsmanager - Organisation und Durchführung des KM - Installation und Wartung der KM Werkzeuge Projektmanager (administrativer und technischer) - Anpassung bzw. Tailoring des KM Planes für ein konkr etes Vorhaben - U.U. werden KM Aufgaben durch PM, Produktmanager od er Entwickler übernommen Change Control Board
4. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 4 / 44 Portfolio und Referenzen Software Services - Leitung und Durchführung komplexer anspruchsvoller Softwareentwicklungsprojekte Software CM Services - Analyse von CM in Software entwickelnden Firmen - CM Beratung und Implementierung - CM Training und Coaching Contributor Open Source Projekte - CVS, Subversion, Modula-3, XEmacs
5. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 5 / 44 Selected Partners AccuRev - SCM-Tool-Anbieter, innovatives Stream-Konzept, hervo rragende Branching-/ Mergingunterstützung. Elego ist ACC-Part ner für Europa. CollabNet - Sponsor der Subversion Entwicklung. Elego ist Techni cal Solution Partner für Europa. GfKM - Trainings Company CMII. Elego ist Partner für die I mple- mentierung im Bereich Softwareentwicklung ikv++ technologies AG - Modellbasierte Entwicklung, Metamodellbasierte Werk zeug- kopplung. Elego ist Partner im Bereich CM für Model le.
6. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 6 / 44 Produkt- und Projektgeschäft Produkt- und Projektgeschäft - Entwicklungsprozess, Vorgehensmodelle, klassische P robleme - Projektmanagement, Projektstruktur, Planung Konfigurationsmanagement - Versionskontrolle, Verzeichnisstrukturen, Varianten - Aktives Change-/ Änderungs- und Fehlermanagement - Build-, Test- und Releasemanagement Lösungen
8. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 8 / 44 Problemindikatoren/Ursachen - 1 Durchgängig mangelhafte Produktrealisierung: - Fehlender oder ungeeigneter Entwicklungsprozess - Mangelhafte Verwaltung, Analyse, Änderung von Anfor derungen - Keine laufende Kontrolle der Produkt- und Prozessqua lität Kostenexplosion bei Produktanpassung für neue Kunde n: - Projektstruktur falsch konzipiert, monolithische Pr oduktarchitektur Planungsziele werden verfehlt: - Zu detaillierte Planung kann nicht eingehalten werd en
17. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 17 / 44 Konfigurationsmanagement Produkt- und Projektgeschäft - Entwicklungsprozess, Vorgehensmodelle, klassische P robleme - Projektmanagement, Projektstruktur, Planung Konfigurationsmanagement - Versionskontrolle, Verzeichnisstrukturen, Varianten - Aktives Change-/ Änderungs- und Fehlermanagement - Build-, Test- und Releasemanagement Lösungen
33. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 33 / 44 Lösungen zur Verzahnung Produkt- und Projektgeschäft - Entwicklungsprozess, Vorgehensmodelle, klassische P robleme - Projektmanagement, Projektstruktur, Planung Konfigurationsmanagement - Versionskontrolle, Verzeichnisstrukturen, Varianten - Aktives Change-/ Änderungs- und Fehlermanagement - Build-, Test- und Releasemanagement Lösungen
2. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 2 / 44 Welcome & Outline Willkommen zum Vortrag “PM trifft KM” Produkt- und Projektgeschäft - Entwicklungsprozess, Vorgehensmodelle, klassische P robleme - Projektmanagement, Projektstruktur, Planung Konfigurationsmanagement - Versionskontrolle, Verzeichnisstrukturen, Varianten - Aktives Change-/ Änderungs- und Fehlermanagement - Build-, Test- und Releasemanagement Lösungen
20. © elego Software Solutions GmbH ASQF - PM trifft KM 2008 20 / 44 Zentrales Dokument: KM Plan (s. IEEE 828:1990) Management - Organisation und Festlegung von KM Rollen und Veran twortlichkeiten Detaillierte Beschreibung der KM Aktivitäten - Identifikation und Bezeichnung von Konfigurationsel ementen - Definition Konfigurationskontrolle (Versionierung, Change Control) - Konfigurationsstatusreports, Audits und Reviews - Vorbereitung, Auslieferung und Wartung von Produkts tänden Planung und Infrastruktur - Integration und Verwendung von Werkzeugen im KM