Discovering courses Project: CMRP Priority: High Actor: All user Acceptance criteria – The platform displays a curated list of featured courses on the homepage.. 2.1.2 Regis An Account A
Trang 1Ngo Quoc Thinh Bui Son Thai Nguyen Quoc Dung
Approved by Proposal Review Panel Representative:
Capstone Project 2- Mentor:
Trang 2PROJECT INFORMATION
Project
Project Title Course Marketplace & Reviews Platform
Ngo Quoc Thinh qthinh2801@gmail.com 0945.280.101 Bui Son Thai sonthai1310.works@gmail.com 037.6314.578 Nguyen Quoc Dung qdungnguyen810@gmail.com 0903.476.313
Trang 3REVISION HISTORY
2.0 20/11/2023 Delete and add some user stories N.Q.Dung Approved
3.0 10/12/2023 Update invalid user story
Approved
Trang 51 Introduction
In software development, a User Story is one or more sentences that describe the natural language (not the technical language) or the business language of the end user or system user to record what users need to do or not do their job or duty User stories are used in methods such as Agile software development as the basis for defining system functions such as business development and to facilitate management of requirements Help yourself know "who", "what" and "why" in a short, simple request, often limited only by details that can be written on a piece of sticky note or scrap paper small
User stories written by business users are the primary way of users because they understand most of the system's processes, workflows, and functions so it is working right now User stories can also be written by Dev to make non-functional requirements (like security, performance, quality, etc.)
1.1 Purpose
– Provide a prioritized features list, containing a short description of all functionality desired in the product
– Lists everything that the product owner and Scrum team feels should be included in the software they are developing
1.2 Scope
– Write all the user’s requirements
– Lists some main functions of the system and acceptance criteria of each function – Short description of all the functionality desired in the product
– Given the priority of each feature and function of the product
Trang 6User Stories with Examples and Template
2 User Stories
Priority and Estimates
– Priorities are set from high (H), medium (M) and low (L): – Priorities of some user stories can be the same with others
– If a user story has dependencies, it must have lower priority than its dependencies
Trang 72.1 Sprint 1
2.1.1 Discovering Courses (no login required)
As a learner, I want to discover a variety of courses on the platform so that I can find subjects that match my interests and learning goals
Discovering courses Project: CMRP Priority: High
Actor: All user Acceptance criteria
– The platform displays a curated list of featured courses on the homepage
– I can browse courses by category, including but not limited to technology, business, arts, and science
– Each course listing provides essential details such as the course title, Course Provider, duration, and a without logging in, enhancing user exploration
Trang 82.1.2 Regis An Account
As a user, I want to register for an account to login to the platform, so that I can
quick, secure access to extensive platform features and content Regis an account Project: CMRP Priority: High Actor: Learner Acceptance criteria
– Minimum password length 8 characters maximum 50 characters
– I enter missing information will be notified exactly what I am missing
– I entered the wrong verification code and will show registration failure
Outcome: Streamlined registration for quick, secure access to extensive platform features and content
2.1.3 Login To The Platform
As a user, I want to login to the platform easy, so that I can quick access to personalized features and course progress
Login to the platform Project: CMRP Priority: High
Actor: All user Acceptance criteria
– Minimum password length 8 characters maximum 50 characters
– Enter the correct username and password, then I can login to the system
– Enter wrong username or password or both me can not login to the system
– I entered wrong username or password, I want to be told exactly what I am wrong
Outcome: Effortless login ensures a smooth, secure user experience with quick access to personalized features and course progress
2.1.4 Forgot Password
As a user, I want to reset my password when I forget it so that I can regain access to my account quickly and securely
Actor: All user Acceptance criteria
– Wrong email will not receive confirmation code
Trang 9Outcome: User-friendly password recovery for swift, secure access in case of a
2.1.5 Log Out Of The Platform
As a user, I want a quick and secure way to log out of the platform so that I can be
sure my account and data are protected from unauthorized access Log out of the platform Project: CMRP Priority: Medium Actor: All user Acceptance criteria
– I should easily find a "Logout" option in the platform interface
– Upon selecting "Logout," the platform confirms my decision
– Logging out should promptly end my session, necessitating re-authentication for further access – After logging out, I remain on the homepage of the platform
– If I decide to log in again, selecting the login option should redirect me to the login page Outcome: Secure logout for
peace of mind, protecting user accounts and personal information
2.1.6 User Account Management
As a platform administrator, I want the ability to efficiently manage user accounts
so thatI can help enhanced security and user experience
Course enrollment monitoring Project: CMRP Priority: High
– Access "User Management" on the admin
– Edit user information, including username, email, and role
– Suspend and reactivate user accounts – Initiate password resets.
Outcome: With robust user account management features, administrators can efficiently maintain the integrity and
Trang 10security of user accounts on the platform
– View user activity logs for auditing – Manage user roles, assigning or changing as needed
– Execute bulk actions on user accounts – Permanently delete user accounts in compliance with data protection policies
Trang 112.2 Sprint 2
2.2.1 Course Enrollment
As a learner, I want to easily enroll in a course of my choice so that I can start my learning journey
Course enrollment Project: CMRP Priority: High Actor: User Acceptance criteria
– From the course details page, I can click on an "Enroll" button to register for the course – The platform prompts me to log in or create an account if I haven't already
Outcome: Streamlined enrollment for a swift start to educational endeavors
2.2.2 Online Payment
As a learner, I want a seamless and secure online payment process to enroll in courses on the platform, so that I can complete my enrollment in just a few clicks,
freeing up my time to focus on what matters most - learning.
Actor: Learner Acceptance criteria
– The platform should offer a user-friendly checkout process after selecting a course – Ensure that the payment process is encrypted and secure to protect user information
– Provide immediate confirmation via email after a successful payment
Outcome: The seamless online payment option enhances the user experience, allowing for convenient and secure
Trang 12transactions when enrolling in courses on the platform
2.2.3 Course Review and Ratings
As a learner, I want to share my thoughts about a course through reviews and ratings
so that I can help others make informed decisions
Course review and ratings Project: CMRP Priority: High Actor: Learner Acceptance criteria
– After completing a course, I can leave a written review and provide a numerical rating
– Reviews are visible on the course details page to leaving post-course reviews and ratings, offering insights for prospective students
2.2.4 Create Course
As a Course Provider, I want to be able to create and publish courses with ease, so that I can quickly share valuable content for other users
Actor: Course Provider Acceptance criteria
– Course Providers can create a profile with details such as their expertise, qualifications, and contact information
Outcome: Empowers Course Providers to effortlessly
Trang 13share diverse knowledge, enriching the platform's course offerings
2.2.5 Course Enrollment Monitoring
As a Course Provider, I want to track the enrollment status of my courses, so that
I can gauge interest and plan accordingly
Course enrollment monitoring Project: CMRP Priority: High
Actor: Course Provider Acceptance criteria
– Course Providers access an "Enrollment" section from their account home
– The dashboard shows course names, current enrollment, and relevant details
– Enrollment information is updated in real-time – Clicking on a course reveals detailed information on enrolled Learners and their status – Course Providers can sort and filter courses based on criteria like enrollment numbers – Notifications alert Course Providers to significant changes in enrollment
– Sensitive enrollment data is secure, accessible only to authorized Course Providers
Outcome: Equips Course Providers with real-time insights, optimizing course strategies and enhancing overall adaptability
Trang 142.2.6 Admin Content Moderation
As an administrator, I want to moderate and manage course content, reviews, and
users accounts, so that I can ensure the quality and integrity of the platform Admin content moderation Project: CMRP Priority: High
– Admins can review and approve new courses before they are published on the platform – The platform has mechanisms to flag and review inappropriate content and user behavior – Admins can suspend or remove users who violate platform policies
Outcome: Ensures a safe and credible learning environment by swiftly managing and maintaining high-quality content on the platform
Trang 152.3 Sprint 3
2.3.1 Withdrawal for Course Providers
As a Course Provider, I want the ability to withdraw my earned funds from the platform, so that I can access and manage my earnings seamlessly
Withdrawal for Course Providers
Project: CMRP Priority: High
Actor: Course Provider Acceptance criteria
– Course Providers access a "Withdrawal" section
– Preferred payment methods (e.g., bank transfer, E-wallet) are selectable
– A confirmation message follows the submission of a withdrawal request
– Withdrawal history is maintained, showing date, amount, and status
– Expected processing time is communicated
Outcome: The withdrawal feature empowers Course Providers, providing a user-friendly and secure mechanism to access and manage their earned funds on the platform
Trang 162.3.2 Course Recommendations
As a learner, I want to receive course recommendations that leverage my learning history and interests, facilitating the discovery of new and relevant courses, so that
I can save time and effort by finding courses that are perfectly suited to my needs Course recommendations Project: CMRP Priority: Low
Actor: Learner Acceptance criteria
– Platform uses an algorithm based on user learning history and interests
– "Personalized Recommendations" section is visible on the homepage
– Recommendations are regularly updated to match user evolving preferences
– Diverse course options are suggested – Option to provide feedback for better suggestions
– Direct links for detailed info on each recommended course
– Strong privacy measures for handling my data Outcome: Learners receive
personalized course suggestions, simplifying the process of discovering and enrolling in courses aligned with their interests and learning journey
Trang 172.3.3 Leveraging Algorithmic Review Analysis with Natural Language Processing (NLP)
As a user, I want the platform to utilize Algorithmic Review Analysis powered by Natural Language Processing (NLP), so that I can make informed purchasing
decisions
Leveraging algorithmic review analysis with natural language processing (NLP)
Project: CMRP Priority: Medium
Actor: All user Acceptance criteria
– Seamless integration of Algorithmic Review Analysis with NLP into the user interface – Enhanced sentiment analysis through NLP for a nuanced understanding of user emotions – Accurate extraction of contextual keywords or phrases from reviews using NLP
– Improved and contextually relevant automated response suggestions based on NLP-enhanced sentiment analysis
– User-friendly and comprehensive feedback forms utilizing NLP for effective input
– Personalized course recommendations generated through NLP-analyzed feedback
Outcome: Users benefit from a more advanced and tailored review system, leveraging Algorithmic Review Analysis with NLP for accurate sentiment analysis, detailed insights, and personalized recommendations
Trang 182.3.4 Communication Feature for Users
As a platform user, I want a simple messaging feature so that I can ommunicate with other users efficiently and achieve seamless interaction
Communication feature for users
Project: CMRP Priority: Low
Actor: All user Acceptance criteria
– Messaging interface accessible from the dashboard
– Compose and send text messages – Select specific recipients for messages – Real-time messaging for instant communication – View past message conversations.
– Receive notifications for new messages – Privacy controls to manage message senders Outcome: The
Communication Feature simplifies user- -to user interaction, providing a convenient and efficient messaging system for seamless communication within the platform