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

Summary of the Course Timeline


Week 1 - Mon, Jan 15th

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 - Fri, Jan 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, Jan 25th 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, Jan 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. Set up a project meeting time by the end of the tutorial

Week 4 - Fri, Feb 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, Feb 5th 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, Feb 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, Feb 17th 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, Feb 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, Mar 2nd 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

Week 7 - Fri, Feb 23rd

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, Mar 8th 2359

tP:

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

Week 8 - Fri, Mar 8th

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 before Sat 23:59

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, Mar 15th

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, Mar 22nd 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, Mar 22nd

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 - Fri, Mar 29th

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 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, Apr 5th

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. Attend the practical exam dry run During the lecture on Fri, Apr 5th
  2. Start fixing PED bugs Before the tutorial
  3. Polish the deliverables
  4. Draft the PPP
  5. Double-check RepoSense compatibility

Week 13 - Fri, Apr 12th

Topics:

  • No topics allocated to this week.

Admin:

  1. Submit final peer evaluation on TEAMMATES Thu, Apr 18th 2359

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