Lectures ======== Teacher: Gerardo Schneider * **Note 1**: The following schedule is preliminary and it is subject to change. In particular we plan to have a couple of guest lectures. Any change will be notified in the News section (in the main page) after the course starts. * **Note 2**: Mandatory meetings with each group will be set on some of the slots marked as "Group work and consultation". The course assistant will communicate the specific date to each group in due time. * **Note 3**: There will be several deadlines for submissions of the project work. See :doc:`labs/index` for more details on the dates and content of each deliverable. **Place**: Lectures will take place at Lindholmen, in room **SVEA 118**. Schedule -------- +------------------------------------+---------------------------------------------------------------------------------+ |When |Content | +====================================+=================================================================================+ |**Week 1/12** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon Mar 20 | | 08:00-09:00 | | :ref:`lecture0` | | | | 09:15-12:00 | | :ref:`lecture1` | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed Mar 22 | | 10:15-12:00 | | :ref:`lecture2` | | | | 13:15-14:45 | | :ref:`lecture3` | | | | 15:00-17:00 | | Introduction to assignments, and :ref:`tutorial1` | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 2/13** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon Mar 27 | | 08:30-10:00 | | :ref:`lecture4` | | | | 10:15-11:45 | | :ref:`lecture5` | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed Mar 29 | | 10:15-12:00 | | :ref:`lecture6` | | | | 13:15-14:30 | | :ref:`lecture7` | | | | 14:45-16:30 | | :ref:`lecture8` | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 3/14** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon Apr 3 | | 08:00-10:00 | | :ref:`tutorial2` | | | | 10:15-12:00 | | Group work and Consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed Apr 5 | | 10:15-12:00 | | :ref:`lecture9` | | | | 13:15-15:00 | | :ref:`lecture10` | | | | 15:15-17:00 | | :ref:`lecture11` | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week -/15** | +------------------------------------+---------------------------------------------------------------------------------+ | Mon Apr 10 | NO LECTURE - HOLIDAY | +------------------------------------+---------------------------------------------------------------------------------+ | Wed Apr 12 | NO LECTURE - HOLIDAY | +------------------------------------+---------------------------------------------------------------------------------+ |**Week 4/16** | +------------------------------------+---------------------------------------------------------------------------------+ | Mon Apr 17 | NO LECTURE - HOLIDAY | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed Apr 19 | | 13:15-15:00 | | Group work and Consultation | | | | 15:15-17:00 | | Group work and Consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 5/17** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon Apr 24 | | 08:00-10:00 | | :ref:`tutorial3` | | | | 10:15-12:00 | | Group work and Consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed Apr 26 | | 10:15-12:00 | | :ref:`tutorial4` | | | | 13:15-17:00 | | Group work and consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 6/18** | +------------------------------------+---------------------------------------------------------------------------------+ | Mon May 1 | NO LECTURE - HOLIDAY | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed May 3 | | 10:15-12:00 | | Group work and consultation | | | | 13:15-17:00 | | Group work and consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 7/19** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon May 8 | | 08:00-12:00 | | Group work and consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed May 10 | | 10:15-12:00 | | Group work and consultation | | | | 13:15-17:00 | | Group work and consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 8/20** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon May 15 | | 08:00-12:00 | | Group work and consultation | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed May 17 | | 10:15-12:00 | | Final project presentations by students | | | | 13:15-17:00 | | Final project presentations by students | +---------------+--------------------+---------------------------------------------------------------------------------+ |**Week 9/21** | +---------------+--------------------+---------------------------------------------------------------------------------+ | Mon May 22 | | 09:00-12:00 | | :ref:`lecture12` | +---------------+--------------------+---------------------------------------------------------------------------------+ | Wed May 24 | | 10:15-12:00 | | NO LECTURE | +---------------+--------------------+---------------------------------------------------------------------------------+ .. _lecture0: Lecture 0: Introduction to the course ------------------------------------- * **Slides**: :download:`Introduction to the course`. .. _lecture1: Lecture 1: Introduction to Validation and Verification ------------------------------------------------------ * **Slides**: :download:`Introduction to Validation and Verification` * **Literature**: |JS| .. _lecture2: Lecture 2: BlackBox Testing --------------------------- * **Slides**: :download:`BlackBox Testing` * **Literature**: |JS| .. _lecture3: Lecture 3: WhiteBox Testing --------------------------- * **Slides**: :download:`WhiteBox Testing and Coverage` * **Literature**: |JS| .. L3, L4 White Box Testing; Testing from the Software Development Perspective J-S .. _lecture4: Lecture 4: Testing from a Development Perspective ------------------------------------------------- * **Slides**: :download:`Testing in General` * **Literature**: |JS| .. _lecture5: Lecture 5: Extended Finite State Machines (EFSM) ------------------------------------------------ * **Slides**: :download:`EFSM` .. _lecture6: Lecture 6: More on EFSMs ------------------------ * **Slides**: :download:`More on EFSM` .. _lecture7: Lecture 7: Introduction to MBT ------------------------------ * **Slides**: :download:`Introduction to MBT` * **Literature**: |UL| (Chapters 1-3) .. _lecture8: Lecture 8: ModelJUnit --------------------- * **Slides**: :download:`ModelJUnit` * **Literature**: |UL| (Sections 5.1-5.2) .. _lecture9: Lecture 9: Graph Theory Techniques in MBT ----------------------------------------- * **Slides**: :download:`Graph Theory Techniques in MBT` * **Literature**: |RR| .. _lecture10: Lecture 10: Making tests executable ----------------------------------- * **Slides**: :download:`Making tests executable` * **Literature**: |UL| (Section 5.3 and Chapter 8) .. _lecture11: Lecture 11: Selecting tests --------------------------- * **Slides**: :download:`How to select your tests` * **Literature**: |UL| (Chapter 4) .. _lecture12: Lecture 12: Revision Lecture ---------------------------- * **Material**: :download:`Revision Lecture` .. _lecture13: Lecture 13: Guest Lecture ---------------------------- Cancelled .. _tutorial1: Tutorial 1: JUnit ----------------- Will go through the description of assignment 1, help students set up their private machines machines, and have a tutorial on JUnit. * **Slides**: :download:`Tutorial on JUnit` * **Further information**: * Demo of the SUT * Setup of the Environment .. _tutorial2: Tutorial 2: On modeling and tools for EFSM ------------------------------------------ Will consist of a short presentation of modeling tools and a voluntary exercise on Finite State Machines followed by a tutorial on how to model a simple SUT. * **Slides**: :download:`Tutorial on Testing and Modeling` .. * **Further information**: .. _tutorial3: Tutorial 3: ModelJUnit ---------------------- See :doc:`tutorials/modeljunit` .. _tutorial4: Tutorial 4: ModelJUnit in IntelliJ ---------------------------------- See :doc:`tutorials/modeljunit-intellij` .. |JS| replace:: :ref:`Jorgenson and Sommerville` .. |RR| replace:: :ref:`Robinson` .. |UL| replace:: :ref:`Utting & Legeard`