004 Datenverarbeitung; Informatik
Filtern
Erscheinungsjahr
Dokumenttyp
- Diplomarbeit (14)
- Studienarbeit (13)
- Ausgabe (Heft) zu einer Zeitschrift (6)
- Dissertation (5)
- Masterarbeit (5)
- Bachelorarbeit (4)
Sprache
- Deutsch (35)
- Englisch (11)
- Mehrsprachig (1)
Schlagworte
- Java (3)
- model-based (3)
- Autonome Fahrzeuge (2)
- BPMN (2)
- Computersimulation (2)
- Echtzeitsystem (2)
- Echtzeitsysteme (2)
- Fahrerassistenzsystem (2)
- Modellfahrzeug (2)
- Petri-Netz (2)
Institut
- Institut für Softwaretechnik (47) (entfernen)
Das in der Arbeitsgruppe Echtzeitsysteme im Projekt EZlenk entwickelte optische Lenkassistenzsystem zur Unterstützung der Rückwärtsfahrt von Fahrzeugen mit Anhänger soll im Rahmen dieser Studienarbeit auf seine Alltagstauglichkeit getestet werden. Ferner wurden die Implementierungen des Lenkassistenzsystems auf einem Fahrsimulator und einer PC-Version von Probanden evaluiert. Hierbei sollen mithilfe von Berufskraftfahrern, Fahrlehrern und Laien Schwachstellen, Stärken, genereller Nutzen, eventuelle Verbesserungsmöglichkeiten, Realitätsnähe und Auwirkungen auf den Fahrer bzw. Benutzer sowohl im Fahrsimulator als auch in der PC-Version herausgefunden werden unter Zugrundelegung der anerkannten Kriterien Effizienz, Effektivität und Zufriedenheit. Außerdem werden beide Implementierungsarten des Simulators sowohl mit als auch ohne Berücksichtigung des Lenkassistenzsystems im Hinblick auf die Alltagstauglichkeit für die Kraftfahrerausbildung in Fahrschulen diskutiert.
Das Hauptziel dieser Studienarbeit war die Entwicklung eines Überführungstools, das sowohl den Repository Inhalt eines EA Projektes in einen TGraphen als auch einen TGraphen in ein EA Projekt überführen kann. Außerdem sollte das application programming interface des Enterprise Architects analysiert und beschrieben werden. Diese beiden Ziele konnten erfüllt werden und wurden in den vorherigen Kapiteln beschrieben. Zusätzlich beinhaltet die Studienarbeit noch eine Beschreibung und ein Anwendungsbeispiel zu JGraLab.
Die Workshop-Reihe 'Algorithmen und Werkzeuge für Petrinetze' wurde 1994 mit dem Ziel initiiert, in der deutschsprachigen Petrinetz-Community den fachlichen Austausch und die inhaltliche Zusammenarbeit zwischen den mit der Entwicklung und Analyse von Algorithmen beschäftigten Arbeitsgruppen und den im Bereich der Implementierung von Werkzeugen tätigen Arbeitsgruppen zu fördern. Der vorliegende Sammelband enthält die Vorträge, die auf dem Workshop präsentiert worden sind. Um auch die Vorstellung von noch unfertigen Ideen oder von in Entwicklung befindlichen Werkzeugen zu ermöglichen, fand wie in den vergangenen Jahren kein formaler Begutachtungsprozess statt. Die eingereichten Beiträge wurden lediglich auf ihre Relevanz für das Workshop-Thema hin geprüft.
Im Rahmen dieser Studienarbeit wurde ein Faktenextraktor für Java-Quelltexte entwickelt. Der Javaextraktor generiert eine TGraph-Repräsentation der Quelltexte eines in Java implementierten Softwareprojekts. Dieser TGraph ist dann durch dieWerkzeuge des Gupro-Projekts weiter verarbeitbar. Der Javaextraktor kann Javaquelltexte bis einschließlich Javaversion 6 verarbeiten. Dazu wurde ein Werkzeug gefunden, welches den Parsingvorgang übernimmt, so dass diese Funktion nicht selbst implementiert werden musste. Zusätzlich wurde ein Javametamodell und entsprechendes Schema für den TGraph entwickelt. Die Knoten- und Kantentypen des Metamodells konnten automatisiert mit JGraLab aus dem Schema erzeugt werden.
Probability propagation nets
(2008)
In der vorliegenden Arbeit wird eine Petri-Netz-Repräsentation für die Propagation von Wahrscheinlichkeiten und Evidenzen (Likelihoods) vorgestellt und auf probabilistische Horn-Abduktion sowie Fehlerbäume und Bayes-Netze angewendet. Diese sogenannten Wahrscheinlichkeits-Propagations-Netze (probability propagation nets) machen Propagations-Prozesse transparent, indem sie strukturelle und dynamische Aspekte in einer homogenen Darstellung vereinen. Anhand populärer Beispiele wird verdeutlicht, dass Wahrscheinlichkeits-Propagations-Netze die Propagations-Prozesse - besonders im Hinblick auf die Bayes-Netz-Algorithmik - anschaulich darstellen und gut nachvollziehbar machen, so dass sie sich für die Analyse und Diagnose probabilistischer Modelle eignen. Durch die Repräsentation von Fehlerbäumen mit Wahrscheinlichkeits-Propagations-Netzen können diese Vorzüge auf die Modellierung technischer Systeme übertragen werden.
GreQL-Script
(2008)
Im Rahmen dieser Arbeit wird eine Scriptsprache entworfen und ein Interpreter für diese implementiert. Sie ist der Nachfolger der von Bernt Kullbach entwickelten Scriptsprache Command Line GreQL (CLG) und soll die Arbeit mit TGraphen und mit der von Katrin Marchewka in ihrer Diplomarbeit beschriebenen Graphanfragesprache Graph Repository Query Language 2 (GReQL 2) vereinfachen.
Im Rahmen der Studienarbeit wurde ein webbasiertes Informationssystem für die neuen Bachelor- und Masterstudiengänge des Fachbereichs Informatik an der Universität Koblenz-Landau entwickelt. Dieses System dient i.A. der Visualisierung und der (Online)-Editierung des Modulhandbuchs. Die Studienarbeit selbst beschreibt die Vorgehensweise bei der Systemumsetzung. Sie beschreibt die Phasen der Anforderungserhebung, der Modellierung, der Implementierung und des Testens.
Program slicing
(2008)
Im Rahmen dieser Diplomarbeit wird das Dienstmodell für Program Slicing, welches von Hannes Schwarz vorgestellt wurde, zu einem komponentenbasierten Referenztool weiterentwickelt und implementiert. Dieses Referenztool verwendet zum Slicen ein Referenzschema für Programmiersprachen, welches ebenfalls in dieser Arbeit eingeführt wird. Die hier eingesetzten Slicing-Verfahren basieren auf diesem Referenzschema. Somit kann das Referenztool als Grundlage zum Slicen von Quellcode in beliebigen Programmiersprachen genutzt werden, wenn das Referenzschema vorab an die Gegebenheiten dieser Sprachen angepasst wird. Exemplarisch wird in dieser Diplomarbeit ein Program Slicing Tool für C-Quellcode entwickelt. Dieses Slicing Tool basiert auf dem Referenztool, in dem es die einzelnen Komponenten des Referenztools bei Bedarf spezialisiert oder in der ursprünglichen Form übernimmt. Damit das Program Slicing Tool als Referenz gelten kann, wird in dieser Arbeit eine einfache, erweiterbare und komponentenbasierte Architektur entwickelt. Diese entsteht durch den Einsatz aktueller Prinzipien der Softwaretechnik.
Im Rahmen dieser Arbeit wurden die zeitbewerteten Prädikat/Transitions-Netze (Z-Pr/T-Netze) zur Modellierung, Simulation und Verifikation sicherheitskritischer Echtzeitsysteme entwickelt. Z-Pr/T-Netze integrieren Konzepte zur Modellierung temporärer Zusammenhänge und sind darüber hinaus mittels der Berechnung von S- und T-Invarianten sowie der Identifikation von Traps und Co-Traps strukturell analysierbar. Die Eignung von Z-Pr/T-Netzen zur Modellierung, Simulation und Verifikation komplexer Systeme aus dem Anwendungsbereich sicherheitskritischer Echtzeitsysteme wird anhand des Earliest-Deadline-First-Protokolls (EDF) und des Priority-Inheritance-Protokolls (PIP) belegt. Es erfolgt daher eine Modellierung des EDF und PIP mittels Z-Pr/T-Netzen sowie eine Verifikation für das EDF und PIP basierend auf der strukturellen Analyse der korrespondierenden Z-Pr/T-Netze. Die Anwendbarkeit struktureller Analyseverfahren zur Verifikation des EDF und PIP in Verbindung mit der nicht zu unterschätzenden Komplexität eben dieser belegen die Anwendbarkeit von Z-Pr/T-Netzen zur Modellierung, Simulation und Verifikation komplexer Systeme aus dem Anwendungsbereich sicherheitskritischer Echtzeitsysteme.
The STOR project aims at the development of a scientific component system employing models and knowledge for object recognition in images. This interim report elaborates on the requirements for such a component system, structures the application area by identifying a large set of basic operations, and shows how a set of appropriate data structures and components can be derived. A small case studies exemplifies the approach.
This paper proposes model-driven techniques to extend IBM- SOMA method towards migrating legacy systems into Service-Oriented Architectures (SOA). The proposal explores how graph-based querying and transformation techniques enable the integration of legacy assets into a new SOA. The presented approach is applied to the identification and migration of services in an open source Java software system.
Entwicklung eines Regelungsverfahrens zur Pfadverfolgung für ein Modellfahrzeug mit Sattelanhänger
(2009)
Neben der fortschreitenden Automatisierung im innerbetrieblichen Warenverkehr ist auch die Automatisierung in ausgewählten Bereichen des ausserbetrieblichen Waren- und Güterverkehrs erstrebenswert. Durch den Einsatz von fahrerlosen Lkw-Gespannen auf Speditionshöfen kann die ökonomische Effizienz, der dort anfallenden Abläufe, erheblich erhört werden. Insbesondere werden dazu präzise Regelungsverfahren benötig, die auch für Sattelzüge ein exaktes Abfahren vorgegebener Wege gewährleisten. Das allgemeine Ziel dieser Arbeit ist die Adaption und Evaluation eines Regelverfahrens zur Pfadverfolgung für Sattelzuggespanne. Die Unterschiede im kinematischen Verhalten zwischen LKW mit einem einachsigen Starrdeichselanhänger und Sattelzügen herausgearbeitet werden. Im Weiteren werden die charakteristischen kinematischen Eigenschaften von Sattelzügen bei der Adaption eines Regelverfahrens berücksichtigt, das zunächst speziell für Fahrzeuge mit Starrdeichselanhänger konzipiert wurde. Das Regelungsverfahren zur Pfadverfolgung muss sowohl für vorwärts als auch rückwärtsgerichtete Fahrmanöver geeignet sein. Das Regelungsverfahren wird als abgeschlossene Komponente in die Steuersoftware eines Modellfahrzeugs integriert. Dazu werde für die Geometrie des Modellfahrzeugs spezifische mit dem Ziel, Grenzen möglicher Regelabweichungen zu bestimmen. Die Arbeit dokumentiert darüber hinaus die zentralen Softwarekomponenten des implementierten Regelungsverfahrens
Dieses Dokument legt den Standard für die Transformation von grUML-Schemas (GraphUML, [BHR+09]) nach XSD (XML Schema Definition) fest und ist im Rahmen des Arbeitspakets 5.2 "Prototypische SOAMIG-Parser und -Unparser realisieren" im SOAMIG-Projekt entstanden. Das Ziel ist der Austausch von TGraphen (typisierten, attributierten, angeordneten, gerichte Graphen [ERW08]) über XML-Dokumente. Zur Spezifikation des Austauschformats wird XSD eingesetzt. Dies erlaubt eine Validierung der XML-Instanzen auf syntaktischer Ebene. Der Ausgangspunkt ist ein gegebenes Schemas in grUML-Notation1, welches nach XSD transformiert werden soll. Mit der generierten XSD existiert ein Beschreibungsmittel für Graph-Instanzen in XML. Die dadurch beschriebenen XML-Dokumente sind flach, d.h. alle Elemente sind direkt dem root-Element untergeordnet.
In recent years, traceability has been more and more universally accepted as being a key factor for the success of software development projects. However, the multitude of different, not well-integrated taxonomies, approaches and technologies impedes the application of traceability techniques in practice. This paper presents a comprehensive view on traceability, pertaining to the whole software development process. Based on graph technology, it derives a seamless approach which combines all activities related to traceability information, namely definition, recording, identification, maintenance, retrieval, and utilization in one single conceptual framework. The presented approach is validated in the context of the ReDSeeDS-project aiming at requirements-based software reuse.
In dieser Arbeit wird ein zweigeteilter Regler für die Pfadverfolgung eines Modellfahrzeugs mit einachsigem Anhänger entwickelt. Darüber hinaus wird ein Beweis für die Stabilität und die Konvergenzeigenschaft der gefundenen Regelungsgesetze geliefert. Das Verfahren wird anschließend in die bestehende Steuersoftware des Versuchsfahrzeuges integriert und eine Testumgebung erstellt, um das Regelungsverfahren damit abschließend zu evaluieren.
Workflows und Logik
(2009)
In dieser Arbeit wurde gezeigt, wie die Netzdarstellung eines Workflows in eine aktionslogische, prädikatenlogische, transaktionslogische oder aktionslogische Formel umgeformt werden kann. Ebenso wurde der umgekehrte Weg beschrieben. So ist es jetzt möglich, Workflows auch mit Hilfe der verschiedenen Inferenztechniken der einzelnen Logiken zu untersuchen. Bei der Transformation wurden allerdings einige Einschränkungen getroffen. So wurde auf die Transformation von Quantoren sowie auf Zykel in den zu transformierenden Workflow-Netzen verzichtet. Außerdem wurden die möglichen Kantenlabels von pr/t-Netzen zur Umwandlung in eine prädikatenlogische Darstellung auf einzelne Tupel beschränkt.
Im Vordergrund dieser Arbeit stehen die Geschäftsprozessmodelle und deren Überführung in das für eine Weiterverarbeitung in JGraLab benötigte TGraph-Format. Für die Modellierung der Geschäftsprozesse im SOAMIG-Projekt fiel die Auswahl, aus Gründen der Verbreitung und der Kompetenzen der SOAMIG-Partner, zugunsten der drei bereits erwähnten Modellierungssprachen UML Aktivitätsdiagramme, BPMN und EPK aus. Obwohl sich diese drei Notationen allesamt für die Erstellung von Geschäftsprozessmodellen bewährt haben und auch in Kombination in der Praxis eingesetzt werden, so differenzieren sie sich dennoch durch verschiedene Zielsetzungen bei ihrer Entwicklung. Die aufgrund der Zielsetzungen und der hohen Funktionsvielfalt resultierenden Unterschiede und Inkompatibilitäten der Sprachen untereinander bei der Modellierung von Geschäftsprozessen erschweren eine einheitliche Transformation nach JGraLab und die Behandlung der zu erhebenden Geschäftsprozessmodelle in JGraLab. Für jede Sprache müsste ein eigener Regelsatz und eine maßgeschneiderte Konvertierungsmöglichkeit festgelegt werden. Um eine sprach- und werkzeugunabhängige Geschäftsprozessmodellierung zu ermöglichen werden in dieser Arbeit zuerst die im SOAMIG-Projekt benötigten Sprachkonzepte und -elemente für die Modellierung von Geschäftsprozessen der UML Aktivitätsdiagramme, der BPMN und der EPK vorgestellt. Im nächsten Schritt werden notationsübergreifende Abbildungen der Srachkonzepte und -elemente aufeinander beschrieben, Defizite und Lücken der Sprachen aufgedeckt und durch eigene Auslegungen der Notationen gefüllt, und schließlich Metamodelle der drei Sprachen, aufgrund der gewonnen Erkentnisse sowie ein Referenzmetamodell auf Basis dieser Metamodelle erstellt und dargestellt. Im letzten Teil dieser Arbeit wird die exemplarische Realisierung eines Modell-zu-Referenzmodell Konverters auf Basis der BPMN und des Modellierungswerkzeuges BizAgi Process Modeler der Firma BizAgi Ltd vorgestellt, und der Lösungsansatz anhand des Beispiels eines Geschäftsprozesses validiert. Die Konvertierer ermöglichen die Abbildung eines Geschäftsprozessmodelles auf ein semantisch-äquivalentes Referenzmetamodell-konformes Modell, auf dessen Basis weitere Arbeitsschritte vor der/ für die Migration, unabhängig von der ursprünglich eingesetzten Modellierungssprache, definiert werden können.
Die vorliegende Arbeit beschäftigt sich mit der Abbildung von Ecore nach grUML. Dabei wird sowohl die Transformation von in Ecore modellierten Modellen nach Graphen in grUML als auch die Konvertierung von Ecore-Metamodellen nach grUML-Schemas betrachtet. Zunächst werden die beiden Modellierungssprachen Ecore und grUML einzeln beschrieben. Dabei werden die Metamodelle der Sprachen erklärt und die Programmierschnittstellen vorgestellt. Im Anschluss werden Unterschiede und Gemeinsamkeiten von grUML und Ecore erläutert und auf dieser Grundlage eine Abbildung definiert. Außerdem werden Anforderungen an die Implementierung der Transformation festgehalten. Danach folgen verschiedene Details zur Realisierung. Zum Schluss wird mit Hilfe einiger Beispiele gezeigt, welche Ergebnisse durch die Transformation entstehen.
Im Rahmen dieser Arbeit soll das Software-Modellierungstool Enterprise Architect so erweitert werden, dass die Trennung der Belange entsprechend dem erweiterten Hyperspace-Modell von Lohmann ermöglicht wird. Daneben soll auch die Bestimmung so genannter Slices ermöglicht werden. Bei einem Slice handelt es sich um die Menge aller Belange und syntaktischen Einheiten, welche mit einem oder mehreren Belangen direkt oder transitiv verknüpft sind. Die Idee der Bestimmung solcher Slices ist graphenorientiert: Die transitive Hülle der ausgewählten Belange und der mit diesen verknüpften Belange wird bestimmt. Dies kann auf bestimmte Kantenarten, welche die Arten der Verknüpfung von Belangen widerspiegeln, eingeschränkt werden. Bevor dies implementiert werden kann, muss untersucht werden, ob die Funktionalität mit den im Enterprise Architect gegebenen Möglichkeiten realisiert werden kann. Ist dies nicht der Fall, so müssen Modelle aus dem Enterprise Architect zunächst mit Hilfe von JGraLab in Graphen überführt werden, damit anschließend die Slices unter Anwendung der Graphenabfragesprache Graph Repository Query Language (GreQL) bestimmt werden können. Die Funktionalitäten sollen in einem gemeinsamen Software-Baustein realisiert werden, der sich konform zu den für den Enterprise Architect vorgegebenen Schnittstellen verhalten muss und keine Konflikte im Programmablauf verursachen kann.
TGraphBrowser
(2010)
Im Rahmen dieser Arbeit wird ein Webserver implementiert, mit dem man sich Graphen, die mit Hilfe des Java-Graphenlabors (JGraLab) erzeugt wurden, in einem Browser anzeigen lassen kann. Es werden dem Nutzer eine tabellarische und eine graphische Darstellung des Graphen angeboten. In jeder der beiden Darstellungsarten ist das Navigieren durch den Graphen möglich. Um Graphen mit mehreren tausend Elementen für den Nutzer überschaubarer zu machen, können die angezeigten Kanten und Knoten nach ihren Schematypen gefiltert werden. Ferner kann die dargestellte Menge an Graphelementen durch eine GReQL-Anfrage oder durch explizite Angabe bestimmt werden.
Im Rahmen dieser Diplomarbeit wird ein TGraph-basiertes Modell-Vergleichsverfahren entwickelt. Dieses Verfahren soll eine anwendbare Berechnung von Deltas für TGraph-basierte Modelle ermöglichen. Modelle können durch TGraphen repräsentiert werden. Für die Erzeugung und Verarbeitung von TGraphen wurde am Institut für Softwaretechnik das Java Graph Laboratory, kurz JGraLab, entwickelt. Es handelt sich dabei um eine Java Klassenbibliothek, die eine hoch effiziente API zur Verarbeitung von TGraphen bereitstellt. [Ebe87, ERW08, ERSB08] Basierend auf der JGraLab API wird ein System entwickelt, das unterschiedliche Werkzeuge zur Verwaltung von Modellen bereitstellt. Der Fokus dieser Diplomarbeit liegt dabei auf der Entwicklung eines Werkzeugs, das zu zwei gegebenen TGraphen ein Delta berechnet.
Im Rahmen dieser Diplomarbeit wird eine Datenbank-Persistenzlösung für die TGraphenbibliothek JGraLab entwickelt. Diese erlaubt das Persistieren von TGraphen in Datenbanken ausgewählter Technologien und sorgt gleichzeitig dafür, dass die Datenbankpersistenz eines TGraphen für den Benutzer transparent bleibt. Nach der Anforderungserhebung und der Recherche zur Bewertung der Tauglichkeit von bereits bestehenden Werkzeugen für dieses Projekt, wird die Anwendungsdomäne erläutert. Anschließend wird dargelegt wie die Persistierung von TGraphen mit allen ihren Eigenschaften in Datenbanken ermöglicht werden kann. Dem schließt sich der konzeptuelle Entwurf an, in dem die Details der Lösung beschrieben werden. Als nächstes wird der objektorientierte Feinentwurf zur Integration der Lösung in die TGraphenbibliothek JGraLab entwickelt, der die Grundlage der programmatischen Umsetzung bildet. Eine Anleitung zur Verwendung der Lösung und eine Bewertung des Laufzeitverhaltens der umgesetzten Implementation schließen die Arbeit ab.
Im Rahmen dieser Diplomarbeit wird erforscht, wie bestehende Tools zur Berechnung von Softwaremetriken über COBOL-Quelltexte mit den vorhandenen Entwicklerwerkzeugen der Debeka Versicherungsgruppe interoperabel gemacht werden können. Der Text richtet sich primär an Leser aus dem Bereich der Informatik. Zum Verständnis wird ein Wissensstand vergleichbar dem eines Informatikers mit abgeschlossenem Bachelorstudium oder Vordiplom vorausgesetzt.
Im Rahmen dieser Arbeit wurde die Effizienz von Anfragen an OWL-Ontologien und Anfragen an TGraphen evaluiert. Dabei wurden die zwei unterschiedlichen Transformationsverfahren Schema-Aware Mapping und Simple Mapping getestet. Bei der Transformation einer OWL-Ontologie in einen TGraphen über Schema-Aware Mapping werden ein TGraph-Schema und ein TGraph erzeugt. Im Gegensatz zu Schema-rnAware Mapping besitzt Simple Mapping ein schon vordefiniertes TGraph-Schema, das für alle OWLOntologien anwendbar ist. Damit wird bei der Transformation einer OWL-Ontologie in einen TGraphen über Simple Mapping nur ein TGraph - kein TGraph-Schema - generiert. Mit den Verfahren wurden entsprechend auch SPARQL-Anfragen in GReQL-Anfragen transformiert.
Diese Bachelorarbeit behandelt die Zusammenführung der bereits vorliegenden Winkelrekonstruktions- und Simulationskomponente und erweitert diese mit Funktionen, um die Durchführung von systematischen Tests zu ermöglichen. Hierzu wird die Übergabe von Bildern aus der Simulationskomponente an die Winkelrekonstruktionskomponente ermöglicht. Des weiteren wird eine GUI zur Testlaufsteuerung und Parameterübergabe sowie eine Datenbankanbindung zur Speicherung der verwendeten Einstellungen und erzeugter Daten angebunden. Durch die Analyse der erzeugten Daten zeigt sich eine ausreichende durchschnittliche Präzision von 0.15° und eine maximale Abweichung der einzelnen Winkel von 0.6°. Der größte Gesamtfehler beläuft sich in den Testläufen auf 0.8°. Der Einfluss von fehlerhaften Parametern hat von variable zu Variable unterschiedliche Auswirkungen. So verstärkt ein Fehler in Höhe den Messfehler um ein vielfaches mehr, als ein Fehler in der Länge der Deichsel.
Im Rahmen dieser Arbeit wird untersucht, wie sich Modellfehler auf die Positionsgenauigkeit und Handhabbarkeit beim Rangieren mit einem Fahrerassistenzsystem auswirken. Besonderer Wert wird dabei auf die Bestimmung von Fehlergrenzen gelegt. Es wird der Frage nachgegangen, wie groß der Eingangsfehler sein darf, damit die Assistenz noch hinreichende Qualitätseigenschaften hinsichtlich ihrer Präzision und Robustheit aufweist. Dazu erfolgt zunächst eine quantitative Betrachtung der Fehler anhand des kinematischen Modells. Danach wird eine qualitative Betrachtung anhand von systematischen Experimenten durchgeführt. Es wird zunächst ein Controller entwickelt, mit dem sich ein Manöver mithilfe der visuellen Informationen der Assistenz simulieren lässt.
Dann wird eine Methode vorgestellt, mit deren Hilfe man das Manöver anhand definierter Fehlergrenzen bewerten kann. Um einen großen Raum möglicher Fehlerkombinationen effizient zu durchsuchen, wird das probabilistische Verfahren des Annealed Particle Filters benutzt. Mithilfe einer Testumgebung werden schließlich systematische Experimente durchgeführt. Zur weiteren Evaluation des Assistenzsystems in einer kontrollierten Umgebung erfolgte in Zusammenarbeit mit dem Fraunhofer ITWM in Kaiserslautern die Portierung des Assistenzsystems auf die dortige Simulationsumgebung RODOS.
In dieser Arbeit wurde erstmalig das Gebiet der funktionalen, system-level Web Testing Tools analysiert. Aus 194 Toolkandidaten wurden 23 Tools zur Analyse ausgewählt. Die entwickelte Methodik verwendet die Benutzerhandbücher der Tools, um ein Featuremodel zu erzeugen, dass die Features aller Tools abbildet. Insgesamt wurden 313 Features identifiziert, klassifiziert und beschrieben. Die Features wurden in 10 Kategorien unterteilt und werden mit 16 Featurediagrammen dargestellt.rnDie Ergebnisse können technologische Entscheidungsprozesse unterstützen, indem ein Überblick einerseits über die Tools auf dem Markt und andererseits über die neusten Entwicklungen im Bereich des funktionalen, system-level Web Testing bereitgestellt wird.
101worker ist die modulare Wissensverarbeitungskomponente des 101companies-Projektes. Durch organisches Wachstum des Systems, statt Beachtung von bewährten Software-Design-Prinzipien, haben sich Wartungs- und Leistungsprobleme entwickelt. Diese Arbeit beschreibt diese Probleme, entwirft Anforderungen für das Refactoring des Systems und beschreibt und analysiert schließlich die resultierende Implementierung. Die Lösung involviert die Zusammenfassung von verstreuten und redundanten Informationen, aufsetzen von Unit- und funktionalen Test-Suiten und Inkrementalisierung der Busarchitektur von 101worker.
Paketmanager für Quellcode wie zum Beispiel Cabal verwalten unter anderem die Abhängigkeiten zwischen Paketen. Softwareprojekte nutzen jedoch selten sämtliche Funktionalitäten, die ihre Abhängigkeiten bereitstellen. Das führt zur unnötigen Kompilation unbenutzter Code-Fragmente und zu vermeintlichen Versionskonflikten, wo gar keine Konflikte sind. In zwei Fallstudien zeigen wir, wie relevant diese zwei Probleme sind. Danach beschreiben wir, wie wir sie vermeiden können, indem wir Abhängigkeiten nicht zwischen ganzen Paketen, sondern zwischen einzelnen Code-Fragmenten feststellen.
Datenflussmodelle in der Literatur weisen oftmals einen hohen Detailgrad auf, der sich auf die auf den Modellen durchgeführten Datenflussanalysen überträgt und diese somit schwerer verständlich macht. Da ein Datenflussmodell, das von einem Großteil der Implementierungsdetails des modellierten Programms abstrahiert, potenziell leichter verständliche Datenflussanalysen erlaubt, beschäftigt sich die vorliegende Masterarbeit mit der Spezifikation und dem Aufbau eines stark abstrahierten Datenflussmodells und der Durchführung von Datenflussanalysen auf diesem Modell. Das Modell und die darauf arbeitenden Analysen wurden testgetrieben entwickelt, sodass ein breites Spektrum möglicher Datenflussszenarien abgedeckt werden konnte. Als konkrete Datenflussanalyse wurde unter anderem eine statische Sicherheitsprüfung in Form einer Erkennung unzureichender Nutzereingabenbereinigungen durchgeführt. Bisher existiert kein Datenflussmodell auf einer ähnlich hohen Abstraktionsebene. Es handelt sich daher um einen einzigartigen Lösungsentwurf, der Entwicklern die Durchführung von Datenflussanalysen erleichtert, die keine Expertise auf diesem Gebiet haben.
Softwaresysteme haben einen zunehmenden Einfluss auf unser tägliches Leben. Viele Systeme verarbeiten sensitive Daten oder steuern wichtige Infrastruktur, was die Bereitstellung sicherer Software unabdingbar macht. Derartige Systeme werden aus Aufwands- und Kostengründen selten erneuert. Oftmals werden Systeme, die zu ihrem Entwurfszeitpunkt als sicheres System geplant und implementiert wurden, deswegen unsicher, weil sich die Umgebung dieser Systeme ändert. Dadurch, dass verschiedenste Systeme über das Internet kommunizieren, sind diese auch neuen Angriffsarten stetig ausgesetzt. Die Sicherheitsanforderungen an ein System bleiben unberührt, aber neue Erkenntnisse wie die Verwundbarkeit eines zum Entwurfszeitpunkt als sicher geltenden Verschlüsselungsalgorithmus erzwingen Änderungen am System. Manche Sicherheitsanforderungen können dabei nicht anhand des Designs sondern nur zur Laufzeit geprüft werden. Darüber hinaus erfordern plötzlich auftretende Sicherheitsverletzungen eine unverzügliche Reaktion, um eine Systemabschaltung vermeiden zu können. Wissen über geeignete Sicherheitsverfahren, Angriffe und Abwehrmechanismen ist grundsätzlich verfügbar, aber es ist selten in die Softwareentwicklung integriert und geht auf Evolutionen ein.
In dieser Arbeit wird untersucht, wie die Sicherheit langlebiger Software unter dem Einfluss von Kontext-Evolutionen bewahrt werden kann. Der vorgestellte Ansatz S²EC²O hat zum Ziel, die Sicherheit von Software, die modellbasiert entwickelt wird, mithilfe von Ko-Evolutionen wiederherzustellen.
Eine Ontologie-basierende Wissensbasis wird eingeführt, die sowohl allgemeines wie auch systemspezifisches, sicherheitsrelevantes Wissen verwaltet. Mittels einer Transformation wird die Verbindung der Wissensbasis zu UML-Systemmodellen hergestellt. Mit semantischen Differenzen, Inferenz von Wissen und der Erkennung von Inkonsistenzen in der Wissensbasis werden Kontext-Evolutionen erkannt.
Ein Katalog mit Regeln zur Verwaltung und Wiederherstellung von Sicherheitsanforderungen nutzt erkannte Kontext-Evolutionen, um mögliche Ko-Evolutionen für das Systemmodell vorzuschlagen, welche die Einhaltung von Sicherheitsanforderungen wiederherstellen.
S²EC²O unterstützt Sicherheitsannotationen, um Modelle und Code zum Zwecke einer Laufzeitüberwachung zu koppeln. Die Adaption laufender Systeme gegen Bedrohungen wird ebenso betrachtet wie Roundtrip-Engineering, um Erkenntnisse aus der Laufzeit in das System-Modell zu integrieren.
S²EC²O wird ergänzt um eine prototypische Implementierung. Diese wird genutzt, um die Anwendbarkeit von S²EC²O im Rahmen einer Fallstudie an dem medizinischen Informationssystem iTrust zu zeigen.
Die vorliegende Arbeit leistet einen Beitrag, um die Entwicklung und Wartung langlebiger Softwaresysteme in Bezug auf ihre Sicherheit zu begleiten. Der vorgestellte Ansatz entlastet Sicherheitsexperten bei ihrer Arbeit, indem er sicherheitsrelevante Änderungen des Systemkontextes erfasst, den Einfluss auf die Sicherheit der Software prüft und Ko-Evolutionen zur Bewahrung der Sicherheitsanforderungen ermöglicht.
Data-minimization and fairness are fundamental data protection requirements to avoid privacy threats and discrimination. Violations of data protection requirements often result from: First, conflicts between security, data-minimization and fairness requirements. Second, data protection requirements for the organizational and technical aspects of a system that are currently dealt with separately, giving rise to misconceptions and errors. Third, hidden data correlations that might lead to influence biases against protected characteristics of individuals such as ethnicity in decision-making software. For the effective assurance of data protection needs,
it is important to avoid sources of violations right from the design modeling phase. However, a model-based approach that addresses the issues above is missing.
To handle the issues above, this thesis introduces a model-based methodology called MoPrivFair (Model-based Privacy & Fairness). MoPrivFair comprises three sub-frameworks: First, a framework that extends the SecBPMN2 approach to allow detecting conflicts between security, data-minimization and fairness requirements. Second, a framework for enforcing an integrated data-protection management throughout the development process based on a business processes model (i.e., SecBPMN2 model) and a software architecture model (i.e., UMLsec model) annotated with data protection requirements while establishing traceability. Third, the UML extension UMLfair to support individual fairness analysis and reporting discriminatory behaviors. Each of the proposed frameworks is supported by automated tool support.
We validated the applicability and usability of our conflict detection technique based on a health care management case study, and an experimental user study, respectively. Based on an air traffic management case study, we reported on the applicability of our technique for enforcing an integrated data-protection management. We validated the applicability of our individual fairness analysis technique using three case studies featuring a school management system, a delivery management system and a loan management system. The results show a promising outlook on the applicability of our proposed frameworks in real-world settings.
In IT-Systemen treten viele Datenschutzrisiken auf, wenn Datenschutzbedenken in den frühen Phasen des Entwicklungsprozesses nicht angemessen berücksichtigt werden. Die Datenschutz-Grundverordnung (DSGVO) schreibt das Prinzip des Datenschutz durch Technikgestaltung (PbD) vor. PbD erfordert den Schutz personenbezogener Daten von Beginn des Entwicklungsprozesses an, durch das frühzeitige Integrieren geeigneter Maßnahmen. Bei der Realisierung von PbD ergeben sich nachfolgende Herausforderungen: Erstens benötigen wir eine präzise Definition von Datenschutzbedenken. Zweitens müssen wir herausfinden, wo genau in einem System die Maßnahmen angewendet werden müssen. Drittens ist zur Auswahl geeigneter Maßnahmen, ein Mechanismus zur Ermittlung der Datenschutzrisiken erforderlich. Viertens müssen bei der Auswahl und Integration geeigneter Maßnahmen, neben den Risiken, die Abhängigkeiten zwischen Maßnahmen und die Kosten der Maßnahmen berücksichtigt werden.
Diese Dissertation führt eine modellbasierte Methodik ein, um die oben genannten Herausforderungen zu bewältigen und PbD zu operationalisieren. Unsere Methodik basiert auf einer präzisen Definition von Datenschutzbedenken und umfasst drei Untermethodiken: modellbasierte Datenschutzanalyse, modellbasierte Datenschutz-Folgenabschätzung und datenschutzfreundliche Systemmodellierung. Zunächst führen wir eine Definition für Datenschutzpräferenzen ein, anhand derer die Datenschutzbedenken präzisiert werden können und überprüft werden kann, ob die Verarbeitung personenbezogener Daten autorisiert ist. Zweitens präsentieren wir eine modellbasierte Methodik zur Analyse eines Systemmodells. Die Ergebnisse dieser Analyse ergeben die Menge der Verstöße gegen die Datenschutzpräferenzen in einem Systemmodell. Drittens führen wir eine modellbasierte Methode zur Datenschutzfolgenabschätzung ein, um konkrete Datenschutzrisiken in einem Systemmodell zu identifizieren. Viertens schlagen wir in Bezug auf die Risiken, Abhängigkeiten zwischen Maßnahmen und Kosten der Maßnahmen, eine Methodik vor, um geeignete Maßnahmen auszuwählen und in ein Systemdesign zu integrieren. In einer Reihe von realistischen Fallstudien bewerten wir unsere Konzepte und geben einen vielversprechenden Ausblick auf die Anwendbarkeit unserer Methodik in der Praxis.