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

Topics:

  • No topics allocated to this week.

Admin:

  1. Set up the tools before the lecture
  2. Submit the pre-module survey Thu, Aug 12th 2359 counted for participation
  3. Learn about the module
  4. Attend the first lecture

Week 2 - Fri, Aug 13th

Topics:

  • [W2.1] Java: Intro

  • [W2.2] Java: HelloWorld

  • [W2.3] Java: Data Types

  • [W2.4] Java: Control Flow

  • [W2.5] OOP: Classes and Objects

  • [W2.6] Java: Objects

  • [W2.7] Java: Classes

  • [W2.8] RCS: Init, Commit

  • [W2.9] RCS: Remote Repos

  • [W2.10] RCS: Using History

  • [W2.11] IDEs: Basic Features

Full ToC


Admin:

  1. Submit post-lecture quiz before the next lecture counted for participation
  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 Increments (+ commit, tag, push): Level-0, Level-1, Level-2, Level-3 before next lecture

Week 3 - Fri, Aug 20th

Topics:

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

  • [W3.2] Java: Useful Classes

  • [W3.3] OOP + Java: Inheritance

  • [W3.4] OOP + Java: Polymorphism

  • [W3.5] Java: Constants

  • [W3.6] OOP + Java: Enumerations

  • [W3.7] Code Quality: Coding Standards

  • [W3.8] RCS: Fetch, Pull, Pull Requests

  • [W3.9] Automated Testing of Text UIs

Full ToC


Admin:

  1. Submit post-lecture quiz before the next lecture counted for participation
  2. Form teams during the tutorial

iP:

  1. Do any leftover iP tasks from the previous week
  2. Create a PR to the upstream repo by the end of the lecture
  3. Add Increments: Level-4, A-TextUiTesting, A-CodingStandard

tP:

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

Week 4 - Fri, Aug 27th

Topics:

  • [W4.1] Java: Casting

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

  • [W4.3] OOP + Java: Interfaces

  • [W4.4] Java: Packages

  • [W4.5] Java: Access Modifiers

  • [W4.6] Error Handling: Exceptions

  • [W4.7] Code Quality: Naming

  • [W4.8] Code Quality: Readability

  • [W4.9] Refactoring

  • [W4.10] RCS: Reviewing pull requests

  • [W4.11] RCS: Branching

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation

iP:

  1. Add Increments as branches: Level-5, A-CodeQuality, A-AbstractClasses, A-Packages
  2. Use GFMD in the PR description
  3. Review some peer PRs counted for participation

tP:

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

Week 5 - Fri, Sep 3rd

Topics:

  • [W5.1] Java: Generics

  • [W5.2] Java: Collections

  • [W5.3] Java: File Access

  • [W5.4] Java: JAR Files

  • [W5.5] Java: Varargs

  • [W5.6] Java: streams

  • [W5.7] Documentation Tools

  • [W5.8] Code Quality: Code Comments

  • [W5.9] Requirements: Intro

  • [W5.10] Requirements: Gathering

  • [W5.11] Requirements: Specifying

  • [W5.12] RCS: Merging PRs

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation
  2. Practice peer evaluation on TEAMMATES Thu, Sep 9th 2359 counted for participation

iP:

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

tP:

  1. Brainstorm user stories before next lecture

Week 6 - Fri, Sep 10th

Topics:

  • [W6.1] IDEs: Intermediate Features

  • [W6.2] Code Quality: Unsafe Practices

  • [W6.3] Developer Testing

  • [W6.4] Unit Testing

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation
  2. [optional] Submit mid-term feedback for the module

iP:

  1. Add Increment: A-MoreOOP
  2. Add Increments as PRs: Level-8, Level-9, A-JUnit

tP:

  1. Choose user stories for v1.0 during the lecture
  2. Conceptualize v1.0
  3. Draft the UG before next lecture
  4. Refine the product design

Week 7 - Fri, Sep 17th

Topics:

  • [W7.1] SDLC Process Models: Basics

  • [W7.2] Continuous Integration/Deployment

  • [W7.3] Project Mgt: Workflows

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation

iP:

  1. Set up a product website
  2. Submit the final version Mon, Sep 27th 2359

tP:

  1. Set up the project repo during the lecture
  2. Practice the workflow with a sample repo
  3. Plan the next iteration

Week 8 - Fri, Oct 1st

Topics:

  • [W8.1] Design: Fundamentals

  • [W8.2] Design Principles: SoC, SRP

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

  • [W8.4] Other QA Techniques

  • [W8.5] Testing: Intermediate Concepts : OPTIONAL

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation

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 8th

Topics:

  • [W9.1] Design Patterns

  • [W9.4] Testing: Test Coverage

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation
  2. Submit midterm peer evaluations on TEAMMATES Sat, Oct 16th 2359 counted for participation

tP: v1.0

  1. Make the code more defensive
  2. Deliver v1.0 midnight before next lecture
  3. Do an informal demo of v1.0 (in the following lecture) during the next lecture

Week 10 - Fri, Oct 15th

Topics:

  • [W10.1] Types of Testing

  • [W10.2] Test Cases: Intro

  • [W10.3] Equivalence Partitioning

  • [W10.4] Boundary Value Analysis

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation

tP:

  1. Start the next iteration
  2. Update the DG: user stories, glossary, NFRs
  3. Ensure the code RepoSense-compatible

Week 11 - Fri, Oct 22nd

Topics:

  • [W11.1] Writing Developer Documents

  • [W11.2] Design: Models

  • [W11.3] Class/Object Diagrams: Basics

  • [W11.4] Class/Object Diagrams: Intermediate

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation

tP: v2.0

  1. Update the UG
  2. Deliver v2.0 midnight before next lecture

Week 12 - Fri, Oct 29th

Topics:

  • [W12.1] Sequence Diagrams: Basics

  • [W12.2] Sequence Diagrams: Intermediate

Full ToC


Admin:

  1. Submit post-lecture quiz counted for participation

tP:

  1. Update the DG with design details IMPORTANT
  2. Draft the PPP
  3. Double-check RepoSense compatibility

Week 13 - Fri, Nov 5th

Topics:

  • No topics allocated to this week.

Admin:

  1. Submit final peer evaluation on TEAMMATES Sat, Nov 20th 2359 counted for participation

tP: v3.0

  1. Submit deliverables Sat, Nov 13th 2359
  2. Submit the demo video Mon, Nov 15th 2359