Modellbasiertes Konfigurationsmanagement
Transcrição
Modellbasiertes Konfigurationsmanagement
Vortrag Modellbasiertes Konfigurationsmanagement Subconf 2009 Munich Thomas Obermüller elego Software Solutions GmbH - © 2009 Modellbasiertes Konfigurationsmanagement 1 / 28 © elego Software Solutions GmbH Welcome & Outline Willkommen zum Vortrag “Modellbasiertes Konfigurationsmanagement” Agenda • Traditionelles vs. modernes CM • Dimensionen eines gesamtheitliches CM • Lösung IMPACT CM mit Eclipse Modellbasiertes Konfigurationsmanagement 2 / 28 © elego Software Solutions GmbH Unternehmen 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 - (D)CVS, Subversion, Modula-3, XEmacs Modellbasiertes Konfigurationsmanagement 3 / 28 © elego Software Solutions GmbH Herausforderungen Configuration Management System Engineering - Software, Mechanik, Elektronik als Gesamtsystem - Anforderungen und Change Requests gelten für das Gesamtsystem Kombination von CM und SCM - Welche Artefakte werden Configuration Items? (CIs) - Abbildung von Modellen und Simulatoren (Test) im CM - Welche Referenzen gibt es untereinander? (Traces) - Ablage von Modellartefakten (Diff- und Mergetechniken?) Modellbasiertes Konfigurationsmanagement 4 / 28 © elego Software Solutions GmbH Wie entstehen heute Produkte? Modellbasiertes Konfigurationsmanagement 5 / 28 © elego Software Solutions GmbH CM-Kernprozess – Was ist eigentlich CM? Modellbasiertes Konfigurationsmanagement 6 / 28 © elego Software Solutions GmbH Identifikation – Configuration Items CI Kernelemente für die Beschreibung der Produktstruktur Lenkung des Produkts in allen Phasen des Produktlebenszyklus Die Produktstruktur entspricht der Assemblystruktur (Darstellung als Konfigurationsbaum) Vgl. Artikelnummer in der Fertigungsbranche Modellbasiertes Konfigurationsmanagement 7 / 28 © elego Software Solutions GmbH Was können moderne (S)CM Systeme? Release Mgmt Modellbasiertes Konfigurationsmanagement 8 / 28 © elego Software Solutions GmbH Wie sieht der SCM/SCCM Markt aus? Modellbasiertes Konfigurationsmanagement 9 / 28 © elego Software Solutions GmbH SCM Toolketten vs. Big Player Modellbasiertes Konfigurationsmanagement 10 / 28 © elego Software Solutions GmbH Was fehlt zu einem gesamtheitlichen CM? Abstraktion, die eine durchgängiges CM auf allen Ebenen und Produktentwicklungsphasen der CIs ermöglicht Übersichtlichkeit bzw. Visualisierung, die das CM effizient macht (und CIs automatisch verfolgt) Technik zur Integration der Prozesse und Technologen ist oft proprietär und Änderungsdurchführungen betreffen oft unterschiedlichen Tools Nachvollziehbarkeit (Traceability) und Prozessreife (Maturity) sind in solchen heterogen Umgebungen nur schwer umsetzbar Große monolithische Werkzeuge sind in der Regel teuer und unflexibel bei Prozessänderungen. Modellbasiertes Konfigurationsmanagement 11 / 28 © elego Software Solutions GmbH Idee Teilbereichen des CMs und ihre Beziehungen zueinander werden in einem zentralen CM Modell abgebildet Es beinhaltet alle Konzepte, die für einen CM-Prozess notwendig und aus Unternehmenssicht erforderlich sind. Über Schnittstellen werden verfügbare Informationen in das Modell transformiert und mit den verwendeten Tools verknüpft. Über den Modellzustand läßt sich jederzeit der Stand des Änderungsprozesses ermitteln und die Prozesskonformität überprüfen. Graphische Visualisierung der CM Aktivitäten und des Änderungsprozesses erleichern den Umgang mit Komplexität Modellbasiertes Konfigurationsmanagement 12 / 28 © elego Software Solutions GmbH Dimensionen eines ganzheitlichen CMs Modellbasiertes Konfigurationsmanagement 13 / 28 © elego Software Solutions GmbH Baseline Lifecycle Modellbasiertes Konfigurationsmanagement 14 / 28 © elego Software Solutions GmbH Domänenmodell Configuration Management Modellbasiertes Konfigurationsmanagement 15 / 28 © elego Software Solutions GmbH Konkreter Lösungsansatz MOF-basiertes Domänenmodell zu den CM Teilbereichen Leicht erweiterbare und an zusätzliche Bedürfnisse anpassbare Eclipse-RCP-Applikation Das Kernkonzept von Impact CM sind Baselines. Eine Baseline repräsentiert den geordneten Übergang von einer Produktversion zur nächsten. Die Baseline aggregiert Detailinformationen aus den Teilprozessen und verwaltet sie persistent im Modellrepository. Versionierung und Changeprozess sind integriert … Modellbasiertes Konfigurationsmanagement 16 / 28 © elego Software Solutions GmbH IMPACT CM Schema Modellbasiertes Konfigurationsmanagement 17 / 28 © elego Software Solutions GmbH Technologie Eclipse-Modeling-Framework (EMF) ist die Basistechnologie zur Realisierung eines modellbasierten Repositories QVT: Modelltransformation OCL: Modellvalidierung GMF: Grafische Modelleditoren, Visualisierung EMF Hibernate: EMF Persistenz in Datenbanken EMF Compare: Modellvergleich TENEO: OR Mapping Zest: Modell-Visualisierung Modellbasiertes Konfigurationsmanagement 18 / 28 © elego Software Solutions GmbH Der IMPACT CM Prozess Modellbasiertes Konfigurationsmanagement 19 / 28 © elego Software Solutions GmbH Assembly/Item-Hierachie CM Produktbeschreibung erfolgt in einem Assembly-Modell. - Eigenschaften, Beziehungen und Abhängigkeiten der ProduktArtefakte werden in einem werkzeugneutralen Format definiert. - Mit Hilfe dieses Modells werden die Produkt-Artefakte in einer übergeordneten Hierachie strukturiert. Modellbasiertes Konfigurationsmanagement 20 / 28 © elego Software Solutions GmbH Die IMPACT CM-Assembly/Item-Hierachie bietet: IMPACT-Analyse von Änderungen auf andere Produktteile Nachgelagerte Steuerung von Build-Tools (Continuous Integration) Schnittstelle zum Varianten-Management (Produkt-Features) Schnittstelle zum UML-Design Konsequente Modularisierung des Produktes (Produktmodell) Metriken auf Basis abstrakter Einheiten Management Informationen zum aktuellen und historischen Status der Struktur aus dem Modell Modellbasiertes Konfigurationsmanagement 21 / 28 © elego Software Solutions GmbH Aufgaben-orientierter Entwicklungsprozess Issue-Tracker zur Verwaltung von Änderungsanforderungen Tasks-Baseline Zuordnung via Mylyn-Plugin Modellbasiertes Konfigurationsmanagement 22 / 28 © elego Software Solutions GmbH Development Line Diagram Modellbasiertes Konfigurationsmanagement 23 / 28 © elego Software Solutions GmbH So sieht‘s aus … Modellbasiertes Konfigurationsmanagement 24 / 28 © elego Software Solutions GmbH So sieht‘s aus … Modellbasiertes Konfigurationsmanagement 25 / 28 © elego Software Solutions GmbH Zusammenfassung CM-Prozess mit hoher Traceability und Maturity, sowie eine kontinuierliche Überwachung der Prozessqualität Integration von Teilprozessen (Anforderungs-, Versions-, Änderungs-, Build- und Variantenmanagement, sowie Abstraktem Design, Konkretem Design usw.) in einem modellbasierten Repository. Toolkopplung über Schnittstellen mit dem Modellrepository Konkrete Realisierung mit Eclipse-Plattform (Eclipse-EMFTechnologien und –Frameworks) ist möglich. - Integration populärer Plugins: Subversive, Maven, Mylyn - Standards der OMG Modellbasiertes Konfigurationsmanagement 26 / 28 © elego Software Solutions GmbH Anwendungsszenarien IMPACT CM Ablösung komplexer SCCM Werkzeuge durch Leichtgewichtige (z.B.: Subversion, git, Mercurial) Übergang zu Variantenmanagement und Produktlinienmanagement Optimale Unterstützung durchgängiger modellbasierte Entwicklung (Anforderung, Use Cases, bis hin zum modellbasierten Tests) Einführung von Referenzprozessen CMMI bis SPICE (AutomotiveSPICE), … Embedded Systems: Technologien, wie AUTOSAR, … Modellbasiertes Konfigurationsmanagement 27 / 28 © elego Software Solutions GmbH Vielen Dank für Ihre Aufmerksamkeit! Modellbasiertes Konfigurationsmanagement 28 / 28 © elego Software Solutions GmbH