-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CS2113-W12-1] QuizHub #8
Open
yeo-menghan
wants to merge
511
commits into
nus-cs2113-AY2324S1:master
Choose a base branch
from
AY2324S1-CS2113-W12-1:master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 250 commits
Commits
Show all changes
511 commits
Select commit
Hold shift + click to select a range
a532495
Merge pull request #134 from yeo-menghan/branch-CommandUGs
yeo-menghan 7e61a4e
Update DG for version 2.0 release
lisizhuang-0121 f02392f
Merge pull request #136 from lisizhuang-0121/master
lisizhuang-0121 a348efe
Add commandShuffleTest
yeo-menghan a1460fe
Rectify formatting issues for markdiff implementation
yeo-menghan fa4c4c7
Deconflict merge
yeo-menghan 4691120
Merge pull request #138 from yeo-menghan/branch-CommandUGs
yeo-menghan ea8a147
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp …
yeo-menghan eba8681
Merge pull request #139 from yeo-menghan/branch-CommandShuffleTest
yeo-menghan 066fd84
Add assertions for Parser class
lisizhuang-0121 9bf2ecf
Merge pull request #140 from lisizhuang-0121/master
lisizhuang-0121 a9796ed
Halfway implement MCQ feature
James-Hong-Jey 603696c
Merge pull request #147 from James-Hong-Jey/master
James-Hong-Jey 45822eb
UG Markdiff command format fix
spinoandraptos 0ed9c6d
Merge pull request #148 from spinoandraptos/master
spinoandraptos 2b08390
add MCQ class, command, edit and parse methods
StevenGX12 5932320
Merge pull request #185 from StevenGX12/branch-feature-mcq
StevenGX12 d4ff87c
Update user guide to resolve misinformation
lisizhuang-0121 fa92c42
Merge pull request #186 from lisizhuang-0121/master
lisizhuang-0121 e2360b0
Add escape sequence for illegal characters.
lisizhuang-0121 1f6fdd2
Merge pull request #187 from lisizhuang-0121/master
lisizhuang-0121 5dad37a
Fix case sensitivity when loading from file
lisizhuang-0121 aec0e76
Fix invalid difficulty handling when parsing from storage file.
lisizhuang-0121 91dfed7
Merge pull request #188 from lisizhuang-0121/master
lisizhuang-0121 e586295
Fix M shown as S when listed
yeo-menghan d43719b
Merge pull request #190 from yeo-menghan/branch-startMCQ
yeo-menghan 83577fb
Integrated mcq and shortans into /start command
yeo-menghan ca52777
Remove commented code
yeo-menghan ee914ee
Merge pull request #191 from yeo-menghan/branch-startMCQ
yeo-menghan ae2708c
Add Ui elements
yeo-menghan 3246aa2
Resolve issue #168 on shuffle command not having ui feedback
yeo-menghan d37a39d
Merge pull request #192 from yeo-menghan/branch-smallIncrements
yeo-menghan 1639fd6
Fix some bugs related to mcq parsing and storage
StevenGX12 54a3925
Fix checkstyle errors
StevenGX12 827d1f9
Merge pull request #193 from StevenGX12/branch-code-refactor
StevenGX12 728db77
Updated PPP, fixed typo in parseEditCommand
spinoandraptos 9f6b26e
Merge pull request #194 from spinoandraptos/PPP
spinoandraptos b39b553
Implement methods for converting questions to strings
lisizhuang-0121 99fb70f
Fix checkstyle violation
lisizhuang-0121 77b5b4a
Update tests
lisizhuang-0121 f1b069d
Merge pull request #195 from lisizhuang-0121/master
lisizhuang-0121 f2294e6
Fix styling issues in documentations
lisizhuang-0121 4a7f49d
Remove steven halim image
lisizhuang-0121 b5853d0
Update documentations
lisizhuang-0121 7200ca9
Merge pull request #196 from lisizhuang-0121/master
lisizhuang-0121 ee30932
Add Guan Xiao PPP
StevenGX12 abc2ea6
Merge pull request #197 from StevenGX12/master
StevenGX12 1054987
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp …
yeo-menghan 4c71e59
Add boundary checking for invalid int and out of array bounds for mcq
yeo-menghan 395dd42
Ensure 'Your Answer' is replicated per wrong input when doing boundar…
yeo-menghan efdee7b
Add blank answer check
yeo-menghan 1b0f0fa
Add exitquiz to exit in the middle of the quiz
yeo-menghan 37d5a66
Merge pull request #199 from yeo-menghan/branch-startMCQ
yeo-menghan 5fe6eb3
Integrate question type for StartCommand to filter /mix or /short or …
yeo-menghan 212ef87
Init qntype
yeo-menghan 2a427f6
Integrate /mix /mcq /short into start command
yeo-menghan d8a3d47
Merge pull request #200 from yeo-menghan/branch-startMCQ
yeo-menghan ceb4dda
Ui abstraction of print statements
spinoandraptos 6e122fd
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp …
spinoandraptos d8404f4
Refactor question and questionlist in displaying
lisizhuang-0121 6384a44
Merge pull request #201 from lisizhuang-0121/master
lisizhuang-0121 787cc56
UI Abstraction of print statements
spinoandraptos 13c2ab3
Merge pull request #202 from spinoandraptos/UI_refactor
spinoandraptos ef01d2c
Improve code quality in questionlist
lisizhuang-0121 ac42cfe
Update question list
lisizhuang-0121 e9d748f
Merge pull request #203 from lisizhuang-0121/master
lisizhuang-0121 ca4949b
UI Abstractions to remove print statements
spinoandraptos a19fd62
Merge pull request #204 from spinoandraptos/UI_refactor
spinoandraptos 0b9f8e9
Catch duplicate options in mcq
James-Hong-Jey 44b57ca
Merge pull request #206 from James-Hong-Jey/master
James-Hong-Jey 954d6a6
Fix bug for mcq indexing
yeo-menghan 8329f2e
Merge pull request #207 from yeo-menghan/branch-StartCommandRefactor
yeo-menghan d772c7b
Update user guide
lisizhuang-0121 3657614
Code abstraction for CommandStart
spinoandraptos 161dd82
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp …
spinoandraptos e9699ac
Remove comments
yeo-menghan e153643
Merge pull request #210 from yeo-menghan/branch-StartCommandRefactor
yeo-menghan de67605
Start on ppp
James-Hong-Jey b79416e
Update ui displaymessage to include static method
spinoandraptos 25709f0
Merge pull request #211 from spinoandraptos/UI_refactor
spinoandraptos b88ba14
Merge pull request #209 from lisizhuang-0121/master
lisizhuang-0121 2704980
Code abstraction for addQnFromFile
spinoandraptos 3c3c47c
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp …
spinoandraptos 04f20aa
Add protection against \exitquiz for shortans
yeo-menghan eb9af66
Merge pull request #212 from yeo-menghan/branch-exitQuiz
yeo-menghan e38a27e
Update user guide with latest commands and features
lisizhuang-0121 de51cd3
Merge pull request #213 from lisizhuang-0121/master
lisizhuang-0121 76e05e2
Update tests
lisizhuang-0121 aa4381c
UI Abstraction to abstract out string literals and remove print state…
spinoandraptos 44f5b33
Merge pull request #214 from lisizhuang-0121/master
lisizhuang-0121 1a9fc27
Refactor start command
yeo-menghan 1bc4148
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp …
spinoandraptos 680cf6c
Merge pull request #215 from spinoandraptos/UI_refactor
spinoandraptos 64b322d
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan 1229888
Fixed wrong abstraction
spinoandraptos f4c56f2
Merge pull request #216 from spinoandraptos/UI_refactor
spinoandraptos c4e899c
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan c4a4d72
Revert refactoring of StartCommand
yeo-menghan 8e09b8f
Change bracket for checkstyle
yeo-menghan 17344a8
Merge pull request #217 from yeo-menghan/master
yeo-menghan 22ce273
Edit tests
lisizhuang-0121 ef3f09c
Merge pull request #218 from lisizhuang-0121/master
lisizhuang-0121 bfab8ee
Fix bug on exitquiz
yeo-menghan fcb57ed
Merge pull request #219 from yeo-menghan/master
yeo-menghan 277c14f
Refactor code related to start quiz command
lisizhuang-0121 70ea840
Merge pull request #221 from lisizhuang-0121/master
lisizhuang-0121 bcc7165
Add DG diagrams
James-Hong-Jey 61ea56c
Merge pull request #223 from James-Hong-Jey/master
James-Hong-Jey b787495
Review user guide and fix bugs
lisizhuang-0121 5159ef7
Merge pull request #224 from lisizhuang-0121/master
lisizhuang-0121 5491129
DG Refactoring
spinoandraptos 4ec25ac
Merge pull request #225 from spinoandraptos/master
spinoandraptos 0c8ecf9
Add Meng Han's PPP
yeo-menghan e8915a8
Change Meng Han's Profile picture
yeo-menghan 3814165
Merge pull request #226 from yeo-menghan/master
yeo-menghan a9fc8d1
Update DG Command Markdiff sequence diagram
yeo-menghan a310bcd
Update CommandMarkDiff class diagram
yeo-menghan c48ee0c
Update StartCommand details in accordance with the user guide's update
yeo-menghan 4479fa3
Update command exit uml
yeo-menghan 7752e81
Update command Start developer guide + command Start display score af…
yeo-menghan 9728993
Update command markdiff developer guide
yeo-menghan 940debf
Add comand Shuffle invalid commands developer guide
yeo-menghan 43cb518
Update Invalid qn type in start parser
yeo-menghan 42c5314
Reorganisation of UML diagrams and Implemented standardised styling a…
spinoandraptos a150ead
Merge pull request #228 from spinoandraptos/master
spinoandraptos 43cba2c
Update DG for CommandEdit
StevenGX12 7095ff7
Merge pull request #229 from StevenGX12/branch-developer-guide
StevenGX12 8c24ba1
Add tolowercase() to parserStart to allow for non-case-sensitive comm…
yeo-menghan 6927ab9
Add to startparser to prevent additional input after /qntype
yeo-menghan 8a46b54
Update edit command DG along with potential bug fixes
yeo-menghan a4a27f4
Resolve merge conflicts
yeo-menghan 57f049a
Merge pull request #230 from yeo-menghan/master
yeo-menghan ec344d6
Added overall class interactions UML diagram, updated overall archite…
spinoandraptos 3fb5194
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
spinoandraptos 09bf6b0
Remove Steven Halim again
James-Hong-Jey af7b14b
Add links to ppp, halfway implement
James-Hong-Jey 9a9342d
Changed Overall architecture diagram, overall class diagram and appli…
spinoandraptos e46f908
Merge branch 'master' of https://github.com/spinoandraptos/tp
spinoandraptos e3df231
Fixed checkstyle error
spinoandraptos 629bf9c
Merge pull request #231 from spinoandraptos/master
spinoandraptos 8bb501a
Update class structures for start, markdiff and shuffle
yeo-menghan 17554c5
Update class structure for edit command
yeo-menghan 4380ac8
Update edit parser to reject \exitquiz as answer
yeo-menghan 716a0ba
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan d6d5231
Merge pull request #232 from yeo-menghan/master
yeo-menghan 5787175
Updated parseCommand UML diagram to standardise style and add vaue
spinoandraptos 6954a17
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
spinoandraptos afacef2
Merge pull request #233 from spinoandraptos/master
spinoandraptos c22ab1b
Updated addShortAns UML diagram to standardise style and changed to s…
spinoandraptos d1079be
Merge pull request #234 from spinoandraptos/master
spinoandraptos c11800b
Fixed formatting errors in DG Parser
spinoandraptos e6e28d1
Fixed diagram errors
spinoandraptos b12c2cd
Merge pull request #235 from spinoandraptos/master
spinoandraptos 5ced9ae
update DG diagrams for storage and ui
StevenGX12 5c2cf16
Merge pull request #236 from StevenGX12/branch-developer-guide
StevenGX12 5fd5eac
Formatted UML diagrams
spinoandraptos 60a9d9e
Merge pull request #238 from spinoandraptos/master
spinoandraptos 7ad4046
Merge branch 'master' of https://github.com/James-Hong-Jey/tp
James-Hong-Jey c6b0d97
Change Edit and Reformat Diagram
James-Hong-Jey a850ad8
Complete James PPP
James-Hong-Jey e1a02f4
Merge pull request #239 from James-Hong-Jey/master
James-Hong-Jey e6486f4
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan 4128618
Remove sequence diagrams for command markdiff and exit. Add expected …
yeo-menghan 85d49b4
Update DG for short command
yeo-menghan 9888c96
Update DG for mcq command
yeo-menghan c1bb391
Resolve BUG: extra argument after difficulty for mcq command. Update …
yeo-menghan 43561e3
Update DG for list command
yeo-menghan 0194c6e
Update DG for delete command
yeo-menghan 7834e80
Update DG for find command
yeo-menghan 773adf2
Merge pull request #240 from yeo-menghan/branch-DGIncrement
yeo-menghan 56a93a0
Complete lisizhuang-0121 project portfolio page
lisizhuang-0121 f54787f
Merge pull request #243 from lisizhuang-0121/master
lisizhuang-0121 25fa427
update DG for storage and ui
StevenGX12 1b44021
Merge pull request #244 from StevenGX12/branch-developer-guide
StevenGX12 22132c4
Assert duplicate
yeo-menghan 86f07e3
Merge pull request #245 from yeo-menghan/master
yeo-menghan f28c92b
Updated DG UML diagram, updated Juncheng PPP, updated Juncheng AboutUs
spinoandraptos c071b09
Merge pull request #247 from spinoandraptos/master
spinoandraptos eb0df18
Juncheng PPP update
spinoandraptos 4b85a90
Merge pull request #248 from spinoandraptos/master
spinoandraptos 34200a8
Add FAQ to UG
James-Hong-Jey 39f9c8f
Fix broken link in aboutus page.
lisizhuang-0121 9332ba7
Update aboutus.md
lisizhuang-0121 89ba36b
Merge pull request #250 from lisizhuang-0121/master
lisizhuang-0121 91e1fbd
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
James-Hong-Jey 7cc304e
Merge pull request #251 from James-Hong-Jey/master
James-Hong-Jey 22e1e1b
Update sizhuang PPP for submission with pagebreak
lisizhuang-0121 6a04700
Merge pull request #252 from lisizhuang-0121/master
lisizhuang-0121 d90f310
Update sizing of image
lisizhuang-0121 7d54cf6
Merge pull request #253 from lisizhuang-0121/master
lisizhuang-0121 944eff9
Update Juncheng PPP
spinoandraptos bb49546
Merge pull request #254 from spinoandraptos/master
spinoandraptos cef570f
Update Juncheng PPP
spinoandraptos 650e49d
Merge pull request #255 from spinoandraptos/master
spinoandraptos 0cfdb2d
update Guan Xiao PPP
StevenGX12 ea72f09
Merge pull request #256 from StevenGX12/master
StevenGX12 7b30af5
update Guan Xiao PPP
StevenGX12 af206cd
Merge pull request #257 from StevenGX12/master
StevenGX12 bf9e63e
no message
StevenGX12 70db269
Merge pull request #258 from StevenGX12/master
StevenGX12 9b510ac
Modify page break for li-sizhuang ppp
lisizhuang-0121 b546ab4
Merge pull request #259 from lisizhuang-0121/master
lisizhuang-0121 8b4db31
Update UG for pagination
lisizhuang-0121 7120e1b
Update developer guide
lisizhuang-0121 f6ea8d2
Merge pull request #260 from lisizhuang-0121/master
lisizhuang-0121 cff8fbf
Update UG pagination
lisizhuang-0121 7c23678
Merge pull request #261 from lisizhuang-0121/master
lisizhuang-0121 431598f
Update userguide formatting
lisizhuang-0121 ddbd9fb
Merge pull request #262 from lisizhuang-0121/master
lisizhuang-0121 b9a1c34
Change James PPP
James-Hong-Jey c35d4b4
Merge pull request #263 from James-Hong-Jey/master
James-Hong-Jey 11ab1f3
Update DG on edit \exitquiz
yeo-menghan ab310f1
Fix bug for MCQ editing
lisizhuang-0121 c302492
Merge pull request #264 from lisizhuang-0121/master
lisizhuang-0121 6d4ee88
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan 45a9548
Update white space for Edit DG
yeo-menghan 6737662
Merge pull request #265 from yeo-menghan/master
yeo-menghan 0245a26
Edits to DG
yeo-menghan d8b77f6
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan da1b912
Merge pull request #266 from yeo-menghan/master
yeo-menghan f246173
Edits to DG uml diagrams size
yeo-menghan abad8c3
Merge pull request #267 from yeo-menghan/master
yeo-menghan 687dcdd
Edits to DG uml diagrams size for overall flows
yeo-menghan e211c16
Merge pull request #268 from yeo-menghan/master
yeo-menghan ea4ae78
Reformat size for Edit Command diagrams
yeo-menghan 8aee65f
Merge pull request #269 from yeo-menghan/master
yeo-menghan 59d3190
Add page breaks for DG
yeo-menghan 86540e7
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan 7110fcb
Merge pull request #270 from yeo-menghan/master
yeo-menghan 0a4327c
Reformat page breaks for DG
yeo-menghan b433780
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
yeo-menghan 6dcefff
Merge pull request #271 from yeo-menghan/master
yeo-menghan 030c95e
UG typo
spinoandraptos b59fa88
Merge branch 'master' of https://github.com/AY2324S1-CS2113-W12-1/tp
spinoandraptos 43a89ff
Update DG and UG
spinoandraptos 747d3b3
Merge pull request #272 from spinoandraptos/master
spinoandraptos 375ab9a
Update UG and bug in parsing edit command
lisizhuang-0121 eddbf69
Merge pull request #273 from lisizhuang-0121/master
lisizhuang-0121 fe560ce
Fix bug in edit command to disallow forward slash
lisizhuang-0121 b97d0b4
Merge pull request #274 from lisizhuang-0121/master
lisizhuang-0121 f467a27
Fix bug in edit command again
lisizhuang-0121 aad0d75
Merge pull request #275 from lisizhuang-0121/master
lisizhuang-0121 f09efbd
Update CommandShuffle when array empty:
yeo-menghan 8ce79e7
Merge pull request #276 from yeo-menghan/master
yeo-menghan dc417b6
Update broken link in userguide
lisizhuang-0121 709c71f
Merge pull request #277 from lisizhuang-0121/master
lisizhuang-0121 dee992d
update Guan Xiao PPP
StevenGX12 e412a47
Merge pull request #278 from StevenGX12/master
StevenGX12 0b6325c
Fix dead link JC PPP
spinoandraptos d5dcfbf
Merge pull request #279 from spinoandraptos/master
spinoandraptos File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,9 @@ | ||
# About us | ||
|
||
Display | Name | Github Profile | Portfolio | ||
--------|:----:|:--------------:|:---------: | ||
![](https://via.placeholder.com/100.png?text=Photo) | John Doe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | ||
![](https://via.placeholder.com/100.png?text=Photo) | Don Joe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | ||
![](https://via.placeholder.com/100.png?text=Photo) | Ron John | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | ||
![](https://via.placeholder.com/100.png?text=Photo) | John Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | ||
![](https://via.placeholder.com/100.png?text=Photo) | Don Roe | [Github](https://github.com/) | [Portfolio](docs/team/johndoe.md) | ||
Display | Name | Github Profile | Portfolio | ||
--------|:--------------:|:--------------------------------------------:|:---------: | ||
![](https://www.comp.nus.edu.sg/~stevenha/images/sh7.jpg) | James Hong Jey | [Github](https://github.com/James-Hong-Jey) | [Portfolio](docs/team/jameshong.md) | ||
![](https://via.placeholder.com/100.png?text=Photo) | Guan Xiao | [Github](https://github.com/StevenGX12) | [Portfolio](docs/team/guanxiao.md) | ||
![](https://avatars.githubusercontent.com/u/111041948?s=400&u=6619a8328eba45edbc88fe01cf54efeb1f986d11&v=4) | Man Juncheng | [Github](https://github.com/spinoandraptos) | [Portfolio](docs/team/juncheng.md) | ||
![](https://i.redd.it/6do158vk2ue61.png) | Li Sizhuang | [Github](https://github.com/lisizhuang-0121) | [Portfolio](docs/team/johndoe.md) | ||
![](https://via.placeholder.com/100.png?text=Photo) | Yeo Meng Han | [Github](https://github.com/yeo-menghan) | [Portfolio](https://linkedin.com/in/yeo-meng-han/) |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
diff a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md (rejected hunks) | ||
@@ -1,29 +1,104 @@ | ||
# Developer Guide | ||
|
||
+## Table of Contents | ||
+* [Acknowledgements](#acknowledgements) | ||
+* [Design and Implementation](#design--implementation) | ||
+ * [Application Lifecycle](#application-lifecycle) | ||
+* [Product Scope](#product-scope) | ||
+* [Non Functional Requirements](#non-functional-requirements) | ||
+* [Glossary](#glossary) | ||
+* [Instructions for Manual Testing](#instructions-for-manual-testing) | ||
+ | ||
## Acknowledgements | ||
|
||
-{list here sources of all reused/adapted ideas, code, documentation, and third-party libraries -- include links to the original source as well} | ||
+1. For the main structure of the program, we have adapted the project structure | ||
+from the Individual Project of Man JunCheng at [Link](https://github.com/spinoandraptos/ip/tree/master) </li> | ||
+2. For JUnit testing, we have adapted the testing codes from the AddressBook level-2 | ||
+codes at [Link](https://github.com/se-edu/addressbook-level2)</li> | ||
+3. For the developer's guide, we have reverenced the developer's guide from AddressBook | ||
+level-3 [Link](https://se-education.org/addressbook-level3/DeveloperGuide.html) | ||
|
||
## Design & implementation | ||
|
||
-{Describe the design and implementation of the product. Use UML diagrams and short code snippets where applicable.} | ||
+### Architecture | ||
+The main execution of the QuizHub application will concern 4 components which | ||
+are the QuizHub, Ui, Parser and Command packages. | ||
+ | ||
+![](./UML/architecture.jpg) | ||
+ | ||
+`Quizhub` is the "main" class, which is responsible for starting the program, | ||
+initialising all other objects, executing commands, and shutting down. | ||
+ | ||
+`UI` is the component that interacts with the user, taking inputs and displaying | ||
+the results of the executed commands. | ||
+ | ||
+`Parser` acts as a multiplexer to determine which command to run, and what parameters | ||
+it has, based on the user input. | ||
+ | ||
+`Commands` refer to a package of individual commands with complex and specific | ||
+logic, which is later executed in Quizhub and displayed in Utility. | ||
|
||
+`Storage` is the class through which questions can be stored on the hard drive and `Utility Classes` | ||
+refer to any miscellaneous utility classes used by all the components. | ||
+ | ||
+### Application Lifecycle | ||
+ | ||
+![](./UML/lifecycle.jpg) | ||
+ | ||
+The program will begin through the `run()` call to QuizHub class, with the | ||
+necessary classes to be interacted throughout the execution. | ||
+ | ||
+The `run` function contains a loop that accepts user inputs through the `Ui` | ||
+class. The input is captured and passed to the `parseCommand()` function of the | ||
+Parser class. A command object is returned by the Parser class to be executed. | ||
+If the command is of Exit type, the Loop will exit. | ||
|
||
## Product scope | ||
+ | ||
+### Our Product | ||
+QuizHub | ||
+ | ||
### Target user profile | ||
|
||
-{Describe the target user profile} | ||
+Our target users are | ||
+* NUS Students preparing for exams | ||
+* Like to take notes in class | ||
+* Fear to miss out of important knowledge | ||
+* Like to test their understanding of knowledge | ||
+* Want to be better prepared for exams | ||
+* Majoring in computing or engineering where there are lots of exams | ||
+* Coders and tech geeks who enjoy using the CLI interface | ||
|
||
### Value proposition | ||
|
||
-{Describe the value proposition: what problem does it solve?} | ||
+Allow NUS Students to easily take notes in class and allow them to | ||
+generate quizzes to test their knowledge of understanding. By using the | ||
+QuizHub application, students can input notes taken in class in a question form, | ||
+which they could use to take quizzes to ensure their understanding of the topic. | ||
|
||
## User Stories | ||
|
||
-|Version| As a ... | I want to ... | So that I can ...| | ||
-|--------|----------|---------------|------------------| | ||
-|v1.0|new user|see usage instructions|refer to them when I forget how to use the application| | ||
-|v2.0|user|find a to-do item by name|locate a to-do without having to go through the entire list| | ||
+| Version | As a ... | I want to ... | So that I can ... | | ||
+|:-------:|:-------------------------------------:|:---------------------------------------------------------------------------------:|:-------------------------------------------------------------------------:| | ||
+| v1.0 | New student user | I can access the tutorial on how to operate the app | Easily use the app effectively for my studies | | ||
+| v1.0 | Efficient student | I can add a question and its answer easily to my question and answer bank | Build my question and answer bank quickly | | ||
+| v1.0 | Organized student | I can view all the questions and answers in my question and answer bank | Review my study materials comprehensively | | ||
+| v1.0 | Detail-oriented student | I can edit the content of a question or its answer | Correct any mistakes or make improvements | | ||
+| v1.0 | Student focused on clarity | I can delete a question and its answer from my question and answer bank | Maintain a clean and relevant set of questions for revision | | ||
+| v1.0 | Student focused on revising for tests | I can start and end a quiz which tests me on questions in my question bank | Consolidate understanding of my learnt knowledge through rigorous testing | | ||
+| v1.0 | Student focused on revising for tests | I can see my final quiz score and whether I have answered each question correctly | Identify areas of weakness to be improved upon for my tests | | ||
+| v2.0 | User seeking efficiency | I can search for a specific question within a flashcard deck | locate information quickly. | | ||
+| v2.0 | User with diverse interests | I can categorize questions by topic or subject | tailor my quizzes | | ||
+| v2.0 | User seeking variety | I can shuffle the order of questions in a flashcard deck | keep my quizzes engaging. | | ||
+| v2.0 | User aiming for improvement | I can mark a question as "difficult" or "easy" for later review | optimize my learning. | | ||
+| v2.0 | User seeking a challenge | I can practice questions in a random order | test my knowledge comprehensively. | | ||
+| v2.0 | User seeking structure | I can practice questions in a sequential order | follow a specific learning path. | | ||
+| v2.1 | user aiming for accuracy | I can see how many questions I've answered correctly | track my proficiency. | | ||
+| v2.1 | user tracking progress | I can reset the progress of a specific flashcard deck | start fresh. | | ||
+| v2.1 | time-conscious user | I can set a timer for each flashcard question during practice | manage my study sessions effectively. | | ||
+| v2.1 | goal-oriented user | I can view my overall progress and performance statistics | gauge my improvement. | | ||
+| v2.1 | user aiming for improvement | I can see how many questions I've answered incorrectly | focus on weak areas. | | ||
+| v2.1 | user committed to learning | I can review the questions I've answered incorrectly | reinforce my knowledge. | | ||
|
||
## Non-Functional Requirements | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
!include Style.puml | ||
@startuml | ||
title Initial State | ||
|
||
object ":QuestionList" as QuestionList | ||
|
||
object ":Question1" as Question1 | ||
|
||
object ":Question2" as Question2 | ||
|
||
object ":Question3" as Question3 | ||
|
||
QuestionList --> Question1 | ||
QuestionList --> Question2 | ||
QuestionList --> Question3 | ||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
@startuml | ||
!theme plain | ||
title Shuffle to Storage Flow | ||
|
||
class QuestionList { | ||
- allQns: List<Question> | ||
+ addQuestion(question: Question) | ||
+ removeQuestion(question: Question) | ||
+ shuffleQuestions() | ||
+ saveToFile() | ||
+ loadFromFile() | ||
} | ||
|
||
class Question { | ||
- text: String | ||
- answer: String | ||
+ getText() | ||
+ getAnswer() | ||
} | ||
|
||
QuestionList --|> Question | ||
|
||
class Database { | ||
- data: ArrayList<Question> // Represents your data storage mechanism | ||
+ saveData(question: Question, answer: getAnswer) | ||
+ loadData(key: Question): getAnswer | ||
} | ||
|
||
QuestionList --|> Database : Data Storage | ||
|
||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
!include Style.puml | ||
@startuml | ||
title After Command "short qn4/ans4/module/difficulty" | ||
|
||
object ":QuestionList" as QuestionList | ||
|
||
object ":Question1" as Question1 | ||
|
||
object ":Question2" as Question2 | ||
|
||
object ":Question3" as Question3 | ||
|
||
object ":Question4" as Question4 | ||
|
||
QuestionList --> Question1 | ||
QuestionList --> Question2 | ||
QuestionList --> Question3 | ||
QuestionList --> Question4 : Add new question | ||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
!include Style.puml | ||
@startuml | ||
title After Command "delete 2" | ||
|
||
object ":QuestionList" as QuestionList | ||
|
||
object ":Question1" as Question1 | ||
|
||
object ":Question3" as Question3 | ||
|
||
object ":Question4" as Question4 | ||
|
||
QuestionList --> Question1 | ||
QuestionList --> Question3 | ||
QuestionList --> Question4 | ||
@enduml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
@startuml | ||
!theme plain | ||
title Command Edit Sequence Diagram | ||
|
||
actor User | ||
participant Parser | ||
participant CommandEdit | ||
participant QuestionList | ||
participant Question | ||
|
||
User -> Parser: Enters "edit [question number] /description [description] or /answer [answer]" | ||
Parser -> CommandEdit: Calls parseEditCommand(userInput) | ||
CommandEdit -> Parser: Returns CommandEdit instance | ||
Parser -> CommandEdit: Executes executeCommand(ui, dataStorage, questions) | ||
CommandEdit -> QuestionList: Calls editQuestionByIndex(index, newDescription, newAnswer) | ||
QuestionList -> Question: Calls editQuestion(newDescription, newAnswer) | ||
Question -> Question: Edits question description and/or answer | ||
Question --> QuestionList: Notifies edit completion | ||
QuestionList --> CommandEdit: Notifies edit completion | ||
CommandEdit --> Parser: Notifies edit completion | ||
Parser --> User: Displays edit completion message | ||
|
||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
@startuml | ||
!theme plain | ||
title Command Edit Flow | ||
start | ||
|
||
:User initiates question edit; | ||
:Retrieve the question to edit; | ||
if (Choose "Edit Description" or "Edit Answer") then (Description) | ||
:User selects "Edit Description"; | ||
:Enter new description; | ||
elseif (Answer) | ||
:User selects "Edit Answer"; | ||
:Enter new answer; | ||
endif | ||
|
||
:Update the question with new information; | ||
:Display confirmation message; | ||
stop | ||
|
||
@enduml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
@startuml | ||
!theme plain | ||
title Command Exit Sequence Diagram | ||
|
||
actor User | ||
participant Ui | ||
participant CommandExit | ||
participant Storage | ||
|
||
User -> Ui: Decides to exit the application | ||
Ui -> CommandExit: Executes "bye" command | ||
CommandExit -> Ui: Signals the program to exit | ||
Ui -> Storage: Saves any unsaved data | ||
Storage --> Ui: Data saved successfully | ||
Ui -> Ui: Displays exit message | ||
Ui --> User: Displays exit message | ||
|
||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
@startuml | ||
!theme plain | ||
|
||
title Mark Difficulty Sequence Diagram | ||
actor User | ||
participant Parser | ||
participant CommandMarkDifficulty | ||
participant QuestionList | ||
participant Question | ||
|
||
User -> Parser: Enters "markdiff [question number] /[question difficulty]" | ||
Parser -> CommandMarkDifficulty: Calls parseMarkDiffCommand(userInput) | ||
CommandMarkDifficulty -> Parser: Returns CommandMarkDifficulty instance | ||
Parser -> CommandMarkDifficulty: Executes executeCommand(ui, dataStorage, questions) | ||
CommandMarkDifficulty -> QuestionList: Calls markQuestionDifficulty(index, qnDifficulty, showMessage) | ||
QuestionList -> Question: Calls markDifficulty(qnDifficulty) | ||
Question --> QuestionList: Notifies difficulty marked | ||
QuestionList --> CommandMarkDifficulty: Notifies difficulty marked | ||
CommandMarkDifficulty --> Parser: Notifies difficulty marked | ||
Parser --> User: Displays confirmation message | ||
|
||
@enduml |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should add an additional activation bar when calling a method inside the same class (see screenshot below):