Milestone 2 — Working Prototype
CE 316 Programming Languages — Team 8
İzmir Ekonomi Üniversitesi — 2026 Spring
Milestone 2 — Working Prototype
This release delivers the Working Prototype required by Milestone 2,
satisfying Requirements #3, #4, #7, #8, and #9.
What's included
iae-1.0.0-SNAPSHOT.jar— runnable fat JAR (Windows, Java 21)- Source code (auto-attached by GitHub as Source code zip)
Running
java -jar iae-1.0.0-SNAPSHOT.jar
Requires Java 21 (any distribution with JavaFX is fine; the JAR bundles
JavaFX natives for Windows).
Demo walkthrough
- Edit → Import Configuration → choose
examples/configurations/c_standard.json - File → New Project → name the project, pick the imported configuration,
browse to a submissions directory of student ZIP files, set command-line
arguments and expected output - File → Save Project As → choose a directory for project_data.json
- Toolbar → Run
- Results stream into the table as each submission is evaluated (PASS/FAIL/COMPILE_ERROR/RUNTIME_ERROR/TIMEOUT)
- File → Save Project to persist results, File → Open Project to reload them
Six sample fixtures are provided under test-submissions/ covering all
result types: a passing C program, compile-error C, infinite-loop C,
output-mismatch C, a Java program in a C configuration (compile error),
and a corrupted ZIP (extraction error).
Requirements satisfied
| # | Requirement | Status |
|---|---|---|
| R3 | Create projects using existing or new configurations | ✓ |
| R4 | Create, edit, and remove configurations | ✓ |
| R7 | Compile/interpret source code per configuration | ✓ |
| R8 | Compare program output to expected output | ✓ |
| R9 | Display results per student submission | ✓ |
| R6 | Batch process ZIP submissions (bonus) | ✓ |
| R10 | Open/save projects to disk (bonus) | ✓ |
Test results
mvn test→ BUILD SUCCESS, 72 tests run, 0 failures, 0 errors, 10 skipped (Linux-only shell tests and one Windows-flaky cleanup test)
Team
- Deniz Gürkan — project lead, GUI shell, service integration, persistence wiring
- Çağan Parlapan — service layer engine (ZipExtractor, CommandRunner, OutputComparator, ProjectRunner, ConfigurationManager)
- Fatih Çelik — domain model and JSON persistence layer
- Can Esen — Configuration Editor and Project Editor dialogs
- Emre Taşkın — test fixtures, sample configuration, documentation