This site is from a past semester! The current version will be here when the new semester starts.

Week 13 [Fri, Apr 12th] - Project

tP: v2.1

  1. Submit deliverables Mon, Apr 15th 2359
  2. Submit the demo video Wed, Apr 17th 2359
  3. Prepare for the practical exam
  4. Attend the practical exam during the lecture on Fri, Apr 19th

tP: v2.1

1 Submit deliverables Mon, Apr 15th 2359

  • Deadline for all v2.1 submissions is Mon, Apr 15th 23:59:00 unless stated otherwise. Note that 23:59:01 is considered late, as per the Canvas deadline mechanism.
  • Penalty for late submission (per file):
    -1 mark for missing the deadline (up to 2 hour of delay).
    -2 for an extended delay (up to 24 hours late).
    Penalty for delays beyond 24 hours is determined on a case by case basis.
    • Even a one-second delay is considered late, irrespective of the reason.
    • For submissions done via Canvas, the submission time is the timestamp shown by Canvas.
    • When determining the late submission penalty, we take the latest submission even if the same exact file was submitted earlier. Do not submit the same file multiple times if you want to avoid unnecessary late submission penalties.
    • The whole team is penalized for problems in team submissions e.g., a -1 penalty for a team submission will be a -1 penalty for each team member.
      Only the respective student is penalized for problems in individual submissions.
  • Submit via the Canvas assignment we have set up. CS2113T students: documents should be submitted to both courses. It's not enough to submit to CS2101 side only.
  • Follow submission instructions closely. Any non-compliance will be penalized. e.g. wrong file name/format.
    Canvas might automatically add a file name suffix (e.g., *-1.pdf, *-2.pdf, ...) if you upload a file multiple times. You can safely ignore that suffix.
  • Do not update the code during the 14 days after the deadline. Get our permission first if you need to update the code in the repo during that code-freeze period.
    • You can update issues/milestones/PRs even during the code-freeze period.
    • [CS2113T only] You can update the source code of the docs (but not functional/test code) if your CS2101 submission deadline is later than our submission deadline. However, a code-freeze period of 1-2 days is still recommended, so that there is a clear gap between the tP submission and subsequent docs updates.
    • You can update the code during the code-freeze period if the change is related to a late submission approved by us.
    • You can continue to evolve your repo after the code-freeze period.

Submissions:

Don't take PDF conversion lightly: To convert the UG/DG/PPP into PDF format, go to the generated page in your project's github.io site and use this technique to save as a pdf file. Using other techniques or not following the settings suggested in the given technique can result in issues such as missing background colors, poor quality resolution , unnecessarily large files (the last two can be considered as bugs).

The PDF versions of the UG/DG/PPP should be usable by the target readers, even if not as neat/optimized as the Web versions. For example, margins and page breaks need not be optimized, but they should not hinder the reader either. Assume some will occasionally choose the PDF version over the Web version e.g, for printing, offline viewing, annotating etc.

PE uses the PDF versions of UG/DG, not the Web version! Any problems in those PDF files (e.g., broken links, messed up formatting) can be reported as bugs.

Ensure hyperlinks in the pdf files work. Broken/non-working hyperlinks in the PDF files will be considered as bugs and will count against your project score. Again, use the conversion technique given above to ensure links in the PDF files work.

PDF files should,

  • be paginated at a reasonable page size (e.g., A4). Reason: single-page PDF files don't work well in some PDF viewers, and not suitable for printing either.
  • allow copying text so that readers can copy text from them (e.g., copy an example command from the UG).

Try the PDF conversion early. If you do it at the last minute, you may not have time to fix any problems in the generated PDF files (such problems are more common than you think).

Side benefits for early submissions: Given that using buffers to reduce the risk of deadline overruns is a learning outcome of this course, we strongly encourage setting an internal submission deadline a few hours earlier than the actual deadline. As an incentive, we plan to perform some checks on early submissions and inform you if we found issues with your submission (e.g., incorrect file name/format), thus giving you a chance to fix them before the deadline and avoid a penalty for it.

You may use automated tools to improve documentation: e.g., tools such as Grammarly may be used to improve the writing quality and find grammar errors.

The icon indicates team submissions. Only one person need to submit on behalf of the team but we recommend that others help verify the submission is in order.
We will not entertain requests to limit late penalties of team submissions to one person even if the delay was one person's fault. That is, the responsibility (and the penalty) for team submissions are to be shared by the whole team rather than burden one person with it.

  • Product:
    • Do a release on GitHub, tagged appropriately e.g., v2.1 or v2.1b.
    • Upload the jar file to Canvas.
      File name: [team ID][ProductName].jar e.g. [CS2113-T09-2][ContactsPlus].jar
      Recommended to avoid spaces and special characters in the product name as it can cause problems when running the JAR file using the command line.
      This name requirement is for the JAR file you upload to Canvas only. You may name the JAR file you upload to GitHub in any reasonable way.

  • Source Code: Push the code to GitHub and tag with the version number. Source code (please ensure the code reported by RepoSense as yours is correct; any updates to RepoSense config files or @@author annotations after the deadline will be considered a late submission). Note that the quality of the code attributed to you accounts for a significant component of your final score, graded individually.

  • User Guide:
    • Convert to pdf and upload to Canvas.
    • File name: [TEAM_ID][ProductName]UG.pdf e.g.[CS2113-T09-2][ContactsPlus]UG.pdf

  • Developer Guide:
    • submission is similar to the UG
    • File name: [TEAM_ID][ProductName]DG.pdf e.g. [CS2113-T09-2][ContactsPlus]DG.pdf

  • Project Portfolio Page (PPP):
    • HTML version: make available on github.io
    • PDF file: submission is similar to the UG
      File name: [TEAM_ID][Your full Name as Given in Canvas]PPP.pdf e.g.[CS2113-T09-2][Leow Wai Kit, John]PPP.pdf
      Use - in place of / if your name has it e.g., Ravi s/o VeeganRavi s-o Veegan (reason: Windows does not allow / in file names)

  • Product Website: Update website (home page, AboutUs.md etc.) on GitHub. Ensure the website is auto-published.

2 Submit the demo video Wed, Apr 17th 2359

3 Prepare for the practical exam

  • After reading the above 2, we strongly recommend you read ahead the info given in the item 6 below as well, to know in advance what will happen during the PE itself.

4 Attend the practical exam during the lecture on Fri, Apr 19th

  • Ensure you read the instructions on PE Preparation (given in item 5 above)
  • Attend the practical test, to be done during the lecture.