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 11 [Mar 30] - Tutorial

    1 Demo v1.3

    • One member is to do a quick demo of your v1.3 using the jar file. Make sure the jar file is in an empty folder before you start. Others can help to confirm the jar file works on other OS'es.

    You may release a newer version to be used for the PE dry run, but make sure it is released by Friday 10am.

    2 Exercise: test case design

    • Divide into two sub-teams and do the following exercises on the white board. Both sub-teams should do both exercises.
    1. What are the EPs for the parameter day of this method?
      /**
      * Returns true if the three values represent a valid day
      */
      boolean isValidDay(int year, int month, int day){

      }
    2. What are the boundary values for the parameter day in the question above?

    Apply heuristics for combining multiple test inputs to improve the E&E of the following test cases, assuming all 6 values in the table need to be tested. underlines indicate invalid values. Point out where the heuristics are contradicted and how to improve the test cases.

    SUT: consume(food, drink)

    Test case food drink
    TC1 bread water
    TC2 rice lava
    TC3 rock acid

    3 Exercise: defensive programming

    1. Demonstrate an assertion failure using Intellij.
    2. Give an example of defensive programming from AB3 or your tP.