====== Advanced Topics in Software Engineering ======
----
===== News =====
* **March 26, 2020**: Today's lesson has been cancelled due to a last minute meeting of the teacher. Sorry for any inconvenience this may cause.
* **March 16, 2020**: Lectures will start on Tuesday March 24th.
----
===== General Information =====
**Teacher**:
* Andrea Polini
* Barbara Re
**ESSE3 Link**
* [[https://didattica.unicam.it/Guide/PaginaADContest.do?ad_cont_id=10025*9100*2019*2016*9999&ANNO_ACCADEMICO=2019&ANNO_COORTE=2019&ANNO_REVISIONE=2019|Advanced Topics in Software Engineering - AY 2019/2020]]
**Lessons schedule**:
* Tuesday, 14.00 - 16.00, Room AB1, Polo Lodovici;
* Thursday, 11.00 - 13.00, Room AB1, Polo Lodovici.
----
===== Course Objectives =====
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.
----
===== Course Contents =====
* **General Information**
* Basic of software testing
* Software quality dimensions
* Testing and other verification activities
* Type of testing
* **Test Generation Strategies from Requirements**
* 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**
* Finite State Machines (FSM)
* Conformance testing
* The W-Method
* The partial W-Method
* **Test Generation from Combinatorial Design**
* **Test Adequacy Assessment Using Control Flow and Data Flow**
* Control-Flow criteria
* Data-Flow criteria
* **Unit and Integration Testing**
----
===== Study Material =====
**Course Slides**
* {{:didattica:magistrale:atse:ay_1920:introductoryconcepts.pdf |Introduction}}
* {{ :didattica:magistrale:atse:ay_1920:partitioning.pdf |Domain Partitioning}}
* {{ :didattica:magistrale:atse:ay_1920:predicateanalysis.pdf |Predicate Analysis}}
* {{ {{ :didattica:magistrale:atse:ay_1920:assessment.pdf |Adequacy Criteria}}
* {{ :didattica:magistrale:atse:ay_1920:jenkins_-_seminar.pdf |Jenkins}}
* {{ :didattica:magistrale:atse:ay_1920:junit_-_seminar.pdf |Junit}}
* {{ :didattica:magistrale:atse:ay_1920:finitestatemodels.pdf |Finite State Models}}
* {{ :didattica:magistrale:atse:ay_1920:combinatorial_design.pdf |Combinatorial Design}}
**Video Recording**
* March 24th - Course Introduction
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/bf321a10055e4d4f8288de30ecf71510|March 31st]]
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/f94599e8311a4360962aaa50ed5ad26e|April 2nd]]
* [[https://drive.google.com/file/d/11FyDBIekUnRyVXg9cOF_Hay5goGJMTa2/view|April 7th]]
* [[https://drive.google.com/file/d/1NS_Vx0E6HVIDK2ZddzRFpYE5xioURPdg/view|April 16th]]
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/d80736ab246f4ebf8d348e7c8dd72df9|April 21st]]
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/23aceb872a8644ae885eacd9c118b8e1|April 23rd]]
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/71426f9b2cb44830b125069a8c462118|May 14th]]
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/024294647efb4c68829ce208bf30c15f|May 19th]]
* [[https://unicam.webex.com/recordingservice/sites/unicam/recording/playback/ab5bacd981494e128611dcd1557d3780|May 21st]]
**Textbooks**
* [AM] Aditya P. Mathur, //[[http://www.pearsonhighered.com/educator/product/Foundations-of-Software-Testing/9788131794760.page|Foundations of Software Testing]]//, 2nd Edition, Pearson 2014
----
===== Exams =====
**Exam Dates A.Y. 2020/2021**
* June 18th, 2020 - 11am-1pm, room AB1
* July 16th, 2020 - 11am-1pm, room AB1
* September 8th and 29th, 2020 - 11am-1pm, room AB1
* February 2nd and 23th, 2021 - 11am-1pm, room AB1
**Exam rules**:
The exam consist of two parts.
* Written test (1h30). On the exam date a written test takes place, it has a mixed structure: solution of exercises, and open/close answer questionnaire.
* Optional oral presentation that can be performed in a date agreed with the teachers.
* {{ :didattica:magistrale:atse:ay_1920:20200713.pdf |Mock Exam}} (July 9th, 2020)
* {{ :didattica:magistrale:atse:ay_1920:20200713_exam.pdf |July 13th, 2020 - Exam text}}
** Results **
* N/A