Course: COMP1815 - JVM Programming Languages Deadline: Monday, 01/12/2025 17:00 UK Time Group: Group 30
This document coordinates the final implementation tasks to complete the coursework. The work is split into 4 sequential tasks among 4 team members. Each person has a numbered ZIP file containing their specific code and instructions.
IMPORTANT: Tasks must be completed in order (1 → 2 → 3 → 4) because each builds on the previous work.
- a) Domain Classes - Kotlin ✅
- b) Event Creation Application - Kotlin ✅
- d) Persistence - Kotlin ✅
- e) Slot Finder - Scala ✅
- g) Version Control - Git ✅
- c) Participant Registration - Kotlin ❌ (Tasks 1 & 2)
- f) Event Scheduler Integration ❌ (Task 3)
- Bug fixes (Task 4)
| # | Person | Task | Files | Time | Branch |
|---|---|---|---|---|---|
| 1 | Martynas Prascevicius | ParticipantManagementView | 1_Martynas_W4_Final.zip |
30-45 min | feature/participant-management |
| 2 | Kim Le | RegistrationView | 2_Kim_W4_Final.zip |
45-60 min | feature/registration |
| 3 | Cynthia Kalu | ScheduleGeneratorView | 3_Cynthia_W4_Final.zip |
30-40 min | feature/schedule-generator |
| 4 | Rerosuoghene Gaius Eppiah | Bug Fixes + Tests | 4_Rero_W4_Final.zip |
30-40 min | fix/venue-id-and-tests |
Total Time: ~2.5-3 hours for all 4 tasks (sequentially)
- Create branch from
develop:feature/participant-management - Extract
1_Martynas_W4_Final.zip - Follow instructions in
1_Martynas_Instructions.md - Add ParticipantManagementView to project
- Integrate into MainApp
- Test, commit, push
- Notify Kim when done
- Pull Martynas's branch
- Create branch from Martynas's work:
feature/registration - Extract
2_Kim_W4_Final.zip - Follow instructions in
2_Kim_Instructions.md - Add RegistrationView to project
- Integrate into MainApp
- Test capacity validation!
- Test, commit, push
- Notify Cynthia when done
- Pull Kim's branch
- Create branch from Kim's work:
feature/schedule-generator - Extract
3_Cynthia_W4_Final.zip - Follow instructions in
3_Cynthia_Instructions.md - Add ScheduleGeneratorView to project
- Integrate into MainApp
- Test Scala integration!
- Test, commit, push
- Notify Rero when done
- Pull Cynthia's branch
- Create branch from Cynthia's work:
fix/venue-id-and-tests - Extract
4_Rero_W4_Final.zip - Follow instructions in
4_Rero_Instructions.md - Fix venue ID bug in CreateEventForm
- Add SchedulerApiTest
- Run all tests (must pass!)
- Test, commit, push
- Create Pull Request to merge into
develop
ParticipantManagementView.kt(143 lines)1_Martynas_Instructions.md(detailed guide)MainApp_Integration_Task1.txt(code snippets)
RegistrationView.kt(185 lines)2_Kim_Instructions.md(detailed guide)MainApp_Integration_Task2.txt(code snippets)
ScheduleGeneratorView.kt(175 lines)3_Cynthia_Instructions.md(detailed guide)MainApp_Integration_Task3.txt(code snippets)
CreateEventForm_Fixed.kt(complete file)SchedulerApiTest.scala(Scala test)4_Rero_Instructions.md(detailed guide)Bug_Explanation.md(explains venue ID bug)
After Rero completes Task 4, the application should have:
- ✅ Slot Finder (SlotFinderApi demo)
- ✅ Events (list all events)
- ✅ Create Event (event creation form)
- ✅ Participants (add/list/delete) ← NEW (Martynas)
- ✅ Register (register participants with capacity check) ← NEW (Kim)
- ✅ Schedule (generate conflict-free schedule) ← NEW (Cynthia)
- ✅ a) Domain Classes - Kotlin
- ✅ b) Event Creation App - Kotlin
- ✅ c) Participant Registration - Kotlin ← COMPLETED by Tasks 1 & 2
- ✅ d) Persistence - Kotlin
- ✅ e) Slot Finder - Scala
- ✅ f) Event Scheduler - Scala ← INTEGRATED by Task 3
- ✅ g) Version Control - Git
- ✅ SlotFinderApiTest (already exists)
- ✅ FileEventRepositoryTest (already exists)
- ✅ SchedulerApiTest ← NEW (Rero)
- ✅ Venue ID fixed ← FIXED (Rero)
✅ Follow the numbered order (1 → 2 → 3 → 4) ✅ Test your work before committing ✅ Follow the exact integration steps in each guide ✅ Notify the next person when you're done ✅ Make sure builds succeed ✅ Run the application to verify
❌ Skip ahead or work out of order
❌ Modify files not mentioned in your task
❌ Add extra features not in the instructions
❌ Push to develop directly (use branches!)
❌ Forget to test capacity validation (Kim!)
❌ Forget to test venue ID fix (Rero!)
git switch develop
git pull origin develop
git switch -c feature/your-branch-name
# Extract your ZIP file
# Follow your instructions./gradlew build
./gradlew :app-kotlin-ui:run # Test the UI
git add <files>
git commit -m "your message"
git push -u origin your-branch-name# Rero creates final PR
git push -u origin fix/venue-id-and-tests
# Then create PR on Azure DevOps to merge into developSlack/Teams Channel: Use for coordination Order of Notifications:
- Martynas → Kim ("Task 1 done, branch pushed")
- Kim → Cynthia ("Task 2 done, branch pushed")
- Cynthia → Rero ("Task 3 done, branch pushed")
- Rero → Everyone ("All tasks done, PR created!")
- ✅ All 7 coursework requirements met
- ✅ Application runs without errors
- ✅ All tabs work correctly
- ✅ Capacity validation works
- ✅ Scala integration works
- ✅ All tests pass
- ✅ No duplicate/redundant code
- ✅ Venue ID bug fixed
- Individual reports (Part B)
- Demonstration (Part C)
- Final submission
Day 1 (Today):
- Martynas: Task 1 (30-45 min)
- Kim: Task 2 (45-60 min)
Day 2:
- Cynthia: Task 3 (30-40 min)
- Rero: Task 4 (30-40 min)
- Code review & testing
Day 3:
- Merge to develop
- Final testing
- Start individual reports
-
"My task depends on previous task - when do I start?"
- Wait for notification from previous person
- Pull their branch first
- Then start your work
-
"Build fails after adding my code?"
- Check you copied files to correct location
- Check you added correct imports to MainApp
- Run
./gradlew clean build
-
"Tests failing?"
- Make sure you're on the correct branch
- Make sure all previous tasks are merged
- Check the error message carefully
-
"Can I add extra features?"
- NO! Stick to the exact requirements
- We need to meet coursework spec, not exceed it
- Extra features might cause issues
- This is NOT optional - we need all 4 tasks for a complete submission
- Tasks are sequential - don't skip or reorder
- Each task is tested - code is proven to work
- Each guide is detailed - follow step by step
- Communication is key - notify the next person!
Good luck team! Let's finish this coursework strong! 💪
Generated: November 1, 2025 Branch: develop Target: 100% coursework completion