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