Skip to content

Modularization of the Simulator, Benchmarking, Documentation and Daniel Pereira's MSc Dissertation release

Latest

Choose a tag to compare

@DaniPalma2002 DaniPalma2002 released this 01 May 12:36

MSc Dissertation Release: This release serves as the official version for Daniel Pereira's MSc Dissertation.

What's New Since v3.1.3

Breaking Changes & Modular Architecture

  • Modularization of the Simulator: Refactored the simulator core from a monolithic structure into distinct, decoupled modules: Aggregate, Coordination, Transaction, Notification, Messaging, Impairment, Monitoring, and Versioning.
  • Package Renames: Renamed core modules for architectural clarity (event is now notification, behaviour is now impairment, and tracing is now monitoring).

Benchmarking

  • Benchmarking Pipeline: Introduced benchmark-deployments.sh, an automated JMeter benchmark script to profile, stress-test, and compare the execution latency of Sagas and Transactional Causal Consistency (TCC) across all centralized and distributed topologies.

Documentation & Visuals

  • Updated README and Guides: Comprehensively updated the README.md and guides/ directory to reflect the new architecture, deployment modes, and configurations.
  • New Architecture Diagrams: Added and updated structural, topological, and layer-specific diagrams in the data/figs/architecture/ directory to visually map the decoupled system.

Nebula DSL & Code Generation (by @LourencoPonces )

  • DSL Integration: Integrated the Nebula Domain Specific Language (DSL) under the dsl/ directory for the automated generation of aggregates, events, functionalities, and repositories.
  • Tooling: Added a VS Code extension for Nebula DSL with syntax highlighting and validation, alongside comprehensive user guides and tutorials.

AI-Assisted Development Support (by @kikoleitao )

  • Introduced a comprehensive 'Agent Context' system (via CLAUDE.md and specialized .claude/skills) to provide structured, repository-aware guidance for LLMs and AI agents working on the codebase.