Abstract
StudyNest is an app powered by AI, which can easily organise all the materials provided by schools or online communities and make some short but practical summaries to guide students about how to prepare for the courses and the final exams. In addition, it can also change the plan flexibly follow the events that has been suddenly added. Furthermore, it can identify knowledge gaps of users based on their questions, accordingly, recommends extra learning resources to help. Study resources will be organised into 4 parts: pre-class preparation, in-class materials, assignment support and final exam review materials.
Author
Name: Yixin Wang
Student number: 48598330
Functionality
StudyNest provides a easy study experience through the following features:
- Automatic Material Organization:
- Organize PDFs, PPTs, class notes, lecture records and exercises.
- Summarize key information logically for easy read.
- AI-Powered Personalized Study Plans:
- Generates study schedules based on learning materials, daily calendar and course timetable.
- Adjusts schedules dynamically based on user availability and priorities.
- Knowledge Gap Identification & Resource Recommendation:
- Identifies user knowledge gaps based on the questions that users asked.
- Recommends extra materials to fill the learning gap.
- Four-Parts Learning Materials Classification:
- Pre-class Preparation: AI provides key concepts and explanatons.
- In-class Material: Select the materials that the teacher might use in the lesson.
- Assignment Support: Select materials that students may need to do their homeworks.
- Final Exam Review: Prepare a reasonable length and accurate review material for the exam.
- Cross-Platform Support:
- Works on web browsers, mobile devices, and desktop platforms.
Scope
The Minimum Viable Product (MVP) for StudyNest includes:
- Account:
- user account system includes the information about school, age, faculty, grade, profile and password etc.
- Core functionalities:
- Upload and categorize PDFs, PPTs,videos and class notes.
- Generate a study plan which is suitable for each student.
- Provide basic knowledge gap analysis based on user queries.
- Supported Formats:
- PDF, PPTX, TXT, MP4 and DOCX.
- Initial Platform Support:
- Web-based application and mobile application.
Quality Attributes
1. Extensibility
- As the change of demand for this app, we need to make it possible to add more functions and features in the furture. Such as online social networking, experiences forum, intership advice.
- More applications which are suitble for different devices. For example, app need to adjust to most of systems in the world, like android, ios, HarmonyOS etc.
- According to the web pages that we use frequentely for learning. API for third-party learning platforms will be required.(e.g., Google Scholar).
- App needs to have the ability to support additional file formats (e.g., Video files in MOV. or AVI. format, Markdown).
- Modular design can make change,test or upgrade easily. Each component operates independently, one function could be updated without affecting others.
2. Maintainability
- The system should follows general principles for code organization. Each component should be loosely coupled with other components and be responsible for a function.
- Maintainability ensures that the software remains easy to update, debug, and improve as time goes by.
- StudyNest should be automated unit testing, integration testing and continuous deployment pipelines with outcomes of software testing files. This reduces the risk of errors when users begin to use.
3. Scalability
- Ensures the system can handle a large amount of users and data efficiently without suddenly breakedown.
- Dynamically store the data with cloud storage based on the amount of usage. Automatically data backup and synchronization. Cloud synchronization ensures that data will never loose, even if a user changes devices.
- Implements load balancing and database sharding to improve the performance or react speed of the app under heavy flow.
Evaluation
To assess the effectiveness of StudyNest, the following evaluation criteria will be used:
1. Extensibility Evaluation
- Measures the ease of adding new features such as forums, social networking, and new integrations.
- Tests the compatibility of new devices and exsist systems (Android, iOS, HarmonyOS, etc.) in the world.
- Evaluates API flexibility by assessing how easily third-party learning platforms (e.g., Google Scholar) can be integrated.
- Assess the system’s ability to upload additional file formats without performance degradation.
- Tests how ease the individual modules can be updated or replaced without affecting other components.
2. Maintainability Evaluation
- Assesses the modular structure by testing how independent components are updated and debugged.
- Evaluates the success rate of automated tests, including unit tests, integration tests, and CI/CD pipeline efficiency.
- Record the time taken for software updates and bug fixed to make sure the ease of maintenance.
3. Scalability Evaluation
- Evaluates system response times under different user loads to ensure it can handle at least 20,000 concurrent users.
- Tests the efficiency of cloud-based auto-scaling ability in dynamically allocating resources.
- Measures database performance under heavy traffic using load testing. Measures the failure rate under stress testing and evaluates system response in handling errors or unexpected failures.