Refine
Year of publication
Document Type
- Monograph/Edited Volume (122) (remove)
Language
- English (89)
- German (31)
- Multiple languages (2)
Keywords
- Hasso-Plattner-Institut (7)
- Forschungskolleg (6)
- Hasso Plattner Institute (6)
- Klausurtagung (6)
- Service-oriented Systems Engineering (6)
- cloud computing (6)
- Cloud Computing (5)
- Forschungsprojekte (4)
- Future SOC Lab (4)
- In-Memory Technologie (4)
- Modellierung (4)
- Multicore Architekturen (4)
- Research School (4)
- Virtualisierung (4)
- Computer Networks (3)
- Computernetzwerke (3)
- Datenintegration (3)
- Datenschutz (3)
- E-Learning (3)
- Graphtransformationen (3)
- IPv4 (3)
- IPv6 (3)
- Identitätsmanagement (3)
- Infrastructure (3)
- Infrastruktur (3)
- Internet Protocol (3)
- MOOCs (3)
- Model Synchronisation (3)
- Model Transformation (3)
- Network Politics (3)
- Netzpolitik (3)
- Online-Lernen (3)
- Onlinekurs (3)
- Ph.D. Retreat (3)
- Ph.D. retreat (3)
- Privacy (3)
- Tele-Lab (3)
- Tele-Teaching (3)
- Tripel-Graph-Grammatik (3)
- Verifikation (3)
- cloud (3)
- conference (3)
- graph transformation (3)
- multicore architectures (3)
- openHPI (3)
- research projects (3)
- service-oriented systems engineering (3)
- tele-TASK (3)
- verification (3)
- virtual machines (3)
- virtualization (3)
- AUTOSAR (2)
- BPM (2)
- BPMN (2)
- Cloud (2)
- Cloud-Sicherheit (2)
- Cloud-Speicher (2)
- Data Integration (2)
- Formale Verifikation (2)
- Graphtransformationssysteme (2)
- Hauptspeicherdatenbank (2)
- In-Memory technology (2)
- Internet (2)
- Internet Service Provider (2)
- Konferenz (2)
- Lively Kernel (2)
- Model Synchronization (2)
- Model-Driven Engineering (2)
- Modeling (2)
- Online Course (2)
- Online-Learning (2)
- Process Modeling (2)
- Prozessmodellierung (2)
- Ressourcenoptimierung (2)
- Sicherheit (2)
- Studie (2)
- SysML (2)
- Virtuelle Maschinen (2)
- Visualisierung (2)
- batch processing (2)
- data profiling (2)
- graph constraints (2)
- identity management (2)
- in-memory technology (2)
- incremental graph pattern matching (2)
- modeling (2)
- modellgetriebene Entwicklung (2)
- nested graph conditions (2)
- privacy (2)
- real-time systems (2)
- research school (2)
- security (2)
- virtuelle Maschinen (2)
- visualization (2)
- ACINQ (1)
- ASIC (1)
- Abhängigkeiten (1)
- Abstraktion von Geschäftsprozessmodellen (1)
- Algorithmen (1)
- Anfragesprache (1)
- Angriffe (1)
- Anwendungsvirtualisierung (1)
- Apriori (1)
- Architektur (1)
- Aspect-oriented Programming (1)
- Aspektorientierte Softwareentwicklung (1)
- Association Rule Mining (1)
- Assoziationsregeln (1)
- Asynchrone Schaltung (1)
- Asynchronous circuit (1)
- Attribut-Merge-Prozess (1)
- Attribute Merge Process (1)
- Ausführung von Modellen (1)
- Australian securities exchange (1)
- Authentifizierung (1)
- BCCC (1)
- BTC (1)
- Basic Storage Anbieter (1)
- Batchprozesse (1)
- Batchverarbeitung (1)
- Bayes'sche Netze (1)
- Bayesian networks (1)
- Bedingte Inklusionsabhängigkeiten (1)
- Beschränkungen und Abhängigkeiten (1)
- Betriebssysteme (1)
- Biometrie (1)
- Bisimulation (1)
- BitShares (1)
- Bitcoin (1)
- Bitcoin Core (1)
- Blockchain Auth (1)
- Blockchain-Konsortium R3 (1)
- Blockheizkraftwerke (1)
- Blockkette (1)
- Blockstack (1)
- Blockstack ID (1)
- Blumix-Plattform (1)
- Blöcke (1)
- Byzantine Agreement (1)
- CEP (1)
- CSC (1)
- CSCW (1)
- Change Management (1)
- Colored Coins (1)
- Conditional Inclusion Dependency (1)
- Conformance Überprüfung (1)
- Constraints (1)
- Context-oriented Programming (1)
- Contracts (1)
- Controller-Resynthese (1)
- Cyber-Physical Systems (1)
- Cyber-Physical-Systeme (1)
- Cyber-physical-systems (1)
- DAO (1)
- DPoS (1)
- Data Dependency (1)
- Data Modeling (1)
- Data Profiling (1)
- Data Quality (1)
- Data Warehouse (1)
- Database Cost Model (1)
- Datenabhängigkeiten (1)
- Datenanalyse (1)
- Datenbank (1)
- Datenbank-Kostenmodell (1)
- Datenflusskorrektheit (1)
- Datenmodellierung (1)
- Datenqualität (1)
- Datensicht (1)
- Datenvertraulichkeit (1)
- Deadline-Verbreitung (1)
- Delegated Proof-of-Stake (1)
- Design Thinking (1)
- Differential Privacy (1)
- Discrimination Networks (1)
- Distributed Proof-of-Research (1)
- Duplicate Detection (1)
- Duplikaterkennung (1)
- Dynamic Type System (1)
- Dynamische Typ Systeme (1)
- E-Wallet (1)
- ECDSA (1)
- EHR (1)
- EPA (1)
- Echtzeitsysteme (1)
- Effizienz (1)
- Eingebettete Systeme (1)
- Elektronische Patientenakte (1)
- Energiesparen (1)
- Ereignisse (1)
- Erfüllbarkeitsanalyse (1)
- Eris (1)
- Erkennen von Meta-Daten (1)
- Ether (1)
- Ethereum (1)
- Evolution (1)
- Evolution in MDE (1)
- Extract-Transform-Load (ETL) (1)
- FIDO (1)
- FRP (1)
- Fallstudie (1)
- Federated Byzantine Agreement (1)
- Feedback Loops (1)
- Fehlerinjektion (1)
- Fehlersuche (1)
- Fehlertoleranz (1)
- FollowMyVote (1)
- Fork (1)
- Functional Lenses (1)
- Geschäftsanwendungen (1)
- Geschäftsprozesse (1)
- Geschäftsprozessmanagement (1)
- Gesetze (1)
- Graph-Constraints (1)
- Graph-basierte Suche (1)
- Graphbedingungen (1)
- Graphdatenbanken (1)
- Graphtransformation (1)
- Gridcoin (1)
- Gruppierung von Prozessinstanzen (1)
- HENSHIN (1)
- HPI Forschung (1)
- HPI research (1)
- Hard Fork (1)
- Hashed Timelock Contracts (1)
- Hasso-Plattner-Institute (1)
- Homomorphe Verschlüsselung (1)
- IT-Infrastruktur (1)
- IT-infrastructure (1)
- Identity Management (1)
- Identität (1)
- In-Memory Database (1)
- In-Memory Datenbank (1)
- In-Memory-Datenbank (1)
- Individuen (1)
- Infinite State (1)
- Information Extraction (1)
- Information Systems (1)
- Informationsextraktion (1)
- Informationssysteme (1)
- Inkrementelle Graphmustersuche (1)
- Innovation (1)
- Innovationsmanagement (1)
- Innovationsmethode (1)
- Internet der Dinge (1)
- Internet of Things (1)
- Invariant-Checking (1)
- Invarianten (1)
- Invariants (1)
- IoT (1)
- JCop (1)
- Japanese Blockchain Consortium (1)
- Japanisches Blockchain-Konsortium (1)
- Java (1)
- Kette (1)
- Kollaborationen (1)
- Konsensalgorithmus (1)
- Konsensprotokoll (1)
- Laufzeitanalyse (1)
- Laufzeitmodelle (1)
- Leadership (1)
- Lightning Network (1)
- Link Discovery (1)
- Link-Entdeckung (1)
- Linked Data (1)
- Linked Open Data (1)
- Live-Programmierung (1)
- Lock-Time-Parameter (1)
- MDE Ansatz (1)
- MDE settings (1)
- Management (1)
- Marktübersicht (1)
- Megamodell (1)
- Megamodels (1)
- Mehr-Faktor-Authentifizierung (1)
- Mehrfamilienhäuser (1)
- Mehrkernsysteme (1)
- Metadata Discovery (1)
- Metadatenentdeckung (1)
- Metadatenqualität (1)
- Micropayment-Kanäle (1)
- Microsoft Azur (1)
- Middleware (1)
- Mobile Application Development (1)
- Model Execution (1)
- Model-driven SOA Security (1)
- Modeling Languages (1)
- Modell-getriebene SOA-Sicherheit (1)
- Modell-getriebene Softwareentwicklung (1)
- Modellerzeugung (1)
- Modellgetriebene Softwareentwicklung (1)
- Modellierungssprachen (1)
- Modelltransformationen (1)
- Models at Runtime (1)
- Morphic (1)
- Multi-Instanzen (1)
- Multicore architectures (1)
- Muster (1)
- Musterabgleich (1)
- NASDAQ (1)
- NameID (1)
- Namecoin (1)
- Nebenläufigkeit (1)
- Nested Graph Conditions (1)
- Netzneutralität (1)
- Newspeak (1)
- OAuth (1)
- Object Constraint Programming (1)
- Object-Oriented Programming (1)
- Objekt-Constraint Programmierung (1)
- Objekt-Orientiertes Programmieren (1)
- Objekt-orientiertes Programmieren mit Constraints (1)
- Objektlebenszyklus-Synchronisation (1)
- Off-Chain-Transaktionen (1)
- Onename (1)
- OpenBazaar (1)
- OpenID Connect (1)
- Optimierungen (1)
- Oracles (1)
- Organisationsveränderung (1)
- Orphan Block (1)
- P2P (1)
- PRISM Modell-Checker (1)
- PRISM model checker (1)
- PTCTL (1)
- Pattern Matching (1)
- Patterns (1)
- Peer-to-Peer Netz (1)
- Peercoin (1)
- Petri net Mapping (1)
- Petri net mapping (1)
- Petrinetz (1)
- PoB (1)
- PoS (1)
- PoW (1)
- Process Enactment (1)
- Process Mining (1)
- Prognosen (1)
- Programmierkonzepte (1)
- Programmierung (1)
- Programming Languages (1)
- Proof-of-Burn (1)
- Proof-of-Stake (1)
- Proof-of-Work (1)
- Propagation von Aktivitätsinstanzzuständen (1)
- Prozessausführung (1)
- Prozesserhebung (1)
- Prozessinstanz (1)
- Prozessoren (1)
- Python (1)
- Quantitative Analysen (1)
- Realzeitsysteme (1)
- Research Projects (1)
- Ripple (1)
- Runtime Binding (1)
- SCP (1)
- SHA (1)
- SOA Security (1)
- SOA Sicherheit (1)
- SPV (1)
- SQL (1)
- STG decomposition (1)
- STG-Dekomposition (1)
- Sammlungsdatentypen (1)
- Schemaentdeckung (1)
- Schlüsselentdeckung (1)
- Schule (1)
- Schwierigkeitsgrad (1)
- Secure Digital Identities (1)
- Secure Enterprise SOA (1)
- Self-Adaptive Software (1)
- Sequenzen von s/t-Pattern (1)
- Service Provider (1)
- Service-Oriented Architecture (1)
- Service-Orientierte Architekturen (1)
- Service-orientierte Systme (1)
- Sichere Digitale Identitäten (1)
- Signalflankengraph (SFG oder STG) (1)
- Simplified Payment Verification (1)
- Simulation (1)
- Single-Sign-On (1)
- Skalierbarkeit der Blockchain (1)
- Skript-Entwicklungsumgebungen (1)
- Slock.it (1)
- Smalltalk (1)
- SoaML (1)
- Soft Fork (1)
- Software-Testen (1)
- Softwarearchitektur (1)
- Softwareproduktlinien (1)
- Softwaretests (1)
- Sozialen Medien (1)
- Spaltenlayout (1)
- Speicheroptimierungen (1)
- Sprachspezifikation (1)
- Standards (1)
- Steemit (1)
- Stellar Consensus Protocol (1)
- Storj (1)
- Synchronisation (1)
- System of Systems (1)
- Systemsoftware (1)
- Tableaumethode (1)
- The Bitfury Group (1)
- The DAO (1)
- Threshold Cryptography (1)
- Timed Automata (1)
- Transaktion (1)
- Transaktionen (1)
- Transformationsebene (1)
- Transformationssequenzen (1)
- Travis CI (1)
- Triple Graph Grammar (1)
- Triple Graph Grammars (1)
- Triple-Graph-Grammatiken (1)
- Trust Management (1)
- Two-Way-Peg (1)
- Unbegrenzter Zustandsraum (1)
- Unspent Transaction Output (1)
- Unveränderlichkeit (1)
- Verbindungsnetzwerke (1)
- Verhaltensabstraktion (1)
- Verhaltensbewahrung (1)
- Verhaltensverfeinerung (1)
- Verhaltensäquivalenz (1)
- Verification (1)
- Verlässlichkeit (1)
- Verteilungsalgorithmen (1)
- Verteilungsalgorithmus (1)
- Verträge (1)
- Verzögerungs-Verbreitung (1)
- Virtual Desktop Infrastructure (1)
- Virtual machines (1)
- Wartung von Graphdatenbanksichten (1)
- Watson IoT (1)
- Web applications (1)
- Web-Anwendungen (1)
- Werkzeuge (1)
- Wikipedia (1)
- Zielvorgabe (1)
- Zookos Dreieck (1)
- Zookos triangle (1)
- Zugriffskontrolle (1)
- access control (1)
- activity instance state propagation (1)
- adaptive Systeme (1)
- adaptive systems (1)
- adoption (1)
- algorithms (1)
- altchain (1)
- alternative chain (1)
- application virtualization (1)
- apriori (1)
- architecture (1)
- atomic swap (1)
- ausführbare Semantiken (1)
- authentication (1)
- basic cloud storage services (1)
- behavior preservation (1)
- behavioral abstraction (1)
- behavioral equivalenc (1)
- behavioral refinement (1)
- beschreibende Feldstudie (1)
- bidirectional payment channels (1)
- big data services (1)
- biometrics (1)
- bisimulation (1)
- bitcoin (1)
- bitcoins (1)
- blockchain (1)
- blockchain consortium (1)
- blockchain-übergreifend (1)
- blocks (1)
- blumix platform (1)
- business process management (1)
- business process model abstraction (1)
- business process modeling (1)
- business processes (1)
- case study (1)
- chain (1)
- change management (1)
- cloud security (1)
- cloud storage (1)
- cogeneration units (1)
- collaboration (1)
- collection types (1)
- confidentiality (1)
- confirmation period (1)
- conformance checking (1)
- consensus algorithm (1)
- consensus protocol (1)
- contest period (1)
- continuous integration (1)
- continuous testing (1)
- contracts (1)
- control resynthesis (1)
- controlled experiment (1)
- cross-chain (1)
- cyber-physical systems (1)
- data center management (1)
- data flow correctness (1)
- data in business processes (1)
- data integration (1)
- data modeling (1)
- data security (1)
- data view (1)
- deadline propagation (1)
- debugging (1)
- decentralized autonomous organization (1)
- delay propagation (1)
- dependability (1)
- dependable computing (1)
- dependencies (1)
- design thinking (1)
- dezentrale autonome Organisation (1)
- differential privacy (1)
- difficulty (1)
- difficulty target (1)
- diffusion (1)
- digital education (1)
- digitale Bildung (1)
- direct manipulation (1)
- direkte Manipulation (1)
- discrimination networks (1)
- distribution algorithm (1)
- doppelter Hashwert (1)
- double hashing (1)
- dynamic typing (1)
- dynamic programming languages (1)
- dynamische Programmiersprachen (1)
- dynamische Sprachen (1)
- e-learning (1)
- efficiency (1)
- eindeutig (1)
- electronic health record (1)
- embedded-systems (1)
- energy savings (1)
- erfahrbare Medien (1)
- events (1)
- evolution in MDE (1)
- executable semantics (1)
- fault injection (1)
- fault tolerance (1)
- federated voting (1)
- feedback loops (1)
- fehlende Daten (1)
- forecasts (1)
- formal verification (1)
- formal verification methods (1)
- formale Verifikation (1)
- functional dependency (1)
- functional lenses (1)
- functional programming (1)
- funktionale Abhängigkeit (1)
- funktionale Programmierung (1)
- future SOC lab (1)
- graph databases (1)
- graph queries (1)
- graph transformation systems (1)
- graph transformations (1)
- hashrate (1)
- homomorphic encryption (1)
- hybrid graph-transformation-systems (1)
- hybride Graph-Transformations-Systeme (1)
- identity (1)
- immutable values (1)
- in-memory database (1)
- individuals (1)
- inductive invariant checking (1)
- induktives Invariant Checking (1)
- inkrementelles Graph Pattern Matching (1)
- innovation (1)
- innovation capabilities (1)
- innovation management (1)
- intelligente Verträge (1)
- inter-chain (1)
- interconnect (1)
- invariant checking (1)
- k-Induktion (1)
- k-induction (1)
- k-inductive invariant checking (1)
- k-inductive invariants (1)
- k-induktive Invarianten (1)
- k-induktives Invariant-Checking (1)
- key discovery (1)
- kontinuierliche Integration (1)
- kontinuierliches Testen (1)
- kontrolliertes Experiment (1)
- language specification (1)
- law (1)
- leadership (1)
- ledger assets (1)
- live programming (1)
- lively kernel (1)
- location-based (1)
- management (1)
- many-core (1)
- market study (1)
- mehrdimensionale Belangtrennung (1)
- memory optimization (1)
- merged mining (1)
- merkle root (1)
- metadata discovery (1)
- metadata quality (1)
- micropayment (1)
- micropayment channels (1)
- middleware (1)
- miner (1)
- mining (1)
- mining hardware (1)
- minting (1)
- missing data (1)
- model generation (1)
- model transformation (1)
- model-driven engineering (1)
- monitoring (1)
- morphic (1)
- multi factor authentication (1)
- multi-core (1)
- multi-dimensional separation of concerns (1)
- multi-instances (1)
- multi-family residential buildings (1)
- nested application conditions (1)
- nonce (1)
- object life cycle synchronization (1)
- object-constraint programming (1)
- off-chain transaction (1)
- online course (1)
- online-learning (1)
- operating systems (1)
- optimizations (1)
- organizational change (1)
- orts-basiert (1)
- parallel computing (1)
- paralleles Rechnen (1)
- partial application conditions (1)
- partielle Anwendungsbedingungen (1)
- peer-to-peer network (1)
- pegged sidechains (1)
- periodic tasks (1)
- periodische Aufgaben (1)
- petri net (1)
- probabilistic timed automata (1)
- probabilistische zeitbehaftete Automaten (1)
- process elicitation (1)
- process instance (1)
- process instance grouping (1)
- process mining (1)
- process modeling languages (1)
- processor hardware (1)
- profiling (1)
- programming (1)
- public cloud storage services (1)
- quantitative analysis (1)
- quorum slices (1)
- reactive (1)
- reaktive Programmierung (1)
- relational model transformation (1)
- relationale Modelltransformationen (1)
- resource optimization (1)
- rootstock (1)
- runtime adaptations (1)
- s/t-pattern sequences (1)
- satisfiabilitiy solving (1)
- scalability of blockchain (1)
- scarce tokens (1)
- schema discovery (1)
- school (1)
- scripting environments (1)
- semantics preservation (1)
- service-oriented systems (1)
- sidechain (1)
- signal transition graph (1)
- simulation (1)
- smalltalk (1)
- smart contracts (1)
- smartphone (1)
- software architecture (1)
- software product lines (1)
- software testing (1)
- software tests (1)
- speed independent (1)
- standards (1)
- static analysis (1)
- statische Analyse (1)
- stochastic Petri nets (1)
- stochastische Petri Netze (1)
- study (1)
- synchronization (1)
- system of systems (1)
- systems software (1)
- t.BPM (1)
- tableau method (1)
- tangible media (1)
- tele-lab (1)
- tele-teaching (1)
- threshold cryptography (1)
- timed automata (1)
- tools (1)
- transaction (1)
- transformation level (1)
- transformation sequences (1)
- triple graph grammars (1)
- typed graph transformation systems (1)
- unique (1)
- verschachtelte Anwednungsbedingungen (1)
- verschachtelte Graphbedingungen (1)
- view maintenance (1)
- virtual desktop infrastructure (1)
- wearables (1)
- web-applications (1)
- zuverlässige Datenverarbeitung (1)
- zuverlässigen Datenverarbeitung (1)
- Überwachung (1)
- öffentliche Cloud Speicherdienste (1)
Institute
- Hasso-Plattner-Institut für Digital Engineering gGmbH (122) (remove)
Service-oriented modeling employs collaborations to capture the coordination of multiple roles in form of service contracts. In case of dynamic collaborations the roles may join and leave the collaboration at runtime and therefore complex structural dynamics can result, which makes it very hard to ensure their correct and safe operation. We present in this paper our approach for modeling and verifying such dynamic collaborations. Modeling is supported using a well-defined subset of UML class diagrams, behavioral rules for the structural dynamics, and UML state machines for the role behavior. To be also able to verify the resulting service-oriented systems, we extended our former results for the automated verification of systems with structural dynamics [7, 8] and developed a compositional reasoning scheme, which enables the reuse of verification results. We outline our approach using the example of autonomous vehicles that use such dynamic collaborations via ad-hoc networking to coordinate and optimize their joint behavior.
Die Komplexität heutiger Geschäftsabläufe und die Menge der zu verwaltenden Daten stellen hohe Anforderungen an die Entwicklung und Wartung von Geschäftsanwendungen. Ihr Umfang entsteht unter anderem aus der Vielzahl von Modellentitäten und zugehörigen Nutzeroberflächen zur Bearbeitung und Analyse der Daten. Dieser Bericht präsentiert neuartige Konzepte und deren Umsetzung zur Vereinfachung der Entwicklung solcher umfangreichen Geschäftsanwendungen. Erstens: Wir schlagen vor, die Datenbank und die Laufzeitumgebung einer dynamischen objektorientierten Programmiersprache zu vereinen. Hierzu organisieren wir die Speicherstruktur von Objekten auf die Weise einer spaltenorientierten Hauptspeicherdatenbank und integrieren darauf aufbauend Transaktionen sowie eine deklarative Anfragesprache nahtlos in dieselbe Laufzeitumgebung. Somit können transaktionale und analytische Anfragen in derselben objektorientierten Hochsprache implementiert werden, und dennoch nah an den Daten ausgeführt werden. Zweitens: Wir beschreiben Programmiersprachkonstrukte, welche es erlauben, Nutzeroberflächen sowie Nutzerinteraktionen generisch und unabhängig von konkreten Modellentitäten zu beschreiben. Um diese abstrakte Beschreibung nutzen zu können, reichert man die Domänenmodelle um vormals implizite Informationen an. Neue Modelle müssen nur um einige Informationen erweitert werden um bereits vorhandene Nutzeroberflächen und -interaktionen auch für sie verwenden zu können. Anpassungen, die nur für ein Modell gelten sollen, können unabhängig vom Standardverhalten, inkrementell, definiert werden. Drittens: Wir ermöglichen mit einem weiteren Programmiersprachkonstrukt die zusammenhängende Beschreibung von Abläufen der Anwendung, wie z.B. Bestellprozesse. Unser Programmierkonzept kapselt Nutzerinteraktionen in synchrone Funktionsaufrufe und macht somit Prozesse als zusammenhängende Folge von Berechnungen und Interaktionen darstellbar. Viertens: Wir demonstrieren ein Konzept, wie Endnutzer komplexe analytische Anfragen intuitiver formulieren können. Es basiert auf der Idee, dass Endnutzer Anfragen als Konfiguration eines Diagramms sehen. Entsprechend beschreibt ein Nutzer eine Anfrage, indem er beschreibt, was sein Diagramm darstellen soll. Nach diesem Konzept beschriebene Diagramme enthalten ausreichend Informationen, um daraus eine Anfrage generieren zu können. Hinsichtlich der Ausführungsdauer sind die generierten Anfragen äquivalent zu Anfragen, die mit konventionellen Anfragesprachen formuliert sind. Das Anfragemodell setzen wir in einem Prototypen um, der auf den zuvor eingeführten Konzepten aufsetzt.
Graph queries have lately gained increased interest due to application areas such as social networks, biological networks, or model queries. For the relational database case the relational algebra and generalized discrimination networks have been studied to find appropriate decompositions into subqueries and ordering of these subqueries for query evaluation or incremental updates of query results. For graph database queries however there is no formal underpinning yet that allows us to find such suitable operationalizations. Consequently, we suggest a simple operational concept for the decomposition of arbitrary complex queries into simpler subqueries and the ordering of these subqueries in form of generalized discrimination networks for graph queries inspired by the relational case. The approach employs graph transformation rules for the nodes of the network and thus we can employ the underlying theory. We further show that the proposed generalized discrimination networks have the same expressive power as nested graph conditions.
Graph databases provide a natural way of storing and querying graph data. In contrast to relational databases, queries over graph databases enable to refer directly to the graph structure of such graph data. For example, graph pattern matching can be employed to formulate queries over graph data.
However, as for relational databases running complex queries can be very time-consuming and ruin the interactivity with the database. One possible approach to deal with this performance issue is to employ database views that consist of pre-computed answers to common and often stated queries. But to ensure that database views yield consistent query results in comparison with the data from which they are derived, these database views must be updated before queries make use of these database views. Such a maintenance of database views must be performed efficiently, otherwise the effort to create and maintain views may not pay off in comparison to processing the queries directly on the data from which the database views are derived.
At the time of writing, graph databases do not support database views and are limited to graph indexes that index nodes and edges of the graph data for fast query evaluation, but do not enable to maintain pre-computed answers of complex queries over graph data. Moreover, the maintenance of database views in graph databases becomes even more challenging when negation and recursion have to be supported as in deductive relational databases.
In this technical report, we present an approach for the efficient and scalable incremental graph view maintenance for deductive graph databases. The main concept of our approach is a generalized discrimination network that enables to model nested graph conditions including negative application conditions and recursion, which specify the content of graph views derived from graph data stored by graph databases. The discrimination network enables to automatically derive generic maintenance rules using graph transformations for maintaining graph views in case the graph data from which the graph views are derived change. We evaluate our approach in terms of a case study using multiple data sets derived from open source projects.
Since 2002, keywords like service-oriented engineering, service-oriented computing, and service-oriented architecture have been widely used in research, education, and enterprises. These and related terms are often misunderstood or used incorrectly. To correct these misunderstandings, a deeper knowledge of the concepts, the historical backgrounds, and an overview of service-oriented architectures is demanded and given in this paper.
Developing rich Web applications can be a complex job - especially when it comes to mobile device support. Web-based environments such as Lively Webwerkstatt can help developers implement such applications by making the development process more direct and interactive. Further the process of developing software is collaborative which creates the need that the development environment offers collaboration facilities. This report describes extensions of the webbased development environment Lively Webwerkstatt such that it can be used in a mobile environment. The extensions are collaboration mechanisms, user interface adaptations but as well event processing and performance measuring on mobile devices.
Duplicate detection is the task of identifying all groups of records within a data set that represent the same real-world entity, respectively. This task is difficult, because (i) representations might differ slightly, so some similarity measure must be defined to compare pairs of records and (ii) data sets might have a high volume making a pair-wise comparison of all records infeasible. To tackle the second problem, many algorithms have been suggested that partition the data set and compare all record pairs only within each partition. One well-known such approach is the Sorted Neighborhood Method (SNM), which sorts the data according to some key and then advances a window over the data comparing only records that appear within the same window. We propose several variations of SNM that have in common a varying window size and advancement. The general intuition of such adaptive windows is that there might be regions of high similarity suggesting a larger window size and regions of lower similarity suggesting a smaller window size. We propose and thoroughly evaluate several adaption strategies, some of which are provably better than the original SNM in terms of efficiency (same results with fewer comparisons).
While offering significant expressive power, graph transformation systems often come with rather limited capabilities for automated analysis, particularly if systems with many possible initial graphs and large or infinite state spaces are concerned. One approach that tries to overcome these limitations is inductive invariant checking. However, the verification of inductive invariants often requires extensive knowledge about the system in question and faces the approach-inherent challenges of locality and lack of context.
To address that, this report discusses k-inductive invariant checking for graph transformation systems as a generalization of inductive invariants. The additional context acquired by taking multiple (k) steps into account is the key difference to inductive invariant checking and is often enough to establish the desired invariants without requiring the iterative development of additional properties.
To analyze possibly infinite systems in a finite fashion, we introduce a symbolic encoding for transformation traces using a restricted form of nested application conditions. As its central contribution, this report then presents a formal approach and algorithm to verify graph constraints as k-inductive invariants. We prove the approach's correctness and demonstrate its applicability by means of several examples evaluated with a prototypical implementation of our algorithm.
Graph transformation systems are a powerful formal model to capture model transformations or systems with infinite state space, among others. However, this expressive power comes at the cost of rather limited automated analysis capabilities. The general case of unbounded many initial graphs or infinite state spaces is only supported by approaches with rather limited scalability or expressiveness. In this report we improve an existing approach for the automated verification of inductive invariants for graph transformation systems. By employing partial negative application conditions to represent and check many alternative conditions in a more compact manner, we can check examples with rules and constraints of substantially higher complexity. We also substantially extend the expressive power by supporting more complex negative application conditions and provide higher accuracy by employing advanced implication checks. The improvements are evaluated and compared with another applicable tool by considering three case studies.