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, Jan 9th

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, Jan 13th

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 19th 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 20th

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, Jan 27th

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, Jan 30th 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 3rd

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 Wed, Feb 8th 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 10th

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. Submit mid-term feedback for the module Sat, Feb 25th 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, Feb 17th

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, Mar 3rd 2359

tP:

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

Week 8 - Fri, Mar 3rd

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

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

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

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, Mar 31st

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, Mar 31st
  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 7th

Topics:

  • No topics allocated to this week.

Admin:

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

tP: v2.1

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