Vous êtes sur la page 1sur 21

Modélisation Logicielle Orientée Objet

S-INFO-013 (cours du jour, Mons)


Tom Mens
Service de Génie Logiciel – Département Informatique
Structure des UE et AA

US-B2-SCINFO-007-M
50%
“Génie Logiciel”
6 crédits
FS BAB2 Sciences Informatiques S-INFO-103 (Stéphane Dupont)
50% “Développement dirigé par les modèles”
Q1: 8h cours + 16h labos
US-MC-SCINFO-041-M
© Tom Mens, UMONS

“Génie Logiciel”
6 crédits
FS Master Sciences Informatiques S-INFO-013 (Tom Mens)
50%
“Modélisation logicielle orientée objet”
Q1: 18h cours + 12h travaux pratiques
US-MC-SCINFO60-002-M UI-B3-IRCIVI-302-M
“Génie Logiciel” (responable: Stéphane Dupont)
6 crédits “Outils de développement logiciel”
FS Master Court Sc. Informatiques I-ILIA-004 (Stéphane Dupont) FPMS Bachelier Ingénieur Civil
“Modélisation et programmation
US-B3-SCMATH-100-M avancée”
Q1: 6h cours + 24h travaux pratiques 50%
“Génie Logiciel”
6 crédits
FS Bachelier Mathématiques

2
S-INFO-013
Modélisation logicielle orientée objet

Dispensée en Q1

–18h de théorie sur la modélisation orientée objet


© Tom Mens, UMONS

• Le langage de modélisation UML


• La modélisation exécutable des statecharts

–12h de travaux pratiques

3
S-INFO-013
Méthode d’évaluation

Examen écrit à cahier fermé en janvier


(ou en août pour la 2ème session)
–Pour tester la connaissance théorique et pratique sur
© Tom Mens, UMONS

le langage UML et les statecharts

–Certaines questions des années précédentes


disponibles sur Moodle

4
L’UE Génie Logiciel

• L’AA S-INFO-013 fait partie d’une UE « Génie


Logiciel » pour FS Sciences Informatiques et
Mathématiques (pondération 50%)
– Autre AA en Q1: Développement dirigée par les modèles (S-
© Tom Mens, UMONS

INFO-103) par S. Dupont

• L’AA S-INFO-013 fait partie d’une UE « Outils de


développement logiciel » Pour FPMS BAB3 IG
(pondération 50%)
– Autre AA en Q1: Modélisation et programmation avancée (I-
ILIA-004) assurée par S. Dupont

5
AA S-INFO-013
Modélisation logicielle orientée objet

Par Tom Mens.

Objectifs:
© Tom Mens, UMONS

• Se familiariser avec le design et la modélisation des


systèmes logiciels

• apprendre le langage de modélisation UML


– version 2.5 sera utilisé dans ce cours

• pouvoir développer des modèles en UML en utilisant de


bonnes pratiques de l’orientée objet
– abstraction, généralité, modularité, réutilisabilité,
compréhensibilité, cohérence, …

6
AA S-INFO-103 (en FS)
Développement dirigée par les modèles

Par Stéphane Dupont.

Objectifs: Apprendre les aspects avancés de la


programmation orientée objet en Java
© Tom Mens, UMONS

– Les design patterns


– Les tests logiciels (tests unitaires, mock testing, …)
– La synchronisation entre code et modèles
– La génération du code source à partir des modèles

7
AA I-ILIA-004 (en FPMS)
Modélisation et programmation avancée

Par Stéphane Dupont.

Objectifs: Apprendre les aspects avancés de la


programmation orientée objet en Java
© Tom Mens, UMONS

– Développement orienté objet


– Structures de données (Collections en Java)
– La programmation fonctionnelle en Java (lambdas et streams)
– La programmation parallèle en Java (threads)
– Le développement d’une interface utilisateur GUI
– La gestion d’exceptions
– Les design patterns
– Les tests unitaires
– La synchronisation entre code et modèles

8
Liens utiles

Plateforme Moodle
https://moodle.umons.ac.be/course/view.php?id=3298

Accès automatique
© Tom Mens, UMONS

... ou, pour commencer ...


accès anonyme avec clef ML2023

9
Logiciels recommandés
pour la modélisation UML

Attention! Vérifiez la comptabilité des outils avec une version 2.5


d’UML

Logiciels recommandés:
© Tom Mens, UMONS

–Visual Paradigm UML


Licence académique disponible sur la plate-forme e-learning
https://ap.visual-paradigm.com/university-of-mons
User guide:
https://circle.visual-paradigm.com/docs/

–Itemis Create Professional edition (statechart tool)


Stand-alone application:
https://www.itemis.com/en/products/itemis-create
Cloud-based: https://create.itemis.io

Licence académique et instructions d’installation


18
disponibles sur Moodle
© Tom Mens, UMONS Visual Paradigm for UML

20
Contenu de l’AA S-INFO-013

Exemple d’un processus « léger » pour le


développement dirigé par les modèles:
Visual Paradigm Standard(Tom Mens(University of Mons))
© Tom Mens, UMONS

UI designer

Create User Create State


Interface Machine Diagram
Mockup Controlling
Event-Based UI

Create Use Case Create


Create Use Case Scenarios Sequence
Diagram Diagrams
UML designer

Create Interaction Create Class


Overview Diagram Diagrams
Developer

Generate
Deploy Write (and Test)
Source Code
Code More Source Code
from Diagrams

21
Visual Paradigm Standard(Tom Mens(University of Mons))

UI designer
Create User Create State
Interface Machine Diagram
Mockup Controlling
Event-Based UI

Create Use Case

Exemple d’une maquette (créé avec Visual


Create
Create Use Case Scenarios Sequence
Diagram Diagrams

UML designer
Paradigm) de l’interface graphique (user Create Interaction
Overview Diagram
Create Class
Diagrams

interface mockup) d’un thermostat :


© Tom Mens, UMONS

Developer

Generate
Deploy Write (and Test)
Source Code
Code More Source Code
from Diagrams

22 https://bitbucket.org/evolumons/mythermostat
Visual Paradigm Standard(Tom Mens(University of Mons))

UI designer
Create User Create State
Interface Machine Diagram
Mockup Controlling
Event-Based UI

Exemple d’un statechart


Create Use Case représentant
Scenarios le controleur
Create Use Case
du thermostat
Create
Sequence
Diagram Diagrams

UML designer
Create Interaction Create Class
Overview Diagram Diagrams
© Tom Mens, UMONS

Developer

Generate
Deploy Write (and Test)
Source Code
Code More Source Code
from Diagrams

23
Itemis Create
Stand-alone statechart editor
© Tom Mens, UMONS

24
Itemis Create
Cloud-based statechart editor
(create.itemis.io)
© Tom Mens, UMONS

25
Visual Paradigm Standard(Tom Mens(University of Mons))

UI designer
Create User Create State
Interface Machine Diagram
Mockup Controlling
Event-Based UI

Simulation d’un statechart exécutable


Create Use Case
Diagram
Create Use Case
Scenarios
Create
Sequence
Diagrams

UML designer
Create Interaction Create Class
Overview Diagram Diagrams
© Tom Mens, UMONS

Developer

Generate
Deploy Write (and Test)
Source Code
Code More Source Code
from Diagrams

26
Visual Paradigm Standard(Tom Mens(University of Mons))

UI designer
Create User Create State
Interface Machine Diagram
Mockup Controlling
Event-Based UI

Simulation du statechart exécutable


Create Use Case
Diagram
Create Use Case
Scenarios
Create
Sequence
Diagrams

UML designer
(avec create.itemis.io)
Create Interaction Create Class
Overview Diagram Diagrams
© Tom Mens, UMONS

Developer

Generate
Deploy Write (and Test)
Source Code
Code More Source Code
from Diagrams

27
Contenu de l’AA S-INFO-013
Cours théoriques

La modélisation en UML: différents points de vue


Modélisation de la structure statique
• les diagrammes de classes
(et les diagrammes d’objets)
© Tom Mens, UMONS

Modélisation de l’architecture
• du logiciel: les diagrammes de composants
• du matériel: les diagrammes de déploiement

Modélisation du comportement dynamique


• Modélisation de la fonctionnalité pour l'utilisateur
– les diagrammes de cas d’utilisation
(et les scénarios semi-structurés)
• Modélisation des processus et workflow
– interaction overview diagrams
– les diagrammes d'activités
– les diagrammes de séquences
• Les statecharts (diagrammes d'états comportementaux)
29
© Tom Mens, UMONS

30
Contenu de l’AA S-INFO-013
La modélisation en UML

Utilisez de bonnes pratiques de modélisation

–Exactitude: dévelopez des modèles syntaxiquement


corrects
© Tom Mens, UMONS

–Précision: évitez l’ambiguité dans les modèles


–Concision: évitez les détails inutiles
–Complétude: modélisez tous les aspects essentiels
–Cohérence: évitez les incohérences dans les
modèles
–Compréhensibilité: créez des modèles lisibles et
compréhensibles
–Uniformité: utilisez un style uniforme partout

31

Vous aimerez peut-être aussi