Enseignement
Nous donnons des cours offerts dans les programmes de premier cycle et de cycles supérieurs du DIRO.
Cours de premier cycle
-
IFT 1015 Programmation I
- Lecturer Louis-Edouard LAFONTANT
- Tools and language Codeboot, Python
- types and expressions
- control flows
- functions
- array and structure
- file manipulation
- exceptions and error handling (intro)
- recursivity
- tests
The goal of this course is to introduce students to the fundamentals of programming with a focus on imperative language. This course also aims to give students a practical experience in Python.
-
IFT 1025 Programmation II
- Lecturer Michalis FAMELIS
- Tools and language Java, JavaFX, Git
- OOP concepts: class & object, encapsulation, inheritance, interface
- server-client architecture
- data structures and algorithms (intro)
- file handling and serialization
- exceptions and error handling
- multithreading
- event-driven programming
- file manipulation
- error handling
- graphical user interface (GUI)
The goal of this course is to introduce students to the fundamentals of programming with a focus on imperative language. This course also aims to give students a practical experience in Java.
-
IFT 2255 Génie logiciel
- Lecturer Louis-Edouard LAFONTANT
- Tools and language UML diagrams, Java, JUnit, Git
- Software processes
- Software engineering workflows
- Software architecture
- OOP
- UML
- TDD
The goal of this course is to introduce students to the software engineering discipline focusing on its techniques and methodologies. The course covers the theory of software engineering, but also gives students a practical hands-on experience on collaborative development of a software they will build.
-
IFT 3911 Analyse et conception des logiciels
- Lecturer Eugene SYRIANI
- Tools and language UML diagrams, OCL, Yakindu, Java, JUnit, Git
- Principles of good OO design
- UML
- OCL
- Code generation
- Design patterns
- Statecharts
- Petrinets
- Evaluation and analysis of software design
The goal of this course is to give students an in-depth insight in the nature of object-oriented analysis and design. At the end of the course, students will have gained a solid experience in developing non-trivial software. The focus of this course is on design rather than implementation.
-
IFT 3913 Qualité du logiciel et métriques
- Lecturer Michalis FAMELIS
- Tools and language Java
- software quality
- quality assurance
- quality assurance plan
- quality control techniques (tests, code review, inspections)
- software quality standards
- measure theory
- product and process metrics
- software quality metrics
The goal of this course is to introduce students to software evaluation techniques and software quality metrics.
Cours de cycles supérieurs
-
IFT 6253 Conception basée sur les modèles
- Lecturer Eugene SYRIANI
- Tools and language UML, AToMPM, Eclipse, Ecore, ATL, Xtext
- Modeling languages
- Domain-specific languages
- Metamodeling
- Model transformation
- Analysis techniques on models
- Model simulation
The goal of this course is to familiarize students with techniques in modeling at different levels of abstraction, such as in model-driven engineering and in simulation-based design.
-
IFT 6755 Analyse du logiciel
- Lecturer Michalis FAMELIS
- Tools and language Z3, Alloy, NuSMV
- Propositional logic and SAT-based analysis
- First order logic and analysis
- Temporal logic
- Verification by model checking
- Empirical methods in software engineering
- introduction to software product line.
The goal of this course is to familiarize the students with formal methods used to analyze software, such as propositional logic, temporal logic and model checking.