05 Fakultät Informatik, Elektrotechnik und Informationstechnik

Permanent URI for this collectionhttps://elib.uni-stuttgart.de/handle/11682/6

Browse

Search Results

Now showing 1 - 10 of 118
  • Thumbnail Image
    ItemOpen Access
    Robust execution of workflows in a distributed environment
    (2013) Schäfer, David Richard
    In many business applications, workflows are used to describe business processes. Employees and machines get instructions from a plan (the workflow) to be guided or controlled. The workflows make it easier to create and manage business processes. Therefore, using workflows is the standard procedure in the business area today. The distributed execution of workflows plays an important role as almost all nodes are connected to a network today. The importance even increases with the emerging of pervasive environments. Because these systems are prone to failures, it is important to develop reliability methods that ensure that the system works properly even if failures occur. When the robustness of a system in a distributed environment shall be increased, the service that has to be executed is usually replicated and executed by two or more nodes. This means that the exact same behavior is executed by multiple nodes and thereby increases the reliability of the system by being able to cope with node failures. Changing the order of the activities or using alternative activities to increase the robustness is promising because when each node receives a different workflow that achieves the same goal, the possibility of failures should be further reduced by decoupling the replicas in respect of time and hardware dependencies. We developed a robustness metric that evaluates the robustness of a set of workflow replicas. We also developed methods and algorithms that generate workflows with different orders and alternative tasks within reasonable time. Our evaluations show that our proposed methods work significantly better than deploying a brute-force method to achieve the same behavior.
  • Thumbnail Image
    ItemOpen Access
    Planung von verlässlichen Workflowausführungen
    (2017) Höhn, Patric
    Workflows beschreiben den zeitlichen Ablauf eines komplexen Prozesses. In dieser Arbeit beschäftigen wir uns mit deren Ausführung auf fehleranfälligen Systemen. Wir entwickeln Strategien um diese Ausfühung möglichst effizient und optimal zu planen. Die Planung und Ausführung auf verteilten Systemen stehen dabei im Fokus. Unsere Strategien führen die Planung unter anderem verteilt aus oder teilen einen Workflow in mehrere Teile auf, um die Planungszeit zu verkürzen. Wir testen die Strategien in einem simulierten Netzwerk und stellen die Ergebnisse in einer Evaluation detailiert dar. Es zeigt, sich dass sich durch unsere Strategien unter bestimmten Bedingungen die Dauer für die Ausführungsplanung drastisch verkürzen lässt und die Zeit für eine erfolgreiche Workflowausführung dabei verhältnismäßig gering ansteigt, sodass die Gesamtdauer von Planung und Ausführung deutlich verkürzt werden kann.
  • Thumbnail Image
    ItemOpen Access
    Extended Business Rules
    (2011) Liu, Jian
    In dieser Diplomarbeit wurden der Entwurf, die Implementierung und der Testen des extended Business Rule Managers betrachtet. Dazu wurde zunächst eine grafische Benutzeroberfläche zur Definition Business Regeln bereitgestellt. Dann kamen Web Services als Regel-Prüfer zum Einsatz. Diese Regel-Prüfer müssen nicht nur die erstellten Regeln prüfen, sondern auch sich mit einer Datenbank zur Findung der Werte der operativen Daten verbinden. Schließlich wurde die erstellten Web Services in einem Geschäftsprozess getestet. Darüber hinaus wurden alle benötigen Technologien auch vorgestellt.
  • Thumbnail Image
    ItemOpen Access
    Automatisierte Verarbeitung von Crash Dumps
    (2014) Plödereder, Jörg
    Fehler in der Software kennt jeder, der mit Computern arbeitet, zur Genüge. Manche Fehler sind lediglich ein Ärgernis für den Nutzer, andere machen die Nutzung der Software unmöglich. Diese zweite Fehlersorte äußert sich darin, dass die Software abstürzt bzw. nicht mehr weiter nutzbar ist. Um solche Fehler bei einer bereits ausgelieferten Software zu beheben, muss der Hersteller vom Auftreten des Fehlers informiert werden. Hierzu kann sich der Hersteller der Nutzung von Crash Reports bedienen. Crash Reports sind Fehlerberichte, die im Fehlerfall an den Hersteller der Software gesandt werden und Daten enthalten, die Informationen zum Absturzzustand liefern. Abhängig von der Anzahl der beim Hersteller eingehenden Fehlerberichte und der zu Verwaltung deren zugeteilten Entwickler, wird es nach einiger Zeit mühsam und vor allem zeitaufwändig, die Übersicht über bekannte Fehler zu behalten und die neu eingehenden manuell zu verarbeiten. Ziel dieser Diplomarbeit ist es, ein System zu entwickeln, das die Verarbeitung von automatisch erstellten Fehlerberichten von manueller Arbeit in einen halb-automatischen Vorgang überführt. Der Sinn liegt hierbei in der Effizienzsteigerung und Arbeitseinsparung für die Entwickler. Zur Zeit muss jeder eingehende Fehlerbericht noch von Hand manuell überprüft werden, der Fehler bzw. die fehlererzeugende Methode gefunden und danach einem bekannten Fehler im Bug-Tracking-System zugeordnet oder darin als neu klassifiziert werden. Ebenso ist es möglich, dass vergleichbare Fehler nicht als ähnlich vom Menschen klassifiziert werden, da ihnen das Wissen um den anderen Fehler fehlt und ihre subjektive Suchabfrage im Bug-Tracking-System kein Ergebnis liefert. Die Arbeit stützt sich dabei auf die bekannten Theorien und Umsetzungen für Fehlerzuordnung und soll ferner den genauen Grad der Automatisierung feststellen, der für ein System geeignet ist, das sowohl auf händisch erstellten Fehlermeldungen, als auch auf automatisch generierten Fehlerberichten basiert. Die für die Zuordnung bekannter Fehler verschiedenen bekannten Techniken sollen auf ihre Nützlichkeit hin evaluiert werden. Das nützlichste Verfahren soll dann in die Implementierung des Gesamtsystems einfließen.
  • Thumbnail Image
    ItemOpen Access
    Kooperative Positionierung von Smartphones
    (2013) Leko, Sanda
    Kontextsensitive und ortsbezogene Anwendungen spielen in der heutigen mobilisierten Welt eine bedeutende Rolle. Während die Positionierung mobiler Geräte in Außenbereichen mit GPS hohe Genauigkeiten erreicht, existiert für Innenbereiche bisher kein einheitlicher Standard, mit dem ein Smartphone seine Position festlegen kann. Die aktuelle Forschung zeigt jedoch, dass dies mit modernen Smartphones und verschiedenen Infrastrukturen bewältigt werden kann. Eine Möglichkeit der Innenraumpositionierung bietet die Fingerprintig-Methode. Fingerprintig erfordert allerdings eine zeitaufwändige Sammlung von Daten in der Offline-Phase. Inertialnavigationsverfahren sind eine weitere Möglichkeit für die Positionierung in Innenbereichen. Der Nachteil dieses Ansatzes ist jedoch die Angabe einer Startposition sowie die Notwendigkeit einer Synchronisierung. In dieser Diplomarbeit wird ein kooperatives Innenraumpositionierungssystem mit Smartphones entworfen und implementiert. Die Positionierung eines Smartphones erfolgt mittels der Lateration. Dazu werden die Positonsangaben sowie die Distanz zu seinen Wi-Fi Direct Kommunikationspartnern benötigt. Die Signalstärke einer Wi-Fi Direct Verbindung kann als ein Indikator für die Distanz zwischen zwei verbundenen Geräten verstanden werden. Aus diesem Grund wird sie in dem hier entwickelten Positionierungssystem zusammen mit einem Propagierungsmodell genutzt, um die Distanz zwischen zwei Smartphones zu berechnen. Die Positionierung mittels der Lateration wird zudem durch verschiedene kooperative Algorithmen optimiert. Die Ergebnisse zeigen, dass durch diese Optimierungen eine genauere Distanzberechnung sowie eine robuste Positionierung in Gebäuden erreicht werden kann.
  • Thumbnail Image
    ItemOpen Access
    Skalierbare parallele Verfahren zur Boolean Constraint Propagation auf Multicore-Architekturen
    (2011) Stöcklin, Jan
    Beim SAT-Solving werden boolesche Formeln auf Erfüllbarkeit überprüft. Seit den frühen 1990ern gewann das SAT-Solving für Industrie und Forschung stetig an Bedeutung, da sich viele Probleme der Hard- und Softwareentwicklung auf das Erfüllbarkeitsproblem reduzieren lassen. Ein Großteil der Laufzeit eines SAT-Solvers (ca. 80%-90%) entfällt auf die Unit-Propagation. Unit-Propagation ist die iterative Anwendung von Implikationen, die aufgrund der Formel und der aktuellen Belegung gelten. Um Beschleunigungen des Solving-Prozesses zu erzielen, werden in dieser Arbeit verschiedene Parallelisierungsansätze der Unit-Propagation untersucht. Da moderne Prozessoren mit immer mehr Rechenkernen ausgestattet sind, werden Parallelisierungsansätze entwickelt, die auf Mehrkernarchitekturen basieren. In der vorliegenden Arbeit werden zunächst die von aktuellen SAT-Solvern verwendeten Algorithmen und Implementierungstechniken vorgestellt. Insbesondere wird der DPLL-Algorithmus und dessen Erweiterung um Klausellernen (CDCL-Solver) präsentiert. Danach wird mit dem Two-Watched-Literal Schema ein effizientes Verfahren zur Unit-Propagation beschrieben. Im nächsten Schritt wird untersucht, welche Teile der Unit-Propagation sich besonders für eine Parallelisierung eignen und welche Probleme dabei zu lösen sind. Darauf aufbauend wird ein sperrbasierter und ein sperrfreier Lösungsansatz sowie parametrisierbare Alternativen davon entwickelt. Die Algorithmen werden anschließend in Minisat - einem minimalistischen klausellernenden SAT-Solver - implementiert. Nach Auswahl eines geeigneten Formelsatzes werden die Algorithmen evaluiert. Dazu wird der Formelsatz für jeden Algorithmus mehrfach ausgeführt und Parallelisierungskennzahlen (Beschleunigung, parallele Effizienz) ermittelt. Abschließend werden die Ergebnisse beider Ansätze miteinander verglichen und bewertet.
  • Thumbnail Image
    ItemOpen Access
    Comparison of time series databases
    (2016) Bader, Andreas
    Storing and analyzing large amounts of data are growing in importance since the fourth industrial revolution. As more devices are becoming “smart” and are equipped with sensors in today’s world, the amount of data that can be stored and analyzed grows. Insights from this data are important for several industries, e. g., energy companies for controlling smart grids. Traditional Relational Database Management Systems (RDBMS) have reached their limits with such huge amounts of data, which resulted in a new database type, the NoSQL Database Management Systems (DBMS). NoSQL DBMS are specialized in handling huge amounts of data with the help of distribution and weaker consistency. Between these two a new type arose: Time Series Database (TSDB), which is specialized for storing and querying time series data. The amount of existing TSDBs is big, whereby for this thesis 75 TSDBs have been found. 42 of them are open source, the remaining TSDBs are commercial. Many of the found open source TSDBs are under ongoing development. The challenge is the selection of one TSDB for a given scenario or problem. Benchmarks that have the ability to compare several TSDBs for a specific scenario or in general are hardly existing. This currently makes a choice based on performance only possible if TSDBs are manually compared in a test environment or with a self-written benchmark. In this thesis, a feature comparison with 19 criteria in five groups between ten of these TSDB is presented and discussed. After presenting metrics, scenarios, and requirements for a benchmark, a benchmark for TSDB, TSDBBench, is presented. TSDBBench uses an Elastic Infrastructure (EI) and alterable workloads to measure the query latency and space consumption in different scenarios that include an alterable cluster setup. All benchmarking steps are automated, so that no user interaction is required after starting the benchmark. It also uses an adapted version of Yahoo Cloud Server Benchmark (YCSB) that is named Yahoo Cloud Server Benchmark for Time Series (YCSB-TS) for creating and measuring the queries of a workload, which is also presented in this thesis. For the performance part of the comparison, two scenarios are compared between the ten TSDBs with the use of TSDBBench. The results of the performance comparison are presented and discussed afterward. The thesis concludes with a discussion of the results from the feature and performance comparison.
  • Thumbnail Image
    ItemOpen Access
    Confidential subscription clustering in a publish/subscribe system
    (2012) Bischof, Manuel
    Broker-less content-based publish/subscribe systems offer the chance for flexible and loosely coupled many-to-many communication. Initially, no centralized component is needed. Routing is done by the peers themselves by looking at the content of the messages. This works fine, as long as no sensitive data is published. In this case, users may want to encrypt their data and even keep their subscriptions confidential. At first glance, this contradicts the content-based routing paradigm. The work of Tariq et al. presented the first system, that supports both by introducing a weaker notion of subscription confidentiality. Identity-based encryption is adapted to suite the requirements in such a system. This thesis will analyze the approach, point out some still existing problems and try to improve them. The current system uses one-hop flooding during event dissemination, which yields a high number of false positives. Simulations will show, that confidentiality can be kept nearly as high with much less false positives. Another issue is private key management as the number of keys to maintain is in order of O(sum (1, 2, log_2(T_i)) with d attributes in total and T_i = (UpperValueLimit_i - LowerValueLimit_i)/Granularity(i), where Granularity(i) determines the finest step value of attribute A_i. As the number of total attributes in a real system may be much greater then the attributes needed by an event, there are two problems: 1) how to specify the attributes that are not required by the event and 2) the cost of cryptographic operations is dependent on the total number of attributes. In the second part of the thesis we will provide another approach that decouples events and subscriptions from the total number of attributes. Timings, based on an implementation using the Pairing-Based Cryptography library (PBC) will be given.
  • Thumbnail Image
    ItemOpen Access
    Quantifizierung von Unsicherheiten auf adaptiven dünnen Gittern mit stückweise polynomiellen Basisfunktionen
    (2014) Lahnert, Michael
    Im Zusammenhang mit der Quantifizierung von Unsicherheiten entstehen, bspw. bei der Berechnung des Erwartungswerts, potentiell hochdimensionale Quadraturprobleme. Eine Möglichkeit, um den Fluch der Dimensionalität zumindest teilweise zu überwinden und gleichzeitig mit einer möglichst niedrigen Zahl von Auswertungen eine gute Approximation zu erhalten, stellen dünne Gitter dar. Bei nicht-intrusiven Verfahren zur Quantifizierung von Unsicherheiten wird das Verhalten eines Systems durch mehrere Simulationsauswertungen mit unterschiedlichen Parameterkombinationen aus dem definierten Wertebereich untersucht, wobei schon ein einzelner Simulationsaufruf einige Rechenzeit in Anspruch nehmen kann. Daher soll die für eine gute Approximation notwendige Zahl der zu berechnenden Parameterkombinationen weiter reduziert werden. Neben der Verwendung von dünnen Gittern wurden im Rahmen dieser Arbeit zusätzlich stückweise polynomielle Basisfunktionen angesetzt, um die Konvergenzordnung der Dünngitterapproximation zu erhöhen. Zusätzlich soll die Zahl der nötigen Auswertungen durch räumlich-adaptive Gitterverfeinerung minimiert werden.
  • Thumbnail Image
    ItemOpen Access
    Konzeption und Entwicklung eines Verfahrens zum Matching von Prozessmodellen
    (2011) Divari, Vasiliki
    Die Arbeitsabläufe in Unternehmen werden typischerweise mit sogenannten Prozessmodellen beschrieben. Dabei verfügt ein Unternehmen typischerweise über eine Vielzahl solcher Modelle. Es gibt eine Vielzahl von Situationen, in denen es wichtig sein kann, Ähnlichkeiten zwischen diesen Modellen zu ermitteln: So benötigen Prozess-Repositories die Fähigkeit, nach bestimmten Prozessfragmenten auf Basis bestimmter Eigenschaften zu suchen. Des weiteren muss es möglich sein, z.B. nach der Fusion von Unternehmen, die Ähnlichkeit von Prozessmodellen zu bestimmten und so Überschneidungen in den Modellen zu ermitteln. Auch ist die Messung von Ähnlichkeiten zwischen Modellbestandteilen eine wichtige Technik für die Anwendung von Prozessoptimierungen, da über sie z.B. redundante Aktivitäten ermittelt werden können. In dieser Arbeit werden verschiedene Ansätze vorgestellt, wie die Ähnlichkeit von Prozessmodellen gemessen werden kann. Gegenüber etablierten Verfahren werden dabei nicht nur die Eigenschaften des Modells selbst, sondern auch Eigenschaften aus dessen Ausführung in die Messung der Ähnlichkeit einbezogen. Die Metriken zur Messung der Ähnlichkeit werden konzeptionell definiert und im Rahmen eines Prototyps implementiert.