Locking Strategies for V-SUMs
| Typ | Masterarbeit | |
|---|---|---|
| Aushang | LockingStrategiesForVSUMs.pdf | |
| Betreuer | Wenden Sie sich bei Interesse oder Fragen bitte an: Benedikt Jutz (E-Mail: benedikt.jutz@kit.edu, Telefon: +49-721-608-45995) |
Background
The Vitruvius framework manages multiple models in a Virtual Single Underlying Model (V-SUM). Model Consistency is required to build software from these models. Therefore, Vitruvius maintains constructive, change-driven consistency by applying Consistency Preservation Rules (CPRs) in response to edits made by developers.
Collaborative Model-Driven Software Engineering is the application of collaboration techniques from regular software engineering to model-driven development. One subfield of collaboration is how to concurrently edit models, and handle conflicts between edits when they occur. This is especially important for editing V-SUMs, since:
- multiple roles are involved in building the V-SUM, and
- CPRs produce additional edits, causing further conflicts.
Tasks
In this thesis, you will develop a transaction manager for Vitruvius. This manager receives multiple transactions, i.e. sequences of edits to model elements, as input. It then needs to ensure that V-SUMs can be edited concurrently, by:
- implementing a locking protocol (or another access protocol), such as Two-Phase Locking (2PL), and
- recovering from transaction failures, by undoing all edit operations of a failed transaction.
After implementing your solution, you need to evaluate it by creating transactions on a existing V-SUM, and applying them.