Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (963.38 KB, 18 trang )
<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">
Ngo Quoc Thinh Bui Son Thai Nguyen Quoc Dung
<b>Approved by Proposal Review Panel Representative: </b>
<b>Capstone Project 2- Mentor: </b>
</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2"><b>PROJECT INFORMATION</b>
Project
Project Title Course Marketplace & Reviews Platform
Ngo Quoc Thinh 0945.280.101 Bui Son Thai 037.6314.578 Nguyen Quoc Dung 0903.476.313
</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3"><b>REVISION HISTORY </b>
2.0 20/11/2023 Delete and add some user stories N.Q.Dung Approved
3.0 10/12/2023 <sup>Update invalid user story </sup>
Approved
</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">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.).
– 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.
– 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.
</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">User Stories with Examples and Template
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.
</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7"><b>2.1 Sprint 1 </b>
2.1.1 Discovering Courses (no login required)
<b>As a learner, I want</b> to discover a variety of courses on the platform <b>so that</b> 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.
</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">2.1.2 Regis An Account
<b>As a user, I want to register for an account to login to the platform, so that I can </b>
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
<b>As a user, I want</b> to login to the platform easy, <b>so that</b> 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
<b>As a user, I want</b> to reset my password when I forget it <b>so that</b> I can regain access to my account quickly and securely.
Actor: All user Acceptance criteria
– Wrong email will not receive confirmation code
</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">Outcome: User-friendly password recovery for swift, secure access in case of a
2.1.5 Log Out Of The Platform
<b>As a user, I want a quick and secure way to log out of the platform so that I can be </b>
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
<b>As a platform administrator, I want the ability to efficiently manage user accounts </b>
<b>so that</b>I 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
</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">security 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.
</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11"><b>2.2 Sprint 2 </b>
2.2.1 Course Enrollment
<b>As a learner, I want</b> to easily enroll in a course of my choice <b>so that</b> 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
<b>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, </b>
freeing up my time to focus on what matters most - learning.
Actor: Learner <b>Acceptance criteria </b>
– 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
</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">transactions when enrolling in courses on the platform.
2.2.3 Course Review and Ratings
<b>As a learner, I want to share my thoughts about a course through reviews and ratings </b>
<b>so that</b> I can help others make informed decisions.
Course review and ratings Project: CMRP Priority: High Actor: Learner <b>Acceptance criteria </b>
– 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
<b>As a Course Provider, I want</b> to be able to create and publish courses with ease, <b>so that </b>I can quickly share valuable content for other users.
Actor: Course Provider <b>Acceptance criteria </b>
– Course Providers can create a profile with details such as their expertise, qualifications, and contact information.
Outcome: Empowers Course Providers to effortlessly
</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">share diverse knowledge, enriching the platform's course offerings.
2.2.5 Course Enrollment Monitoring
<b>As a Course Provider, I want</b> to track the enrollment status of my courses, <b>so that</b>
I can gauge interest and plan accordingly.
Course enrollment monitoring Project: CMRP Priority: High
Actor: Course Provider <b>Acceptance criteria </b>
– 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.
</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">2.2.6 Admin Content Moderation
<b>As an administrator, I want to moderate and manage course content, reviews, and </b>
users accounts<b>, so that I can ensure the </b>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.
</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15"><b>2.3 Sprint 3 </b>
2.3.1 Withdrawal for Course Providers
<b>As a Course Provider, I want the ability to withdraw my earned funds from the platform, so that </b>I can access and manage my earnings seamlessly.
Withdrawal for Course Providers
Project: CMRP Priority: High
Actor: Course Provider <b>Acceptance criteria </b>
– 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.
</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">2.3.2 Course Recommendations
<b>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 </b>
I can save time and effort by finding courses that are perfectly suited to my needs. Course recommendations Project: CMRP Priority: Low
Actor: Learner <b>Acceptance criteria </b>
– 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.
</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">2.3.3 Leveraging Algorithmic Review Analysis with Natural Language Processing (NLP)
<b>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 </b>
decisions..
Leveraging algorithmic review analysis with natural language processing (NLP)
Project: CMRP Priority: Medium
Actor: All user <b>Acceptance criteria </b>
– 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.
</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">2.3.4 Communication Feature for Users
<b>As a platform user, I want</b> a simple messaging feature <b>so that</b> I can ommunicate with other users efficiently and achieve seamless interaction.
Communication feature for users
Project: CMRP Priority: Low
Actor: All user <b>Acceptance criteria </b>
– 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.
</div>