This site is from a past semester! The current version will be here when the new semester starts.
CS2103/T 2020 Jan-Apr
  • Full Timeline
  • Week 1 [Jan 13]
  • Week 2 [Jan 20]
  • Week 3 [Jan 27]
  • Week 4 [Feb 3]
  • Week 5 [Feb 10]
  • Week 6 [Feb 17]
  • Week 7 [Mar 2]
  • Week 8 [Mar 9]
  • Week 9 [Mar 16]
  • Week 10 [Mar 23]
  • Week 11 [Mar 30]
  • Week 12 [Apr 6]
  • Week 13 [Apr 13]
  • Textbook
  • Admin Info
  • Report Bugs
  • Forum
  • Instructors
  • Announcements
  • File Submissions
  • Tutorial Schedule
  • Java Coding Standard
  • Participation Marks List

  •  Individual Project (iP):
  • Individual Project Info
  • Duke Upstream Repo
  • iP Code Dashboard
  • iP Showcase

  •  Team Project (tP):
  • Team Project Info
  • Team IDs
  • Addressbook-level3
  • Addressbook-level 1,2,4
  • tP Code Dashboard
  • tP Showcase
  • Week 7 [Mar 2] - Summary

    • [W7.1] Requirements: Use Cases

    • [W7.2] Design Principles: Basics

    • [W7.3] Basic Design Approaches

    • [W7.4] IDEs: Intermediate Features : OPTIONAL

    • [W7.5] Integration Approaches

    • [W7.6] Project Mgt: Scheduling and Tracking

    • [W7.7] Project Mgt: Workflows

    • [W7.1] Requirements: Use Cases
    • [W7.1a] Requirements → Specifying Requirements → Use Cases → Introduction

    • [W7.1b] Requirements → Specifying Requirements → Use Cases → Identifying

    • [W7.1c] Requirements → Specifying Requirements → Use Cases → Details

    • [W7.1d] Requirements → Specifying Requirements → Use Cases → Usage

    • [W7.2] Design Principles: Basics
    • [W7.2a] Design → Introduction → What

       Abstraction

    • [W7.2b] Design → Design Fundamentals → Abstraction → What

       Coupling

    • [W7.2c] Design → Design Fundamentals → Coupling → What

    • [W7.2d] Design → Design Fundamentals → Coupling → How

    • [W7.2e] Design → Design Fundamentals → Coupling → Types of Coupling : OPTIONAL

       Cohesion

    • [W7.2f] Design → Design Fundamentals → Cohesion → What

    • [W7.2g] Design → Design Fundamentals → Cohesion → How

    • [W7.3] Basic Design Approaches
    • [W7.3a] Design → Design Approaches → Top-Down and Bottom-Up Design

    • [W7.3b] Design Approaches → Agile Design → Agile Design

    • [W7.4] IDEs: Intermediate Features : OPTIONAL
    • [W7.4a] Tools → Intellij IDEA → Productivity Shortcuts : OPTIONAL
    • [W7.5] Integration Approaches
    • [W7.5a] Implementation → Integration → Approaches → Late-and-One-Time vs Early-and-Frequent

    • [W7.5b] Implementation → Integration → Approaches → Big-Bang vs Incremental Integration

    • [W7.5c] Implementation → Integration → Approaches → Top-Down vs Bottom-Up Integration : OPTIONAL

    • [W7.6] Project Mgt: Scheduling and Tracking
    • [W7.6a] Project Management → Project Planning → Milestones

    • [W7.6b] Project Management → Project Planning → Buffers

    • [W7.6c] Project Management → Project Planning → Issue Trackers

    • [W7.6d] Project Management → Project Planning → Work Breakdown Structure

    • [W7.6e] Project Management → Project Planning → GANTT Charts : OPTIONAL

    • [W7.6f] Project Management → Project Planning → PERT Charts : OPTIONAL

    • [W7.6g] Project Management → Teamwork → Team Structures

    • [W7.7] Project Mgt: Workflows
    • [W7.7a] Project Management → Revision Control → Forking Flow

    • [W7.7b] Tools → Git and GitHub → Forking Workflow

    • [W7.7c] Project Management → Revision Control → DRCS vs CRCS

    • [W7.7d] Project Management → Revision Control → Feature Branch Flow : OPTIONAL

    • [W7.7e] Project Management → Revision Control → Centralized Flow : OPTIONAL

    Admin:

    1. Submit post-lecture quiz

    iP:

    1. Do any final clean-ups
    2. Submit the final version by Monday 2359

    tP: v1.1

    1. Update project website: AboutUs, ContactUs, README
    2. Update the UG
    3. Update the DG: user stories, glossary, NFRs, use cases
    4. Wrap up v1.1
    5. Draft a rough project plan
    6. start implementing a minimal version of your enhancement