Course materials for ESIR2 students
ESIR2-S7-OMD (part 1)
This course provides an introduction to Software Modeling. This part of the course includes 9 lectures (x 1.5h) and 12h of labs.
Lectures
Professor: Benoit Combemale
Date | Lecture | Material | Comment |
---|---|---|---|
Sep. 06th, 2023 | Welcome introduction | slides | on campus |
Sep. 06th, 2023 (cond.) | Introduction to modeling | slides | on campus |
Sep. 06th, 2023 (cond.) | Introduction to modeling, cond. | on campus | |
Sep. 08th, 2023 | UML overview | slides | on campus |
Sep. 08th, 2023 (cond.) | UML overview, cond. | on campus | |
Sep. 08th, 2023 (cond.) | UML overview, cond. | on campus | |
Sep. 15th, 2023 | UML overview, cond. | on campus | |
Sep. 15th, 2023 (cond.) | Design Pattern | slides | on campus |
Sep. 15th, 2023 (cond.) | Design Pattern, cond. | on campus |
Labs
Professor: Hélène Feuillâtre, and Pierre-Victor Besson.
- Labs #1 and #2: object-oriented analysis and design ( topic and solution)
- Labs #3, #4, #5 and #6: object-oriented design and implementation ( topic and solution)
Further material
- Textbook: Poly C119 “ Développement de logiciel à Objets avec UML”, by Jean-Marc Jézéquel, Noël Plouzeau et Yves Le Traon
- The Refcardz UML cheetsheet and the UML Diagrams website
- The Refcardz on Design Patterns
- Catalog of design pattern implementations: by Refactoring.Guru and S. Mosser
- Looking for good books? You may have a look to the textbooks Introduction to Software Design with Java, and UML@Classroom ( website). Here is also a currated list of must-read professional books.
ESIR2-S7-OMD (part 2)
This course provides an introduction to software development tools: source code management, build management, software delivery and continuous integration. This part of the course includes 6 lectures (x 1.5h) and 12h of labs.
Lectures
Professor: Benoit Combemale and Johann Bourcier
Date | Lecture | Material | Comment |
---|---|---|---|
Oct. 13th, 2023 | SOLID | slides | on campus |
Oct. 13th, 2023 (cond.) | SOLID, cond. | on campus | |
Oct. 20th, 2023 | Tools for Software Development Industrialization | slides | on campus |
Oct. 20th, 2023 (cond.) | Tools for Software Development Industrialization, cond. | on campus | |
Nov. 07th, 2023 | Introduction to agile methods | slides | on campus |
Nov. 07th, 2023 (cond.) | Introduction to agile methods, cond. | on campus |
Labs
Professor: Hélène Feuillâtre, and Pierre-Victor Besson.
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 |
---|---|---|---|
Nov. 21st, 2023 | final exam | n/a | on campus |
Further material
- GIT cheat sheet by GitHub
- The Refcardz on Git, Maven and Jenkins
- Learn Git Branching, an online and interactive tutorial about Git
ESIR2-SI-S8-VV
This course provides an extended overview of the software testing techniques. The course includes 7 lectures (x 1.5h) and 12h of labs.
Lectures
Professor: Benoit Combemale
Date | Lecture | Material | Comment |
---|---|---|---|
Nov. 17th, 2023 | Introduction | slides | on campus |
Nov. 17th, 2023, cond. | Software testing at glance | slides | on campus |
Nov. 17th, 2023, cond. | Static analysis | slides | on campus |
Nov. 24th, 2023 | Dynamic testing | slides | on campus |
Nov. 24th, 2023, cond. | Integration testing | slides | on campus |
Dec. 01st, 2023 | Test qualification and main criteria | slides | on campus |
Dec. 01st, 2023, cond. | Mutation testing | slides | on campus |
A textbook (by Oscar Luis Vera-Pérez) complements the lectures.
Labs
Professors: Romain Lefeuvre and Philemon Houdaille
- Practical Session #1 (4h)
- Practical Session #2 (4h)
- Practical Session #3 (4h)
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 |
---|---|---|---|
Dec. 6th, 2023 | Evaluation | n/a | on campus |
Further material, information and references
- Some tools: PMD, JavaParser, EclEmma/JaCoCo, Mockito, EasyMock, Pitest, jqwik, Selenium, and DbUnit.
- Refcard about JUnit & EasyMock, Mockito, and Selenium.
ESIR2-SI-S7/S8-Projet: Software Development Project
This course consists in realizing an agile software development project, leveraging all the previous courses.
Professors: Francesca Galassi, Zoltan Miklos, Helene Feuillatre, Johann Bourcier and Benoit Combemale
Material
Evaluation
Date | Lecture | Material | Comment |
---|---|---|---|
Jan. 15th, 2023 | Evaluation Proj 1 | n/a | on campus |
TBA. | Evaluation Proj 2 | n/a | on campus |