This site is from a past semester! The current version will be here when the new semester starts.
CS2113/T 2020 Aug-Dec
  • Full Timeline
  • Week 1 [Mon, Aug 10th]
  • Week 2 [Fri, Aug 14th]
  • Week 3 [Fri, Aug 21st]
  • Week 4 [Fri, Aug 28th]
  • Week 5 [Fri, Sep 4th]
  • Week 6 [Fri, Sep 11th]
  • Week 7 [Fri, Sep 18th]
  • Week 8 [Fri, Oct 2nd]
  • Week 9 [Fri, Oct 9th]
  • Week 10 [Fri, Oct 16th]
  • Week 11 [Fri, Oct 23rd]
  • Week 12 [Fri, Oct 30th]
  • Week 13 [Fri, Nov 6th]
  • Textbook
  • Admin Info
  • Report Bugs
  • Forum
  • Gitter (Chat)
  • Instructors
  • Announcements
  • Files
  • Tutorial Schedule
  • repl.it link
  • repl.it link (duplicated)
  • Java Coding Standard
  • Git Conventions
  • Forum Activities Dashboard
  • Participation Dashboard

  •  Individual Project (iP):
  • Individual Project Info
  • iP Upstream Repo
  • iP Code Dashboard
  • iP Progress Dashboard

  •  Team Project (tP):
  • Reference AB3
  • Team Project Info
  • Team List
  • tP Code Dashboard
  • tP Progress Dashboard
  • tP week 10: mid-v2.0tP week 12: mid-v2.1


    tP week 11: v2.0

    1. Update user docs
    2. Add sequence diagrams to the developer guide recommended: before Wednesday
    3. Deliver v2.0 midnight before the tutorial
    4. Review others' DG during the tutorial counted for participation

    Guidance for the item(s) below:

    This week, you get a chance to fix your tP bugs (in the project, as well as documentation) without any penalty. What's more, others will help you find those bugs (via tutorial activities and the PE Dry Run happening in this week).

    To take advantage of the above, try to make your v2.0 (product, DG, and UG) as close to what you intend to submit as your final version (i.e., v2.1).

    1 Update user docs

    • Update the v2.0 user guide to match the current version of the product. Reason: testers will need to refer to the UG during the practical exam dry run.
      • Clearly indicate which features are not implemented yet e.g. tag those features with a Coming soon.
      • For those features already implemented, ensure their descriptions match the exact behavior of the product e.g. replace mockups with actual screenshots

    In UG/DG, using hierarchical section numbering and figure numbering is optional (reason: it's not easy to do in Markdown), but make sure it does not inconvenience the reader (e.g., use section/figure title and/or hyperlinks to point to the section/figure being referred to). Examples:

    In the section Implementation given above ...

    CS2113 does not require you to indicate author name of DG/UG sections (CS2101 requirements may differ). We recommend (but not require) you to ensure that the code dashboard reflect the authorship of doc files accurately.

    • The main content you add should be in the docs/UserGuide.md file (for ease of tracking by grading scripts).
    • Should cover all v2.1 features.
      Ensure those descriptions match the product precisely, as it will be used by peer testers (inaccuracies will be considered bugs).
    • Optionally, can also cover future features. Mark those as Coming soon.
    • Also note the following constraint:

    Constraint-File-Size

    The file sizes of the deliverables should not exceed the limits given below.

    Reason: It is hard to download big files during the practical exam due to limited WiFi bandwidth at the venue:

    • JAR file: 100MB (Some third-party software -- e.g., Stanford NLP library, certain graphics libraries -- can cause you to exceed this limit)

    • PDF files: 15MB/file (Not following the recommended method of converting to PDF format can cause big PDF files. Another cause is using unnecessarily high resolution images for screenshots).

    • Add sequence diagrams to enhance your DG wherever they can be useful. Note that diagrams you add in this week will receive feedback while diagrams added later will not.
    • Try to do this before Wednesday so that the added sequence diagrams can get peer feedback via the DG peer review that will happen during this week's tutorial.

    3 Deliver v2.0 midnight before the tutorial

    • As before, do a release on GitHub and upload the v2.0 jar file. Do this before the deadline as PE testers will start downloading jar files ahead of time.
    • IMPORTANT: ensure your jar file was generated using Java 11 and can work on all major OS'es using JDK 11.

    Constraint-Java-Version

    The software should work on a computer that has version 11 of Java i.e., no other Java version installed.

    • Wrap up the milestone on GitHub.

    4 Review others' DG during the tutorial counted for participation

    • To be done during the tutorial. Please don't do this task before the tutorial as others need time to update their DGs.
    • Read all instructions before you start the activity.
    • Find the team choices you have been allocated to review, as given in the panel below.
    Your GitHub First choice Second choice Third choice
    0xZ3RO CS2113T-W12-1 DG PR CS2113T-W13-4 DG PR CS2113T-W13-3 DG PR
    1-Karthigeyan-1 CS2113T-F11-1 DG PR CS2113T-F14-4 DG PR CS2113T-T12-1 DG PR
    AliciaHo CS2113T-W13-2 DG PR CS2113-T13-4 DG PR CS2113-T14-2 DG PR
    AmeliaTYR CS2113T-W12-2 DG PR CS2113-T13-3 DG PR CS2113-T13-4 DG PR
    AndreWongZH CS2113T-F11-4 DG PR CS2113T-T09-2 DG PR CS2113T-T09-1 DG PR
    Ang-Cheng-Jun CS2113T-T12-3 DG PR CS2113T-W13-3 DG PR CS2113T-W13-4 DG PR
    AnnanWangDaniel CS2113-T13-4 DG PR CS2113T-F11-1 DG PR CS2113T-F11-2 DG PR
    Artemis-Hunt CS2113T-T12-4 DG PR CS2113T-W13-2 DG PR CS2113T-W13-3 DG PR
    Aseanseen CS2113T-F12-1 DG PR CS2113T-T12-3 DG PR CS2113T-T12-4 DG PR
    BenardoTang CS2113T-F12-2 DG PR CS2113T-T09-3 DG PR CS2113T-T09-4 DG PR
    Bryanbeh1998 CS2113T-F12-2 DG PR CS2113T-T09-4 DG PR CS2113T-T12-1 DG PR
    CFZeon CS2113T-F12-4 DG PR CS2113T-T12-1 DG PR CS2113T-T12-2 DG PR
    Cao-Zeyu CS2113-T16-4 DG PR CS2113T-F14-2 DG PR CS2113T-F14-3 DG PR
    ChanJianHao CS2113T-F14-3 DG PR CS2113T-T12-3 DG PR CS2113T-W11-1 DG PR
    Chongjx CS2113T-F14-4 DG PR CS2113T-W11-2 DG PR CS2113T-W11-3 DG PR
    Colin386 CS2113T-F11-2 DG PR CS2113T-F14-3 DG PR CS2113T-T09-2 DG PR
    CookieHoodie CS2113T-T12-1 DG PR CS2113T-W12-2 DG PR CS2113T-W12-3 DG PR
    Darticune CS2113T-F12-3 DG PR CS2113T-T12-1 DG PR CS2113T-T12-2 DG PR
    DesmondKJL CS2113-T13-1 DG PR CS2113-T16-3 DG PR CS2113-T16-4 DG PR
    EdmundEXE CS2113T-F12-1 DG PR CS2113T-T09-3 DG PR CS2113T-T09-4 DG PR
    EthanWong2212 CS2113T-T09-2 DG PR CS2113T-W11-3 DG PR CS2113T-W12-3 DG PR
    EyoWeiChin CS2113T-T12-2 DG PR CS2113T-W12-3 DG PR CS2113T-W13-1 DG PR
    Feudalord CS2113-T13-1 DG PR CS2113T-F11-1 DG PR CS2113T-F11-2 DG PR
    GoldenCorgi CS2113-T13-4 DG PR CS2113T-F11-2 DG PR CS2113T-F11-3 DG PR
    GuoAi CS2113-T16-2 DG PR CS2113T-F12-1 DG PR CS2113T-F12-3 DG PR
    HengFuYuen CS2113-T16-1 DG PR CS2113T-F12-3 DG PR CS2113T-F14-1 DG PR
    Jane-Ng CS2113T-W11-3 DG PR CS2113T-W13-4 DG PR CS2113-T13-2 DG PR
    JiawenLyu CS2113-T16-4 DG PR CS2113T-F14-1 DG PR CS2113T-F14-2 DG PR
    JinYixuan-Au CS2113-T16-3 DG PR CS2113T-F14-2 DG PR CS2113T-F14-3 DG PR
    Jingming517 CS2113T-W11-3 DG PR CS2113-T13-1 DG PR CS2113-T13-2 DG PR
    JohnNub CS2113T-T09-2 DG PR CS2113T-W11-1 DG PR CS2113T-W11-3 DG PR
    Johnson-Yee CS2113-T13-2 DG PR CS2113-T16-3 DG PR CS2113-T16-4 DG PR
    JuZihao CS2113T-T12-4 DG PR CS2113T-W13-2 DG PR CS2113T-W13-3 DG PR
    JunxianAng CS2113-T14-2 DG PR CS2113T-F11-3 DG PR CS2113T-F11-4 DG PR
    Kafcis CS2113T-F11-2 DG PR CS2113T-F14-3 DG PR CS2113T-F14-4 DG PR
    KennethEer CS2113T-F14-2 DG PR CS2113T-T09-4 DG PR CS2113T-T12-1 DG PR
    Khenus CS2113T-F14-2 DG PR CS2113T-T09-1 DG PR CS2113T-T09-3 DG PR
    LIU-YiFeng-1 CS2113T-W13-1 DG PR CS2113-T14-3 DG PR CS2113-T14-4 DG PR
    Lee-Juntong CS2113T-W11-4 DG PR CS2113-T13-1 DG PR CS2113-T13-2 DG PR
    Lezn0 CS2113T-W12-4 DG PR CS2113-T13-3 DG PR CS2113-T14-1 DG PR
    LiewWS CS2113T-F12-4 DG PR CS2113T-T09-4 DG PR CS2113T-T12-2 DG PR
    Louis-Feng CS2113-T14-1 DG PR CS2113T-F11-3 DG PR CS2113T-F11-4 DG PR
    Lusi711 CS2113T-W11-3 DG PR CS2113-T13-2 DG PR CS2113-T13-3 DG PR
    MuhammadHoze CS2113-T16-2 DG PR CS2113T-F12-2 DG PR CS2113T-F14-1 DG PR
    Nazryl CS2113T-T09-2 DG PR CS2113T-W11-2 DG PR CS2113T-W11-3 DG PR
    OngDeZhi CS2113T-F14-3 DG PR CS2113T-T12-4 DG PR CS2113T-W11-1 DG PR
    PraveenElango CS2113T-F11-3 DG PR CS2113T-F14-4 DG PR CS2113T-T09-1 DG PR
    Promethees CS2113T-T09-3 DG PR CS2113T-W12-3 DG PR CS2113T-W12-4 DG PR
    QX-CHEN CS2113T-F11-2 DG PR CS2113T-F14-3 DG PR CS2113T-T09-1 DG PR
    R-Ramana CS2113T-F11-3 DG PR CS2113T-T09-1 DG PR CS2113T-T09-2 DG PR
    Reinbowl CS2113T-W11-2 DG PR CS2113T-W13-1 DG PR CS2113T-W13-2 DG PR
    ShawnTanzc CS2113T-F12-4 DG PR CS2113T-T12-2 DG PR CS2113T-T12-3 DG PR
    Speedweener CS2113T-W13-4 DG PR CS2113-T16-1 DG PR CS2113-T16-2 DG PR
    TYS0n1 CS2113T-F12-4 DG PR CS2113T-T12-2 DG PR CS2113T-T12-3 DG PR
    TanJunHong CS2113-T13-3 DG PR CS2113T-F11-1 DG PR CS2113T-F11-2 DG PR
    TanLeeWei CS2113T-T12-1 DG PR CS2113T-W12-4 DG PR CS2113T-W13-1 DG PR
    TomLBZ CS2113T-W12-4 DG PR CS2113-T14-2 DG PR CS2113-T14-3 DG PR
    Varsha3006 CS2113T-W12-3 DG PR CS2113-T13-4 DG PR CS2113-T14-1 DG PR
    WYing333 CS2113-T13-2 DG PR CS2113T-F11-2 DG PR CS2113T-F11-1 DG PR
    WangZixin67 CS2113-T16-4 DG PR CS2113T-T09-1 DG PR CS2113T-T09-2 DG PR
    Wu-Haitao CS2113-T13-2 DG PR CS2113-T16-3 DG PR CS2113T-F11-1 DG PR
    Zhangyilin0203 CS2113T-F11-1 DG PR CS2113T-F14-3 DG PR CS2113T-F14-4 DG PR
    Zhi-You CS2113T-F14-2 DG PR CS2113T-T12-3 DG PR CS2113T-T12-4 DG PR
    ZhongNingmou CS2113T-F12-1 DG PR CS2113T-F14-2 DG PR CS2113T-F14-4 DG PR
    Zhu-Ze-Yu CS2113T-F12-1 DG PR CS2113T-F14-2 DG PR CS2113T-F14-3 DG PR
    abnermtj CS2113T-T12-2 DG PR CS2113T-W12-4 DG PR CS2113T-W13-1 DG PR
    acyang97 CS2113-T16-1 DG PR CS2113T-F12-2 DG PR CS2113T-F12-3 DG PR
    adhy-p CS2113T-T09-4 DG PR CS2113T-W12-2 DG PR CS2113T-W12-3 DG PR
    adinata15 CS2113T-W12-1 DG PR CS2113-T14-3 DG PR CS2113-T14-4 DG PR
    alstontham CS2113T-T12-3 DG PR CS2113T-W13-3 DG PR CS2113T-W13-4 DG PR
    alwaysnacy CS2113-T16-3 DG PR CS2113T-F12-3 DG PR CS2113T-F12-4 DG PR
    amalinasani CS2113T-W12-1 DG PR CS2113-T13-3 DG PR CS2113-T13-4 DG PR
    amanda-chua CS2113T-W11-4 DG PR CS2113-T13-2 DG PR CS2113-T13-3 DG PR
    anqi20 CS2113T-W11-4 DG PR CS2113-T13-1 DG PR CS2113-T13-3 DG PR
    arindamshivatrip CS2113-T13-3 DG PR CS2113-T16-2 DG PR CS2113-T16-3 DG PR
    bqxy CS2113T-F11-1 DG PR CS2113T-F12-4 DG PR CS2113T-F14-1 DG PR
    brandontoh CS2113T-F11-4 DG PR CS2113T-T09-2 DG PR CS2113T-T09-3 DG PR
    brandonywl CS2113-T14-2 DG PR CS2113-T16-4 DG PR CS2113T-F11-1 DG PR
    chewyang CS2113T-F12-2 DG PR CS2113T-T12-3 DG PR CS2113T-T12-4 DG PR
    chloesyy CS2113T-W11-4 DG PR CS2113-T13-2 DG PR CS2113-T13-3 DG PR
    chocomango CS2113T-F14-4 DG PR CS2113T-W11-2 DG PR CS2113T-W11-3 DG PR
    chuckiex3 CS2113T-W12-3 DG PR CS2113-T13-4 DG PR CS2113-T14-2 DG PR
    chuhann CS2113T-T12-2 DG PR CS2113T-W12-3 DG PR CS2113T-W13-1 DG PR
    czlin98 CS2113T-W13-3 DG PR CS2113-T14-4 DG PR CS2113-T16-1 DG PR
    daniellimws CS2113-T16-1 DG PR CS2113T-F11-4 DG PR CS2113T-F12-2 DG PR
    daniellimzj CS2113T-F12-3 DG PR CS2113T-T12-2 DG PR CS2113T-T12-3 DG PR
    dixoncwc CS2113T-F14-3 DG PR CS2113T-T12-4 DG PR CS2113T-W11-1 DG PR
    dmbclub CS2113-T16-2 DG PR CS2113T-F12-1 DG PR CS2113T-F12-2 DG PR
    dojh111 CS2113T-F11-4 DG PR CS2113T-T09-2 DG PR CS2113T-T09-3 DG PR
    domaxi CS2113T-T09-4 DG PR CS2113T-W12-1 DG PR CS2113T-W12-2 DG PR
    dorianfong98 CS2113T-F11-2 DG PR CS2113T-F14-4 DG PR CS2113T-T09-1 DG PR
    dozenmatter CS2113T-W11-2 DG PR CS2113T-W13-3 DG PR CS2113T-W13-4 DG PR
    durianpancakes CS2113T-F12-3 DG PR CS2113T-T12-1 DG PR CS2113T-T12-2 DG PR
    e0406981 CS2113T-F12-4 DG PR CS2113T-T12-2 DG PR CS2113T-T12-3 DG PR
    e0425705 CS2113T-W13-1 DG PR CS2113-T14-2 DG PR CS2113-T14-3 DG PR
    e0426051 CS2113T-W13-2 DG PR CS2113-T14-4 DG PR CS2113-T16-1 DG PR
    elizabethcwt CS2113T-W13-2 DG PR CS2113-T14-1 DG PR CS2113-T14-2 DG PR
    f0fz CS2113T-F14-2 DG PR CS2113T-W11-1 DG PR CS2113T-W11-2 DG PR
    fanceso CS2113T-W11-1 DG PR CS2113T-W13-4 DG PR CS2113-T13-1 DG PR
    farice9 CS2113T-W11-1 DG PR CS2113T-W12-2 DG PR CS2113T-W12-4 DG PR
    fchensan CS2113T-T09-3 DG PR CS2113T-W12-1 DG PR CS2113T-W12-2 DG PR
    felixhalim CS2113T-T09-3 DG PR CS2113T-W12-1 DG PR CS2113T-W12-2 DG PR
    gmit22 CS2113-T13-1 DG PR CS2113-T16-2 DG PR CS2113T-F12-1 DG PR
    gohsonghan98 CS2113T-T12-3 DG PR CS2113T-W12-4 DG PR CS2113-T13-1 DG PR
    gua-guargia CS2113T-T12-1 DG PR CS2113T-W12-2 DG PR CS2113T-W12-4 DG PR
    gy716 CS2113-T13-2 DG PR CS2113-T16-4 DG PR CS2113T-F12-1 DG PR
    hailqueenflo CS2113T-W13-1 DG PR CS2113-T14-2 DG PR CS2113-T14-4 DG PR
    haroic1997 CS2113T-T09-1 DG PR CS2113T-W11-2 DG PR CS2113T-W11-3 DG PR
    harryleecp CS2113T-F11-4 DG PR CS2113T-T09-2 DG PR CS2113T-T09-3 DG PR
    homingjun CS2113T-F12-2 DG PR CS2113T-T09-1 DG PR CS2113T-T09-2 DG PR
    hughjazzman CS2113-T14-3 DG PR CS2113T-F11-4 DG PR CS2113T-F12-1 DG PR
    hui444 CS2113T-W12-4 DG PR CS2113-T14-1 DG PR CS2113-T14-3 DG PR
    hungvo0603 CS2113T-T09-3 DG PR CS2113T-W12-1 DG PR CS2113T-W12-2 DG PR
    iamchenjiajun CS2113T-T12-4 DG PR CS2113T-W13-2 DG PR CS2113T-W13-3 DG PR
    imhm CS2113T-W13-3 DG PR CS2113-T14-4 DG PR CS2113-T16-2 DG PR
    ivanderjmw CS2113T-T12-1 DG PR CS2113T-W12-2 DG PR CS2113T-W12-3 DG PR
    jazhten CS2113-T14-4 DG PR CS2113T-F12-2 DG PR CS2113T-F12-3 DG PR
    jerichochua CS2113T-T12-3 DG PR CS2113T-W12-4 DG PR CS2113-T13-1 DG PR
    jerroldlam CS2113T-T12-4 DG PR CS2113T-W13-2 DG PR CS2113T-W13-3 DG PR
    jessicazhang617 CS2113T-W12-3 DG PR CS2113-T14-1 DG PR CS2113-T14-2 DG PR
    jiaaaqi CS2113T-W13-2 DG PR CS2113-T14-2 DG PR CS2113-T14-3 DG PR
    jialerk CS2113T-W12-4 DG PR CS2113-T14-3 DG PR CS2113-T16-3 DG PR
    jlifah CS2113T-W12-3 DG PR CS2113-T14-1 DG PR CS2113-T14-2 DG PR
    joelngyx CS2113T-W13-3 DG PR CS2113-T14-4 DG PR CS2113-T16-1 DG PR
    johan9se CS2113T-W11-3 DG PR CS2113-T13-1 DG PR CS2113-T13-2 DG PR
    johanesrafael CS2113T-T09-3 DG PR CS2113T-W11-4 DG PR CS2113T-W12-1 DG PR
    josephhhhhhhhh CS2113T-F14-1 DG PR CS2113T-T09-3 DG PR CS2113T-T09-4 DG PR
    judowha CS2113-T16-3 DG PR CS2113T-F12-4 DG PR CS2113T-F14-2 DG PR
    jusufnathanael CS2113T-T09-4 DG PR CS2113T-W12-1 DG PR CS2113T-W12-3 DG PR
    k-walter CS2113-T14-3 DG PR CS2113T-F11-4 DG PR CS2113T-F12-2 DG PR
    kaijiel24 CS2113T-T12-4 DG PR CS2113T-W13-1 DG PR CS2113T-W13-2 DG PR
    kaiwen98 CS2113T-F14-1 DG PR CS2113T-T12-1 DG PR CS2113T-T12-3 DG PR
    keke101 CS2113T-F14-2 DG PR CS2113T-T12-3 DG PR CS2113T-T12-4 DG PR
    kerct CS2113-T14-3 DG PR CS2113T-F14-1 DG PR CS2113T-F14-2 DG PR
    kiathwe97 CS2113-T14-1 DG PR CS2113T-F11-3 DG PR CS2113T-F11-4 DG PR
    killingbear999 CS2113T-W12-2 DG PR CS2113-T13-1 DG PR CS2113-T13-2 DG PR
    kstonekuan CS2113-T14-3 DG PR CS2113T-F14-1 DG PR CS2113T-F14-2 DG PR
    leonlowzd CS2113T-T09-1 DG PR CS2113T-W11-3 DG PR CS2113T-W11-4 DG PR
    lhydl CS2113T-T12-2 DG PR CS2113T-W12-3 DG PR CS2113T-W12-4 DG PR
    limgl1998 CS2113T-W13-3 DG PR CS2113-T14-4 DG PR CS2113-T16-1 DG PR
    lingsihui CS2113T-W13-4 DG PR CS2113-T16-1 DG PR CS2113-T16-3 DG PR
    longngng CS2113T-T09-4 DG PR CS2113T-W11-4 DG PR CS2113T-W12-1 DG PR
    lunzard CS2113T-W12-1 DG PR CS2113-T13-3 DG PR CS2113-T13-4 DG PR
    luziyi9898 CS2113T-F11-3 DG PR CS2113T-F14-4 DG PR CS2113T-T09-1 DG PR
    madbeez CS2113T-F11-3 DG PR CS2113T-T09-3 DG PR CS2113T-T09-4 DG PR
    manuelmanuntag96 CS2113T-W11-1 DG PR CS2113T-W13-3 DG PR CS2113T-W13-4 DG PR
    marcursor CS2113T-W11-2 DG PR CS2113T-W13-1 DG PR CS2113T-W13-2 DG PR
    matthewgani CS2113T-W11-4 DG PR CS2113-T13-2 DG PR CS2113-T13-3 DG PR
    max-wunan CS2113T-W13-1 DG PR CS2113-T14-3 DG PR CS2113-T14-4 DG PR
    mhchan163 CS2113T-F14-4 DG PR CS2113T-W11-3 DG PR CS2113T-W11-4 DG PR
    michaeldinata CS2113-T14-3 DG PR CS2113T-F14-1 DG PR CS2113T-F14-4 DG PR
    mrwsy1 CS2113T-F12-1 DG PR CS2113T-T09-3 DG PR CS2113T-T09-4 DG PR
    mxksowie CS2113-T16-4 DG PR CS2113T-F12-1 DG PR CS2113T-F12-2 DG PR
    n3wsoldier CS2113T-T09-1 DG PR CS2113T-W11-2 DG PR CS2113T-W11-4 DG PR
    nat-ho CS2113T-F14-4 DG PR CS2113T-W11-1 DG PR CS2113T-W11-2 DG PR
    neilbaner CS2113T-W11-1 DG PR CS2113T-W12-3 DG PR CS2113T-W12-4 DG PR
    neojiaern CS2113T-W11-1 DG PR CS2113T-W13-4 DG PR CS2113-T13-1 DG PR
    ninggggx99 CS2113T-W11-2 DG PR CS2113T-W13-3 DG PR CS2113T-W13-4 DG PR
    oasisbeatle CS2113T-T09-1 DG PR CS2113T-W11-3 DG PR CS2113T-W11-4 DG PR
    pinfang CS2113T-W12-4 DG PR CS2113-T14-1 DG PR CS2113-T14-3 DG PR
    poonchuanan CS2113-T13-1 DG PR CS2113-T16-3 DG PR CS2113-T16-4 DG PR
    prachi2023 CS2113T-W13-4 DG PR CS2113-T16-1 DG PR CS2113-T16-2 DG PR
    randynyl CS2113-T14-1 DG PR CS2113T-F11-3 DG PR CS2113T-F11-4 DG PR
    rashien3 CS2113T-T09-2 DG PR CS2113T-W11-4 DG PR CS2113T-W12-1 DG PR
    riazaham CS2113T-F11-2 DG PR CS2113T-F14-3 DG PR CS2113T-F14-4 DG PR
    samuelchristopher CS2113T-T12-2 DG PR CS2113T-W11-4 DG PR CS2113T-W12-1 DG PR
    samuellleow CS2113T-W13-1 DG PR CS2113-T14-2 DG PR CS2113-T14-4 DG PR
    scjx123 CS2113T-F14-3 DG PR CS2113T-T12-4 DG PR CS2113T-W11-1 DG PR
    sevenseasofbri CS2113-T13-2 DG PR CS2113-T16-3 DG PR CS2113-T16-4 DG PR
    shaojingle CS2113-T13-4 DG PR CS2113T-F11-2 DG PR CS2113T-F11-3 DG PR
    shikai-zhou CS2113T-W13-2 DG PR CS2113-T14-3 DG PR CS2113-T16-1 DG PR
    shreytheshreyas CS2113-T13-1 DG PR CS2113-T16-2 DG PR CS2113-T16-4 DG PR
    sixletters CS2113T-F12-3 DG PR CS2113T-T12-1 DG PR CS2113T-T12-2 DG PR
    skyaxe97 CS2113-T14-4 DG PR CS2113T-F12-2 DG PR CS2113T-F12-3 DG PR
    slightlyharp CS2113T-F11-3 DG PR CS2113T-T09-2 DG PR CS2113T-T09-3 DG PR
    snowbanana12345 CS2113-T16-2 DG PR CS2113T-F12-1 DG PR CS2113T-F12-2 DG PR
    sugandha929 CS2113T-T09-4 DG PR CS2113T-W11-4 DG PR CS2113T-W12-2 DG PR
    sunxiuqi-stacked CS2113-T16-3 DG PR CS2113T-F12-4 DG PR CS2113T-F14-1 DG PR
    syncode98 CS2113T-T12-3 DG PR CS2113T-W12-4 DG PR CS2113-T13-1 DG PR
    t170815518 CS2113-T14-2 DG PR CS2113-T16-4 DG PR CS2113T-F11-1 DG PR
    tammykoh CS2113T-W11-3 DG PR CS2113T-W13-4 DG PR CS2113-T14-1 DG PR
    teachyourselfcoding CS2113-T14-4 DG PR CS2113T-F12-2 DG PR CS2113T-F12-4 DG PR
    tengkianen CS2113T-F14-1 DG PR CS2113T-T12-4 DG PR CS2113T-W12-1 DG PR
    thatseant CS2113T-F11-1 DG PR CS2113T-F14-4 DG PR CS2113T-T12-1 DG PR
    theopin CS2113T-F11-4 DG PR CS2113T-T09-1 DG PR CS2113T-T09-2 DG PR
    thngyuxuan CS2113T-F14-1 DG PR CS2113T-T12-2 DG PR CS2113T-T12-4 DG PR
    tienkhoa16 CS2113T-W13-4 DG PR CS2113-T16-1 DG PR CS2113-T16-3 DG PR
    tikimonarch CS2113-T16-1 DG PR CS2113T-F12-3 DG PR CS2113T-F12-4 DG PR
    tobiasceg CS2113T-W11-2 DG PR CS2113T-W13-2 DG PR CS2113T-W13-1 DG PR
    trolommonm CS2113-T13-4 DG PR CS2113T-F11-1 DG PR CS2113T-F11-2 DG PR
    untitle4 CS2113-T16-3 DG PR CS2113T-F12-4 DG PR CS2113T-F14-2 DG PR
    vanessa-kang CS2113T-W12-3 DG PR CS2113-T13-4 DG PR CS2113-T14-1 DG PR
    wamikamalik CS2113T-W13-4 DG PR CS2113-T16-2 DG PR CS2113-T16-3 DG PR
    wangqinNick CS2113-T14-2 DG PR CS2113T-F11-4 DG PR CS2113T-F12-1 DG PR
    wangwaynesg CS2113-T13-3 DG PR CS2113-T16-4 DG PR CS2113T-F11-1 DG PR
    weishuangtan CS2113T-W12-2 DG PR CS2113-T13-2 DG PR CS2113-T13-4 DG PR
    weisiong24 CS2113T-T09-2 DG PR CS2113T-W11-1 DG PR CS2113T-W11-2 DG PR
    wgzesg CS2113-T13-3 DG PR CS2113-T16-4 DG PR CS2113T-F12-1 DG PR
    wish2023 CS2113T-T09-1 DG PR CS2113T-W11-3 DG PR CS2113T-W11-4 DG PR
    wly99 CS2113-T13-3 DG PR CS2113T-F11-1 DG PR CS2113T-F11-2 DG PR
    xX-Conan-Xx CS2113-T14-1 DG PR CS2113T-F11-2 DG PR CS2113T-F11-3 DG PR
    xieyaoyue CS2113T-W12-2 DG PR CS2113-T13-4 DG PR CS2113-T14-1 DG PR
    xingrong123 CS2113T-W12-2 DG PR CS2113T-W13-1 DG PR CS2113T-W13-2 DG PR
    xuche123 CS2113T-T12-1 DG PR CS2113T-W13-1 DG PR CS2113T-W13-2 DG PR
    yAOwzers CS2113T-F12-2 DG PR CS2113T-T09-4 DG PR CS2113T-W11-1 DG PR
    ychong032 CS2113-T14-1 DG PR CS2113T-F11-4 DG PR CS2113T-F11-3 DG PR
    yeapcl CS2113-T14-4 DG PR CS2113T-F12-3 DG PR CS2113T-F12-4 DG PR
    yellow-fellow CS2113-T14-2 DG PR CS2113T-F11-3 DG PR CS2113T-F11-4 DG PR
    yeyutong811 CS2113T-W12-1 DG PR CS2113-T13-3 DG PR CS2113-T13-4 DG PR
    yh-ng CS2113-T16-1 DG PR CS2113T-F12-3 DG PR CS2113T-F12-4 DG PR
    yokemin CS2113-T13-4 DG PR CS2113T-F11-2 DG PR CS2113T-F11-3 DG PR
    yuen-sihao CS2113T-F14-3 DG PR CS2113T-T12-4 DG PR CS2113T-W11-2 DG PR
    yujinyang1998 CS2113T-F12-3 DG PR CS2113T-T09-4 DG PR CS2113T-T12-1 DG PR
    yuqiaoluolong CS2113T-F11-1 DG PR CS2113T-F14-2 DG PR CS2113T-F14-3 DG PR
    zhangcaicai123 CS2113-T16-4 DG PR CS2113T-F12-4 DG PR CS2113T-F14-3 DG PR
    zhixiangteoh CS2113T-W13-3 DG PR CS2113-T16-1 DG PR CS2113-T16-2 DG PR
    zongxian-ctrl CS2113T-F14-4 DG PR CS2113T-W11-1 DG PR CS2113T-W11-2 DG PR
    zsk612 CS2113-T14-4 DG PR CS2113T-F12-1 DG PR CS2113T-F12-3 DG PR
    • Decide which of the given team(s) to review:

      • Open the DG link of the team allocated as 'First choice'.
      • Confirm that the DG has significant updates, to the diagrams in particular. If it doesn't, you can try the DG of the 'Second choice' team, and failing that, 'Third choice' team.
      • If neither one of the three has enough updates but collectively they have enough updates, you can also review all of them.
      • Failing all above, you can pick any other team(s) to review.
      • Try to give at least 4 comments in total.
      • If the PR already has reviews, you can give your own input of the existing review comments too.
    • Go to the PR of the team(s) you have chosen to review.

    • Review the Design and the Implementation sections w.r.t possible DG bugs (given further down); add your observations as comments.

    • In the PR, add review comments (i.e., in the files changed tab) in the corresponding place of the code.
      • In this case, choose the option rather than option.
    • But if the 'files changed' tab is too laggy, you can add a normal comment instead in the conversation tab.
      • In this case, enter each observation as a separate comment (reason: our bot will count the number of comments you have given to determine if you qualify for participation points)
    • As you know, it is better to phrase your comments as question/doubts (e.g., Is this format correct? Should it be ... instead?) rather than directives (e.g., Change this to ...).
      Where possible, use screenshots from their DG in your comments, preferably with annotations. This is particularly useful when commenting on diagrams. An example given below:
    • The understanding you gain from this exercise can indirectly determine how well you do in your own project. Note that your comments will be reviewed by a tutor later.
    DG - Possible Bugs

    Pay attention to these as they are same as the final evaluation criteria of the DG.

    UML diagrams:

    • Notation incorrect or not compliant with the notation covered in the module.
    • Some other type of diagram used when a UML diagram would have worked just as well.
    • The diagram used is not suitable for the purpose it is used.
    • The diagram is too complicated.

    Use of visuals

    • Not enough visuals e.g., screenshots/diagrams
    • The visuals are not well integrated to the explanation
    • The visuals are unnecessarily repetitive e.g., same visual repeated with minor changes

    Use of examples:

    • Not enough or too many examples e.g., sample inputs/outputs

    Explanations:

    • The explanation is too brief or unnecessarily long.
    • The information is hard to understand for the target audience. e.g., using terms the reader might not know

    Neatness/correctness:

    • looks messy
    • not well-formatted
    • broken links, other inaccuracies, typos, etc.
    • hard to read/understand
    • unnecessary repetitions (i.e., hard to see what's similar and what's different)

    Also see:

    • Aim to showcase your documentation skills. The stated objective of the DG is to explain the implementation to a future developer, but a secondary objective is to serve as evidence of your ability to document deeply-technical content using prose, examples, diagrams, code snippets, etc. appropriately. To that end, you may also describe features that you plan to implement in the future, even beyond v2.1 (hypothetically).
      For an example, see the description of the undo/redo feature implementation in the AddressBook-Level3 developer guide.
    • Diagramming tools:
      • AB3 uses PlantUML (see the guide Using PlantUML @SE-EDU/guides for more info).

      • You may use any other tool too (e.g., PowerPoint). But if you do, note the following:
        Choose a diagramming tool that has some 'source' format that can be version-controlled using git and updated incrementally (reason: because diagrams need to evolve with the code that is already being version controlled using git). For example, if you use PowerPoint to draw diagrams, also commit the source PowerPoint files so that they can be reused when updating diagrams later.

      • Can i.e., automatically reverse engineered from the Java codeIDE-generated UML diagrams be used in project submissions? Not a good idea. Given are three reasons each of which can be reported by evaluators as 'bugs' in your diagrams, costing you marks:

        • They often don't follow the standard UML notation (e.g., they add extra icons).
        • They tend to include every little detail whereas we want to limit UML diagrams to important details only, to improve readability.
        • Diagrams reverse-engineered by an IDE might not represent the actual design as some design concepts cannot be deterministically identified from the code. e.g., differentiating between multiplicities 0..1 vs 1, composition vs aggregation
    • Use multiple UML diagram types. Following from the point above, try to include UML diagrams of multiple types to showcase your ability to use different UML diagrams.
    • Keep diagrams simple. The aim is to make diagrams comprehensible, not necessarily comprehensive.
      Ways to simplify diagrams:
      • Omit less important details. Examples:
        • a class diagram can omit minor utility classes, private/unimportant members; some less-important associations can be shown as attributes instead.
        • a sequence diagram can omit less important interactions, self-calls.
      • Omit repetitive details e.g., a class diagram can show only a few representative ones in place of many similar classes (note how the AB3 Logic class diagram shows concrete *Command classes using a placeholder XYZCommand).
      • Limit the scope of a diagram. Decide the purpose of the diagram (i.e., what does it help to explain?) and omit details not related to it.
      • Break diagrams into smaller fragments when possible.
        • If a component has a lot of classes, consider further dividing into sub-components (e.g., a Parser sub-component inside the Logic component). After that, sub-components can be shown as black-boxes in the main diagram and their details can be shown as separate diagrams.
        • You can use ref frames to break sequence diagrams to multiple diagrams.
      • Use visual representations as much as possible. E.g., show associations and navigabilities using lines and arrows connecting classes, rather than adding a variable in one of the classes.
      • For some more examples of what NOT to do, see here.
    • Integrate diagrams into the description. Place the diagram close to where it is being described.
    • Use code snippets sparingly. The more you use code snippets in the DG, and longer the code snippet, the higher the risk of it getting outdated quickly. Instead, use code snippets only when necessary and cite only the strictly relevant parts only. You can also use pseudo code instead of actual programming code.
    • Resize diagrams so that the text size in the diagram matches the the text size of the main text of the diagram. See example.

    These class diagrams seem to have lot of member details, which can get outdated pretty quickly:


    This class diagram seems to have too many classes:
    These sequence diagrams are bordering on 'too complicated':

    In this negative example, the text size in the diagram is much bigger than the text size used by the document:

    It will look more 'polished' if the two text sizes match.

    • After the tutorial, if you are unsure about a concern raised by a reviewer, you can post in the forum to seek the opinion of the teaching team.


    tP week 10: mid-v2.0tP week 12: mid-v2.1