Filtern
Erscheinungsjahr
Dokumenttyp
- Diplomarbeit (14)
- Studienarbeit (13)
- Bachelorarbeit (8)
- Dissertation (7)
- Masterarbeit (6)
- Ausgabe (Heft) zu einer Zeitschrift (6)
Sprache
- Deutsch (39)
- Englisch (14)
- 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)
- Petri-Netze (2)
- Program Slicing (2)
- TGraph (2)
- Transformation (2)
- 3D-Modelle (1)
- Abduktion <Logik> (1)
- Abfragesprache (1)
- Anhänger (1)
- Anhängerfahrzeug (1)
- Bachelor (1)
- Bayes-Netz (1)
- Bayesian Networks (1)
- Binäre XML-Formate (1)
- Browser (1)
- CAD-System (1)
- CSG (1)
- Clusteranalyse (1)
- Data flow analysis (1)
- Data protection (1)
- Data-Mining (1)
- Datenfluss (1)
- Datenflussanalyse (1)
- Datenflussmodell (1)
- Datenschutz (1)
- Delta (1)
- Diagnose (1)
- Diagnosis (1)
- Dokumentation (1)
- Drahtmodell (1)
- EPC (1)
- EPK (1)
- Eclipse (1)
- Ecore (1)
- Enterprise Architect (1)
- Entwurfssprache (1)
- Epipolargeometrie (1)
- Ergonomic Principles (1)
- Evaluation (1)
- Fahrerlose Transportsysteme (1)
- Fahrsimulator (1)
- Fahrverhalten (1)
- Fahrzeug (1)
- Fahrzeugverhalten (1)
- Fault Trees (1)
- Feature Modeling (1)
- Fehlerbaum (1)
- Flächenmodell (1)
- GDPR (1)
- GReQL 2 (1)
- GUPRO (1)
- Geschäftsprozess (1)
- Geschäftsprozessmodellierung (1)
- Gespann (1)
- Graph (1)
- Graph Technology (1)
- GraphUML (1)
- Gupro (1)
- Hand-based Gestures (1)
- High-Traffic (1)
- Hyperspace-Modell (1)
- IEC 61131 (1)
- Image (1)
- Informatik (1)
- Informationssystem (1)
- J2EE (1)
- Java-Quelltext (1)
- Kraftfahrzeug (1)
- Leitstandmodul (1)
- Lenkassistenzsystem (1)
- Lenkung (1)
- Master (1)
- Modelltransformation (1)
- Modul (1)
- Modulhandbuch (1)
- Mouse Gestures (1)
- Nutzungsanalyse (1)
- Object Recognition (1)
- Petri Nets (1)
- Petri-Netz-Theorie (1)
- Pfadverfolgung (1)
- Pointing Devices (1)
- Programmanalyse (1)
- Programmiersprache (1)
- Programmiersprachen (1)
- Propagation (1)
- ReDSeeDS-Project (1)
- Referenzmetamodell (1)
- Regler (1)
- Reverse Engineering (1)
- Rückfahrkamera (1)
- Rückverfolgbarkeit (1)
- Rückwärtsfahrt (1)
- SOAMIG (1)
- SOMA (1)
- Sattelkraftfahrzeug (1)
- Sattelzug (1)
- Semantik (1)
- Service-Oriented Architectures (SOA) (1)
- Skriptsprache (1)
- Software (1)
- Software Development (1)
- Software Engineering (1)
- Software techniques for object recognition (STOR) (1)
- Softwareentwicklung (1)
- Softwaremodellierung (1)
- Softwaretest (1)
- Statische Analyse (1)
- Syntax (1)
- TGraphen (1)
- Testen (1)
- Traceability (1)
- Trajektorien (1)
- Triangulierungsverfahren (1)
- UML (1)
- UML Activity Diagrams (1)
- UML Aktivitätsdiagramm (1)
- Universität Koblenz-Landau (1)
- Unsicheres Schließen (1)
- Usability (1)
- Volumenmodell (1)
- WCET (1)
- WEB (1)
- Wahrscheinlichkeit (1)
- Webserver (1)
- Workflow (1)
- XSD (1)
- YAWL (1)
- bachelor (1)
- business process (1)
- computer science (1)
- conflict detection (1)
- critical section (1)
- data protection (1)
- data-mining (1)
- evolution (1)
- fairness (1)
- functional web testing tools (1)
- futex (1)
- grUML (1)
- high-traffic (1)
- immediate priority ceiling protocol (1)
- information system (1)
- legacy software (1)
- long-living systems (1)
- master (1)
- migration (1)
- modellgetriebene Softwareentwicklung (1)
- module handbook (1)
- monitor (1)
- mutual exclusion (1)
- predictability (1)
- privacy by design (1)
- privacy impact assessment (1)
- reference meta model (1)
- security (1)
- software engineering (1)
- traceability (1)
- transformation (1)
- usage-mining (1)
Institut
- Institut für Softwaretechnik (54) (entfernen)
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.
Da Software heute nahezu alle Bereiche des Alltags durchdringt, ist Sicherheit von Softwaresystemen ein wichtigeres Anliegen als je zuvor. Die Sicherheit eines Softwaresystems zu bewerten stellt in der Praxis jedoch eine Herausforderung dar, da nicht viele Metriken existieren, die Sicherheitseigenschaften von Sourcecode auf Zahlenwerte abbilden. Eine geläufige Annahme ist, dass das Auftreten von Sicherheitslücken in Korrelation mit der Qualität von Software-Designs steht, allerdings fehlt es momentan an klaren Belegen für diese Annahme. Der Nachweis einer vorhandenen Korrelation kann dazu beitragen die Messung von Programmsicherheit zu optimieren, da man dann gezielt Qualitätsmetriken zum Messen von Sicherheit einsetzen könnte. Zu diesem Zweck wurden in dieser Arbeit für 50 Android-Apps aus dem Open Source-Bereich drei Sicherheits- und sieben Qualitätsmetriken, sowie Korrelationen zwischen diesen Metriken berechnet. Bei den Qualitätsmetriken handelt es sich um einfache Code-Metriken bis hin zu High-Level-Metriken, wie objektorientierte Antipatterns, die zusammen ein umfassendes Bild der Qualität vermitteln. Um die Sicherheit darzustellen wurden zwei Sichtbarkeitsmetriken zusammen mit einer Metrik, die die minimale Rechteanforderung mobiler Applikationen berechnet, ausgewählt. Es wurde festgestellt, dass auf Basis der betrachteten Evaluationsprojekte deutliche Korrelationen zwischen den meisten Qualitätsmetriken liegen. Zu den Sicherheitsmetriken wurden dahingegen keine signifikanten Korrelationen gefunden. Es werdendiese Korrelationen und deren Ursachen diskutiert und auf dieser Basis Empfehlungen formuliert.
Echzeitbetriebssysteme für Systeme mit gemischten Kritikalitäten müssen unterschiedliche Arten von Software, wie z.B. Echtzeitanwendungen und Allzweckanwendungen, gleichzeitig unterstützen. Dabei müssen sie eine solide räumliche und zeitliche Isolation zwischen unabhängigen Softwarekomponenten bieten. Daher fokussieren sich aktuelle Echtzeitbetriebssysteme hauptsächlich auf Vorhersagbarkeit und ein berechenbares Worst-Case-Verhalten.
Allerdings bieten Allzweck-Betriebssysteme wie Linux häufig effizientere, aber weniger deterministische Mechanismen, welche die durchschnittliche Ausführungszeit signifikant erhöhen. Diese Thesis befasst sich mit der Kombination der beiden gegensätzlichen Anforderungen und zeigt Mechanismen zur Thread-Synchronisation mit einem effizienten Durchschnittsverhalten, ohne jedoch die Vorhersagbarkeit und das Worst-Case-Verhalten zu beeinträchtigen. Diese Thesis untersucht und bewertet den Entwurfsraum von Abkürzungen (engl. fast paths) bei der Umsetzung von typischen blockierenden Synchronisationsmechanismen wie Mutexen, Bedingungsvariablen, Zähl-Semaphoren, Barrieren oder Nachrichtenwarteschlangen. Der Ansatz ist dabei, unnötige Systemaufrufe zu vermeiden. Systemaufrufe haben im Vergleich zu anderen Prozessoroperationen, die im Benutzermodus verfügbar sind, wie z.B. atomaren Operationen, höhere Kosten. Insbesondere erforscht die Thesis Futexe, ein aktuelles Design für blockierende Synchronisationsmechanismen in Linux, welches den konkurrenzfreien Fall der Synchronisierung mithilfe atomarer Operationen im Benutzermodus löst und den Kern nur aufruft, um Threads zu suspendieren und aufzuwecken. Die Thesis untersucht auch nicht-unterbrechbare Monitore mit aktivem Warten. Dort wird ein effizienter Mechanismus mit Prioritätsschranken verwendet, um das sogenannte Lock-Holder-Preemption-Problem ohne Systemaufrufe zu vermeiden. Ebenfalls werden passende niedere Kernprimitive beschrieben, die effiziente Warte- und Benachrichtigungsoperationen ermöglichen. Die Evaluation zeigt, dass die vorgestellten Ansätze die durchschnittliche Leistung vergleichbar zu aktuellen Ansätzen in Linux verbessern. Gleichzeitig zeigt eine Analyse des Worst-Case Zeitverhaltens, dass die Ansätze nur konstante oder begrenzte zeitliche Mehraufwände auf der Ebene des Betriebssystemkerns benötigen. Die Nutzung dieser Abkürzungen ist ein lohnender Ansatz für den Entwurf von Systemen, die nicht nur Echtzeitanforderungen erfüllen, sondern auch Allzweckanwendungen gut unterstützen sollen.