Skip to main content

Introduction and Goals

The primary goal of Eva is to provide a modular and scalable system for automated code analysis of student code submitted to programming and database tasks. The main features are:

  • Compilation of submitted solutions.
  • Checking solutions for functional correctness using test-based methods.
  • Checking solutions for quality properties, such as code style.
  • Collecting code coverage metrics per test case through bytecode and source code instrumentation (JaCoCo, OpenClover). This is particularly relevant for computing education research and can contribute to improving test-based feedback.
  • Support for a variety of programming languages and database management systems.