Course materials for ESIR2 students

ESIR2-SI-S7-VV

This course provides an introduction to Software Modeling.

Lectures

Professor: Benoit Combemale

Date Lecture Material Comment
Oct. 27th, 2021 (8h-10h) Introduction welcome and introduction to modeling
Oct. 28th, 2021 (10h-12h) UML UML overview
Oct. 29th, 2021 (08h-10h) UML UML overview
Oct. 29th, 2021 (10h-12h) UML UML overview
Nov. 8th, 2021 (8h-10h) Design Pattern Design Pattern
Nov. 16th, 2021 (10h-12h) SOLID Implementation Pattern

Labs

Professor: Hélène Feuillâtre

Further material

ESIR2-SI-S8-MDI (part 1, incl. SI+IN)

This course provides an introduction to software development tools: source code management, build management, software delivery and continuous integration.

Lectures

Professor: Benoit Combemale

Date Lecture Material Comment
01/17/22 Tools for Software Development Industrialization slides on campus
01/17/22 Tools for Software Development Industrialization, cond. on campus
01/18/22 Tools for Software Development Industrialization, cond. on campus
02/11/22 Introduction to agile methods video 1 & 2 virtual
02/21/22 Continuous deployment and Containerization slides on campus

Labs

Professors: Benoit Combemale, Hélène Feuillâtre and Elyes Cherfa

The labs will consist in implementing individually the proposed tutorial. The tentative timeline is the following:

  • [Part 1-4] Maven ~4h
  • [Part 5] Git ~2h
  • [Part 6] Sonar ~1h
  • [Part 7] Jenkins ~2h
  • [Part 8] GitlabCI ~3h

You must continuously demonstrate your progresses to your professor that will lead to a mark for your labs.

Evaluation

Date Lecture Material Comment
02/25/22 Evaluation n/a on campus

Further material

ESIR2-SI-S8-MDI (part 2)

This course provides an extended overview of the software testing techniques.

Lectures

Professor: Benoit Combemale

Date Lecture Material Comment
Mar. 4th, 2022 Introduction slides on campus
Mar. 4th, 2022, cond. Software testing at glance slides on campus
Mar. 7th, 2022 Static analysis slides on campus
Mar. 11th, 2022 Dynamic testing slides on campus
Mar. 21st, 2022 Integration testing slides on campus
Mar. 21st, 2022, cond. Test qualification and main criteria slides on campus
Mar. 22nd, 2022 Mutation testing slides on campus

A textbook (by Oscar Luis Vera-Pérez) complements the lectures.

Conferences

Date Lecture Material Comment
May 11th, 2022 TBA. slides on campus
May 13th, 2022 TBA. slides on campus

Labs

Professors: Benoit Combemale and Gwendal Jouneaux

Optional labs: if you want to experiment property-based testing and GUI testing, you may optionally have a look to Lab #4 and Lab #5, respectively.

Evaluation

Date Lecture Material Comment
Apr. 4th, 2022 Evaluation n/a on campus

Further material, information and references

ESIR2-SI-S8-AL: Software Architecture

This course provides an overview of the modern software architectures, with an indepth discussion about the underlying rationales and benefits.

Professors: Johann Bourcier and Benoit Combemale

Lectures

Lecture #1:

Lecture #2:

Lecture #3 and #4:

Labs

Based on the aforementioned lectures, you might train yourself (individually) on Docker and Quarkus using the following tutorials:

Then, you have to constitute a project team of 5 people. Each team has to select a monolith application (to be validated with your professors) and to propose a microservicization of this application. For this purpose, you have to investigate the various tradeoffs (modularization, stateless vs stateful, orchestration vs. choreography, etc.), and to propose the new architecture of the application.

As a possible application, you might check-out the Remote meetings planning project, understand the application code and its underlying architecture (cf. the videos available on the readme), and make sure it works in development settings (i.e. on localhost).

For the evaluation, you will have to present your proposed architecture, and to discuss the various tradeoffs. You are not ask to provide any implementation that will be realized during the following project.

Evaluation

Date Lecture Material Comment
May 06th, 2022 (14h-16h) Evaluation n/a on campus

Further material

ESIR2-SI-S8-Projet: Software Development Project

This course consists in realizing an agile software development project, leveraging all the previous courses.

Professors: Johann Bourcier, Helene Feuillatre and Benoit Combemale

Material

Evaluation

Date Lecture Material Comment
May 25th, 2022 (09h-12h) Evaluation n/a on campus
Benoit Combemale
Benoit Combemale
Full Professor of Software Engineering

Agility and safety for wild software