- Ensure you know tP expectations
- Start implementing v1.0
- Use GitHub to manage milestones
- Add some JUnit Tests
Lookout for these mistakes which were the most common in previous runs of the module:
- Not following the required phrasing style for the first sentence of Java method header comments.
- Not following the convention for Git commit message subject.
Caution: This is near-impossible to rectify later, after PR containing the commits have been merged.
Reason: While Git allows editing past commits, it changes their timestamp, which affects your weekly code contribution stats (which are factored into evaluating the consistency of your coding work over the project duration)
1 Ensure you know tP expectations
- If you haven't done so already, make sure you know individual and team expectations of the tP
2 Start implementing v1.0
You may code from any of the below to be used in your tP, provided you give credit to the source (and do not claim such code as yours).
- The iP code of any of your team members, or of any other person in the module.
- Code from AddressBook-Level2 or any code used in module activities e.g., personbook
Start implementing v1.0, by adding code in small steps, while working in parallel, aiming to produce a VERY simple working version after one week, and a bit more functional version at the end of iteration (i.e., after two weeks).
See the panel below for our recommendations on the project workflow.
3 Use GitHub to manage milestones
- We recommend using the GitHub issue tracker and its milestones feature to manage your project milestones, as explained in the following panels.
4 Add some JUnit Tests
We recommend that each person adds some JUnit tests to test their tP code.
Some examples from AddressBook-Level2:
-
seedu.addressbook.common.Utils.java
Tests:seedu.addressbook.common.UtilsTest.java
Note how the test class is in the same package as the SUT (although in a different folder). Advantage: the test class has access to all non-private members of the SUT, including package private members. - SUT:
seedu.addressbook.parser.Parser.java
Tests:seedu.addressbook.parser.ParserTest.java
Note how some of the test methods follow a different naming convention e.g.,parse_emptyInput_returnsIncorrect()
. Cross-check the coding standard to confirm if this naming convention is allowed. - SUT:
seedu.addressbook.data.AddressBook.java
Tests:seedu.addressbook.data.AddressBookTest.java
-