2 research outputs found
Pattern-Oriented Transformations between Analysis and Design Models (POTAD)
One answer to many current challenges in the electronic domain of
automotive development, is a continuous model-based engineering process
that integrates models of system and software development. A system model
describes by the use of the logical system architecture the func-tions of a
vehicle and through the technical system architecture the realising
electronics, such as control units, sensors/actuators and data busses.
During software development, a software design model for selected functions
of the logical system architecture must be constructed with consideration
of the technical architecture and further requirements. Current model-based
development approaches claim to automate the transition between different
development phases by the concept of model transformations. This concept
lends itself to generate a skele-ton of the software design model from the
system architecture model, thereby automating a part of the software
engineering activities. The analysis of this work shows that the collected
domain specific requirements, which must be made on a model transformation
mechanism for such a scenario, are not fulfilled by current approaches. The
approach taken in this work, the Pattern-Oriented Transformations between
Analysis and Designmodels (POTAD) uses the system architecture as an
analysis model within software development and systemizes the connection
with the design model on the basis of analysis and design patterns. By
means of this systematisation, a POTAD transformation rule instantiates for
an analysis pattern different design patterns under consideration of
non-functional requirements and the technical system architecture. At the
same time, links between an analysis and design pattern are created, which
are used to trace design decision later. The feasibility of the solution is
shown by a prototype, which follows the POTAD development process and
executes the transformation rules formulated in the POTAD transformation
lan-guage.POTAD was verified by several student works based on a case
study, which covers typical characteristics of the examined domain. The
results of these works showed the suitability and improved the methodology
as well as the transformation language and pointed out the limits of the
approach taken.Eine Antwort auf viele aktuelle Anforderungen im
Elektrik/Elektronik-Bereich der Fahrzeugent-wicklung ist ein durchgängig
modellbasierter Entwicklungsprozess, der Modelle der System- und
Softwareentwicklung integriert. Ein Systemmodell beschreibt mit der
logischen System-architektur die Funktionen eines Fahrzeugs und mit der
technischen Systemarchitektur die realisierende Elektrik/Elektronik, wie z.
B. Steuergeräte, Sensoren/Aktoren und Bussysteme. Im Rahmen der
Softwareentwicklung muss für einzelne Funktionen aus der logischen
System-architektur unter Berücksichtigung der technischen Systemarchitektur
und weiterer An-forderungen ein Softwaredesignmodell erstellt werden.
Aktuelle modellbasierte Entwicklungs-ansätze versprechen mit Hilfe des
Konzepts der Modelltransformation den Übergang zwischen Modellen
unterschiedlicher Entwicklungsphasen automatisieren zu können. Dieses
Konzept bietet sich dazu an, aus einem Systemarchitekturmodell ein
Grundgerüst eines Softwaredesign-modells zu erzeugen und damit einen Teil
der Softwareentwicklungsaktivitäten zu auto-matisieren.Die Analyse dieser
Arbeit zeigt, dass die erarbeiteten domänenspezifischen Anforderungen, die
für solch ein Szenario an einen Modelltransformationsmechanismus gestellt
werden müssen, durch aktuelle Ansätze nicht vollständig erfüllt werden. Der
eigene Ansatz Pattern-Oriented Transformations between Analysis and
Designmodels (POTAD) verwendet die logische Systemarchitektur im Rahmen der
Softwareentwicklung als Analysemodell und systematisiert dessen
Zusammenhang mit dem Designmodell auf der Basis von Analyse- und
Designmustern. Für ein im Analysemodell gefundenes Analysemuster
instanziiert eine POTAD-Transformationsregel mit Hilfe dieser Systematik in
Abhängigkeit nichtfunktionaler An-forderungen und der technischen
Systemarchitektur unterschiedliche Designmuster im Design-modell.
Gleichzeitig werden Verknüpfungen zwischen den Analyse- und Designmustern
angelegt, die zur späteren Verfolgung von Designentscheidungen genutzt
werden. Anhand eines dem POTAD-Entwicklungsprozess folgenden Prototyps, der
die in der POTAD-Transformationssprache formulierten Regeln ausführen kann
und die Verfolgbarkeit werkzeug-seitig unterstützt, wird die
Realisierbarkeit des Lösungsansatzes gezeigt. POTAD wurde durch
studentische Arbeiten anhand einer Fallstudie überprüft, die typische
Eigenschaften der betrachteten Domäne abdeckt. Die Ergebnisse dieser
Arbeiten haben die Tauglichkeit von POTAD gezeigt, die Methodik und die
Transformationssprache verbessert und Grenzen aufgezeigt
Automatische Wiederherstellung von Nachverfolgbarkeit zwischen Anforderungen und Quelltext
Für die effiziente Entwicklung, Wartung und Pflege von Softwaresystemen spielt ein umfassendes Verständnis der Zusammenhänge zwischen den Softwareentwicklungsartefakten eine entscheidende Rolle. Die Nachverfolgbarkeit dieser Zusammenhänge ermöglicht es beispielsweise, vergangene Entwurfsentscheidungen nachzuvollziehen oder die Auswirkungen von Änderungen zu berücksichtigen. Das manuelle Erstellen und Pflegen dieser Nachverfolgbarkeitsinformationen ist allerdings mit hohem manuellem Aufwand und damit potenziell hohen Kosten verbunden, da meist menschliche Expertise zum Verständnis der Beziehungen erforderlich ist. Dies sorgt dafür, dass in den meisten Softwareprojekten diese Informationen nicht zur Verfügung stehen. Könnten Nachverfolgbarkeitsinformationen zwischen Softwareartefakten allerdings automatisch generiert werden, könnte die Entwicklung, Wartung und Pflege einer Vielzahl von Softwaresystemen effizienter gestaltet werden. Bestehende Ansätze zur automatischen Wiederherstellung von Nachverfolgbarkeitsverbindungen zwischen Anforderungen und Quelltext sind nicht in der Lage, die semantische Lücke zwischen den Artefakten zu überbrücken. Sie erzielen zu geringe Präzisionen auf akzeptablen Ausbeuteniveaus, um in der Praxis eingesetzt werden zu können.
Das in dieser Arbeit vorgestellte Verfahren FTLR zielt durch einen semantischen Ähnlichkeitsvergleich auf eine Verbesserung der automatischen Wiederherstellung von Nachverfolgbarkeitsverbindungen zwischen Anforderungen und Quelltext ab. FTLR setzt hierzu vortrainierte fastText-Worteinbettungen zur Repräsentation der Semantik ein. Außerdem macht es sich strukturelle Informationen der Anforderungen und des Quelltextes zunutze, indem es anstatt auf Artefaktebene auf Ebene der Teile der Anforderungen und des Quelltextes abbildet. Diese Abbildung geschieht durch den Einsatz der Wortüberführungsdistanz, welche einen semantischen Ähnlichkeitsvergleich, der nicht durch Aggregation verfälscht wird, ermöglicht. Die eigentliche Bestimmung der Nachverfolgbarkeitsverbindungen erfolgt daraufhin durch einen Mehrheitsentscheid über alle feingranularen Zusammenhänge eines Artefakts, um die vorherrschenden Aspekte zu bestimmen und ggf. irrelevante Zusammenhänge zu ignorieren. In einem Experiment auf sechs Vergleichsdatensätzen konnte gezeigt werden, dass der Einsatz der Wortüberführungsdistanz gegenüber einer einfachen, aggregierten Vektorabbildung zu einer signifikanten Verbesserung der Identifikation von Nachverfolgbarkeitsverbindungen führt. Ebenso zeigte die Abbildung auf feingranularer Ebene mit anschließender Aggregation durch einen Mehrheitsentscheid signifikante Verbesserungen gegenüber der direkten Abbildung auf Artefaktebene.
Um die Präzision FTLRs weiter zu erhöhen, wird ein Ansatz zum Filtern von irrelevanten Teilen von Anforderungen eingesetzt. Dieser basiert auf einer Klassifikation der Anforderungselemente mittels eines sprachmodellbasierten Klassifikators. Entscheidend für die Anwendung in FTLR ist dabei eine Anwendbarkeit auf ungesehene Projekte. Der vorgestellte Klassifikator NoRBERT nutzt Transferlernen, um große vortrainierte BERT-Sprachmodelle auf die Klassifikation von Anforderungen feinanzupassen. Hierdurch ist NoRBERT in der Lage, vielversprechende Ergebnisse auf ungesehenen Projekten zu erzielen. Das Verfahren war in der Lage, auf ungesehenen Projekten eine Abbildungsgüte von bis zu 89,8 % im F1-Maß zu erzielen. Durch das Bestimmen, ob ein Anforderungselement keine funktionalen Aspekte enthält, lassen sich irrelevante Teile der Anforderungen vor der Verarbeitung durch FTLR herausfiltern. Ein Vergleich der Leistung FTLRs mit und ohne einen derartigen Anforderungselementfilter ergab, dass ein signifikanter Leistungszuwachs im F1-Maß durch das Filtern erzielt werden kann. FTLR erzielt hierbei Werte im F1-Maß von bis zu 55,5 % und im Mittelwert der durchschnittlichen Präzision von 59,6 %.
Neben der Repräsentation der Semantik durch ausschließlich auf natürlichsprachlichem Text vortrainierten Worteinbettungen wurden außerdem bimodale Sprachmodelle für den Einsatz in FTLR untersucht. Diese auf großen dualen Korpora, bestehend aus Quelltextmethoden und ihrer natürlichsprachlichen Dokumentation, vortrainierten Sprachmodelle erzielen in verwandten Aufgabenstellungen aus der Softwaretechnik, wie Quelltextsuche oder Fehlerlokalisierung, vielversprechende Ergebnisse. Um die Eignung für die automatische Wiederherstellung von Nachverfolgbarkeitsverbindungen zwischen Anforderungen und Quelltext zu untersuchen, wurden zwei Integrationsmöglichkeiten des bimodalen Sprachmodells UniXcoder in FTLR entwickelt. In einem Vergleich auf fünf Datensätzen zur Wiederherstellung von Nachverfolgbarkeitsverbindungen zwischen Anforderungen und Quelltext konnte kein Leistungszuwachs durch den Einsatz dieser Art von Modellen gegenüber den leichtgewichtigeren Worteinbettungen festgestellt werden.
Abschließend wurde die Leistung FTLRs in Bezug zu bestehenden Ansätzen zur unüberwachten automatischen Wiederherstellung von Nachverfolgbarkeitsverbindungen zwischen Anforderungen und Quelltext gesetzt. Hierbei zeigt sich, dass FTLR auf Projekten, die ausschließlich objektorientierten Quelltext enthalten, eine höhere durchschnittliche Präzision und ein höheres F1-Maß als bestehende Verfahren erzielt. Allerdings verdeutlichen die Ergebnisse auch, dass, insbesondere auf großen Projekten, alle bestehenden Ansätze und auch FTLR noch weit von einer Abbildungsgüte entfernt sind, die es für eine vollständige Automatisierung der Wiederherstellung von Nachverfolgbarkeitsverbindungen in der Praxis benötigt