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
  • Combined Exercises

    Here are some exercises that combine multiple topics.

    Choose the correct statement

    Explanation:

    • Functional requirements are not always more important.
    • Greenfield projects do not have existing products.
    • Users can inform us about the present. They may not be able to envision the future. (It’s not the consumers’ job to know what they want --Steve Jobs).

    Choose the incorrect statement.

    Explanation: A sequence diagram is a behavior diagram, not a structure diagram. An SD can represent how objects interact with each other (i.e., behavior), not how they are connected to each other (i.e. structure).

    Which one of these is the most useful to model a workflow?

    Pick the odd one out.

    Explanation: RCS is for managing code changes. The others are tools and techniques for managing project schedules. It’s OK if you don’t agree with the answer. What matters is that you know what each one is for.

    Choose the least correct statement

    Explanation: Patterns have costs and sometimes they may be an overkill. Therefore, we should apply them judiciously.