Difference between revisions of "DIT085"

From CERES
Jump to: navigation, search
Line 13: Line 13:
  
  
===Instructor===
+
===Instructors===
  
 
Eugene Groshev
 
Eugene Groshev
Line 19: Line 19:
 
* Email: [mailto:groshev@student.chalmers.se groshev@student.chalmers.se]
 
* Email: [mailto:groshev@student.chalmers.se groshev@student.chalmers.se]
  
 +
 +
Björn Olsson
 +
 +
* Email: [mailto:olssonbv@gmail.com olssonbv@gmail.com]
  
 
==Objectives==
 
==Objectives==
Line 107: Line 111:
 
* L. Aceto, A. Ingolfsdottir, K.G. Larsen, and J. Srba. [http://www.cambridge.org/us/academic/subjects/computer-science/programming-languages-and-applied-logic/reactive-systems-modelling-specification-and-verification Reactive Systems: Modelling, Specification and Verification], Cambridge University Press, 2010.
 
* L. Aceto, A. Ingolfsdottir, K.G. Larsen, and J. Srba. [http://www.cambridge.org/us/academic/subjects/computer-science/programming-languages-and-applied-logic/reactive-systems-modelling-specification-and-verification Reactive Systems: Modelling, Specification and Verification], Cambridge University Press, 2010.
  
 
+
* A. Zeller. Why Programs Fail? Morgan Kaufmann, 2 edition, 2009.
  
 
== Project Description ==
 
== Project Description ==
Line 118: Line 122:
 
! Practical !! Description !! Deadline !! Notes
 
! Practical !! Description !! Deadline !! Notes
 
|-
 
|-
|  Phase 1: TDD of a Unit  ||    ||  February 13, 2015 20:00 ||  
+
[[DIT085 Ed 2015 Practical Phase 1|Phase 1: TDD of a Unit]] ||    ||  February 13, 2015 20:00 ||  
 
|-
 
|-
 
|  Phase 2: Integration (Testing) of the Server  ||        || February 20, 2015 20:00 ||  
 
|  Phase 2: Integration (Testing) of the Server  ||        || February 20, 2015 20:00 ||  

Revision as of 04:45, 12 January 2015

Testing and Verification @ Chalmers / GU - Edition 2015

Contact

Lecturer

Mohammad Mousavi

  • Office: Halmstad University, E 305 (on Fridays at Chalmers: Jupiter, ?)
  • Telephone 035 16 71 22 (on Fridays at Chalmers: )
  • Email: m.r.mousavi@hh.se


Instructors

Eugene Groshev


Björn Olsson

Objectives

  • Knowledge and understanding:
    • understand the basic terminology of testing;
    • name and describe basic concepts on testing, as well as different testing techniques and approaches
    • describe the connection between software development phases and kinds of testing
  • Skills and abilities:
    • write models in at least one formal specification language;
    • construct appropriate and meaningful test cases, and interpret and explain (to stakeholders) the results of the application of such test cases ( using appropriate tools) to practical examples
    • plan and produce appropriate documentation for testing
    • apply different testing techniques on realistic examples.
  • Judgement and approach:
    • compare different tools and techniques for testing software, and plan their use in appropriate contexts,
    • compare and judge alternatives to testing, such as model checking and runtime verification
    • identify and hypothesize about sources of program failures, and reflect on how to better verify the correctness of such programs.


Assessment

Assessment is performed in terms of the deliverable of the practical project (software + report) and a written examination.

  • To obtain a Pass (Godkänd: G) mark for the course, the student must obtain a Pass mark for both the project report and the written examination.
  • To obtain a Pass with Distinction (Väl godkänd : VG) mark for the course, the student must obtain a Pass with Distinction mark for both the project report and the written examination.
  • Otherwise, the student will fail the course and obtain a Fail mark (Underkänd: U).


Slides and Study Material

Lecture Handouts / Slides Other Material
Lecture 1: Terminology and Functional Testing

January 23, 2015

Chapter 4 of Ammann and Offutt
Lecture 2: Test-Driven Development and jUnit

January 30, 2015

Lecture 3: Coverage Criteria (Part I)

February 6, 2015

Chapter 2 and 3 of Ammann and Offutt
Lecture 4: Coverage Criteria (Part II)

February 13, 2015

Chapter 2 and 3 of Ammann and Offutt
Lecture 5: Model Checking

February 20, 2015

Lecture 6: UI Testing

February 27, 2015

Lecture 7: Slicing and Debugging

March 6, 2015

Lecture 8: Reviewing Model Examination

March 13, 2015


Main Textbook

  • P. Ammann and J. Offutt. Introduction to Software Testing. Cambridge, 2008.


Recommended Reading Material

  • P.C. Jorgensen. Software Testing: A Craftsman’s Approach. Auerbach Publications, 3rd edition, 2008.
  • A. Zeller. Why Programs Fail? Morgan Kaufmann, 2 edition, 2009.

Project Description

The project is about Test-Driven Development of a WhatsApp-like server- and client-side application.


Practical Description Deadline Notes
Phase 1: TDD of a Unit  February 13, 2015 20:00
Phase 2: Integration (Testing) of the Server February 20, 2015 20:00
Phase 3: Specification and Model Checking February 27, 2015 20:00
Phase 4: UI Testing March 13, 2015 20:00

Back to Home