User Documentation - s566466div/GDP-Project-EduLearn-03 GitHub Wiki
Use Cases
Use case 1:User Registration
Goal: As a new user (Student or Instructor), I want to securely register for an account on the platform. Input:
- User navigates to the registration page.
- User provides personal information such as name, email, and password.
System Interactions:
- System validates the provided information.
- If validation is successful, the system creates a new user account.
- If validation fails or there are errors, the system displays appropriate error messages.
Expected Output: Confirmation of successful registration or error messages for unsuccessful registration attempts.
User Registration with valid fields
After User Registration Saved Credentials
Invalid Field Values
Use Case 2: User Authentication
Goal: As a registered user (Student or Instructor), I want to securely authenticate myself to access the platform. Input:
- User navigates to the login page.
- User enters their username (email) and password.
System Interactions:
- System validates the credentials.
- If credentials are valid, system grants access to the user's account.
- If credentials are invalid, system displays an error message.
Expected Output: Successful login, granting access to user's profile or error message for invalid credentials.
Login Page
User with valid credentials
With Valid credentials granting access to user's profile Dashboard
With Invalid credentials and error
Use Case 3: Course Catalog
Goal: As a student, I want to browse available courses and view detailed information about courses. Input:
- Student navigates to the course catalog.
- Student utilizes search and filtering options to find courses matching their interests or requirements.
- Student clicks on a course to view detailed information.
System Interactions:
- System presents a list of available courses with relevant details such as title and description.
- Student can click on a course to view more detailed information.
- System provides options for sorting and filtering courses based on criteria like subject or discipline.
Expected Output: Student interacts with the course catalog, viewing detailed information about available courses.
Without any Filters
With search option
With Filters Applied
Use Case 4: Browse and Enroll in Courses
Goal: As a student, I want to browse available courses and enroll in courses that I am interested in. Input:
- Student navigates to the course catalog.
- Student browses available courses or uses search and filtering options to find specific courses.
- Students go through course information across various subjects and disciplines.
System Interactions:
- If satisfied, Student enrolls in the course.
- Student receives confirmation of successful enrollment.
Expected Output: Successful enrollment of courses.
Course Ready For Enrollment
When we click on Enroll Button
Successfully enrollment of courses
Use Case 5:Course Dashboard
Goal: As a student, I want to interact with a user-friendly course dashboard that logically organizes course content for easy navigation. Input:
- Student accesses the course dashboard for the enrolled course.
- Student navigates through different sections of the dashboard.
System Interactions:
- System displays a organized course dashboard.
- Student clicks on various sections to access course materials and track progress.
Expected Output: Student interacts with a logically organized course dashboard, facilitating easy navigation and access to course content.
Course Dashboard
Use Case 6: Access Course Content
Goal: As an enrolled student, I want to access course materials such as video lectures, reading materials, assignments, and quizzes. Input:
- Student selects the enrolled course they want to access.
- Student selects a specific item (video lecture, reading material, assignment, quiz) to view.
System Interactions:
- System presents the course dashboard with video lectures, reading materials, assignments, and quizzes.
- System retrieves and displays the selected content.
- Student interacts with the content as needed.
Expected Output: Student will be able able to access all the course content.
Use Case 7: Complete quizzes and assignments.
Goal: As a student, I want to complete quizzes and assignments to assess my learning progress. Input:
- Student navigates to the course dashboard.
- Student selects the quiz or assignment they want to complete.
System Interactions:
- Student completes the quiz or assignment.
- System evaluates the user's responses and provides feedback.
- System updates user progress based on completed quizzes and assignments.
Expected Output: Student will be able to complete Quizzes and Assignments.
Use Case 8: Progress Tracker
Goal: As a student, I want to track my overall learning progress, showing completed and pending tasks. Input:
- Student can click on a specific course to view detailed progress information.
System Interactions:
- System displays a summary of completed tasks and pending tasks for each enrolled course.
- System provides detailed progress information such as completed or pending lectures, assignments, and quizzes.
Expected Output: Progress tracker showing completed and pending tasks.
Overall Course and Enrollment Tracking
User cases Diagram