Requirements Engineering in der automotive Entwicklung – Von der
Transcription
Requirements Engineering in der automotive Entwicklung – Von der
Requirements Engineering in der automotive Entwicklung – Von der Idee bis zum Produkt Thomas Reiß1,2, Christian Allmann3 Audi AG, Entwicklung Fahrwerkregelsysteme, D-85045 Ingolstadt, [email protected] 2 Technische Universität München, Institut für Informatik, Boltzmannstr. 3, D-85748 Garching, [email protected] 3 Audi Electronics Venture GmbH, Sachsstrasse 18, D-85080 Gaimersheim , [email protected] 1 Zusammenfassung Durch die Zunahme von vernetzten mechatronischen Systemen im Fahrzeug, die einen steigenden Funktionsumfang realisieren, wächst die Komplexität in der Entwicklung von Fahrzeugen. Um systematische Fehler zu vermeiden, gewinnt ein strukturiertes Vorgehen in der Entwicklung und damit auch das Requirements Engineering an Bedeutung. Bisherige Arbeiten fokussierten sich meist rein auf die Lieferantenentwicklung. Die hier vorgestellte Sicht beschreibt eine durchgängige Betrachtung von Anforderungen beginnend in Vorentwicklung bis zur OEM-internen Serienumsetzung. Motivation 1972 brachte Audi das erste Fahrzeug aus der Audi 80 / A4 Baureihe auf den Markt. Dieses Fahrzeug wurde über mittlerweile sieben weitere Generationen weiterentwickelt. Dabei veränderte und erweiterte sich der elektronische und mechanische Funktionsumfang der Fahrzeuge. Wurde ursprünglich eine Funktion durch eine mechanische Komponente realisiert, werden heutige Fahrzeuge durch mechatronische Systeme situationsabhängig beeinflusst. Zunehmend interagieren diese mechatronischen Systeme untereinander. So wird z.B. bei einer Notbremsung durch das System Blinker das Warnblinken aktiviert, während zugleich durch die Dämpferregelung die Dämpfer der Vorderräder verhärtet werden. Der Wandel von rein mechanischen Bauteilen über den Einsatz autarker- bis hin zu vernetzten mechatronischen Systemen hat direkte Auswirkungen auf die Entwicklung und den dabei erforderlichen Dokumentationsumfang. Bei mechatronischen Systemen ersetzen textuelle und graphische Spezifikationen die ursprünglichen Konstruktionszeichnungen in einer Mechanikentwicklung. Die Rolle des domänenübergreifenden, vernetzten Requirements Engineering gewinnt dabei an Bedeutung. Dies umfasst zum einen die Beschreibung des Fahrzeugs durch Kundenfunktionen. Zum anderen betrifft dies die Entwicklung von neuen Funktionen in bestehenden Systemen sowie die Entwicklung neuer mechatronischer Systeme. Die Entwicklung mechatronischer Systeme (im Folgenden als Systementwicklung bezeichnet) wird in dieser Arbeit betrachtet. Requirements Engineering in der Entwicklung mechatronischer Systeme Die Systementwicklung im Automobilsektor unterteilt sich in Vor- und Serienentwicklung [7]. In der Vorentwicklung wird der Kern der funktionalen Systemanforderungen erhoben und die technische Realisierbarkeit hinsichtlich der Serientauglichkeit bewertet. Die Herausforderung für das Requirements Engineering in der Vorentwicklung besteht dementsprechend darin, die Erfassung von Anforderungen im Innovationsprozess zu unterstützen. Hierzu wurde eine situations- und szenariobasierte Methodik vorgestellt [1]. Dieses Vorgehen wird durch eine prototypische Werkzeugumsetzung basierend auf einem Wiki-Tool unterstützt. In der Serienentwicklung wird das System basierend auf der – durch den Prototyp gegebenen – Systemarchitektur und der implizit gegebenen, hierarchisch strukturierten Aufteilung der Anforderungen zur Serienreife weiterentwickelt. Im Falle der Beauftragung eines Zulieferers (Lieferantenentwicklung) erfolgt die Dokumentation und Verwaltung der Systemanforderungen mit klassischen AM-Werkzeugen (z.B. DOORS). Wesentlich umfangreicher gestaltet sich das Requirements Engineering bei einer OEM-internen Entwicklung von Teilen eines Systems (Eigenentwicklung). Die Anforderungsverwaltung über mehrere Hierarchiestufen erfolgt bisher hierbei nicht methodisch. Dies spiegelt sich insbesondere in einer mangelnden Integration des Requirements Engineering in den Entwicklungsablauf sowie Problemen bei der Sicherstellung der Traceability wieder. Workflowbasiertes RE für die Eigenentwicklung Traceability bezeichnet die Fähigkeit den Lebenszyklus einer Anforderung sowohl vorwärts als auch rückwärts verfolgen zu können [4]. Die Anforderungserhebung wird in der Literatur umfassend hinsichtlich der Traceability betrachtet. Der Umgang mit PostTraceability-Informationen1 findet hingegen wenig Beachtung [7]. Für die Serienentwicklung ist dies jedoch eine der zentralen Fragestellungen des RE und stellt die Praxis vor große Herausforderungen. 1 Post-Traceability umfasst die Traceability-Informationen, die nach der Spezifikation der Anforderungen in der Entwicklung entstehen [4]. Die Erfassung von Traceability-Informationen setzt die Kenntnis über den Anforderungslebenszyklus voraus. Um die implizite Entstehung von Verfolgbarkeitsinformationen explizit aufzuzeigen, wurde der Lebenszyklus von Anforderungen modelliert. Hierbei wurde nach dem aus der Prozessmodellierung bekannten ‚Workflow-Life-Cycle’ [2] (siehe Abb.1) vorgegangen. Unter Berücksichtigung der Rahmenbedingungen, die durch den Entwicklungsablauf gegeben sind, erfolgte eine Geschäftsprozessmodellierung aus Sicht des RE. Dabei betrachtet wurden sowohl funktionale als auch nicht-funktionale Anforderungen. An Hand der Beschreibung des Ablaufs der Verfeinerung der Anforderungen2 sowie der des Lebenszyklus von Anforderungen wurden Verfolgbarkeitsinformationen identifiziert. In Form eines Abhängigkeitsmodells wurden die Artefakte und die Abhängigkeiten zwischen diesen abgebildet. Für die Artefakte des Abhängigkeitsmodells wurden Workflows spezifiziert. Die darin enthaltenen Abhängigkeiten wurden durch Trigger abgebildet. Ein Vorteil dieser Modellierung besteht darin, dass Aktivitäten ausgehend von unterschiedlichen Artefakten erfolgen können. Beispielsweise kann das Review von funktionalen Anforderungen ausgehend vom Artefakt ‚funktionale Anforderung’ erfolgen. Es ist ebenso möglich das Review für alle funktionalen Anforderungen im Zuge des Reviews des Artefakts ‚Anforderungsspezifikation3’ durchzuführen. Hierfür ist die Interaktion zwischen den Workflows der funktionalen Anforderung und der Anforderungsspezifikation in der Aktivität Review erforderlich. Mit der Beschreibung des Geschäftsprozesses aus RE-Sicht sowie der Modellierung der Workflows zu den Artefakten ist die Grundlage für die Umsetzung in einem Workflow-Management-System gegeben. Die Implementierung der Werkzeugumsetzung wurde bereits mit den ersten Überlegungen zu Workflows begonnen, um die aus theoretischen Überlegungen und Praxiserfahrungen abgeleiteten Abläufe mit Prozessexperten und Entwicklern abzustimmen. Festlegung Modellierungssprache Geschäftsprozessanalyse und -Modellierung Festlegung Workflow Management System Workflowmodellierung WorkflowAusführung Monitoring Abb. 1: Vorgehen zur Herleitung des workflowbasierten RE: Der Workflow-Life-Cycle [2] 2 Die Verfeinerung der Kernanforderungen des Systems erfolgt in der Vorentwicklung. Die strukturierte Dokumentation wird erst in der Serienentwicklung durchgeführt. 3 Eine Spezifikation fasst mehrere Basis-Artefakte wie funktionale, nicht-funktionale Anforderungen, Schnittstellenbeschreibung, etc. zusammen. Werkzeugunterstützung Die Umsetzung des workflowbasierten Ansatzes für die Serienentwicklung erfolgte unter Verwendung von MKS Integrity 2007 [6]. Die Artefakte sowie deren Attribute und Workflows wurden durch ‚Items’ implementiert. Das Zusammenspiel der Workflows erfolgt mittels ‚Trigger’. Die Einbindung der MKSUmsetzung in die Werkzeugunterstützungen zu den Konzepten des RE in Vorentwicklung und Lieferantenentwicklung erfolgt über das Requirements Interchange Format (RIF) [5] Ausblick In dieser Arbeit wurde auf das RE einer Mechatronikentwicklung im Automobilsektor eingegangen. Neben dem Vorgehen in Vor- und Lieferantenentwicklung wurde ein workflowbasierter Ansatz für das RE in der Eigenentwicklung vorgestellt. Im Fokus der Betrachtung waren die operativen Entwicklungstätigkeiten wie Implementieren, Spezifizieren und Testen. In folgenden Arbeiten soll die RE-Prozessmodellierung um Support-Prozess wie z.B. Änderungsmanagement und Testmanagement erweitert werden. Referenzen [1] Allmann, C.: Situations- und szenariobasiertes Anforderungsmanagement in der automotive Elektronikentwicklung, Cuvillier, 2009. [2] Becker, J.; Kugeler, M. and Rosemann, M.: Prozessmanagement - Ein Leitfaden zur prozessorientierten Organisationsgestaltung, Springer, Berlin, 2005. [3] Broy, M.; Geisberger, E.; Kazmeier, J.; Rudorfer, A.; Beetz, K.: Ein Requirements Engineering Referenzmodell, GI Informatik Spektrum (3), Springer Verlag, 2007. [4] Gotel, O.; Finkelstein, A.: An Analysis of the Requirements Traceability Problem, in Bohner, S. A. (ed.): Software Change Impact Analysis, IEEE Computer Society Press, pp. 59-66, 1994. [5] Herstellerinitiative Software: Das Requirements Interchange Format, http://www.automotivehis.de/rif/doku.php. [6] MKS Inc.: MKS Integrity 2007, http://www.mks.com/products/index.jsp. [7] Reiß, T.: Traceability - Aktuelle Herausforderungen in der Systementwicklung im Automobilsektor, Technischer Bericht, Technische Universität München, 2008.