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
  • Software Engineering for Self-Directed Learners CS2103/T edition - 2020 Jan-Apr

    Acknowledgements | All chapters as one printer-friendly page (huge file!)

    Software Engineering

    Software Engineering

    All about software engineering

    Programming Paradigms

    Object-Oriented Programming

    All about object oriented programming

    Requirements

    Requirements

    All about requirements

    Gathering Requirements

    All about gathering requirements

    Specifying Requirements

    All about specifying requirements

    Design

    Software Design

    All about software design

    Design Fundamentals

    All about software design principles

    Modeling

    All about modeling

    Software Architecture

    All about software architecture

    Software Design Patterns

    All about software design patterns

    Design Approaches

    All about software design approaches

    Implementation

    IDEs

    All about IDEs

    Code Quality

    All about writing better quality code

    Refactoring

    All about refactoring

    Documentation

    All about documentation

    Error Handling

    All about error handling

    Integration

    All about integration

    Reuse

    All about reuse

    Quality Assurance

    Quality Assurance

    All about quality assurance

    Testing

    All about testing

    Test Case Design

    All about test case design

    Project Management

    Revision Control

    All about revision control

    Project Planning

    All about project planning

    Teamwork

    All about teamwork

    SDLC Process Models

    All about SDLC process models

    Principles

    Principles

    All about principles

    Tools

    UML

    All about UML

    Intellij IDEA

    All about Intellij IDEA

    Git and Github

    All about Git and Github

    Supplementary

    C++ to Java

    A crash course for C++ programmers to transition to Java