Business Requirement - mbaron93/cs690project_learningtracker GitHub Wiki
Business Requirement 1:
We need a software that will appeal to and be used by those who prioritize learning for self-betterment, holding the largest use share among learning tracking apps. It should track and summarize their learning through print and electronic sources, allow them to set learning goals and priorities and provide feedback to aid in reaching those goals.
Use Case #1 ‐ Log Learning for Digital and Print Sources
FR #1 - A user selects a type of source (book, article) and specifies print or online.
FR #3 - A user adds notes to summarize their takeaways from the piece of information
FR #5 - The system stores data in a persistent way including a timestamp.
Non-Functional Requirements
Use Case #2 ‐ Update Learning Progress on Existing Source
Functional Requirements
FR #6 - A user selects an option to update a pre-existing source
FR #7 - A user edits a pre-existing source from a list
NFR #5 - Program does not crash or save incorrect user input data
Use Case #3 ‐ Set Learning Goals
Functional Requirements
FR #9 - User selects from different goal options.
FR #10 - User inputs learning goals, including deadlines and timestamps.
FR #11 - Persistent data is saved about learning goals, including date of use.
Non-Functional Requirements
NFR #2 - Intuitive interface to access pre-existing pieces of information.
Use Case #4 ‐ Report Learning Progress and Goals
Functional Requirements
FR #12 - A user selects an option that summarizes learning goals and progress.
FR #13 - The app demonstrates upcoming goals and their due dates on a portion of the page.
FR #15 - The app communicates when learning goals have been met.
Non-Functional Requirements
NFR #3 - The summary page has distinct options that are easy for the user to navigate.
Constraints
Constraint #1: Uses dotnet version 8
Constraint #2: Produce a console project as the user interface.