Locking Strategies for V-SUMs

Aus SDQ-Wiki
Ausschreibung (Liste aller Ausschreibungen)
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:

  1. multiple roles are involved in building the V-SUM, and
  2. 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:

  1. implementing a locking protocol (or another access protocol), such as Two-Phase Locking (2PL), and
  2. 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.