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 1International School
Capstone Project 2
CMU-SE 451/CMU-IS 451
User Story
Version 3.0 Date: 10/12/2023
Course Marketplace & Reviews Platform
Submitted by
Ngo 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
Lead
Institution International School, DuyTan University
Project Mentor
Tran Kim Sanh, MSc
Email: sanhtk@gmail.com
Tel: 0987.409.464
Scrum Master
/ Project
Leader &
contact details
Nguyen Quoc Dung
Email: qdungnguyen810@gmail.com
Tel: 0903.476.313
Team
members
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 4TABLE OF CONTENTS
2.3.3 Leveraging Algorithmic Review Analysis with Natural Language Processing
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 61.3 References
https://www.atlassian.com/agile/project-management/user-stories
User 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 brief description
– I can search for courses based on keywords or topics
Outcome: Explore a variety
of courses hassle-free
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
forgotten password
– Wrong verification code will not change the password
– Minimum password length 8 characters maximum 50 characters
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 dashboard
– Search and filters for user account identification
– Create new accounts with essential details and role assignment
– 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 potential Learners
– I can edit my review or delete my reviews if needed
Outcome: Contribute to the
learner community by
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 a n 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
in their dashboard
– Withdrawal requests can be initiated within this section
– Course Providers can enter the desired withdrawal amount
– 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 during withdrawal
– Security measures safeguard financial information
– Course Providers receive timely notifications on withdrawal status
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