TY - CHAP A1 - Fan, Yang A1 - Masuhara, Hidehiko A1 - Aotani, Tomoyuki A1 - Nielson, Flemming A1 - Nielson, Hanne Riis T1 - AspectKE*: Security aspects with program analysis for distributed systems N2 - Enforcing security policies to distributed systems is difficult, in particular, when a system contains untrusted components. We designed AspectKE*, a distributed AOP language based on a tuple space, to tackle this issue. In AspectKE*, aspects can enforce access control policies that depend on future behavior of running processes. One of the key language features is the predicates and functions that extract results of static program analysis, which are useful for defining security aspects that have to know about future behavior of a program. AspectKE* also provides a novel variable binding mechanism for pointcuts, so that pointcuts can uniformly specify join points based on both static and dynamic information about the program. Our implementation strategy performs fundamental static analysis at load-time, so as to retain runtime overheads minimal. We implemented a compiler for AspectKE*, and demonstrate usefulness of AspectKE* through a security aspect for a distributed chat system. KW - aspect oriented programming KW - program analysis KW - security policies KW - distributed systems KW - tuple spaces Y1 - 2010 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-41369 ER - TY - BOOK A1 - Felgentreff, Tim A1 - Borning, Alan A1 - Hirschfeld, Robert T1 - Babelsberg : specifying and solving constraints on object behavior N2 - Constraints allow developers to specify desired properties of systems in a number of domains, and have those properties be maintained automatically. This results in compact, declarative code, avoiding scattered code to check and imperatively re-satisfy invariants. Despite these advantages, constraint programming is not yet widespread, with standard imperative programming still the norm. There is a long history of research on integrating constraint programming with the imperative paradigm. However, this integration typically does not unify the constructs for encapsulation and abstraction from both paradigms. This impedes re-use of modules, as client code written in one paradigm can only use modules written to support that paradigm. Modules require redundant definitions if they are to be used in both paradigms. We present a language – Babelsberg – that unifies the constructs for en- capsulation and abstraction by using only object-oriented method definitions for both declarative and imperative code. Our prototype – Babelsberg/R – is an extension to Ruby, and continues to support Ruby’s object-oriented se- mantics. It allows programmers to add constraints to existing Ruby programs in incremental steps by placing them on the results of normal object-oriented message sends. It is implemented by modifying a state-of-the-art Ruby virtual machine. The performance of standard object-oriented code without con- straints is only modestly impacted, with typically less than 10% overhead compared with the unmodified virtual machine. Furthermore, our architec- ture for adding multiple constraint solvers allows Babelsberg to deal with constraints in a variety of domains. We argue that our approach provides a useful step toward making con- straint solving a generic tool for object-oriented programmers. We also provide example applications, written in our Ruby-based implementation, which use constraints in a variety of application domains, including interactive graphics, circuit simulations, data streaming with both hard and soft constraints on performance, and configuration file Management. N2 - Constraints – Beschränkungen und Abhängigkeiten zwischen Systemteilen – erlauben es Entwicklern, erwünschte Eigenschaften von Systemen zu spezifizieren, sodass diese automatisch sichergestellt werden. Das führt zu kompaktem, deklarativem Quelltext, und vermeidet verstreute Anweisungen, die wiederholt Invarianten prüfen und wiederherstellen müssen. Trotz dieser Vorteile ist Programmieren mit Constraints nicht verbreitet, sondern imperatives Programmieren die Norm. Es gibt eine lange Forschungsgeschichte zur Integration von Constraints mit imperativem Programmieren. Jedoch vereinheitlicht diese Integration nicht die Programmierkonstrukte zur Abstraktion und Kapselung beider Paradigmen. Das verhindert die Wiederverwendung von Modulen, da Quelltext, der in einem Paradigma geschrieben wurde, nur Module verwenden kann, die so geschrieben sind, dass sie dieses Paradigma unterstützen. Module benötigen daher redundante Definitionen, wenn sie in beiden Paradigmen zur Verfügung stehen sollen. Wir präsentieren hier eine Sprache – Babelsberg – welche die Konstrukte zur Abstraktion und Kapselung vereinheitlicht, indem sie bekannte objektorientierte Methodendefinitionen sowohl für deklarativen, als auch für imperativen Code verwendet. Unser Prototyp –Babelsberg/R – ist eine Erweiterung von Ruby, und unterstützt Rubys objektorientierte Semantik. Dieser erlaubt es Programmieren, Constraints schrittweise zu existierenden Ruby Programmen hinzuzufügen, indem diese auf den Ergebnissen von Methodenaufrufen deklariert werden. Der Prototyp ist auf Basis einer virtuellen Maschine für Ruby implementiert, wobei die Ausführungsgeschwindigkeit von objektorienterten Programmteilen ohne Constraints nur minimal – typischerweise weniger als 10% – beeinträchtigt wird. Weiterhin erlaubt es unsere Architektur, je nach Anwendungsfall, mehrere Lösungsalgorithmen für Constraints zu verwenden. Wir argumentieren, dass unser Ansatz einen nützlichen Schritt darstellt, um Programmieren mit Constraints zu einem allgemeinen Werkzeug für objektorientierte Programmierer zu machen. Wir zeigen Beispielanwendungen, die unserer Ruby-basierten Implementierung geschrieben sind, welche Constraints in einer Reihe von Anwendungen verwenden: Für interaktive Grafik, Schaltkreissimulation, Datenströme mit sowohl harten, als auch weichen Constraints bezüglich ihrer Geschwindigkeit, und Konfigurationsverwaltung. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 81 KW - Constraints KW - Beschränkungen und Abhängigkeiten KW - Objekt-orientiertes Programmieren mit Constraints KW - Constraints KW - Object Constraint Programming Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-67296 SN - 978-3-86956-265-0 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Felgentreff, Tim A1 - Hirschfeld, Robert A1 - Millstein, Todd A1 - Borning, Alan T1 - Babelsberg/RML BT - executable semantics and language testing with RML N2 - New programming language designs are often evaluated on concrete implementations. However, in order to draw conclusions about the language design from the evaluation of concrete programming languages, these implementations need to be verified against the formalism of the design. To that end, we also have to ensure that the design actually meets its stated goals. A useful tool for the latter has been to create an executable semantics from a formalism that can execute a test suite of examples. However, this mechanism so far did not allow to verify an implementation against the design. Babelsberg is a new design for a family of object-constraint languages. Recently, we have developed a formal semantics to clarify some issues in the design of those languages. Supplementing this work, we report here on how this formalism is turned into an executable operational semantics using the RML system. Furthermore, we show how we extended the executable semantics to create a framework that can generate test suites for the concrete Babelsberg implementations that provide traceability from the design to the language. Finally, we discuss how these test suites helped us find and correct mistakes in the Babelsberg implementation for JavaScript. N2 - Neue Programmiersprachdesigns werden typischerweise anhand konkreter Implementierungen bewertet. Um jedoch Schlüsse aus den Erfahrungen mit einer konkreten Programmiersprache auf ein Sprachdesign ziehen zu können, muss die konkrete Sprache verifizierbar dem Design entsprechen. Zudem muss sichergestellt sein, dass das formale Design seine gesetzten Ziele auch erfüllt. Dabei haben sich ausführbare Semantiken als ein nützliches Werkzeug erwiesen, um letzteres sicherzustellen. Allerdings half dieses Werkzeug bisher nicht, auch die konkrete Implementierung gegen das Design zu verifizieren. Babelsberg ist ein neues Design für eine Familie von Objekt-Constraint Programmiersprachen, zu der wir eine formale Semantik entwickelt haben, die einige Details des Designs klarstellt. Ergänzend dazu berichten wir hier, wie dieser Formalismus in eine ausführbare Semantik mithilfe des RML Systems umgewandelt werden kann. Weiterhin zeigen wir, wie wir diese ausführbare Semantik um ein Rahmenwerk erweitert haben, mit dem sich programmatische Tests für die konkreten Babelsberg Implementierungen erzeugen lassen, welche Rückverfolgbarkeit von der Sprachimplementierung zum Sprachdesign sicherstellen. Schlussendlich diskutieren wir, wie diese Tests uns erlaubten, Fehler in der Babelsberg Implementierung für JavaScript zu finden und zu beheben. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 103 KW - object-constraint programming KW - executable semantics KW - language specification KW - Objekt-Constraint Programmierung KW - ausführbare Semantiken KW - Sprachspezifikation Y1 - 2015 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-83826 SN - 978-3-86956-348-0 SN - 1613-5652 SN - 2191-1665 IS - 103 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Geller, Felix A1 - Hirschfeld, Robert A1 - Bracha, Gilad T1 - Pattern Matching for an object-oriented and dynamically typed programming language N2 - Pattern matching is a well-established concept in the functional programming community. It provides the means for concisely identifying and destructuring values of interest. This enables a clean separation of data structures and respective functionality, as well as dispatching functionality based on more than a single value. Unfortunately, expressive pattern matching facilities are seldomly incorporated in present object-oriented programming languages. We present a seamless integration of pattern matching facilities in an object-oriented and dynamically typed programming language: Newspeak. We describe language extensions to improve the practicability and integrate our additions with the existing programming environment for Newspeak. This report is based on the first author’s master’s thesis. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 36 KW - Pattern Matching KW - Musterabgleich KW - Muster KW - Objekt-Orientiertes Programmieren KW - Dynamische Typ Systeme KW - Pattern Matching KW - Patterns KW - Object-Oriented Programming KW - Dynamic Type System Y1 - 2010 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-43035 SN - 978-3-86956-065-6 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - JOUR A1 - Ghahremani, Sona A1 - Giese, Holger T1 - Evaluation of self-healing systems BT - An analysis of the state-of-the-art and required improvements JF - Computers N2 - Evaluating the performance of self-adaptive systems is challenging due to their interactions with often highly dynamic environments. In the specific case of self-healing systems, the performance evaluations of self-healing approaches and their parameter tuning rely on the considered characteristics of failure occurrences and the resulting interactions with the self-healing actions. In this paper, we first study the state-of-the-art for evaluating the performances of self-healing systems by means of a systematic literature review. We provide a classification of different input types for such systems and analyse the limitations of each input type. A main finding is that the employed inputs are often not sophisticated regarding the considered characteristics for failure occurrences. To further study the impact of the identified limitations, we present experiments demonstrating that wrong assumptions regarding the characteristics of the failure occurrences can result in large performance prediction errors, disadvantageous design-time decisions concerning the selection of alternative self-healing approaches, and disadvantageous deployment-time decisions concerning parameter tuning. Furthermore, the experiments indicate that employing multiple alternative input characteristics can help with reducing the risk of premature disadvantageous design-time decisions. KW - self-healing KW - failure model KW - performance KW - simulation KW - evaluation Y1 - 2020 U6 - https://doi.org/10.3390/computers9010016 SN - 2073-431X VL - 9 IS - 1 PB - MDPI CY - Basel ER - TY - BOOK A1 - Giese, Holger A1 - Becker, Basil T1 - Modeling and verifying dynamic evolving service-oriented architectures N2 - The service-oriented architecture supports the dynamic assembly and runtime reconfiguration of complex open IT landscapes by means of runtime binding of service contracts, launching of new components and termination of outdated ones. Furthermore, the evolution of these IT landscapes is not restricted to exchanging components with other ones using the same service contracts, as new services contracts can be added as well. However, current approaches for modeling and verification of service-oriented architectures do not support these important capabilities to their full extend.In this report we present an extension of the current OMG proposal for service modeling with UML - SoaML - which overcomes these limitations. It permits modeling services and their service contracts at different levels of abstraction, provides a formal semantics for all modeling concepts, and enables verifying critical properties. Our compositional and incremental verification approach allows for complex properties including communication parameters and time and covers besides the dynamic binding of service contracts and the replacement of components also the evolution of the systems by means of new service contracts. The modeling as well as verification capabilities of the presented approach are demonstrated by means of a supply chain example and the verification results of a first prototype are shown. N2 - Service-Orientierte Architekturen erlauben die dynamische Zusammensetzung und Rekonfiguration komplexer, offener IT Landschaften durch Bindung von Service Contracts zur Laufzeit, starten neuer Komponenten und beenden von veralteten. Die Evolution dieser Systeme ist nicht auf den Austausch von Komponenten-Implementierungen bei Beibehaltung der Service-Contracts beschränkt, sondern das Hinzufügen neuer Service-Contracts wird ebenfalls unterstützt. Aktuelle Ansätze zur Modellierung und Verifikation Service-Orientierter Architekturen unterstützen diese wichtigen Eigenschaften, wenn überhaupt, nur unvollständig. In diesem Bericht stellen wir eine Erweiterung des aktuellen OMG Vorschlags zur Service Modellierung mit UML - SoaML - vor, die diese Einschränkungen aufhebt. Unser Ansatz erlaubt die Modellierung von Service Contracts auf verschiedenen Abstraktionsniveaus, besitzt eine fundierte formale Semantik für alle eingeführten Modellierungskonzepte und erlaubt die Verifikation kritischer Eigenschaften. Unser kompositionaler und inkrementeller Verifikationsansatz erlaubt die Verifikation komplexer Eigenschaften einschließlich Kommunikationsparameter und Zeit und deckt neben der dynamischen Bindung von Service Contracts sowie dem Austausch von Komponenten auch die Evolution des gesamten Systems durch das Hinzufügen neuer Service Contracts ab. Die Modellierungs- als auch die Verifikationsfähigkeiten unseres vorgestellten Ansatzes werden durch ein Anwendungsbeispiel aus dem Bereich des Lieferkettenmanagements veranschaulicht. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 75 KW - Service-Orientierte Architekturen KW - Verifikation KW - Contracts KW - Evolution KW - Unbegrenzter Zustandsraum KW - Invarianten KW - Modellierung KW - SoaML KW - Service-Oriented Architecture KW - Verification KW - Contracts KW - Evolution KW - Infinite State KW - Invariants KW - Modeling KW - SoaML KW - Runtime Binding Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-65112 SN - 978-3-86956-246-9 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan T1 - Efficient model synchronization of large-scale models N2 - Model-driven software development requires techniques to consistently propagate modifications between different related models to realize its full potential. For large-scale models, efficiency is essential in this respect. In this paper, we present an improved model synchronization algorithm based on triple graph grammars that is highly efficient and, therefore, can also synchronize large-scale models sufficiently fast. We can show, that the overall algorithm has optimal complexity if it is dominating the rule matching and further present extensive measurements that show the efficiency of the presented model transformation and synchronization technique. N2 - Die Model-getriebene Softwareentwicklung benötigt Techniken zur Übertragung von Änderungen zwischen verschiedenen zusammenhängenden Modellen, um vollständig nutzbar zu sein. Bei großen Modellen spielt hier die Effizienz eine entscheidende Rolle. In diesem Bericht stellen wir einen verbesserten Modellsynchronisationsalgorithmus vor, der auf Tripel-Graph-Grammatiken basiert. Dieser arbeitet sehr effizient und kann auch sehr große Modelle schnell synchronisieren. Wir können zeigen, dass der Gesamtalgortihmus eine optimale Komplexität aufweist, sofern er die Ausführung dominiert. Die Effizient des Algorithmus' wird durch einige Benchmarkergebnisse belegt. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 28 KW - Model Transformation KW - Model Synchronisation KW - Tripel-Graph-Grammatik KW - Modell-getriebene Softwareentwicklung KW - Model Transformation KW - Model Synchronization KW - Triple Graph Grammars KW - Model-Driven Engineering Y1 - 2009 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-29281 SN - 978-3-940793-84-3 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan A1 - Lambers, Leen T1 - Toward bridging the gap between formal semantics and implementation of triple graph grammars N2 - The correctness of model transformations is a crucial element for the model-driven engineering of high quality software. A prerequisite to verify model transformations at the level of the model transformation specification is that an unambiguous formal semantics exists and that the employed implementation of the model transformation language adheres to this semantics. However, for existing relational model transformation approaches it is usually not really clear under which constraints particular implementations are really conform to the formal semantics. In this paper, we will bridge this gap for the formal semantics of triple graph grammars (TGG) and an existing efficient implementation. Whereas the formal semantics assumes backtracking and ignores non-determinism, practical implementations do not support backtracking, require rule sets that ensure determinism, and include further optimizations. Therefore, we capture how the considered TGG implementation realizes the transformation by means of operational rules, define required criteria and show conformance to the formal semantics if these criteria are fulfilled. We further outline how static analysis can be employed to guarantee these criteria. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 37 Y1 - 2010 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-45219 SN - 978-3-86956-078-6 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Giese, Holger A1 - Hildebrandt, Stephan A1 - Neumann, Stefan A1 - Wätzoldt, Sebastian T1 - Industrial case study on the integration of SysML and AUTOSAR with triple graph grammars N2 - During the overall development of complex engineering systems different modeling notations are employed. For example, in the domain of automotive systems system engineering models are employed quite early to capture the requirements and basic structuring of the entire system, while software engineering models are used later on to describe the concrete software architecture. Each model helps in addressing the specific design issue with appropriate notations and at a suitable level of abstraction. However, when we step forward from system design to the software design, the engineers have to ensure that all decisions captured in the system design model are correctly transferred to the software engineering model. Even worse, when changes occur later on in either model, today the consistency has to be reestablished in a cumbersome manual step. In this report, we present in an extended version of [Holger Giese, Stefan Neumann, and Stephan Hildebrandt. Model Synchronization at Work: Keeping SysML and AUTOSAR Models Consistent. In Gregor Engels, Claus Lewerentz, Wilhelm Schäfer, Andy Schürr, and B. Westfechtel, editors, Graph Transformations and Model Driven Enginering - Essays Dedicated to Manfred Nagl on the Occasion of his 65th Birthday, volume 5765 of Lecture Notes in Computer Science, pages 555–579. Springer Berlin / Heidelberg, 2010.] how model synchronization and consistency rules can be applied to automate this task and ensure that the different models are kept consistent. We also introduce a general approach for model synchronization. Besides synchronization, the approach consists of tool adapters as well as consistency rules covering the overlap between the synchronized parts of a model and the rest. We present the model synchronization algorithm based on triple graph grammars in detail and further exemplify the general approach by means of a model synchronization solution between system engineering models in SysML and software engineering models in AUTOSAR which has been developed for an industrial partner. In the appendix as extension to [19] the meta-models and all TGG rules for the SysML to AUTOSAR model synchronization are documented. N2 - Bei der Entwicklung komplexer technischer Systeme werden verschiedene Modellierungssprachen verwendet. Zum Beispiel werden bei der Entwicklung von Systemen in der Automobilindustrie bereits früh im Entwicklungsprozess Systemmodelle verwendet, um die Anforderungen und die grobe Struktur des Gesamtsystems darzustellen. Später werden Softwaremodelle verwendet, um die konkrete Softwarearchitektur zu modellieren. Jedes Modell stellt spezifische Entwurfsaspekte mit Hilfe passender Notationen auf einem angemessenen Abstraktionsniveau dar. Wenn jedoch vom Systementwurf zum Softwareentwurf übergegangen wird, müssen die Entwicklungsingenieure sicherstellen, dass alle Entwurfsentscheidungen, die im Systemmodell enthalten sind, korrekt auf das Softwaremodell übertragen werden. Sobald danach auch noch Änderungen auftreten, muss die Konsistenz zwischen den Modellen in einem aufwändigen manuellen Schritt wiederhergestellt werden. In diesem Bericht zeigen wir, wie Modellsynchronisation und Konsistenzregeln zur Automatisierung dieses Arbeitsschrittes verwendet und die Konsistenz zwischen den Modellen sichergestellt werden können. Außerdem stellen wir einen allgemeinen Ansatz zur Modellsynchronisation vor. Neben der reinen Synchronisation umfasst unsere Lösung weiterhin Tool-Adapter, sowie Konsistenzregeln, die sowohl die Teile der Modelle abdecken, die synchronisiert werden können, als auch die restlichen Teile. Der Modellsynchronisationsalgorithmus basiert auf Tripel-Graph-Grammatiken und wird im Detail erläutert. An Hand einer konkreten Transformation zwischen SysML- und AUTOSAR-Modellen, die im Rahmen eines Industrieprojektes entwickelt wurde, wird der Ansatz demonstriert. Im Anhang des Berichts sind alle TGG-Regeln für die SysML-zu-AUTOSAR-Transformation dokumentiert. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 57 KW - Model Transformation KW - Model Synchronisation KW - SysML KW - AUTOSAR KW - Tripel-Graph-Grammatik KW - Model Transformation KW - Model Synchronization KW - SysML KW - AUTOSAR KW - Triple Graph Grammar Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-60184 SN - 978-3-86956-191-2 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - THES A1 - Glander, Tassilo T1 - Multi-scale representations of virtual 3D city models T1 - Maßstabsabhängige Repräsentationen virtueller 3D-Stadtmodelle N2 - Virtual 3D city and landscape models are the main subject investigated in this thesis. They digitally represent urban space and have many applications in different domains, e.g., simulation, cadastral management, and city planning. Visualization is an elementary component of these applications. Photo-realistic visualization with an increasingly high degree of detail leads to fundamental problems for comprehensible visualization. A large number of highly detailed and textured objects within a virtual 3D city model may create visual noise and overload the users with information. Objects are subject to perspective foreshortening and may be occluded or not displayed in a meaningful way, as they are too small. In this thesis we present abstraction techniques that automatically process virtual 3D city and landscape models to derive abstracted representations. These have a reduced degree of detail, while essential characteristics are preserved. After introducing definitions for model, scale, and multi-scale representations, we discuss the fundamentals of map generalization as well as techniques for 3D generalization. The first presented technique is a cell-based generalization of virtual 3D city models. It creates abstract representations that have a highly reduced level of detail while maintaining essential structures, e.g., the infrastructure network, landmark buildings, and free spaces. The technique automatically partitions the input virtual 3D city model into cells based on the infrastructure network. The single building models contained in each cell are aggregated to abstracted cell blocks. Using weighted infrastructure elements, cell blocks can be computed on different hierarchical levels, storing the hierarchy relation between the cell blocks. Furthermore, we identify initial landmark buildings within a cell by comparing the properties of individual buildings with the aggregated properties of the cell. For each block, the identified landmark building models are subtracted using Boolean operations and integrated in a photo-realistic way. Finally, for the interactive 3D visualization we discuss the creation of the virtual 3D geometry and their appearance styling through colors, labeling, and transparency. We demonstrate the technique with example data sets. Additionally, we discuss applications of generalization lenses and transitions between abstract representations. The second technique is a real-time-rendering technique for geometric enhancement of landmark objects within a virtual 3D city model. Depending on the virtual camera distance, landmark objects are scaled to ensure their visibility within a specific distance interval while deforming their environment. First, in a preprocessing step a landmark hierarchy is computed, this is then used to derive distance intervals for the interactive rendering. At runtime, using the virtual camera distance, a scaling factor is computed and applied to each landmark. The scaling factor is interpolated smoothly at the interval boundaries using cubic Bézier splines. Non-landmark geometry that is near landmark objects is deformed with respect to a limited number of landmarks. We demonstrate the technique by applying it to a highly detailed virtual 3D city model and a generalized 3D city model. In addition we discuss an adaptation of the technique for non-linear projections and mobile devices. The third technique is a real-time rendering technique to create abstract 3D isocontour visualization of virtual 3D terrain models. The virtual 3D terrain model is visualized as a layered or stepped relief. The technique works without preprocessing and, as it is implemented using programmable graphics hardware, can be integrated with minimal changes into common terrain rendering techniques. Consequently, the computation is done in the rendering pipeline for each vertex, primitive, i.e., triangle, and fragment. For each vertex, the height is quantized to the nearest isovalue. For each triangle, the vertex configuration with respect to their isovalues is determined first. Using the configuration, the triangle is then subdivided. The subdivision forms a partial step geometry aligned with the triangle. For each fragment, the surface appearance is determined, e.g., depending on the surface texture, shading, and height-color-mapping. Flexible usage of the technique is demonstrated with applications from focus+context visualization, out-of-core terrain rendering, and information visualization. This thesis presents components for the creation of abstract representations of virtual 3D city and landscape models. Re-using visual language from cartography, the techniques enable users to build on their experience with maps when interpreting these representations. Simultaneously, characteristics of 3D geovirtual environments are taken into account by addressing and discussing, e.g., continuous scale, interaction, and perspective. N2 - Gegenstand der Arbeit sind virtuelle 3D-Stadt- und Landschaftsmodelle, die den städtischen Raum in digitalen Repräsentationen abbilden. Sie werden in vielfältigen Anwendungen und zu unterschiedlichen Zwecken eingesetzt. Dabei ist die Visualisierung ein elementarer Bestandteil dieser Anwendungen. Durch realitätsnahe Darstellung und hohen Detailgrad entstehen jedoch zunehmend fundamentale Probleme für eine verständliche Visualisierung. So führt beispielsweise die hohe Anzahl von detailliert ausmodellierten und texturierten Objekten eines virtuellen 3D-Stadtmodells zu Informationsüberflutung beim Betrachter. In dieser Arbeit werden Abstraktionsverfahren vorgestellt, die diese Probleme behandeln. Ziel der Verfahren ist die automatische Transformation virtueller 3D-Stadt- und Landschaftsmodelle in abstrakte Repräsentationen, die bei reduziertem Detailgrad wichtige Charakteristika erhalten. Nach der Einführung von Grundbegriffen zu Modell, Maßstab und Mehrfachrepräsentationen werden theoretische Grundlagen zur Generalisierung von Karten sowie Verfahren zur 3D-Generalisierung betrachtet. Das erste vorgestellte Verfahren beschreibt die zellbasierte Generalisierung von virtuellen 3DStadtmodellen. Es erzeugt abstrakte Repräsentationen, die drastisch im Detailgrad reduziert sind, erhält dabei jedoch die wichtigsten Strukturen, z.B. das Infrastrukturnetz, Landmarkengebäude und Freiflächen. Dazu wird in einem vollautomatischen Verfahren das Eingabestadtmodell mithilfe des Infrastrukturnetzes in Zellen zerlegt. Pro Zelle wird abstrakte Gebäudegeometrie erzeugt, indem die enthaltenen Einzelgebäude mit ihren Eigenschaften aggregiert werden. Durch Berücksichtigung gewichteter Elemente des Infrastrukturnetzes können Zellblöcke auf verschiedenen Hierarchieebenen berechnet werden. Weiterhin werden Landmarken gesondert berücksichtigt: Anhand statistischer Abweichungen der Eigenschaften der Einzelgebäudes von den aggregierten Eigenschaften der Zelle werden Gebäude gegebenenfalls als initiale Landmarken identifiziert. Schließlich werden die Landmarkengebäude aus den generalisierten Blöcken mit Booleschen Operationen ausgeschnitten und realitätsnah dargestellt. Die Ergebnisse des Verfahrens lassen sich in interaktiver 3D-Darstellung einsetzen. Das Verfahren wird beispielhaft an verschiedenen Datensätzen demonstriert und bezüglich der Erweiterbarkeit diskutiert. Das zweite vorgestellte Verfahren ist ein Echtzeit-Rendering-Verfahren für geometrische Hervorhebung von Landmarken innerhalb eines virtuellen 3D-Stadtmodells: Landmarkenmodelle werden abhängig von der virtuellen Kameradistanz vergrößert, so dass sie innerhalb eines spezifischen Entfernungsintervalls sichtbar bleiben; dabei wird ihre Umgebung deformiert. In einem Vorverarbeitungsschritt wird eine Landmarkenhierarchie bestimmt, aus der die Entfernungsintervalle für die interaktive Darstellung abgeleitet werden. Zur Laufzeit wird anhand der virtuellen Kameraentfernung je Landmarke ein dynamischer Skalierungsfaktor bestimmt, der das Landmarkenmodell auf eine sichtbare Größe skaliert. Dabei wird der Skalierungsfaktor an den Intervallgrenzen durch kubisch interpoliert. Für Nicht-Landmarkengeometrie in der Umgebung wird die Deformation bezüglich einer begrenzten Menge von Landmarken berechnet. Die Eignung des Verfahrens wird beispielhaft anhand verschiedener Datensätze demonstriert und bezüglich der Erweiterbarkeit diskutiert. Das dritte vorgestellte Verfahren ist ein Echtzeit-Rendering-Verfahren, das eine abstrakte 3D-Isokonturen-Darstellung von virtuellen 3D-Geländemodellen erzeugt. Für das Geländemodell wird eine Stufenreliefdarstellung für eine Menge von nutzergewählten Höhenwerten erzeugt. Das Verfahren arbeitet ohne Vorverarbeitung auf Basis programmierbarer Grafikkarten-Hardware. Entsprechend erfolgt die Verarbeitung in der Prozesskette pro Geometrieknoten, pro Dreieck, und pro Bildfragment. Pro Geometrieknoten wird zunächst die Höhe auf den nächstliegenden Isowert quantisiert. Pro Dreieck wird dann die Konfiguration bezüglich der Isowerte der drei Geometrieknoten bestimmt. Anhand der Konfiguration wird eine geometrische Unterteilung vorgenommen, so dass ein Stufenausschnitt entsteht, der dem aktuellen Dreieck entspricht. Pro Bildfragment wird schließlich die finale Erscheinung definiert, z.B. anhand von Oberflächentextur, durch Schattierung und Höheneinfärbung. Die vielfältigen Einsatzmöglichkeiten werden mit verschiedenen Anwendungen demonstriert. Die Arbeit stellt Bausteine für die Erzeugung abstrakter Darstellungen von virtuellen 3D-Stadt und Landschaftsmodellen vor. Durch die Orientierung an kartographischer Bildsprache können die Nutzer auf bestehende Erfahrungen bei der Interpretation zurückgreifen. Dabei werden die charakteristischen Eigenschaften 3D geovirtueller Umgebungen berücksichtigt, indem z.B. kontinuierlicher Maßstab, Interaktion und Perspektive behandelt und diskutiert werden. KW - Generalisierung KW - virtuelle 3D-Stadtmodelle KW - Gebäudemodelle KW - Landmarken KW - Geländemodelle KW - generalization KW - virtual 3D city models KW - building models KW - landmarks KW - terrain models Y1 - 2012 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-64117 ER - TY - INPR A1 - Grapentin, Andreas A1 - Heidler, Kirstin A1 - Korsch, Dimitri A1 - Kumar Sah, Rakesh A1 - Kunzmann, Nicco A1 - Henning, Johannes A1 - Mattis, Toni A1 - Rein, Patrick A1 - Seckler, Eric A1 - Groneberg, Björn A1 - Zimmermann, Florian ED - Hentschel, Uwe ED - Richter, Daniel ED - Polze, Andreas T1 - Embedded operating system projects N2 - In today’s life, embedded systems are ubiquitous. But they differ from traditional desktop systems in many aspects – these include predictable timing behavior (real-time), the management of scarce resources (memory, network), reliable communication protocols, energy management, special purpose user-interfaces (headless operation), system configuration, programming languages (to support software/hardware co-design), and modeling techniques. Within this technical report, authors present results from the lecture “Operating Systems for Embedded Computing” that has been offered by the “Operating Systems and Middleware” group at HPI in Winter term 2013/14. Focus of the lecture and accompanying projects was on principles of real-time computing. Students had the chance to gather practical experience with a number of different OSes and applications and present experiences with near-hardware programming. Projects address the entire spectrum, from bare-metal programming to harnessing a real-time OS to exercising the full software/hardware co-design cycle. Three outstanding projects are at the heart of this technical report. Project 1 focuses on the development of a bare-metal operating system for LEGO Mindstorms EV3. While still a toy, it comes with a powerful ARM processor, 64 MB of main memory, standard interfaces, such as Bluetooth and network protocol stacks. EV3 runs a version of 1 1 Introduction Linux. Sources are available from Lego’s web site. However, many devices and their driver software are proprietary and not well documented. Developing a new, bare-metal OS for the EV3 requires an understanding of the EV3 boot process. Since no standard input/output devices are available, initial debugging steps are tedious. After managing these initial steps, the project was able to adapt device drivers for a few Lego devices to an extent that a demonstrator (the Segway application) could be successfully run on the new OS. Project 2 looks at the EV3 from a different angle. The EV3 is running a pretty decent version of Linux- in principle, the RT_PREEMPT patch can turn any Linux system into a real-time OS by modifying the behavior of a number of synchronization constructs at the heart of the OS. Priority inversion is a problem that is solved by protocols such as priority inheritance or priority ceiling. Real-time OSes implement at least one of the protocols. The central idea of the project was the comparison of non-real-time and real-time variants of Linux on the EV3 hardware. A task set that showed effects of priority inversion on standard EV3 Linux would operate flawlessly on the Linux version with the RT_PREEMPT-patch applied. If only patching Lego’s version of Linux was that easy... Project 3 takes the notion of real-time computing more seriously. The application scenario was centered around our Carrera Digital 132 racetrack. Obtaining position information from the track, controlling individual cars, detecting and modifying the Carrera Digital protocol required design and implementation of custom controller hardware. What to implement in hardware, firmware, and what to implement in application software – this was the central question addressed by the project. N2 - Heutzutage sind eingebettete Systeme allgegenwärtig. Allerdings unterscheiden sie sich in vielen Aspekten von traditionellen Desktop-System – dazu gehören vorhersagbares Zeitverhalten („Echtzeit“), die Verwaltung von knappen Ressourcen (Speicher, Netzwerk), zuverlässige Kommunikationsprotokolle, Energiemanagement, spezialisierte Benutzungsschnittstellen („headless“), Systemkonfiguration, Programmiersprachen (zur Unterstützung von Software-Hardware-Co-Design) und Modellierungstechniken. In diesem technischen Bericht präsentieren die Autoren Ergebnisse aus der Vorlesung „Betriebssysteme für Embedded Computing“, die von der Fachgruppe „Betriebssysteme und Middleware“ am HPI in Wintersemester 2013/14 angeboten wurde. Schwerpunkte der Vorlesung und der begleitenden Projekte waren Prinzipien von Echtzeit-Computing. Die Studenten hatten die Möglichkeit, praktische Erfahrungen mit einer Reihe von verschiedenen Betriebssystemen und Anwendungen zu sammeln und präsentieren ihre Erfahrungen mit hardwarenaher Programmierung. Die Projekte adressieren das gesamte Spektrum von der Bare-Metal-Programmierung über die Nutzung eines Echtzeitbetriebssystem bis zur Anwendung des vollen Software-Hardware-Co-Design-Zyklus‘. Drei herausragende Projekte sind das Herzstück dieses technischen Berichts. Projekt 1 konzentriert sich auf die Entwicklung eines Bare-Metal-Betriebssystems für LEGO Mindstorms EV3. Obwohl es ein Spielzeug ist, kommt es mit einem leistungsstarken ARM-Prozessor, 64 MB Hauptspeicher und Standardschnittstellen wie Bluetooth und einem Netzwerkprotokollstapel. Auf dem EV3 läuft spezielle Linux-Version – die Quellen sind auf der Lego-Website verfügbar. Allerdings sind viele Geräte und deren Treiber-Software urheberrechtlich geschützt und nicht gut dokumentiert. Die Entwicklung eines neuen Bare-Metal-Betriebssystem für den EV3 erfordert ein Verständnis des EV3-Bootvorgangs. Da keine Standard-Ein-/Ausgabegeräte zur Verfügung stehen, sind anfängliche Debug-Schritte mühsam. Nach dem Absolvieren dieser ersten Schritte war das Projekt in der Lage, Gerätetreiber für einige Lego-Geräte anzupassen um einen Demonstrator (die Segway-Anwendung) erfolgreich auf dem neuen Betriebssystem laufen zu lassen. Projekt 2 befasst sich mit dem EV3 aus einer anderen Perspektive. Der EV3 wird mit einer üblichen EV3 Linux-Version betrieben – im Prinzip kann der RT_PREEMPT-Patch jedes Linux-System in ein Echtzeitbetriebssystem verwandeln, indem er das Verhalten einer Anzahl von Synchronisationskonstrukten im Herzen des Betriebssystems anpasst. Priority Inversion ist ein Problem, das durch Protokolle wie Prioritätsvererbung oder Priority Ceiling gelöst wird. Heutige Echtzeit-Betriebssysteme implementieren mindestens eines dieser Protokolle. Die zentrale Idee des Projekts war der Vergleich der Nicht-Echtzeit und Echtzeit-Varianten von Linux auf der EV3-Hardware. Ein Task-Set, das die Auswirkungen der Prioritätsumkehr auf Standard-EV3 Linux zeigt, würde ohne Probleme auf der Linux-Version mit dem RT_PREEMPT-Patch betrieben werden können. Wenn nur das Patchen Lego-Version von Linux war so einfach wäre... Projekt 3 nimmt den Begriff des Echtzeit-Computing ernst. Das Anwendungsszenario wurde um unsere Carrera Digital 132 Bahn angeordnet. Das Sammeln von Positionsinformationen, die Steuerung einzelner Fahrzeuge, die Erfassung und Änderung des Carrera Digital-Protokolls erfordert die Konzeption und Umsetzung von spezialisierter Controller-Hardware. Die zentrale Fragestellung dieses Projekts war, was in Hardware, in Firmware oder in der Anwendungssoftware zu implementieren ist. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 90 KW - Echtzeit KW - eingebettete Systeme KW - Betriebssysteme KW - Erfahrungsbericht KW - LEGO Mindstorms EV3 KW - RT_PREEMT-Patch KW - Carrera Digital D132 KW - real-time KW - embedded systems KW - operating systems KW - experience report KW - LEGO Mindstorms EV3 KW - RT_PREEMT patch KW - Carrera Digital D132 Y1 - 2014 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-69154 SN - 978-3-86956-296-4 SN - 1613-5652 SN - 2191-1665 IS - 90 PB - Universitätsverlag Potsdam CY - Potsdam ER - TY - BOOK A1 - Gröne, Bernhard A1 - Knöpfel, Andreas A1 - Kugel, Rudolf A1 - Schmidt, Oliver T1 - The Apache Modeling Project N2 - This document presents an introduction to the Apache HTTP Server, covering both an overview and implementation details. It presents results of the Apache Modelling Project done by research assistants and students of the Hasso–Plattner–Institute in 2001, 2002 and 2003. The Apache HTTP Server was used to introduce students to the application of the modeling technique FMC, a method that supports transporting knowledge about complex systems in the domain of information processing (software and hardware as well). After an introduction to HTTP servers in general, we will focus on protocols and web technology. Then we will discuss Apache, its operational environment and its extension capabilities— the module API. Finally we will guide the reader through parts of the Apache source code and explain the most important pieces. T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 05 Y1 - 2004 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-33147 SN - 978-3-937786-14-8 ER - TY - CHAP A1 - Grüner, Andreas A1 - Mühle, Alexander A1 - Gayvoronskaya, Tatiana A1 - Meinel, Christoph T1 - A quantifiable trustmModel for Blockchain-based identity management T2 - IEEE 2018 International Congress on Cybermatics / 2018 IEEE Conferences on Internet of Things, Green Computing and Communications, cyber, physical and Social Computing, Smart Data, Blockchain, Computer and Information Technology KW - Blockchain KW - distributed ledger technology KW - digital identity KW - self-sovereign identity KW - trust KW - identity management Y1 - 2019 SN - 978-1-5386-7975-3 U6 - https://doi.org/10.1109/Cybermatics_2018.2018.00250 SP - 1475 EP - 1482 PB - IEEE CY - New York ER - TY - JOUR A1 - Grüner, Andreas A1 - Mühle, Alexander A1 - Meinel, Christoph T1 - ATIB BT - Design and evaluation of an architecture for brokered self-sovereign identity integration and trust-enhancing attribute aggregation for service provider JF - IEEE access : practical research, open solutions / Institute of Electrical and Electronics Engineers N2 - Identity management is a principle component of securing online services. In the advancement of traditional identity management patterns, the identity provider remained a Trusted Third Party (TTP). The service provider and the user need to trust a particular identity provider for correct attributes amongst other demands. This paradigm changed with the invention of blockchain-based Self-Sovereign Identity (SSI) solutions that primarily focus on the users. SSI reduces the functional scope of the identity provider to an attribute provider while enabling attribute aggregation. Besides that, the development of new protocols, disregarding established protocols and a significantly fragmented landscape of SSI solutions pose considerable challenges for an adoption by service providers. We propose an Attribute Trust-enhancing Identity Broker (ATIB) to leverage the potential of SSI for trust-enhancing attribute aggregation. Furthermore, ATIB abstracts from a dedicated SSI solution and offers standard protocols. Therefore, it facilitates the adoption by service providers. Despite the brokered integration approach, we show that ATIB provides a high security posture. Additionally, ATIB does not compromise the ten foundational SSI principles for the users. KW - Blockchains KW - Protocols KW - Authentication KW - Licenses KW - Security KW - Privacy KW - Identity management systems KW - Attribute aggregation KW - attribute assurance KW - digital identity KW - identity broker KW - self-sovereign identity KW - trust model Y1 - 2021 U6 - https://doi.org/10.1109/ACCESS.2021.3116095 SN - 2169-3536 VL - 9 SP - 138553 EP - 138570 PB - Institute of Electrical and Electronics Engineers CY - New York, NY ER - TY - THES A1 - Gumienny, Raja Carola T1 - Understanding the adoption of digital whiteboard systems for collaborative design work T1 - Untersuchungen zur Einführung von digitalen Whiteboard-Systemen für kollaboratives kreatives Arbeiten N2 - User-centered design processes are the first choice when new interactive systems or services are developed to address real customer needs and provide a good user experience. Common tools for collecting user research data, conducting brainstormings, or sketching ideas are whiteboards and sticky notes. They are ubiquitously available, and no technical or domain knowledge is necessary to use them. However, traditional pen and paper tools fall short when saving the content and sharing it with others unable to be in the same location. They are also missing further digital advantages such as searching or sorting content. Although research on digital whiteboard and sticky note applications has been conducted for over 20 years, these tools are not widely adopted in company contexts. While many research prototypes exist, they have not been used for an extended period of time in a real-world context. The goal of this thesis is to investigate what the enablers and obstacles for the adoption of digital whiteboard systems are. As an instrument for different studies, we developed the Tele-Board software system for collaborative creative work. Based on interviews, observations, and findings from former research, we tried to transfer the analog way of working to the digital world. Being a software system, Tele-Board can be used with a variety of hardware and does not depend on special devices. This feature became one of the main factors for adoption on a larger scale. In this thesis, I will present three studies on the use of Tele-Board with different user groups and foci. I will use a combination of research methods (laboratory case studies and data from field research) with the overall goal of finding out when a digital whiteboard system is used and in which cases not. Not surprisingly, the system is used and accepted if a user sees a main benefit that neither analog tools nor other applications can offer. However, I found that these perceived benefits are very different for each user and usage context. If a tool provides possibilities to use in different ways and with different equipment, the chances of its adoption by a larger group increase. Tele-Board has now been in use for over 1.5 years in a global IT company in at least five countries with a constantly growing user base. Its use, advantages, and disadvantages will be described based on 42 interviews and usage statistics from server logs. Through these insights and findings from laboratory case studies, I will present a detailed analysis of digital whiteboard use in different contexts with design implications for future systems. N2 - Nutzerorientierte Gestaltungsprozesse werden angewandt, um zu gewährleisten, dass neue Software für Computer und Smartphones gebrauchstauglich ist und die tatsächlichen Bedürfnisse der Anwender adressiert. Dazu sollen potentielle Anwender befragt und beobachtet und darauf basierend Ideen und Entwürfe für die neue Software entwickelt werden. Um die Nutzerdaten und Ideen zu sammeln, sowie daraus Konzepte zu erarbeiten, werden häufig Whiteboards und Haftnotizen (Post-its) benutzt. Sie haben den Vorteil, dass sie weit verbreitet sind und keine speziellen Kenntnisse erfordern. Analoge Whiteboards sowie Stift und Papier haben allerdings auch den Nachteil, dass die Informationen nicht digital gespeichert und mit Personen an anderen Standorten geteilt werden können. Auch andere digitale Vorteile, wie z. B. Inhalte suchen und sortieren, sind nicht verfügbar. Obwohl es seit 20 Jahren Forschung zu digitalen Whiteboard-Anwendungen gibt, werden diese Systeme im Firmenumfeld kaum genutzt. Diverse Forschungsprototypen sind bisher weder im Langzeiteinsatz noch in Unternehmen ausreichend getestet worden. Ziel dieser Dissertation ist zu erforschen, welche Faktoren den Einsatz von digitalen Whiteboard-Systemen begünstigen und welche Faktoren eher hinderlich sind. Zu diesem Zweck haben wir das Tele-Board Software System für gemeinsames kreatives Arbeiten entwickelt. Basierend auf Interviews und Beobachtungen, sowie Erkenntnissen aus vorheriger Forschung, haben wir versucht, die analoge Arbeitsweise mit herkömmlichen Arbeitsmitteln in die digitale Welt zu übertragen. Tele-Board kann mit unterschiedlicher Hardware benutzt werden und ist nicht an spezielle Geräte gebunden. Diese Tatsache hat sich als Vorteil für den Einsatz der Software in größerem Umfang erwiesen. In dieser Arbeit präsentiere ich drei Studien zur Nutzung von Tele-Board von verschiedenen Anwendern in unterschiedlichen Umgebungen. Die Studien wurden sowohl unter kontrollierten Bedingungen, als auch im realen Arbeitsumfeld durchgeführt. Wie zu erwarten war, wird das System besonders dann angenommen, wenn die Anwender Vorteile sehen, die sie mit analogen Arbeitsmitteln und anderer Software nicht haben. Allerdings unterscheiden sich die empfundenen Vorteile je nach Anwender und Nutzungskontext. Daher steigen die Chancen auf eine Verbreitung der Software, wenn sie verschiedene Anwendungsfälle und unterschiedliches Equipment unterstützt. Tele-Board ist mittlerweile seit 1,5 Jahren in einer global agierenden IT-Firma in mindestens fünf Ländern mit konstant steigenden Nutzerzahlen im Einsatz. Auf der Basis von 42 Interviews und Nutzungsstatistiken vom Server wird beschrieben, auf welche Art und Weise das System angewandt wird und welche Vor- und Nachteile es hat. Aus diesen Erkenntnissen sowie anderen Studien, präsentiere ich eine detaillierte Analyse der Nutzung von digitalen Whiteboards und gebe Empfehlungen für die Entwicklung zukünftiger Systeme. KW - Verteiltes Arbeiten KW - CSCW KW - Digitale Whiteboards KW - Design Thinking KW - remote collaboration KW - cscw KW - digital whiteboard KW - design thinking Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-72417 ER - TY - THES A1 - Gustafson, Sean T1 - Imaginary Interfaces T1 - Imaginäre Benutzerschnittstellen N2 - The size of a mobile device is primarily determined by the size of the touchscreen. As such, researchers have found that the way to achieve ultimate mobility is to abandon the screen altogether. These wearable devices are operated using hand gestures, voice commands or a small number of physical buttons. By abandoning the screen these devices also abandon the currently dominant spatial interaction style (such as tapping on buttons), because, seemingly, there is nothing to tap on. Unfortunately this design prevents users from transferring their learned interaction knowledge gained from traditional touchscreen-based devices. In this dissertation, I present Imaginary Interfaces, which return spatial interaction to screenless mobile devices. With these interfaces, users point and draw in the empty space in front of them or on the palm of their hands. While they cannot see the results of their interaction, they obtain some visual and tactile feedback by watching and feeling their hands interact. After introducing the concept of Imaginary Interfaces, I present two hardware prototypes that showcase two different forms of interaction with an imaginary interface, each with its own advantages: mid-air imaginary interfaces can be large and expressive, while palm-based imaginary interfaces offer an abundance of tactile features that encourage learning. Given that imaginary interfaces offer no visual output, one of the key challenges is to enable users to discover the interface's layout. This dissertation offers three main solutions: offline learning with coordinates, browsing with audio feedback and learning by transfer. The latter I demonstrate with the Imaginary Phone, a palm-based imaginary interface that mimics the layout of a physical mobile phone that users are already familiar with. Although these designs enable interaction with Imaginary Interfaces, they tell us little about why this interaction is possible. In the final part of this dissertation, I present an exploration into which human perceptual abilities are used when interacting with a palm-based imaginary interface and how much each accounts for performance with the interface. These findings deepen our understanding of Imaginary Interfaces and suggest that palm-based Imaginary Interfaces can enable stand-alone eyes-free use for many applications, including interfaces for visually impaired users. N2 - Die Größe mobiler Geräte ist vornehmlich bestimmt durch die Größe des Berührungsbildschirms. Forscher haben daher erkannt, dass der Weg zur äußersten Mobilität in der kompletten Aufgabe des Bildschirms liegt. Solche tragbaren Geräte werden durch Handgesten, Sprachbefehle oder eine kleine Anzahl physikalischer Tasten gesteuert. Mit der Aufgabe des Bildschirms geben diese Geräte allerdings auch den momentan weitverbreiteten Stil räumlicher Interaktion auf (zum Beispiel das Betätigen von Tasten), da scheinbar nichts existiert, das man betätigen kann. Leider verhindert diese Entwicklung, dass Benutzer Interaktionswissen, welches sie sich auf herkömmlichen berührungsempflindlichen Geräten angeeignet haben, anwenden können. In dieser Doktorarbeit stelle ich Imaginary Interfaces vor, imaginäre Benutzerschnittstellen, die räumliche Interaktionen auf bildschirmlosen mobilen Geräten ermöglichen. Diese Schnittstellen erlauben Benutzern, im leeren Raum vor ihnen oder auf ihren Handfläche zu zeigen und zu zeichnen. Zwar können Benutzer die Ergebnisse ihrer Interaktion nicht sehen, sie erhalten jedoch visuelle und taktile Rückmeldung dadurch, dass sie ihre Hände während der Interaktion beobachten und fühlen. Nach der Einführung des Imaginary Interfaces Konzepts stelle ich zwei Hardware-Prototypen vor, die zwei verschiedene Arten von Interaktionen mit Imaginary Interfaces demonstrieren, jeweils mit ihren eigenen Vorteilen: Imaginary Interfaces in der Luft können groß und ausdrucksstark sein, während Imaginary Interfaces basierend auf Handflächen eine Fülle von taktilen Merkmalen aufweisen, die das Erlernen unterstützen. Die fehlende visuelle Ausgabe führt zu einer der Hauptherausforderungen von Imaginary Interfaces, nämlich Benutzern zu ermöglichen, die Anordnung der Benutzerschnittstellen herauszufinden. Diese Doktorarbeit stellt drei Lösungen vor: vorheriges Lernen mit Koordinaten, Durchsuchen mit Tonrückmeldung und Lernen durch Transfer. Letztere demonstriere ich mit Imaginary Phone, einem Imaginary Interface basierend auf Handflächen, das die den Benutzern schon vertraute Anordnung eines physikalischen Mobiltelefons imitiert. Obwohl diese Lösungen die Interaktion mit Imaginary Interfaces ermöglichen, können sie keine Aussage darüber treffen, warum eine solche Interaktion möglich ist. Im letzten Teil dieser Doktorarbeit untersuche ich, welche menschlichen Wahrnehmungsfähigkeiten während der Interaktion mit Imaginary Interface basierend auf Handflächen genutzt werden und zu welchem Ausmaß jede dieser Wahrnehmungsfähigkeiten zur Effizienz bei der Benutzung beiträgt. Diese Ergebnisse vertiefen unser Verständnis von Imaginary Interfaces und legen nahe, dass Imaginary Interfaces basierend auf Handflächen die eigenständige und blickfreie Benutzung von vielen Anwendungen ermöglichen können, eingeschlossen Benutzerschnittstellen für sehbehinderte Benutzer. KW - interaction KW - interface KW - mobile KW - HCI KW - gesture Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-68960 ER - TY - JOUR A1 - Göbel, Andreas A1 - Lagodzinski, Julius Albert Gregor A1 - Seidel, Karen T1 - Counting homomorphisms to trees modulo a prime JF - ACM transactions on computation theory : TOCT / Association for Computing Machinery N2 - Many important graph-theoretic notions can be encoded as counting graph homomorphism problems, such as partition functions in statistical physics, in particular independent sets and colourings. In this article, we study the complexity of #(p) HOMSTOH, the problem of counting graph homomorphisms from an input graph to a graph H modulo a prime number p. Dyer and Greenhill proved a dichotomy stating that the tractability of non-modular counting graph homomorphisms depends on the structure of the target graph. Many intractable cases in non-modular counting become tractable in modular counting due to the common phenomenon of cancellation. In subsequent studies on counting modulo 2, however, the influence of the structure of H on the tractability was shown to persist, which yields similar dichotomies.
Our main result states that for every tree H and every prime p the problem #pHOMSTOH is either polynomial time computable or #P-p-complete. This relates to the conjecture of Faben and Jerrum stating that this dichotomy holds for every graph H when counting modulo 2. In contrast to previous results on modular counting, the tractable cases of #pHOMSTOH are essentially the same for all values of the modulo when H is a tree. To prove this result, we study the structural properties of a homomorphism. As an important interim result, our study yields a dichotomy for the problem of counting weighted independent sets in a bipartite graph modulo some prime p. These results are the first suggesting that such dichotomies hold not only for the modulo 2 case but also for the modular counting functions of all primes p. KW - Graph homomorphisms KW - modular counting KW - complexity dichotomy Y1 - 2021 U6 - https://doi.org/10.1145/3460958 SN - 1942-3454 SN - 1942-3462 VL - 13 IS - 3 SP - 1 EP - 33 PB - Association for Computing Machinery CY - New York ER - TY - JOUR A1 - Haarmann, Stephan A1 - Holfter, Adrian A1 - Pufahl, Luise A1 - Weske, Mathias T1 - Formal framework for checking compliance of data-driven case management JF - Journal on data semantics : JoDS N2 - Business processes are often specified in descriptive or normative models. Both types of models should adhere to internal and external regulations, such as company guidelines or laws. Employing compliance checking techniques, it is possible to verify process models against rules. While traditionally compliance checking focuses on well-structured processes, we address case management scenarios. In case management, knowledge workers drive multi-variant and adaptive processes. Our contribution is based on the fragment-based case management approach, which splits a process into a set of fragments. The fragments are synchronized through shared data but can, otherwise, be dynamically instantiated and executed. We formalize case models using Petri nets. We demonstrate the formalization for design-time and run-time compliance checking and present a proof-of-concept implementation. The application of the implemented compliance checking approach to a use case exemplifies its effectiveness while designing a case model. The empirical evaluation on a set of case models for measuring the performance of the approach shows that rules can often be checked in less than a second. KW - Compliance checking KW - Case management KW - Model verification KW - Data-centric KW - processes Y1 - 2021 U6 - https://doi.org/10.1007/s13740-021-00120-3 SN - 1861-2032 SN - 1861-2040 VL - 10 IS - 1-2 SP - 143 EP - 163 PB - Springer CY - Heidelberg ER - TY - JOUR A1 - Hacker, Philipp A1 - Krestel, Ralf A1 - Grundmann, Stefan A1 - Naumann, Felix T1 - Explainable AI under contract and tort law BT - legal incentives and technical challenges JF - Artificial intelligence and law N2 - This paper shows that the law, in subtle ways, may set hitherto unrecognized incentives for the adoption of explainable machine learning applications. In doing so, we make two novel contributions. First, on the legal side, we show that to avoid liability, professional actors, such as doctors and managers, may soon be legally compelled to use explainable ML models. We argue that the importance of explainability reaches far beyond data protection law, and crucially influences questions of contractual and tort liability for the use of ML models. To this effect, we conduct two legal case studies, in medical and corporate merger applications of ML. As a second contribution, we discuss the (legally required) trade-off between accuracy and explainability and demonstrate the effect in a technical case study in the context of spam classification. KW - explainability KW - explainable AI KW - interpretable machine learning KW - contract KW - law KW - tort law KW - explainability-accuracy trade-off KW - medical malpractice KW - corporate takeovers Y1 - 2020 U6 - https://doi.org/10.1007/s10506-020-09260-6 SN - 0924-8463 SN - 1572-8382 VL - 28 IS - 4 SP - 415 EP - 439 PB - Springer CY - Dordrecht ER - TY - BOOK A1 - Hagedorn, Benjamin A1 - Schöbel, Michael A1 - Uflacker, Matthias A1 - Copaciu, Flavius A1 - Milanovic, Nikola T1 - Proceedings of the fall 2006 workshop of the HPI research school on service-oriented systems engineering N2 - 1. Design and Composition of 3D Geoinformation Services Benjamin Hagedorn 2. Operating System Abstractions for Service-Based Systems Michael Schöbel 3. A Task-oriented Approach to User-centered Design of Service-Based Enterprise Applications Matthias Uflacker 4. A Framework for Adaptive Transport in Service- Oriented Systems based on Performance Prediction Flavius Copaciu 5. Asynchronicity and Loose Coupling in Service-Oriented Architectures Nikola Milanovic T3 - Technische Berichte des Hasso-Plattner-Instituts für Digital Engineering an der Universität Potsdam - 18 Y1 - 2007 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-33052 SN - 978-3-939469-58-2 PB - Universitätsverlag Potsdam CY - Potsdam ER -