Skip to content

Commit

Permalink
Merge pull request #202 from AY1920S1-CS2103T-F14-1/ak-doc-update
Browse files Browse the repository at this point in the history
ak design
  • Loading branch information
limhawjia committed Nov 11, 2019
2 parents 174e6de + 4345287 commit cbe8821
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 9 deletions.
23 changes: 16 additions & 7 deletions docs/DeveloperGuide.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -648,16 +648,25 @@ The sequence is as follows:
2. The BookmarkCommand object calls getUserSelectedQuestion(), activating an instance of QuestionsLogic.
3. The QuestionsLogic object returns userSelectedQuestion, which is the question the user chose to bookmark.
4. If userSelectedQuestion is already bookmarked, the BookmarkCommand object calls notifyUserNoActionTaken() as a response to the user. Else, the BookmarkCommand object calls bookmarkUserSelectedQuestion(), and then calls notifyUserBookmarkSuccess() as a response to the user.
//end::bookmark[]

=== Program Evaluation Panel
The *Code Result Panel* is located beneath the *Problem Display Panel*. It is responsible for showing the results after
the user-submitted code is evaluated for its correctness against a pre-defined set of test cases.
//tag::design[]
==== Design considerations
===== Aspect : How to bookmark a question
|===
|Alternative 1 : Add an instance boolean attribute, isBookmarked, to the Question class | Alternative 2 : Create a global list of bookmarked questions, named bookmarkedQuestions

| Pro : Better Object Oriented Design
| Pro : Easy to implement

| Con : All unit tests pertaining to Question objects have to be modified
| Con : Repeated reference to the global list, coupling is higher
|===

It takes in a `List` of `TestCaseResults` which contains useful information on how the user's program fared against
the various test cases.
Decision: Alternative 1 +
Alternative 1 was chosen because good software engineering practices were prioritised over ease of implementation. Firstly, Object Oriented Design from AB3 was maintained. Next, we prevented an increase in coupling, which would reduce the testability of the project.
//end::design[]

These information are then displayed on the Code Result Panel through standard JavaFX controls.
//end::bookmark[]

=== Editor Panel
The editor panel is the panel right next to the *Problem Display Panel* and the *Program Evaluation Panel*. The editor panel
Expand Down
6 changes: 4 additions & 2 deletions docs/team/alxkohh.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ The `bookmark` command allows the user to add a question to the list of bookmark
*** Updated README Page to be aligned with the app's full release (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/95[#95], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/125[#125])
*** Wrote About Us Page (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/14[#14], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/19[#19], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/96[#96], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/116[#116])
*** Wrote Contact Us Page (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/15[#15], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/20[#20], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/98[#98])
*** Contributed to the User Guide for Dashboard, Bookmark, DeleteBookmark, Help (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/174[#174])
*** Contributed to the Developer Guide for Ui component, Dashboard, BookmarkCommand (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/79[#79])
*** Contributed to the User Guide for Dashboard, Bookmark, DeleteBookmark, Help (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/174[#174], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/197[#197])
*** Contributed to the Developer Guide for Ui component, Dashboard, Bookmark (https://github.com/AY1920S1-CS2103T-F14-1/main/pull/79[#79], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/193[#193], https://github.com/AY1920S1-CS2103T-F14-1/main/pull/197[#197])
** Tools:
*** Provided assistance with GUI development through expertise with Gluon Scene Builder

Expand All @@ -71,3 +71,5 @@ include::../UserGuide.adoc[tag=help]
include::../DeveloperGuide.adoc[tag=ui]
include::../DeveloperGuide.adoc[tag=bookmark]
include::../DeveloperGuide.adoc[tag=manualtesting]
include::../DeveloperGuide.adoc[tag=design]

0 comments on commit cbe8821

Please sign in to comment.