D2.1 Functional and modular architecture

This deliverable reports on the software architecture for realising a modular and distributed system for capturing and re-enacting experience. The architecture serves mainly two purposes: building a shared understanding amongst the contributors and guiding the further development by breaking down complexity, thus allowing for distribution of work. Additionally, the structure and its compartmentalisation can be re-used to inform other projects in the context of WEKIT exploitation and beyond.

The proposed architecture breaks complexity down into three layers, the presentation layer, the service layer, and the storage layer (including local and cloud-based data sinks). It documents the components needed to implement each layer: the presentation layer consists of the recorder module, the live guide (re-enactment) module, the analytics module and the community platform. The service layer provides two processing units (for sensor data processing and analytics processing), as well as the following service interfaces: Experience Capturing API (XCAPI), Experience Logging API (xAPI), the Query and Report Interface, Single-Sign-On Services (SSO), as well as non-exposed APIs for sensor data storage and Learning Experience Model storage and retrieval (LEM API).
Six data storage solutions are foreseen to hold all relevant data: Sensor Data Store, LEM repository, system logs, a Learning Record Store (for xAPI statements), the user database as well as the community database.
A conclusion and outlook at the end of the document documents the next key milestones for fully implementing this architecture – and for documenting the final version with feedback from the validation trials.