Software Engineering II - Software testing


  • May 22nd, 2016: The lesson of Wednesday 24th is cancelled. A lesson on Formal Languages and Compilers will be held in its place.
  • May 2nd, 2016: There will be no lesson in the week May 9-13, due the fact that I'll have to attend the Learn PAd EU research project periodic meeting in the same days.
  • April 23rd, 2016: In the next lesson (April 26th) I will assign the research article to students. As described in the “Exam rules” section below the presentation of a research paper permits to get a mark for the first paper composing the exam.
  • April 12th, 2016: Tomorrow Wednesday April 13th there will be a session of thesis defences. The lesson will not be held
  • March 18th, 2016: The lesson of Wednesday March 23rd is cancelled. Next lesson after the Easter period will be on Wednesday March 30th.
  • March 2nd, 2016: From March 8th lessons will be held in room D.M. Ritchie
  • March 2nd, 2016: There will be no lessons in the week April 4th - April 8th
  • February 29th, 2016: The lesson of Wednesday March 2nd is cancelled in order to permit to some student to attend the IUS course which is currently conflicting with SEII
  • February 28th, 2016: The web page for the course is on-line

Teacher:

Lessons schedule:

  • Tuesday 3pm - 5pm
  • Wednesday 9am - 11am

Office Hours :

  • Tuesday 5pm - 6pm (better if you announce yourself via e-mail)

The course intends to provide to the students the basic knowledge and competences for testing complex software systems. The following topics will be covered:

  • Software Testing generalities
  • Software Testing phases
  • Test derivation strategies
  • Test adequacy assessment

The various conceptual aspects will be illustrated using examples and competences will be assessed with a course project that will require the usage of professional tools.


  • General Information [AM - Ch.1]
    • Basic of software testing
    • Software quality dimensions
    • Testing and other verification activities
    • Type of testing
  • Test Generation Strategies from Requirements [AM - Ch.3]
    • Equivalence partitioning
    • Boundary analysis
    • The Category Partition method
    • Cause-Effect graphs
    • Test generation from predicates
      • BOR,BRO, BRE adequate test sets
  • Test Generation from Finite-State Models [AM - Ch.4]
    • Finite State Machines (FSM)
    • Conformance testing
    • The W-Method
    • The partial W-Method
  • Test Generation from Combinatorial Design [AM - Ch.5]
  • Test Adequacy Assessment Using Control Flow and Data Flow [AM - Ch.7]
    • Control-Flow criteria
    • Data-Flow criteria
  • Unit and Integration Testing [AM - Ch.10-11]

Course Slides

Textbooks


Exam Dates A.Y. 2015/2016

  • June 15th and July 6th, 2016
  • September 7th and 28th, 2016
  • February 8th and 22nd, 2017

Exam rules:

The exam consist of three papers:

  • 1st. The student should perform a short survey presentation. One or two scientific papers will be assigned to each student. A short survey on the topic will be performed, and a presentation will be given by the student in one of the last lessons.
  • 2nd. A Small Software Project should be realized by students (it is possible to work in groups of 2) that will have to choose an open source software system (or possibly one made by them), and provide a complete test plan with artifacts. A short report have to be delivered before the oral paper. Alternatively students can decide to perform a written paper on the date fixed for the exam as reported on the students carreer system (ESSE3).
  • 3rd. Finally the exam foresees an oral paper that can be performed after having passed the previous two papers. The date will be communicated by the teacher.

For each paper the student gets a mark in the range 6 and 12. The final mark results from the sum of the marks the student gets on each paper.

Paper Assignment

At this page you can find the list of papers presented during April 27th lesson

Results

  • N/A