Use Case 1 – Create Team
- As a student, I want to create a new programming team so that I can collaborate with peers on a project.
- A student logs into the Collaborative Agent system.
- The student selects the option to create a new team.
- The student enters a team name.
- The system generates a unique team code that can be shared.
- Other students use the team code to join.
- Once enough members join, the team is marked as active, and the project workspace is created.
Use Case 2 - Define problem
- As a student, I want the agent to know what we are trying to do so he can help us solve the problems correctly.
- A student logs into the Collaborative Agent System.
- The student provides a problem to the Agent.
- The system understands the problem and sets it as the base for the project.
Use Case 3 – Allocate Tasks to Members
- As a student, I want the agent to distribute coding tasks among my teammates so that the workload is balanced.
- A team leader or member specifies the overall project requirements in the system.
- The agent analyzes the project and breaks it down into coding# tasks.
- The agent suggests task assignments based on skills and availability of members.
- Team members receive notifications about their assigned tasks.
- Members can accept or request reassignment, and the agent updates accordingly.
Use Case 4 – Simultaneous Coding Session
- As a student, I want to code at the same time as my teammates so that we can build the project collaboratively in real time.
- Team members log into the shared project workspace.
- Multiple students open the coding editor.
- Each member writes or edits code in real time.
- The system highlights contributions by different users.
- The system automatically syncs changes to ensure everyone sees the updated code.
Use Case 5 – Peer Review of Code
- As a student, I want to review my teammate’s code so that I can provide constructive feedback.
- A student submits a block of code for peer review.
- The system notifies other team members.
- Reviewers open the code and leave comments or suggestions.
- The author receives peer feedback in real time.
- The system logs reviews for future reference and evaluation.
Use Case 6 – Agent Provides Real-Time Feedback
- As a student, I want the agent to give me instant feedback on my code so that I can correct mistakes early.
- A student writes code in the collaborative editor.
- The agent scans the code for errors, inefficiencies, and best practices.
- The agent highlights issues and suggests improvements.
- The student edits their code based on the feedback.
- The system re-validates the code to ensure correctness.
Use Case 7 – Agent Suggests Improvements Based on Peer Review
- As a programmer, I want the agent to suggest improvements based on peer review so that I can refine my code more effectively.
- Team members complete peer reviews on submitted code.
- The agent analyzes the feedback and identifies common themes.
- The agent suggests actionable changes (e.g., refactoring, adding comments, optimizing loops).
- The programmer reviews the suggestions and decides which ones to apply.
- The updated code is re-shared with the team.
Use Case 8 – Finalize and Submit Project Work
- As a team, we want to finalize and submit our project so that we can complete our assignment successfully.
- Once all tasks are completed, the agent compiles the project.
- The system runs automated checks for completeness and functionality.
- The team reviews the final project together.
- The agent generates a summary report of contributions and project progress.
- The team clicks the “Submit Project” button to finalize.
- The system confirms successful submission.