Overview
Divekit is a tool that helps instructors to create and distribute repositories to students.
High-Level Overview
graph TB INST((Instructors)) ORIGIN[Origin Repository] CLI[Divekit CLI] DIST[Distribution] REPOSTUDENT[Student Repositories] REPOTEST[Test Repositories] STUDENTS((Students)) TPAGE[Test Pages] INST -->|Develop| ORIGIN INST -->|Use| CLI ORIGIN -->|Input| CLI CLI -->|Generate| DIST DIST --- REPOTEST DIST --- REPOSTUDENT STUDENTS -->|Work on| REPOSTUDENT TPAGE -->|Get feedback| STUDENTS REPOSTUDENT --->|Update| REPOTEST REPOTEST --->|Update| TPAGE style CLI fill:#42b050,stroke:#333 style ORIGIN fill:#fcf,stroke:#333 style DIST fill:#a3e87e,stroke:#333 style INST fill:#ff9,stroke:#333 style STUDENTS fill:#ff9,stroke:#333 style REPOSTUDENT fill:#6fc5ff,stroke:#333 style REPOTEST fill:#6fc5ff,stroke:#333
Component Details
Divekit CLI
The CLI serves as the central interface for instructors. It controls the entire process of task distribution and management. All necessary commands for creating, distributing, and managing repositories are executed through the CLI.
Origin Repository
The Origin Repository contains the initial version of assignments and tests. It serves as a master template from which individualized versions for students are generated. This is where the original assignments, code scaffolds, and test cases are maintained.
Distribution
A Distribution is the result of the distribution process and consists of two main components:
Student Repositories
Individualized repositories for each student or group, containing:
- Personalized assignments
- Adapted code scaffolds
- Specific resources
Test Repositories
Separate repositories containing test cases and evaluation criteria:
- Automated tests
- Assessment metrics
- Feedback mechanisms
Test Page
A page where students can get feedback on their work.
Students
Students are the users who are working on the repositories. They can be individuals or groups.
Instructor
Instructor is the user who is creating the repositories and distributing them to the students.