Summary of the Course Timeline


Week 1 - Mon, Aug 12th

Topics:

  • No topics allocated to this week.

Admin:

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

Week 2 - Mon, Aug 19th

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 22nd 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 - Mon, Aug 26th

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. Team Task: Set up a project meeting time by the end of the tutorial

Week 4 - Mon, Sep 2nd

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 course organization
  2. Submit coding exercises via Coursemology

iP:

  1. Create a PR to the upstream repo Mon, Sep 2nd 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, value proposition) before the tutorial

Week 5 - Mon, Sep 9th

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. Prelim peer evaluation on TEAMMATES Sat, Sep 14th 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 the MVP version during the tutorial

Week 6 - Mon, Sep 16th

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 weekly quiz before the next lecture
  3. Submit mid-term feedback for the course Sat, Sep 28th 2359

iP:

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

tP:

  1. Conceptualize the MVP version
  2. Draft the UG midnight before the tutorial
  3. Set up the project repo during the tutorial

Week 7 - Mon, Sep 30th

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 weekly 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, Oct 11th 2359

tP:

  1. Ensure you know tP expectations
  2. Plan the next iteration (v1.0)
  3. Start the next iteration

Week 8 - Mon, Oct 7th

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 weekly quiz before the next lecture

iP:

  1. Evaluate two peer iPs Fri, Oct 18th 2359

tP:

  1. Start implementing v1.0
  2. Add some JUnit Tests

Week 9 - Mon, Oct 14th

Topics:

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

  • [W9.4] Design Principles

  • [W9.5] Testing: Intermediate Techniques

Full ToC


Admin:

  1. Submit weekly quiz before the next lecture
  2. Submit midterm peer evaluations on TEAMMATES Fri, Oct 18th 2359

tP: v1.0

  1. Make the code more defensive
  2. Manage the iteration, and deliver v1.0 midnight before the tutorial
  3. Do an informal demo of v1.0 during the tutorial

Week 10 - Mon, Oct 21st

Topics:

  • [W10.1] Sequence Diagrams: Basics

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

  • [W10.4] Testing: Test Coverage

Full ToC


Admin:

  1. Submit weekly 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 - Mon, Oct 28th

Topics:

  • [W11.2] Types of Testing

  • [W11.3] Test Case Design

  • [W11.4] Equivalence Partitioning

Full ToC


Admin:

  1. Submit weekly quiz

tP: v2.0

  1. Update UG and DG
  2. Review others' DG during the tutorial
  3. Deliver v2.0 Thu, Nov 7th 23:59
  4. Draft the PPP

Week 12 - Mon, Nov 4th

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 weekly quiz

tP:

  1. Finish any remaining v2.0 tasks
  2. Attend the practical exam dry run During the lecture on Fri, Nov 8th

Week 13 - Mon, Nov 11th

Topics:

  • No topics allocated to this week.

Admin:

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

tP: v2.1

  1. Fix PE-D bugs
  2. Submit final deliverables Tue, Nov 12th 14:00
  3. Submit the demo video
  4. Prepare for the practical exam
  5. Attend the practical exam during the lecture on Fri, Nov 15th
  6. [if needed] Attend the backup practical exam Sun, Nov 17th 1400-1600