Skip to content
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

[v1.1][T09-B3] ProgressChecker #46

Open
wants to merge 333 commits into
base: master
Choose a base branch
from

Conversation

EdwardKSG
Copy link

This pull request only contains changes of documentations. Enhancements can be found in our team repo.

@nus-se-pr-bot
Copy link

Hi @EdwardKSG, your pull request title is invalid.

For phase A, it should be in the format of [Learning Outcome ID][Team ID] Your Name, where [Learning Outcome ID] has no dashes or spaces (e.g. [W3.1a]) and [Team ID] has one dash only and no spaces (e.g. [W14-A2] means Wednesday 2pm (14 hrs), Phase A, Team 2).

For phase B, it should be in the format of [v1.x][Team ID] Product Name.

Please follow the instructions given strictly and edit your title for reprocessing.

Submit only one learning outcome per pull request (unless otherwise stated in instructions) and do remember to create your branches from the commit where the master branch is pointing at so that each PR you submit only consist of commits meant for the activity.

Note: this comment is posted by a bot. If you believe this is done in error, please create an issue at cs2103-pr-bot and add a link to this PR.

Copy link

@jeffryhartanto jeffryhartanto left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@EdwardKSG @iNekox3 @Livian1107 Some comments added. I cannot tag Aditya, please resolve this. Please rename the PR.

README.adoc Outdated
@@ -1,10 +1,10 @@
= Address Book (Level 4)
ifdef::env-github,env-browser[:relfileprefix: docs/]

https://travis-ci.org/se-edu/addressbook-level4[image:https://travis-ci.org/se-edu/addressbook-level4.svg?branch=master[Build Status]]
https://travis-ci.org/CS2103JAN2018-T09-B3/addressbook-level4[image:https://travis-ci.org/CS2103JAN2018-T09-B3/addressbook-level4.svg?branch=master[Build Status]]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job for updating the badges.

@@ -782,13 +782,23 @@ See this https://github.com/se-edu/addressbook-level4/pull/599[PR] for the step-

*Target user profile*:

* is taking CS2103/CS2103T in NUS
* wants to keep track on his/her learning progress
* is willing to have good team management
* has a need to manage a significant number of contacts

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are you sure this point is still relevant?

*Value proposition*: manage contacts faster than a typical mouse/GUI driven app
*Value proposition*:

* never miss LOs hidden in the nested collapsible list

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any? If so, please submit an issue to the its github repo.

* never miss LOs hidden in the nested collapsible list
* keep track of your own progress on a week by week basis
* keep track of your teammates' completion of TO-DO list(at most 20 tasks per day) and learning progress (providing proof for peer evaluation)
* view the teammates' weekly plan in phase B (to know the upcoming updates even before they send any pull requests to github repo)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I said in the tutorial, it might overlap with the issue tracker functionality.


|`* * *` |new user |fill in my full name and phone number (strictly 8 numbers) |provide necessary information for the platform maintenance

|`* * *` |new user |fill in optional fiels such as faculty, year of study etc |help my classmates know be better

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is optional, shouldn't it has two stars?

*MSS*

1. User requests to view a specific week
2. AddressBook shows content of the specified week

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"content" is unclear.. Does it include the to-do list? I guess not.

+
Use case ends.

* 3a. The question index does not exist.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How come suddenly there is an "index" mentioned here?

1. User requests to view a specific week
2. AddressBook shows content of the specified week
3. User requests to key in and save an answer to a question
4. AddressBook takes in input and saves

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May be these steps can be split into more specific steps.

@@ -852,6 +972,10 @@ _{More to be added}_
. Should work on any <<mainstream-os,mainstream OS>> as long as it has Java `1.8.0_60` or higher installed.
. Should be able to hold up to 1000 persons without a noticeable sluggishness in performance for typical usage.
. A user with above average typing speed for regular English text (i.e. not code, not system admin commands) should be able to accomplish most of the tasks faster using commands than using the mouse.
. The product may need 3-5 minutes to build up for the first time.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove doubtful words such as "may", "might" and so on.

. The product may need 3-5 minutes to build up for the first time.
. The data cannot be retrieved from outside
. User need to log in with their unique ID and corresponding password
. User can only view the information of their teammates

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the last three points are not NFRs.

@EdwardKSG EdwardKSG changed the title [v1.x][T09-B3] Peer Progress [v1.1][T09-B3] ProgressChecker Mar 15, 2018
https://www.codacy.com/app/damith/addressbook-level4?utm_source=github.com&utm_medium=referral&utm_content=se-edu/addressbook-level4&utm_campaign=Badge_Grade[image:https://api.codacy.com/project/badge/Grade/fc0b7775cf7f4fdeaf08776f3d8e364a[Codacy Badge]]
https://gitter.im/se-edu/Lobby[image:https://badges.gitter.im/se-edu/Lobby.svg[Gitter chat]]
https://travis-ci.org/CS2103JAN2018-T09-B3/main[image:https://travis-ci.org/CS2103JAN2018-T09-B3/main.svg?branch=master[Build Status]]
https://coveralls.io/github/CS2103JAN2018-T09-B3/main?branch=master[image:https://coveralls.io/repos/github/CS2103JAN2018-T09-B3/main/badge.svg?branch=master[Coverage Status]]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good job for updating the badges. You can try setting up the other badges.

** More test cases, including automated GUI testing.
** Support for _Build Automation_ using Gradle and for _Continuous Integration_ using Travis CI.
* This is a desktop Progress Checker application. It has a GUI but most of the user interactions happen using a CLI (Command Line Interface).
* It is a Java sample application intended for students taking module CS2103/T as a means of tracking both their learning outcomes and practice exercises.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess you can remove the word "sample".

_{The dummy content given below serves as a placeholder to be used by future forks of the project.}_ +
ProgressChecker was developed by the https://github.com/CS2103JAN2018-T09-B3/main[T09-B3] team. +
ProgressChecker helps to remind students learning outcomes every week. +
With a simple click, students will never miss their weekly LOs again. +

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well, it should use CLI, right? So, "simple command" might be better?

ProgressChecker helps to remind students learning outcomes every week. +
With a simple click, students will never miss their weekly LOs again. +
It also keeps track of the progress of each team member. +
Thus it is convenient for teammates to compare help each other. +

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

compare help ??

*MSS*

1. User requests to view tasks in a specific week
2. AddressBook shows tasks in the specified week

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

AddressBook? Use your app name, instead.

1. User types find
2. ProgressCheck automatically shows the list dynamically without the user needing to press enter key
3. User need not need to type the whole name, substrings will generate results
4. ProgressCheck displays the necessary results

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This MSS is a bit weird, especially step 3. Recall what a MSS is and revise this MSS.

*MSS*

1. User requests to view their profile
2. AddressBook shows the profile of the user

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these steps necessary? And don't use AddressBook.

2. AddressBook shows the profile of the user
3. User requests to upload a new photo to the profile
4. AddressBook adds a new photo to the profile of user
5. Profile displays the new photo

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Profile cannot displays the new photo.


== Introduction

AddressBook Level 4 (AB4) is for those who *prefer to use a desktop app for managing contacts*. More importantly, AB4 is *optimized for those who prefer to work with a Command Line Interface* (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, AB4 can get your contact management tasks done faster than traditional GUI apps. Interested? Jump to the <<Quick Start>> to get started. Enjoy!
ProgressChecker is for those who *prefer to use a desktop app for managing contacts*. More importantly, ProgressChecker is *optimized for those who prefer to work with a Command Line Interface* (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, ProgressChecker can get your learning outcome tasks done faster than traditional GUI apps. Interested? Jump to the <<Quick Start>> to get started. Enjoy!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

managing contacts?


=== Editing a person : `edit`
Sorts all persons in the address book with their names in alphabetical order. +

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No more address book.

@jeffryhartanto
Copy link

jeffryhartanto commented Mar 17, 2018

@EdwardKSG @iNekox3 @Livian1107 @AdityaA1998 Some comments added. Good job for passing V1.1 milestone. In general, please refactor necessary part of the code and document, e.g. removing AddressBook. Make sure that user stories and the features mentioned in the user guide are similar.

EdwardKSG and others added 13 commits March 18, 2018 21:17
* fix an error in aboutUs while merging (possibly)

* change app name. update all occurence in strings, file names, package names etc. accordingly

* fix mistakes during refactor

* fix styling issues caused by refactor (eg. import file lexicographical order, line length)

* fix some mis-replaced strings

* further refactor changes
* update developer guide

* update DG
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement
Merge branch 'master' into Documentation-glossary
kohyeeru and others added 30 commits April 12, 2018 02:10
…ed answer (#212)

* ExerciseListCard: add separator between question and answer

* DarkTheme: style question number

* Add ExerciseBuilder class for testing

* Add AnswerCommandTest for testing

* SampleDataUtil: add line break to exercise question

* Remove getQuestionNumber method and add getWeekNumber method

* Add isWithinRange method

* ViewCommand: modify to execute results differently based on type of user input

* ParserUtil: modify to parse for type that comes with potential index

* ViewCommandParser: modify to return ViewCommand with type, weekNumber and isWeekToggle values

* ExerciseCard: change question index color and reveal suggested answer when question has been answered

* Add styles for question index color and suggested answer text color

* StringUtil: remove trailing whitespace

* ViewCommandTest: update test cases

* Update view command and its parser test cases

* ExerciseBuilder: fix checkstyle violation

* SampleDataUtil: add week 2's exercises

* SampleDataUtil: add week 3's exercises

* SampleDataUtil: add week 4's exercises

* SampleDataUtil: add week 5's exercises

* SampleDataUtil: add week 6's exercises

* SampleDataUtil: add week 7's exercises

* SampleDataUtil: add week 8's exercises

* SampleDataUtil: add week 9's exercises

* SampleDataUtil: add week 10's exercises

* SampleDataUtil: add missing bracket

* AnswerCommand: modify to display the correct week's exercises after answering

* ModelManager: modify to load latest week's exercises on start up

* Centralize the values of min and max number of weeks in ViewCommand class

* Messages: modify invalid exercise index message

* SampleDataUtil: remove trailing whitespaces

* Add collate info

* StringUtil: update header comment for isWithinRange method

* ViewCommand: modify variable name

* Add collate info

* ViewCommandParser: change variable name

* Model: remove unused variable

* UserGuide: update view and answer command description

* Fix checkstyle violation

* UserGuide: correct undo redo reference under answer command

* Add missing bracket

* DayTheme: add EOF line break
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* refactor two classes to Util classes.
add a check to complete/reset task methods to have more specific returning messages and avoid redundant processing

* allow viewing tasks by week

* deal with index in filtered list

* modify exceptons, error messages and displayed information to avoid being misleading to the users.

* minor UI update

* update test

* checkstyle issue

* upgrade UI of task list

* add a command to view the webpage of a certain task based on its index in the list

* change import order
* update file method

* add a new class PhotoPath

* add a new class UniquePhotoList

* add exceptions for photo path

* update methods in class FileUtil

* update upload command, allow user to upload photo from their PC

* update parser

* update related methods of class PhotoPath

* check style

* display profile photo

* check style

* Close issue on github (#149)

* Created a close issue class

* Created CloseIssueCommandParser

* Completed close issue command. Implementing it in model is pending.

* Implementing closeeIssue on model is done

* Added closeIssueonGithub in ModelStub

* Added CloseIssueCommand in autocomplete

* Update CloseIssueCommand.java

* Update CloseIssueCommandParser.java

* Read exercises from data/progresschecker.xml if exist, otherwise read from sample data (#153)

* Add Exercise class

* Add QuestionIndex class

* Add QuestionType class

* Add Question class

* Add ModelAnswer and StudentAnswer classes

* Question: modify header comment

* Exercise: split components into objects

* Add ExerciseCard class

* Change exercise components variable name to value

* Fix checkstyle violation

* Add ExerciseListPanel class

* Fix checkstyle violation

* Add ExerciseListPanel fxml

* MainWindow: initialize ExerciseListPanel

* MainWindow: replace ExercisePanel with ExerciseListPanel

* Add UniqueExerciseList class

* LogicManager: add getFilteredExerciseList method

* Logic: add getFilteredExerciseList method

* ModelManager: add getFilteredExerciseList method

* ProgressChecker: add getExerciseList method

* Model: add getFilteredExerciseList method

* ReadOnlyProgressChecker: add getExerciseList method

* PageLoadChangedEvent: add collate info

* Add ExerciseListCard fxml

* Add Exercise exceptions

* Add XmlAdaptedExercise class

* UniqueExerciseList: add set and add exercises methods

* ProgressChecker: add set exercises and exercise-level operations

* XmlSerializableProgressChecker: initialize exercises

* Fix checkstyle violation

* Format exercises relevant code in model and resources view

* UserPrefs: add default exercises path and get method

* Add exercises method in storage interfaces

* Implement exercises methods specified in storage interfaces

* MainApp: add exercises argument in initialization

* PersonListCard: change javafx version from 9 back to 8

* ExerciseListCard: fix escape sequence typo

* ExerciseCard: remove questionType

* XmlAdaptedExercise: fix wrong parameter

* ProgressChecker: add setExercises in resetData

* SampleDataUtil: add week 3 sample exercises

* ExerciseListCard: reformat layout

* Remove exercises related components in storage

* SampleDataUtil: fix checkstyle violation

* Fix compilation errors in model test cases

* Model: fix import order

* conflict

* solve conflict

* conflict

* update

* update

* update

* update image

* move info of user from person card to profile panel

* update related panel

* update

* update the order of attributes in add command

* update test

* update test

* update test
Solved the wrong issue id problem
add Theme command to change the theme
* add my portfolio

* update UG

* update style

* update porfolio
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* add portfolio of eddie
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* add two filter of viewing tasks: [compulsory] and [submission]

* checkstyle issue
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* add collate files for v1.5rc
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* add week 2 task
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* display the filter in the browser panel to remind the user
* Change fxml to use java 8

* DayTheme: update theme color scheme

* DayTheme: fix invalid selected border color value

* DarkTheme: change theme color scheme

* MainWindow: change to use handleDayTheme method to initialize default theme

* Remove temporary comments in css

* yeeru: add changing of color scheme to project portfolio

* HelpCommandSystemTest: revert test deletion and update assert statement

* HelpCommandSystemTest: remove trailing whitespaces
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* add tests for all eddie's parser

* update and add tests for the first browser, add tests for the second browser

* add some tests for ViewTaskListCommand

* add tests for task-relevant commands

* checkstyle issue

* recovered a test

* store task information in java object

* checkstyle issue

* update wrong tests, change implementation of adding task (make it a little bit faster, but still damn slow.......)

* checkstyle issue
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* change the structure of some code
remember the previous filter of viewtasklistcommand
make the task list color theme match course website
* Created a ListIssuesCommand

* Created ListISsuesCommandParser

* Added the list isseus command to the ProgressCheckerParser

* Implemented listissues command

* Checkstyle errors resolved

* Checkstyle errors resolved

* Resolved minor bugs

* Resolved minor bugs

* Changed the select command test case

* Changed the select command test case

* Created an issueBuilder in test

* Added issues in TypicalTabTypes test file

* Added few test cases

* add tests

* Added createissue test cases

* Added few more test cases

* Checkstye errors resolved

* Added github credentials test

* Added github username test

* Added github passcode test

* Created an GitDetailsBuilder class

* Added more test cases

* Added a listissues parser test

* Added CreateIssueCommandTest

* CloseIssueCommand test added

* Added moer test cases

* Rectified few errors

* Added IssueUtil class and TypicalIssue class

* Added systemtest for createIssueCommand

* Added more tests
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* documentation_eddie

* delete a token

* add token

* update token and minor changes
* yeeru: update description and trim content

* SampleDataUtil: trim number of persons in default data

Limit up to 4 persons as a CS2103/T team consists of only 4 members

* yeeru: add eof newline

* DeveloperGuide: update feature contribution

* DeveloperGuide: update project scope, user stories and use cases

* yeeru: add reference to use cases from developer guide

* DeveloperGuide: add preface to feature contribution

* DeveloperGuide: add icons legend

* Mention CS2103/T module website in introduction

* UserGuide: update view and answer description

* UserGuide: update view and answer command in summary

* UserGuide: reformat text in FAQ section

* UserGuide: correct formatting, add images

* UserGuide: add addition heading and update ui image

* DeveloperGuide: format view and answer use cases

* DeveloperGuide: do formatting and remove outdated information

* DeveloperGuide: add implementation for view command

* UserGuide: indicate that clear command is an undoable command

* DeveloperGuide: add design considerations for answer command

* DeveloperGuide: add answer command current implementation

* Trim ppp content

* UserGuide: add complete task step under quick start

* DeveloperGuide: remove trailing whitespace

* UserGuide: correct formatting for header

* UserGuide: change warning to important icon

* CommandFormatListUtil: add answer command for tab auto completion

* UserGuide: correct formatting under quick start nl command

* UserGuide: add unicode glyph icon for important

* UserGuide: remove plus sign in introduction

* UserGuide: reformat syntax with equal signs

* UserGuide: fix formatting

* UserGuide: introduce linebreak after header

* ExerciseBuilder: correct header title

* Comment out close and reopen issue tests
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* add pictures for inllustration in UG
* Add AnswerCommandTest class

* Add view and answer command tests

* ViewCommandParserTest: remove trailing whitespace

* Fix checkstyle violation
* UserGuide: upload ui images

* Update Ui image from jpg to png
* update background

* Change color scheme for both light and dark themes (#243)

* Change fxml to use java 8

* DayTheme: update theme color scheme

* DayTheme: fix invalid selected border color value

* DarkTheme: change theme color scheme

* MainWindow: change to use handleDayTheme method to initialize default theme

* Remove temporary comments in css

* yeeru: add changing of color scheme to project portfolio

* HelpCommandSystemTest: revert test deletion and update assert statement

* HelpCommandSystemTest: remove trailing whitespaces

* Change color scheme for both light and dark themes (#243)

* Change fxml to use java 8

* DayTheme: update theme color scheme

* DayTheme: fix invalid selected border color value

* DarkTheme: change theme color scheme

* MainWindow: change to use handleDayTheme method to initialize default theme

* Remove temporary comments in css

* yeeru: add changing of color scheme to project portfolio

* HelpCommandSystemTest: revert test deletion and update assert statement

* HelpCommandSystemTest: remove trailing whitespaces

* Change color scheme for both light and dark themes (#243)

* Change fxml to use java 8

* DayTheme: update theme color scheme

* DayTheme: fix invalid selected border color value

* DarkTheme: change theme color scheme

* MainWindow: change to use handleDayTheme method to initialize default theme

* Remove temporary comments in css

* yeeru: add changing of color scheme to project portfolio

* HelpCommandSystemTest: revert test deletion and update assert statement

* HelpCommandSystemTest: remove trailing whitespaces

* remove border

* remove boarder

* remove

* update

* update

* upload some icons for profile

* update UI

* update author

* update UI

* update test for profile panel

* update style

* update

* update test

* update test

* update

* update

* update

* update

* resolve conflict

* add file test

* update test

* update

* resolve conflict

* update

* add test for photopath

* update test

* update

* update

* update photopath test

* update test

* reset
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* find out some magic number etc.
* Updated DG

* DG

* DG

* DG

* DG

* Final DG

* checkstyle

* Final

* Final

* checkstyle
* fix an error in aboutUs while merging (possibly)

* add feature contribution to developer guide

* delete a minor enhancement

* final
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants