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

Summary of the Module Timeline


Week 1 - Mon, Aug 8th

Topics:

  • No topics allocated to this week.

Admin:

  1. Set up the tools before the lecture
  2. Submit the pre-module survey by Friday 2359
  3. Learn about the module
  4. Attend the first lecture

Week 2 - Fri, Aug 12th

Topics:

  • [W2.2] SDLC Process Models: Basics

  • [W2.3] Java: Intro

  • [W2.4] Java: HelloWorld

  • [W2.5] Java: Data Types

  • [W2.6] Java: Control Flow

  • [W2.7] RCS: Init, Commit

  • [W2.8] RCS: Fork, Clone

  • [W2.9] IDEs: Basic Features

  • [W2.10] Code Quality: Coding Standards

Full ToC


Admin:

  1. Submit coding exercises via Coursemology Thu, Aug 18th 2359
  2. Get connected to our communication channels

iP:

  1. Learn about the project
  2. Set up prerequisites
  3. Set up the project in your computer
  4. Add Increment: Level-0

Week 3 - Fri, Aug 19th

Topics:

  • [W3.1] OOP: Classes and Objects

  • [W3.2] Java: Objects

  • [W3.3] Java: Classes

  • [W3.4] OOP, Java: Class-Level Members

  • [W3.5] Java: Useful Classes

  • [W3.6] Code Quality: Naming

  • [W3.7] RCS: Using History

  • [W3.8] RCS: Pull, Push

Full ToC


Admin:

  1. Submit coding exercises via Coursemology midnight before tutorial
  2. [CS2113 students only] Form teams during the tutorial

iP:

  1. Do any leftover iP tasks from the previous week
  2. Add Increments (+ commit, tag, push): Level-1, Level-2, Level-3, A-CodingStandard

tP:

  1. Set up a project meeting time by the end of the tutorial

Week 4 - Fri, Aug 26th

Topics:

  • [W4.1] OOP + Java: Inheritance

  • [W4.2] OOP + Java: Polymorphism

  • [W4.3] Java: Constants

  • [W4.4] OOP + Java: Enumerations

  • [W4.5] Automated Testing of Text UIs

  • [W4.6] Code Quality: Readability

  • [W4.7] Code Quality: Refactoring

  • [W4.8] RCS: Creating Pull Requests

Full ToC


Admin:

  1. Accept GitHub invitation from the module organization
  2. Submit coding exercises via Coursemology

iP:

  1. Create a PR to the upstream repo Mon, Aug 29th 2359
  2. Add Increments: Level-4, A-TextUiTesting, A-CodeQuality
  3. Get ready to review PRs before the tutorial
  4. Review some peer PRs during the tutorial

tP:

  1. Start weekly project meetings
  2. Start a collaborative doc to take project notes before the tutorial
  3. Decide on an overall project direction (user profile, problem addressed) before the tutorial

Week 5 - Fri, Sep 2nd

Topics:

  • [W5.1] Java: Casting

  • [W5.2] OOP + Java: Abstract Classes

  • [W5.3] OOP + Java: Interfaces

  • [W5.4] Java: Packages

  • [W5.5] Java: Access Modifiers

  • [W5.6] Error Handling: Exceptions

  • [W5.7] Specifying Requirements [quick peek ahead]

  • [W5.8] RCS: Branching

Full ToC


Admin:

  1. Submit coding exercises via Coursemology
  2. Practice peer evaluation on TEAMMATES Wed, Sep 7th 2359

iP:

  1. Learn from others (optional)
  2. Add Increment as a branch: Level-5
  3. Add Increment: A-Packages

tP:

  1. Brainstorm user stories before the tutorial
  2. Choose user stories for v1.0 during the tutorial

Week 6 - Fri, Sep 9th

Topics:

  • [W6.1] Java: Generics

  • [W6.2] Java: Collections

  • [W6.3] Java: File Access

  • [W6.4] Java: JAR Files

  • [W6.5] Requirements: Intro

  • [W6.6] Requirements: Gathering

  • [W6.7] Requirements: Specifying [continued from last week]

  • [W6.8] IDEs: Intermediate Features

  • [W6.9] RCS: Merge Conflicts

  • [W6.10] Code Quality: Unsafe Practices

Full ToC


Admin:

  1. Submit coding exercises via Coursemology
  2. Submit post-lecture quiz before the lecture
  3. [Anonymous] Submit mid-term feedback for the module Sat, Sep 24th 2359

iP:

  1. Add Increments as parallel branches: Level-6, Level-7
  2. Add Increment: A-Jar

tP:

  1. Conceptualize v1.0
  2. Draft the UG midnight before the tutorial
  3. Refine the product design

Week 7 - Fri, Sep 16th

Topics:

  • [W7.1] Java: Varargs : OPTIONAL

  • [W7.2] Java: streams : OPTIONAL

  • [W7.3] Java: JavaFX : OPTIONAL

  • [W7.4] Documentation Tools

  • [W7.5] Code Quality: Code Comments

  • [W7.6] Continuous Integration/Deployment

  • [W7.7] RCS: Merging PRs

  • [W7.8] RCS: Workflows

Full ToC


Admin:

  1. Submit post-lecture quiz

iP:

  1. Add Increment: A-MoreOOP
  2. Add Increments as PRs: Level-8, Level-9, A-JavaDoc
  3. Set up a product website
  4. Submit the final version Fri, Sep 30th 2359

tP:

  1. Set up the project repo during the tutorial
  2. Plan the next iteration

Week 8 - Fri, Sep 30th

Topics:

  • [W8.1] Developer Testing

  • [W8.2] Writing Developer Documents

  • [W8.3] Design: Models

  • [W8.4] Class/Object Diagrams: Basics

  • [W8.5] Project Mgt: Scheduling and Tracking

Full ToC


Admin:

  1. Submit post-lecture quiz before the lecture

iP:

  1. Evaluate two peer iPs before next week lecture

tP:

  1. Ensure you know tP expectations
  2. Start implementing v1.0
  3. Use GitHub to manage milestones
  4. Add some JUnit Tests

Week 9 - Fri, Oct 7th

Topics:

  • [W9.1] Class Diagrams: Intermediate-Level

  • [W9.4] Design Principles

  • [W9.5] Testing: Intermediate Techniques

Full ToC


Admin:

  1. Submit post-lecture quiz before the lecture
  2. Submit midterm peer evaluations on TEAMMATES Fri, Oct 14th 2359

tP: v1.0

  1. Make the code more defensive
  2. Deliver v1.0 midnight before the tutorial
  3. Do an informal demo of v1.0 during the tutorial

Week 10 - Fri, Oct 14th

Topics:

  • [W10.1] Sequence Diagrams: Basics

  • [W10.2] Sequence Diagrams: Intermediate-Level

  • [W10.4] Testing: Test Coverage

Full ToC


Admin:

  1. Submit post-lecture quiz

tP:

  1. Start the next iteration
  2. Update the DG with design details IMPORTANT
  3. Smoke-test CATcher IMPORTANT
  4. Ensure the code is RepoSense-compatible

Week 11 - Fri, Oct 21st

Topics:

  • [W11.2] Types of Testing

  • [W11.3] Test Case Design

  • [W11.4] Equivalence Partitioning

Full ToC


Admin:

  1. Submit post-lecture quiz

tP: 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

Week 12 - Fri, Oct 28th

Topics:

  • [W12.1] Boundary Value Analysis

  • [W12.2] Combining Multiple Test Inputs

  • [W12.3] Other QA Techniques

  • [W12.4] SDLC Process Models: XP/Scrum

Full ToC


Admin:

  1. Submit post-lecture quiz

tP:

  1. Attend the practical exam dry run During the lecture on Fri, Oct 28th
  2. Start fixing PED bugs Before the tutorial
  3. Polish the deliverables
  4. Draft the PPP
  5. Double-check RepoSense compatibility

Week 13 - Fri, Nov 4th

Topics:

  • No topics allocated to this week.

Admin:

  1. Submit final peer evaluation on TEAMMATES Thu, Nov 10th 2359

tP: v2.1

  1. Submit deliverables Mon, Nov 7th 2359
  2. Submit the demo video Wed, Nov 9th 2359
  3. Prepare for the practical exam
  4. Attend the practical exam during the lecture on Fri, Nov 11th