Programmation Orientée Objet
|
|
- Eugène Baril
- il y a 7 ans
- Total affichages :
Transcription
1 Informatique S4-POO Programmation Orientée Objet UML Cédric Buche École Nationale d Ingénieurs de Brest (ENIB) 20 novembre 2013 Cédric Buche (ENIB) POO 20 novembre / 135
2 Plan Introduction Objectifs du cours prérequis 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
3 Plan Introduction Objectifs du cours prérequis 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
4 Introduction Objectifs du cours prérequis Objectifs du cours prérequis Objectifs : Connaître le langage de modélisation UML Comprendre la sémantique des principaux éléments des différents modèles Prérequis : Maîtriser les principes de la programmation orientée objet Cédric Buche (ENIB) POO 20 novembre / 135
5 Introduction Importance de la modélisation Importance de la modélisation La niche, la maison familiale et l immeuble : quelques planches, des clous, un marteau et quelques outils. : plans généraux, plans d exécution détaillés (pièces, électricité, plomberie, chauffage) : planification détaillée, nombreux plans et études Cédric Buche (ENIB) POO 20 novembre / 135
6 Introduction Importance de la modélisation Importance de la modélisation La niche, la maison familiale et l immeuble : quelques planches, des clous, un marteau et quelques outils. : plans généraux, plans d exécution détaillés (pièces, électricité, plomberie, chauffage) : planification détaillée, nombreux plans et études Cédric Buche (ENIB) POO 20 novembre / 135
7 Introduction Importance de la modélisation Importance de la modélisation La niche, la maison familiale et l immeuble : quelques planches, des clous, un marteau et quelques outils. : plans généraux, plans d exécution détaillés (pièces, électricité, plomberie, chauffage) : planification détaillée, nombreux plans et études Cédric Buche (ENIB) POO 20 novembre / 135
8 Introduction Pourquoi modéliser? Pourquoi modéliser? Mieux comprendre le système en développement Appréhender ces systèmes dans leur entièreté modèles de systèmes complexes Cédric Buche (ENIB) POO 20 novembre / 135
9 Introduction Pourquoi modéliser? Pourquoi modéliser? Mieux comprendre le système en développement Appréhender ces systèmes dans leur entièreté modèles de systèmes complexes Cédric Buche (ENIB) POO 20 novembre / 135
10 Introduction Pourquoi modéliser? Pourquoi modéliser? Mieux comprendre le système en développement Appréhender ces systèmes dans leur entièreté modèles de systèmes complexes Cédric Buche (ENIB) POO 20 novembre / 135
11 Introduction Pourquoi mode liser? Pourquoi mode liser? Mieux comprendre le syste me en de veloppement Appre hender ces syste mes dans leur entie rete mode les de syste mes complexes Ce dric Buche (ENIB) POO 20 novembre / 135
12 Introduction Des logiciels au génie logiciel Modélisation informatique : des logiciels au génie logiciel Etude projet informatique 16 % conformes 53 % dépassements 31 % abandon Génie Logiciel Cédric Buche (ENIB) POO 20 novembre / 135
13 Introduction Des logiciels au génie logiciel Modélisation informatique : des logiciels au génie logiciel Etude projet informatique 16 % conformes 53 % dépassements 31 % abandon Génie Logiciel Cédric Buche (ENIB) POO 20 novembre / 135
14 Introduction Des logiciels au génie logiciel Modélisation informatique : des logiciels au génie logiciel Etude projet informatique 16 % conformes 53 % dépassements 31 % abandon Génie Logiciel Cédric Buche (ENIB) POO 20 novembre / 135
15 Introduction Des logiciels au génie logiciel Modélisation informatique : des logiciels au génie logiciel Etude projet informatique 16 % conformes 53 % dépassements 31 % abandon Génie Logiciel Cédric Buche (ENIB) POO 20 novembre / 135
16 Introduction Introduction à UML 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
17 Introduction Introduction à UML 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
18 Introduction Introduction à UML UML : Unified Modeling Language Langage graphique de modélisation pour spécifier, concevoir, construire, et documenter des applications informatiques Synthèse des bonnes pratiques de l ingénierie informatique Unification de modèles Standardisation par l OMG (Object Management Group) Cédric Buche (ENIB) POO 20 novembre / 135
19 Objectifs Introduction Introduction à UML Fournir un langage visuel et expressif Fournir des mécanismes d extension Etre indépendant des technologies et langages d implémentation Fournir une base formelle pour la modélisation Cédric Buche (ENIB) POO 20 novembre / 135
20 3 axes de modélisation Introduction Introduction à UML Approche classique - projet 1 Fonctionnel Cahier des charges : diag. cas d utilisation scénarios écrits Scénarios formels : diag. seq / comm objets/classes 2 Statique classes : diag. classes 3 Dynamique dynamique chaque objet : diag. états/transitions dynamique globale : diag. activités Cédric Buche (ENIB) POO 20 novembre / 135
21 Pour quelles tâches? Introduction Introduction à UML Conception ( forward engineering ) Rétro conception ( reverse engineering ) Documentation d un système Cédric Buche (ENIB) POO 20 novembre / 135
22 Plan Diagramme de classes (4 UC) 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
23 Plan Diagramme de classes (4 UC) 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
24 Diagramme de classes (4 UC) Classes Classe, attribut et opération : notations attribut1 attribut2 Nom operationa operationb operationc nomcompartiment nomelement1 nomelement2 Compartiment identification, propriétés Compartiment des attributs Compartiment des opérations Compartiment(s) optionnels nommés Cédric Buche (ENIB) POO 20 novembre / 135
25 Attribut : syntaxe Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
26 Attribut : syntaxe Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
27 Attribut : syntaxe Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
28 Attribut : syntaxe Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
29 Attribut : syntaxe Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
30 Attribut : syntaxe Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
31 Diagramme de classes (4 UC) Attribut : visibilité Classes Accessibilité : quels éléments peuvent le référencer? + public tout élément qui accède à la classe # protected seul un élément de la classe ou de ses descendants - private seul un élément de la classe package seul un élément du même package que la classe élément : une classe qui référence la classe considérée Cédric Buche (ENIB) POO 20 novembre / 135
32 Exemple Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
33 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
34 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
35 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
36 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
37 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
38 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
39 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
40 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
41 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
42 Diagramme de classes (4 UC) Opération : syntaxe Classes Cédric Buche (ENIB) POO 20 novembre / 135
43 Diagramme de classes (4 UC) Classes Opération : direction des paramètres information que l objet serveur ne possède pas, mais qui est nécessaire à la réalisation de l opération : direction = in information nécessaire à la réalisation de l opération et transformée par celle-ci : direction = inout information produite par l exécution de l opération, donc inexistante avant ; direction = out ou return Cédric Buche (ENIB) POO 20 novembre / 135
44 Exemple Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
45 Exemple Diagramme de classes (4 UC) Classes Cédric Buche (ENIB) POO 20 novembre / 135
46 Types Diagramme de classes (4 UC) Relations entre classes Dépendance Généralisation Réalisation Association Cédric Buche (ENIB) POO 20 novembre / 135
47 Diagramme de classes (4 UC) Relations entre classes Relation de dépendance entre classes (classifier) A client <<use>> B serveur (fournisseur) Indique une dépendance entre les propriétés d une classe (le client) et une autre classe (le serveur, supplier) En conséquence, une modification du serveur peut affecter le comportement du client Exemples : une opération de la classe A fait appel à une opération de la classe B une opération de A a comme paramètre un objet B Cédric Buche (ENIB) POO 20 novembre / 135
48 Diagramme de classes (4 UC) Relations entre classes Exemple de dépendance entre classes Cédric Buche (ENIB) POO 20 novembre / 135
49 Diagramme de classes (4 UC) Relations entre classes Stéréotypes de dépendance entre classes access create instantiate permit use import du contenu d un autre package la classe crée des instances d une autre classe la méthode d une classe crée des instances d une autre donne accès aux éléments privés un élément requiert un autre élément Cédric Buche (ENIB) POO 20 novembre / 135
50 Diagramme de classes (4 UC) Généralisation spécialisation Relations entre classes Généralisation Super classe Héritage CA A + operation1(in arg1: integer) redéfinition d une opération AA AB CB + operation1(in arg1: integer) ABA ABB ABC Spécialisation Sous classe classe dérivée Dérivation Cédric Buche (ENIB) POO 20 novembre / 135
51 Diagramme de classes (4 UC) Relations entre classes Généralisation spécialisation : exemple Cédric Buche (ENIB) POO 20 novembre / 135
52 Diagramme de classes (4 UC) Généralisation : vocabulaire Relations entre classes A est une spécialisation de B A est une sous-classe de B A dérive de B A hérite de B B est une généralisation de A B est une super-classe de A Cédric Buche (ENIB) POO 20 novembre / 135
53 Diagramme de classes (4 UC) Association : principe Relations entre classes Cédric Buche (ENIB) POO 20 novembre / 135
54 Association : rôles Diagramme de classes (4 UC) Relations entre classes A nomrolea R nomroleb B nomrole : indique ce que représente l ensemble des instances associées à une instance de la classe par la relation R. L accès peut être +, # ou - nomroleb nomrolea nom de l ensemble des instances de la classe B qui sont en relation avec 1 instance de la classe A par la relation R. nom de l ensemble des instances de la classe A qui sont en relation avec 1 instance de la classe B par la relation R. Cédric Buche (ENIB) POO 20 novembre / 135
55 Diagramme de classes (4 UC) Association : multiplicités Relations entre classes A multa R multb B valeurs possibles du cardinal de l ensemble des instances associées à une instance de la classe par la relation R. multb multa cardinal de l ensemble des instances de la classe B qui sont en relation avec 1 instance de la classe A par la relation R. cardinal de l ensemble des instances de la classe A qui sont en relation avec 1 instance de la classe B par la relation R. Cédric Buche (ENIB) POO 20 novembre / 135
56 Diagramme de classes (4 UC) Multiplicité : notation Relations entre classes notation : min.. max abreg. signification exactement zéro ou un (optionnel) 0..* * aucun ou plusieurs 1..* au moins 1 n..m, p entre n et m ou exactement p Cédric Buche (ENIB) POO 20 novembre / 135
57 Diagramme de classes (4 UC) Association unidirectionnelle Relations entre classes Cédric Buche (ENIB) POO 20 novembre / 135
58 Diagramme de classes (4 UC) Contraintes sur une association Relations entre classes CA collection R * {ordered} CB Promotion * {subset} eleves Personne 2 delegues 0..1 Etablissement ecole {or} 1 residenceadministrative * eleves Personne * enseignants Cédric Buche (ENIB) POO 20 novembre / 135
59 Diagramme de classes (4 UC) Types d association Relations entre classes A1 R1 B1 Association A2 R2 B2 Agrégation Agrégat élément A3 R3 B3 Composition Composite Composant Cédric Buche (ENIB) POO 20 novembre / 135
60 Agrégation Diagramme de classes (4 UC) Relations entre classes Agrégation : association simple + contraintes d intégrité + graphe acyclique + éléments partageables Cédric Buche (ENIB) POO 20 novembre / 135
61 Composition Diagramme de classes (4 UC) Relations entre classes Composition : agrégation + contrainte de durée de vie + composants non partageables Cédric Buche (ENIB) POO 20 novembre / 135
62 Diagramme de classes (4 UC) Relations entre classes Agregation/composition : exemple Cédric Buche (ENIB) POO 20 novembre / 135
63 Diagramme de classes (4 UC) Relations entre classes Agregation/composition : exemple Cédric Buche (ENIB) POO 20 novembre / 135
64 Package Diagramme de classes (4 UC) Relations entre classes grouper dans des ensembles cohérents. structurer les diagrammes et donnent une vision globale plus claire. Cédric Buche (ENIB) POO 20 novembre / 135
65 Navigation Diagramme de classes (4 UC) Relations entre classes pkg1 +b1 AA 0..1 #b b op1() #op2() -op3() BB c #c2 AB CC Cédric Buche (ENIB) POO 20 novembre / 135
66 Diagramme de classes (4 UC) Classe abstraite Propriété optionnelle d une classe Concepts avancés Définition : classe non instanciable ensemble de propriétés communes à différentes classes mais partiellement définies. donc, seuls des objets d une classe dérivée sont instanciables Deux raisons : 1 bien que l instanciation d un tel objet serait possible cela n aurait pas de sens ex. Personne Eleve Prof 2 au moins une des propriétés de la classe n est pas définie ex. Shape opération draw Notation : << abstract >> : tagged-value placée après le nom de la classe NomClass : en italique Cédric Buche (ENIB) POO 20 novembre / 135
67 Attribut dérivé Diagramme de classes (4 UC) Concepts avancés sa valeur se calcule à partir d autres proprietes de la classe (attributs ou autres) symbolisés par l ajout d un / devant leur nom Cédric Buche (ENIB) POO 20 novembre / 135
68 Interface Diagramme de classes (4 UC) Concepts avancés <<interface>> Nom + attribut1 + attribut2 + operationa + operationb reception signal1 signal2 Variables d état devant être maintenues Services éventuellement un protocole + description de services Cédric Buche (ENIB) POO 20 novembre / 135
69 Diagramme de classes (4 UC) Concepts avancés Relation de réalisation : entre classes et interfaces attr1 CA service1 service2 operationa realisation <<interface>> IB service1 service2 Cédric Buche (ENIB) POO 20 novembre / 135
70 Diagramme de classes (4 UC) Interface : Exemple Concepts avancés Cédric Buche (ENIB) POO 20 novembre / 135
71 Diagramme de classes (4 UC) Relations avec une interface Concepts avancés <<interface>> I1 <<interface>> I3 <<interface>> I2 <<interface>> I4 <<interface>> CA I5 CA I5 I1 <<interface>> I3 I2 I4 CB <<interface>> I6 CB I6 <<interface>> CC CD I7 CC I7 CD Cédric Buche (ENIB) POO 20 novembre / 135
72 Diagramme de classes (4 UC) Interface : exemple Concepts avancés description symbolique de l interface lien d utilisation Ilog saisie mot de passe << uses >> Password source de l interface symbole de l interface Cédric Buche (ENIB) POO 20 novembre / 135
73 Diagramme de classes (4 UC) Classe association cas particuliers d association Concepts avancés A ma ra R mb rb B C Classe association L association entre les classes A et B est réalisée par un objet de la classe C (sous sa responsabilité) la classe C a des propriétés qui lui sont propres (attributs, opérations...) Cédric Buche (ENIB) POO 20 novembre / 135
74 Classe association exemple Diagramme de classes (4 UC) Concepts avancés Cédric Buche (ENIB) POO 20 novembre / 135
75 Diagramme de classes (4 UC) Association qualifiée Concepts avancés A ma valeurclé: TypeClé ra R mb rb B Clé : attribut de la relation R permettant de définir (qualifier) le sous-ensemble des instances de la classe B (rôle rb) associées à 1 instance de la classe A le couple (Instance de A, valeur Clé) identifie le sous-ensemble rb. Multiplicité : mb = cardinal de rb Exemple : annuaire inversé Cédric Buche (ENIB) POO 20 novembre / 135
76 Diagramme de classes (4 UC) Association qualifiée : exemple Concepts avancés Repertoire Repertoire Entreprise Entreprise 1.. * nom fich 1.. * fonction * 1.. * contient contient emploie emploie * * 1.. * Fichier Fichier Personne Personne sans qualifiant avec qualifiant sans qualifiant avec qualifiant Cédric Buche (ENIB) POO 20 novembre / 135
77 Diagramme de classes (4 UC) Association qualifiée exemple Concepts avancés Cédric Buche (ENIB) POO 20 novembre / 135
78 Diagramme de classes (4 UC) Association qualifiée exemple Concepts avancés Cédric Buche (ENIB) POO 20 novembre / 135
79 Diagramme de classes (4 UC) Élaboration Démarche pour bâtir une diagramme de classes (1/2) 1 Trouver les classes du domaine étudié En collaboration avec un expert du domaine. Les classes correspondent généralement à des concepts ou des substantifs du domaine. 2 Trouver les associations entre classes Les associations correspondent souvent à des verbes, ou des constructions verbales, mettant en relation plusieurs classes, comme est composé de, pilote, travaille pour. Attention, méfiez vous de certains attributs qui sont en réalité des relations entre classes. Cédric Buche (ENIB) POO 20 novembre / 135
80 Diagramme de classes (4 UC) Élaboration Démarche pour bâtir une diagramme de classes (2/2) 3 Trouver les attributs des classes Les attributs correspondent souvent à des substantifs, ou des groupes nominaux, tels que la masse d une voiture ou le montant d une transaction. Les adjectifs et les valeurs correspondent souvent à des valeurs d attributs. 4 Organiser et simplifier le modèle En éliminant les classes redondantes et en utilisant l héritage. 5 Vérifier les chemins d accès aux classes 6 Itérer et raffiner le modèle Un modèle est rarement correct dès sa première construction. Cédric Buche (ENIB) POO 20 novembre / 135
81 Plan Diagramme de cas d utilisation (1 UC) 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
82 Plan Diagramme de cas d utilisation (1 UC) 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
83 Diagramme de cas d utilisation (1 UC) Exprimer les besoins Introduction Comment donner un moyen simple d exprimer les besoins d utilisateurs non informaticiens? Première étape UML d analyse d un système Cédric Buche (ENIB) POO 20 novembre / 135
84 Diagramme de cas d utilisation (1 UC) Exigences fonctionnelles Introduction Modèle construit en phase de définition des exigences fonctionnelles et enrichi pendant la phase d analyse en utilisant d autres modèles (entre-autres les modèles d interaction) Objectifs : 1 identifier les fonctionnalités du logiciel 2 en définir le périmètre 3 identifier les éléments externes en interaction directe Cédric Buche (ENIB) POO 20 novembre / 135
85 Acteur Diagramme de cas d utilisation (1 UC) Éléments des diagrammes Définition : rôle joué par une entité externe qui interagit avec le système il peut consulter et/ou modifier l état du système par messages Comment les identifier? utilisateurs humains systèmes connexes qui interagissent également avec le système Comment les représenter? mot clef <<actor>> Acteur3 Acteur3 symbole stick man Acteur1 Exemple : Client, Conseiller financier, SI Banque... Cédric Buche (ENIB) POO 20 novembre / 135
86 Diagramme de cas d utilisation (1 UC) Cas d utilisation Éléments des diagrammes Définition : Séquences d actions réalisées par le système (résultat observable pour un acteur) Comportement attendu ( mode de réalisation) : ce que le futur devra faire pas comment il le fera Cédric Buche (ENIB) POO 20 novembre / 135
87 Exemple : Consulter un compte, Retirer de l argent, Déposer un chèque... Cédric Buche (ENIB) POO 20 novembre / 135 Diagramme de cas d utilisation (1 UC) Cas d utilisation Éléments des diagrammes Comment les identifier? Ensemble des cas utilisation == exigences fonctionnelles du système Un cas == fonction métier selon le point de vue des acteurs Pour chaque acteur : rechercher ses utilisations métiers déterminer dans le cahier des charges les services attendus Nommez les cas d utilisation (point de vue acteur) : verbe à l infinitif + complément Comment les représenter?
88 Diagramme de cas d utilisation (1 UC) Cas d utilisation et acteurs Relations entre acteurs et cas d utilisation Nom_sujet Nom_cas_utilisation_1 Nom_cas_utilisation_2 Nom_acteur_1 Nom_acteur_2 Acteur : élément externe en interaction directe avec le sujet Cas d utilisation : ensemble fonctionnel cohérent, identifiable extérieurement et fourni par un classeur (le sujet) Association Acteur Cas : chemin de communication indiquant la participation de l acteur à la réalisation du cas Cédric Buche (ENIB) POO 20 novembre / 135
89 Diagramme de cas d utilisation (1 UC) Association : Exemple Relations entre acteurs et cas d utilisation Cédric Buche (ENIB) POO 20 novembre / 135
90 Diagramme de cas d utilisation (1 UC) Acteurs principaux et secondaires Relations entre acteurs et cas d utilisation Un acteur est qualifié de principal pour un cas d utilisation lorsque ce cas rend service à cet acteur. Les autres acteurs sont alors qualifiés de secondaires. Un cas d utilisation a au plus un acteur principal. Le stéréotype primary vient orner l association reliant un cas d utilisation à son acteur principal Le stéréotype secondary est utilisé pour les acteurs secondaires Cédric Buche (ENIB) POO 20 novembre / 135
91 Diagramme de cas d utilisation (1 UC) Relations entre acteurs et cas d utilisation Acteurs principaux et secondaires : Exemple Cédric Buche (ENIB) POO 20 novembre / 135
92 Diagramme de cas d utilisation (1 UC) Types et représentation Relations entre cas d utilisation CA1 <<include>> CB1 CA1 inclut CB1 1 réalisation de CA1 1 réalisation de CB1 CA2 <<extend>> CB2 CA2 étend CB2 dans un certain contexte Selon le contexte, on réalise soit CA2, soit CB2 CA3 CB3 CA3 spécialise CB3 Selon le contexte, on réalise soit CA3, soit CB3 Cédric Buche (ENIB) POO 20 novembre / 135
93 Diagramme de cas d utilisation (1 UC) Exemple relation d inclusion Relations entre cas d utilisation Le cas inclus est ajouté obligatoirement au cas de base Cédric Buche (ENIB) POO 20 novembre / 135
94 Diagramme de cas d utilisation (1 UC) Exemple relation d inclusion Relations entre cas d utilisation Identifier une partie commune aux différents cas d utilisation et de la factoriser dans un nouveau cas inclus dans ces derniers. Cédric Buche (ENIB) POO 20 novembre / 135
95 Diagramme de cas d utilisation (1 UC) Exemple relation d extension Relations entre cas d utilisation Enrichir un cas d utilisation par un autre, cependant, cet enrichissement est optionnel. Cédric Buche (ENIB) POO 20 novembre / 135
96 Diagramme de cas d utilisation (1 UC) Exemple relation d extension Relations entre cas d utilisation L extension se fait dans le cas d utilisation de base, en un point précis appelé point d extension Cédric Buche (ENIB) POO 20 novembre / 135
97 Diagramme de cas d utilisation (1 UC) Relations entre cas d utilisation Exemple relation Généralisation/Spécialisation Formaliser les variations importantes sur le même cas d utilisation Cédric Buche (ENIB) POO 20 novembre / 135
98 Diagramme de cas d utilisation (1 UC) Exemple complet Relations entre cas d utilisation Cédric Buche (ENIB) POO 20 novembre / 135
99 Diagramme de cas d utilisation (1 UC) Généralisation Relations entre acteurs La seule relation possible entre deux acteurs est la généralisation un acteur A est une généralisation d un acteur B si l acteur A peut être substitué par l acteur B tous les cas d utilisation accessibles à A le sont aussi à B, mais l inverse n est pas vrai. Cédric Buche (ENIB) POO 20 novembre / 135
100 Diagramme de cas d utilisation (1 UC) Généralisation : Exemple Relations entre acteurs Cédric Buche (ENIB) POO 20 novembre / 135
101 Scénario Diagramme de cas d utilisation (1 UC) Scénarios : description textuelle Définition : succession particulière d enchaînements s exécutant du début à la fin du cas Un cas d utilisation contient : un scénario nominal plusieurs scénarios alternatifs (qui se terminent normalement) plusieurs scénarios d erreur (qui se terminent par un échec) Cédric Buche (ENIB) POO 20 novembre / 135
102 Diagramme de cas d utilisation (1 UC) En pratique... Scénarios : description textuelle La fiche de description textuelle d un cas d utilisation n est pas normalisée... Cependant, on peut utiliser la structuration suivante : Sommaire d identification (obligatoire) Description des scénarios (obligatoire) non- (op- Exigences fonctionnelles tionel) Inclut titre, résumé, dates de création et de modification, version, responsable, acteurs... Décrit le scénario nominal, les scénarios d erreur, les pré/postconditions Ajoute, si c est pertinent, les informations suivantes : fréquence ; disponibilté, fiabilité, confidentialité... Cédric Buche (ENIB) POO 20 novembre / 135
103 Diagramme de cas d utilisation (1 UC) Exemple scénario Scénarios : description textuelle Sommaire Description Scénario nominal Réserver un véhicule 1. Le client saisit son code et son login d identification 2. Le système vérifie le code et le login d identification 3. Le système demande au client de saisir les informations sur la réservation 4. Le client saisit les informations sur la réservation 5. Le système interroge l acteur système bancaire pour vérifier l acompte 6. Le système bancaire donne une réponse favorable 7. Le système envoie au client, un message de confirmation de la demande Cédric Buche (ENIB) POO 20 novembre / 135
104 Diagramme de cas d utilisation (1 UC) Exemple scénario Scénarios : description textuelle Sommaire Description Scénario alternatif Réserver un véhicule SA1 : code d identification erroné pour la première ou la deuxième fois SA1 démarre au point 2 du scénario nominal 3. Le système indique au client que le code est erroné, pour la première ou la deuxième fois. Le scénario nominal reprend au point 1. Cédric Buche (ENIB) POO 20 novembre / 135
105 Diagramme de cas d utilisation (1 UC) Exemple scénario Scénarios : description textuelle Sommaire Description Scénario d erreur Réserver un véhicule SE1 : code d identification erroné pour la troisième fois SE1 démarre au point 2 du scénario nominal 3. Le système indique au client que le code est erroné pour la troisième fois. Le cas d utilisation se termine en échec (l objectif n est pas atteint). Cédric Buche (ENIB) POO 20 novembre / 135
106 Diagramme de cas d utilisation (1 UC) Utilisation Quand utiliser les cas d utilisation? En phase d élaboration En discutant avec les utilisateurs Remarque : Un projet de 10 années-hommes devrait comprendre environ 12 cas d utilisation 1 1. Résulat issu d une commission de l OOPSLA Cédric Buche (ENIB) POO 20 novembre / 135
107 Plan Diagrammes d interaction (2 UC) 1 Introduction 2 Diagramme de classes (4 UC) 3 Diagramme de cas d utilisation (1 UC) 4 Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
108 Plan Diagrammes d interaction (2 UC) Cédric Buche (ENIB) POO 20 novembre / 135
109 Diagrammes d interaction (2 UC) Introduction Du diag. de cas d utilisation au diag. d interactions diag. cas d utilisation scénarios scénario diag. seq/comm Cédric Buche (ENIB) POO 20 novembre / 135
110 Diagrammes d interaction (2 UC) Introduction Cas d utilisation Piloter scénario nominal pourrait être : un pilote démarre une voiture ce qui allume un moteur. Comment formaliser les communications entre instances (démarrer, allumer)? diag. de communication. Comment formaliser le séquencement des interactions (1 : démarrer ; 2 : allumer)? diag. séquence. Avant cela, il faut représenter les instances (objets) (un pilote, une voiture, un moteur) Cédric Buche (ENIB) POO 20 novembre / 135
111 Diagrammes d interaction (2 UC) Objet : instance de classifier Introduction nom d instance : nom de classe Exemple jean : Personne pierre : Personne Cédric Buche (ENIB) POO 20 novembre / 135
112 Diagrammes d interaction (2 UC) Objets : instances de classifier Introduction nomobjet: :NomClasse nomobjet:nomclasse <<stereotype>> :NomClasse :NomActeur nomobjet:nomclasse attr1 = valeur1 nomobjet:nomclasse [etat] Cédric Buche (ENIB) POO 20 novembre / 135
113 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : durée de vie et flots objets temps (logique) : séquencement objet1: message objet2: flots d exécution lignes de vie Cédric Buche (ENIB) POO 20 novembre / 135
114 Messages Diagrammes d interaction (2 UC) Diagramme de séquence l envoi d un signal ; l invocation d une opération ; la création ou la destruction d une instance. Cédric Buche (ENIB) POO 20 novembre / 135
115 Diagrammes d interaction (2 UC) Messages asynchrones Diagramme de séquence Cédric Buche (ENIB) POO 20 novembre / 135
116 Diagrammes d interaction (2 UC) Messages synchrones Diagramme de séquence Cédric Buche (ENIB) POO 20 novembre / 135
117 Diagrammes d interaction (2 UC) Diagramme de séquence Messages de création et destruction d instance Cédric Buche (ENIB) POO 20 novembre / 135
118 Diagrammes d interaction (2 UC) Événements et messages Diagramme de séquence Cédric Buche (ENIB) POO 20 novembre / 135
119 Diagrammes d interaction (2 UC) Diagramme de séquence Syntaxe des messages et des réponses Cédric Buche (ENIB) POO 20 novembre / 135
120 Diagrammes d interaction (2 UC) Diagramme de séquence Syntaxe des messages et des réponses Cédric Buche (ENIB) POO 20 novembre / 135
121 Diagrammes d interaction (2 UC) Diagramme de séquence Exécution de méthode et objet actif Cédric Buche (ENIB) POO 20 novembre / 135
122 Diagrammes d interaction (2 UC) Diagramme de séquence Exécution de méthode et objet actif Cédric Buche (ENIB) POO 20 novembre / 135
123 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : fragements d interaction combinés Articulation d interactions par des opérateurs : choix et boucle : alternative, option, break, loop contrôle d envoi en parallèle de messages : parallel, critical region contrôle d envoi de messages : ignore, consider, assertion, negative ordre d envoi des messages : weak sequencing, strict sequencing Cédric Buche (ENIB) POO 20 novembre / 135
124 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : structures de contrôle sd nom seq ref seqa alt [condition] ref [else] ref Cédric Buche (ENIB) POO 20 novembre / 135
125 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : structures de contrôle (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
126 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : structures de contrôle (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
127 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : structures de contrôle (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
128 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : structures de contrôle (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
129 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : structures de contrôle (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
130 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : parallélisme et séquencement sd nom seq strict par Cédric Buche (ENIB) POO 20 novembre / 135
131 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : parallélisme et séquencement Cédric Buche (ENIB) POO 20 novembre / 135
132 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : parallélisme et séquencement (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
133 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : parallélisme et séquencement (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
134 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : section critique (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
135 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : Ignorer (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
136 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : Considérer (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
137 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : Négatif (exemple) Cédric Buche (ENIB) POO 20 novembre / 135
138 Diagrammes d interaction (2 UC) Diagramme de séquence Diagramme de séquence : invariants d état sd nom seq obj1 obj2 obj3 msg1 etat1 msg2 etat2 Cédric Buche (ENIB) POO 20 novembre / 135
139 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : Lignes de vie Les lignes de vie sont représentées par des rectangles contenant une étiquette dont la syntaxe est : [<nom du r^ole>] : [<Nom du type>] Cédric Buche (ENIB) POO 20 novembre / 135
140 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : Connecteurs Les relations entre les lignes de vie sont appelées connecteurs se représente par un trait plein reliant deux lignes de vies les extrémités peuvent être ornées de multiplicités. Cédric Buche (ENIB) POO 20 novembre / 135
141 Diagrammes d interaction (2 UC) Diagramme de communication Communication : interactions entre objets par messages liste labels séquence / seq1, seq2/ struct. controle expression logique message prédécesseur condition séquence valeur_retour := nom(arguments) nombre (séq.) nom (parall.) label récurrence *[iteration] *[condition] arg1, arg2 évaluable dans contexte courant Cédric Buche (ENIB) POO 20 novembre / 135
142 Diagrammes d interaction (2 UC) Diagramme de communication Messages : structures de contrôle exemples condition récur. message [x > 0] : msg() : msg() [x > 0] : msg() [x > 0] [i := 1..n] : msg() Cédric Buche (ENIB) POO 20 novembre / 135
143 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
144 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
145 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
146 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
147 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
148 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
149 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
150 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
151 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
152 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
153 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
154 Diagrammes d interaction (2 UC) Diagramme de communication Diagramme de communication : exemple Cédric Buche (ENIB) POO 20 novembre / 135
155 Diagrammes d interaction (2 UC) Lien avec le diagramme de classes Lien avec le diagramme de classes diag. cas d utilisation scénarios scénario diag. seq/comm diag. seq/comm diag. classe Cédric Buche (ENIB) POO 20 novembre / 135
156 Diagrammes d interaction (2 UC) Utilisation Quand utiliser le modèle d interaction? Lorsque vous souhaitez visualiser le comportement de plusieurs objets dans un seul cas d utilisation Attention Si vous souhaitez visualisez le comportement d un même objet dans plusieurs cas d utilisation : utiliser le diagramme d états-transitions Si vous souhaitez visualisez un comportement réparti sur plusieurs cas d utilisation : utiliser le diagramme d activité Cédric Buche (ENIB) POO 20 novembre / 135
157 Diagramme d interactions Informatique S4-POO Programmation Orientée Objet UML Cédric Buche École Nationale d Ingénieurs de Brest (ENIB) 20 novembre 2013 Cédric Buche (ENIB) POO 20 novembre / 135
Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language
Unified Modeling Language UML Salima Hassas Version Cycle de vie du logiciel Client Besoins Déploiement Analyse Test Conception Cours sur la base des transparents de : Gioavanna Di Marzo Serugendo et Frédéric
Plus en détailUniversité de Bangui. Modélisons en UML
Université de Bangui CRM Modélisons en UML Ce cours a été possible grâce à l initiative d Apollinaire MOLAYE qui m a contacté pour vous faire bénéficier de mes connaissances en nouvelles technologies et
Plus en détailTable des matières Sources
Table des matières Modélisation objet avec UML... 2 Introduction... 2 Modèle de système informatique :... 2 Pourquoi UML pour la modélisation Objet?... 3 Représentation dynamique du système... 5 Le diagramme
Plus en détailbasée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML
basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB www.enseirb.fr/~legal Olivier Augereau Formation UML http://olivier-augereau.com Sommaire Introduction I) Les bases II) Les diagrammes
Plus en détailDiagramme de classes
Diagramme de classes Un diagramme de classes décrit les classes et leurs relations (associations, généralisation/spécialisation, ). classe association méthodes attributs héritage Diagramme de classes :
Plus en détailIFT2255 : Génie logiciel
IFT2255 : Génie logiciel Chapitre 6 - Analyse orientée objets Section 1. Introduction à UML Julie Vachon et Houari Sahraoui 6.1. Introduction à UML 1. Vers une approche orientée objet 2. Introduction ti
Plus en détailUML (Diagramme de classes) Unified Modeling Language
UML (Diagramme de classes) Unified Modeling Language Sommaire Introduction Objectifs Diagramme de classes Classe (Nom, attribut, opération) Visibilité et portée des constituants d une classe Association
Plus en détailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
Plus en détailOCL - Object Constraint Language
OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object
Plus en détailChapitre I : le langage UML et le processus unifié
I. Introduction Les méthodes d analyse orientées objet sont initialement issues des milieux industriels. La préoccupation dominante de leurs auteurs est le génie logiciel, c est-àdire les principes et
Plus en détailCours STIM P8 TD 1 Génie Logiciel
Cours STIM P8 TD 1 Génie Logiciel Compléments sur UML Intervenant : Anil CASSAM CHENAI Date : 02/02/2012 Objectifs du complément Ce complément sera approfondi en parallèle de plusieurs TD/Cours. Rappels
Plus en détailGénie Logiciel Avancé Cours 3 Le modèle à objets
Génie Logiciel Avancé Cours 3 Le modèle à objets Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot - Paris 7 URL http://upsilon.cc/zack/teaching/1112/gla/ Copyright
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détailLangage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2
Langage et Concepts de Programmation Objet Travaux Dirigés no2 Pôle Informatique École Nationale Supérieure des Mines de St-Etienne Vous trouverez plus de détails sur les concepts abordés lors de ce TD
Plus en détailGuichet automatique de banque
Guichet automatique de banque Mastère 2004 1 Guichet automatique de banque : GAB Objectif : Illustrer la vue fonctionnelle et particulièrement la définition des cas d utilisation. 1. Spécification du problème
Plus en détail3. UML - Unified Modeling Language Diagrammes statiques
3. UML - Unified Modeling Language Diagrammes statiques Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon
Plus en détailChapitre 5 LE MODELE ENTITE - ASSOCIATION
Chapitre 5 LE MODELE ENTITE - ASSOCIATION 1 Introduction Conception d une base de données Domaine d application complexe : description abstraite des concepts indépendamment de leur implémentation sous
Plus en détailApprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)
Introduction à la POO 1. Histoire de la POO 9 2. Historique du 12 La conception orientée objet 1. Approche procédurale et décomposition fonctionnelle 13 2. La transition vers l'approche objet 14 3. Les
Plus en détailRTDS G3. Emmanuel Gaudin emmanuel.gaudin@pragmadev.com
RTDS G3 Emmanuel Gaudin emmanuel.gaudin@pragmadev.com PragmaDev Dédiée au développement d un AGL pour le développement des applications temps réel et embarquées. Réseau de partenaires: Formations, Service,
Plus en détailGénérer du code à partir d une description de haut niveau
Cedric Dumoulin Générer du code à partir d une description de haut niveau Ce projet vise à fournir un environnement de développement permettant de modéliser des UI Android à un haut niveau d abstraction,
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailTechnologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21
INSA - ASI TechnoWeb : Rappels UML 1/21 Technologie Web Conception de sites Web Alexandre Pauchet INSA Rouen - Département ASI BO.B.RC.18, pauchet@insa-rouen.fr INSA - ASI TechnoWeb : Rappels UML 2/21
Plus en détailUML et les Bases de Données
CNAM UML et les Bases de Données UML et les Bases de Données. Diagramme de classes / diagramme d objets (UML)...2.. Premier niveau de modélisation des données d une application...2.2. Les éléments de modélisation...2.2..
Plus en détailModélisation UML. Christine Solnon 2013-2014. INSA de Lyon - 3IF 1/140.
1/140. Modélisation UML Christine Solnon INSA de Lyon - 3IF 2013-2014 Introduction Positionnement de l UE / IF Domaines d enseignement du département IF : Système d Information Réseaux Architectures matérielles
Plus en détailPlan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml
OCL Object Constraint Language Le langage de contraintes d'uml Plan 1. Introduction 2. Les principaux concepts d'ocl Object Constraint Language 1 Object Constraint Language 2 Exemple: une application bancaire
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailM1 : Ingénierie du Logiciel
M1 : Ingénierie du Logiciel UNIVERSITE PIERRE & MARIE CURIE (PARIS VI) Examen Réparti 2eme partie 16 Mai 2013 (2 heures avec documents : tous SAUF ANNALES CORRIGEES). Barème indicatif sur 20,5 points (max
Plus en détailProgrammer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)
Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes
Plus en détailIngénierie des Modèles. Méta-modélisation
Ingénierie des Modèles Méta-modélisation Eric Cariou Master Technologies de l'internet 2 ème année Université de Pau et des Pays de l'adour UFR Sciences Pau Département Informatique Eric.Cariou@univ-pau.fr
Plus en détailPour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère
L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailLes diagrammes de modélisation
L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse
Plus en détailMODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»
MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE» Du cours Modélisation Semi -Formelle de Système d Information Du Professeur Jean-Pierre GIRAUDIN Décembre. 2002 1 Table de matière Partie 1...2 1.1
Plus en détailPascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT
UML FOR BUSINESS INTELLIGENCE PROJECT Abstract : this document deals with the role of UML into business intelligence projects (like data warehousing). After a quick overview of what UML offers, it focuses
Plus en détailMineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)
Mineure SOA Business Process Modeling (BPM) Idir AIT SADOUNE idir.aitsadoune@supelec.fr Idir AIT SADOUNE - Plan 1 Notion de processus? 2 Modélisation des processus? 3 Langages
Plus en détailGénie Logiciel Orienté Objet UML
Licence Professionnelle en Informatique Génie Logiciel Orienté Objet UML E. Grislin-Le Strugeon E. Adam UVHC ISTV Plan Concepts orientés objet Principes des méthodes OO Qu est-ce que UML? Caractéristiques
Plus en détailPrésentation générale de la méthode orientée objet : O.M.T. (Rumbaugh & al.)
Présentation générale de la méthode orientée objet : O.M.T. (Rumbaugh & al.) Bernard ESPINASSE Professeur à l'université d'aix-marseille Plan Introduction Les modèles d'omt Le Modèle Objet (MO) Le Modèle
Plus en détailAnalyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.
Analyse et conception objet du logiciel : Méthode de conception objet et notation UML Rémy Courdier Email : Remy.Courdier@univ-reunion.fr Rémy Courdier V2.1 1 Plan du cours Introduction au Génie Logiciel
Plus en détailProgramme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)
Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée
Plus en détailC est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.
1- RAD Quelle sont les avantages que apporte la méthode RAD à l entreprise? Une méthode RAD devrait, d après son auteur, apporter trois avantages compétitifs à l entreprise : Une rapidité de développement
Plus en détailProgrammation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailAnalyse,, Conception des Systèmes Informatiques
Analyse,, Conception des Systèmes Informatiques Méthode Analyse Conception Introduction à UML Génie logiciel Définition «Ensemble de méthodes, techniques et outils pour la production et la maintenance
Plus en détailChapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Plus en détailBusiness Process Design Max Pauron
Business Process Design Max Pauron 2005 Max Pauron - Reproduction and communication, even partial, are strictly prohibited without written permission. Unauthorized photocopying is a crime. Contexte Les
Plus en détailAuto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Plus en détail3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes
PLAN CYCLE DE VIE D'UN LOGICIEL EXPRESSION DES BESOINS SPÉCIFICATIONS DU LOGICIEL CONCEPTION DU LOGICIEL LA PROGRAMMATION TESTS ET MISE AU POINT DOCUMENTATION CONCLUSION C.Crochepeyre Génie Logiciel Diapason
Plus en détailDéveloppement d un interpréteur OCL pour une machine virtuelle UML.
ObjeXion Software Prototyping made easy SA au capital de 500 000 F Siret 421 565 565 00015 APE 722Z Téléphone : 03 89 35 70 75 Télécopie : 03 89 35 70 76 L embarcadère 5, rue Gutemberg 68 800 Vieux-Thann,
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailLe Guide Pratique des Processus Métiers
Guides Pratiques Objecteering Le Guide Pratique des Processus Métiers Auteur : Version : 1.0 Copyright : Softeam Equipe Conseil Softeam Supervisée par Philippe Desfray Softeam 21 avenue Victor Hugo 75016
Plus en détailMéthodes d évolution de modèle produit dans les systèmes du type PLM
Résumé de thèse étendu Méthodes d évolution de modèle produit dans les systèmes du type PLM Seyed Hamedreza IZADPANAH Table des matières 1. Introduction...2 2. Approche «Ingénierie Dirigée par les Modèles»
Plus en détailBases de données. Chapitre 1. Introduction
Références : Bases de données Pierre Wolper Email : pw@montefiore.ulg.ac.be URL : http : //www.montefiore.ulg.ac.be/~pw/ http : //www.montefiore.ulg.ac.be/ ~pw/cours/bd.html Henry F. Korth, Abraham Silberschatz,
Plus en détailGénie Logiciel avec Ada. 4 février 2013
Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre
Plus en détailInformation utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/
Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/
Plus en détailBusiness Process Modeling (BPM)
Business Process Modeling (BPM) Mineure SOA Cécile Hardebolle cecile.hardebolle@supelec.fr Programme 8 nov. 15 nov. Introduction. Enjeux, rôle de l'architecte SI Partie n 1 du cas d'étude Architecture
Plus en détailArchitecture d'entreprise : Guide Pratique de l'architecture Logique
Guides Pratiques Objecteering Architecture d'entreprise : Guide Pratique de l'architecture Logique Auteur : Version : 1.0 Copyright : Softeam Equipe Conseil Softeam Supervisée par Philippe Desfray Softeam
Plus en détailMaster MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier
Master MIDO 2ème année Spécification et Conception en UML Maude Manouvrier Spécifications initiales Analyse Conception du système Conception des classes Bibliographie Modélisation et conception orientées
Plus en détailRemote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Plus en détailUML Diagramme de communication (communication diagram) Emmanuel Pichon 2013
UML Diagramme de communication (communication diagram) 2013 Diagramme de communication (communication diagram) Utilisation / objectifs Sens Ce diagramme présente des objets, des acteurs, des liens et des
Plus en détailopenarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de
openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de itemis France 2009 All rights reserved 1 Itemis en quelques mots Spécialisé dans l
Plus en détailInitiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr
Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation
Plus en détailSommaire. Conduite de projet Méthode d analyse et de conception. Processus unifié. Objectifs d un processus de développement
Conduite de projet Méthode d analyse et de conception Processus unifié G. Picard SMA/G2I/ENS Mines Saint-Etienne gauthier.picard@emse.fr Octobre 2009 Sommaire!!Objectifs d un processus d ingénierie logicielle!
Plus en détailBesoins utilisateurs. Quelle démarche pour passer des besoins au code? Code. chapitre1 UNIFIED MODELING LANGUAGE. package LogiqueMetier.
chapitre1 Besoins utilisateurs Quelle démarche pour passer des besoins au code?? UNIFIED MODELING LANGUAGE package LogiqueMetier.Gestion; import LogiqueMetier.Catalogue.Livre; import java.util.*;public
Plus en détailAide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr
Aide mémoire UML & Java 1ère partie : Introduction marc.lemaire@u-cergy.fr 9 septembre 2014 1 2014 v1.11 Table des matières 1 Généralités 6 1.1 Notations utilisées.....................................
Plus en détailRappel sur les bases de données
Rappel sur les bases de données 1) Généralités 1.1 Base de données et système de gestion de base de donnés: définitions Une base de données est un ensemble de données stockées de manière structurée permettant
Plus en détailLes BRMS Business Rules Management System. Groupe GENITECH
Les BRMS Business Rules Management System 1 Présentations Emmanuel Bonnet ebonnet (at) genigraph.fr Responsable Dpt Conseil Consultant, Expert BRMS Formateur IBM/Ilog JRules / JBoss Rules Génigraph SSII
Plus en détailProjet Active Object
Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques
Plus en détailNom de l application
Ministère de l Enseignement Supérieur et de la Recherche Scientifique Direction Générale des Etudes Technologiques Institut Supérieur des Etudes Technologiques de Gafsa Département Technologies de l Informatique
Plus en détailQualité du logiciel: Méthodes de test
Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution
Plus en détailProgrammation Orientée Objet
Université de Pau et des Pays de l Adour Institut Universitaire de Technologie des Pays de l Adour Département Réseaux et Télécommunications 371, rue du Ruisseau BP 201 40004 Mont-de-Marsan Cedex tél :
Plus en détailStructure d un programme et Compilation Notions de classe et d objet Syntaxe
Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types
Plus en détailCours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.
Université Montpellier-II UFR des Sciences - Département Informatique - Licence Informatique UE GLIN302 - Programmation Applicative et Récursive Cours No 3 : Identificateurs, Fonctions, Premières Structures
Plus en détailTraduction des Langages : Le Compilateur Micro Java
BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant
Plus en détailGénéralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code
Généralités javadoc Université de Nice - Sophia Antipolis Richard Grin Version 1.4.1 8/2/11 javadoc produit de la documentation en partant de commentaires particuliers insérés dans le code source des classes
Plus en détailSITE WEB E-COMMERCE ET VENTE A DISTANCE
Développement d une application JAVA EE SITE WEB E-COMMERCE ET VENTE A DISTANCE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AIT NASSER Btissam Email : aitnasser.btissam123@gmail.com GSM : Organisme
Plus en détailPatrons de Conception (Design Patterns)
Patrons de Conception (Design Patterns) Introduction 1 Motivation Il est difficile de développer des logiciels efficaces, robustes, extensibles et réutilisables Il est essentiel de comprendre les techniques
Plus en détailUML. Diagrammes de classes (suite) Delphine Longuet. delphine.longuet@lri.fr
Polytech Paris-Sud Formation initiale 3 e année Spécialité Informatique Année 2014-2015 UML Diagrammes de classes (suite) Delphine Longuet delphine.longuet@lri.fr Opérations Opérations Service qui peut
Plus en détailLe Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer
Le Processus RUP Database Administrator Project Leader H. Kadima Performance Engineer Release Engineer Analyst Designer / Developer Tester Table des matières 1. De l artisanat à l industrialisation de
Plus en détailJADE : Java Agent DEvelopment framework. Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.
: Java Agent DEvelopment framework Laboratoire IBISC & Départ. GEII Université & IUT d Evry nadia.abchiche@ibisc.univ-evry.fr Introduction à la plateforme JADE 1) Modèle d agent 2) Services 3) Norme FIPA
Plus en détailGOL502 Industries de services
GOL502 Industries de services Conception d un service Partie IIb Version 2013 Introduction Conception d un service partie IIb Nous verrons dans ce chapitre Modélisation d un service; Langage de modélisation
Plus en détailUML (Paquetage) Unified Modeling Language
UML (Paquetage) Unified Modeling Language Sommaire Introduction Objectifs Paquetage Espace de nommage d un paquetage Dépendances entre paquetages 2 Notion introduite véritablement par UML car superficiellement
Plus en détailEnvironnements de développement (intégrés)
Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
Plus en détailModélisation de Lignes de Produits en UML *
Modélisation de Lignes de Produits en UML * Tewfik ZIADI, Loïc HELOUET, Jean-Marc JEZEQUEL 2 IRISA, Campus de Beaulieu 35042 RennesCedex, France Tewfik.Ziadi@irisa.fr Loic.Helouet@irisa.fr, Jezequel@irisa.fr
Plus en détailJava Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites
Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)
Plus en détailLO19. Tutorial Rotional Rose. Alexandre Penfornis Thomas Derive
LO19 Tutorial Rotional Rose Alexandre Penfornis Qu est ce que Rational Rose? Aujourd hui, la réalisation d un logiciel doit se faire dans des délais de plus en plus courts et doit permettre de pouvoir
Plus en détailCours de Génie Logiciel
Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes
Plus en détailDébuter avec EXPRESS. Alain Plantec. 1 Schema 2
Débuter avec EXPRESS Alain Plantec Table des matières 1 Schema 2 2 Entité 2 2.1 Attributs simples................................................ 2 2.2 Attributs collection...............................................
Plus en détailDSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur goulwen.lefur@obeo.fr. Le 23 novembre 2012
DSL Domain Specific Language À l'aide des technologies Eclipse Modeling Le 23 novembre 2012 Goulwen Le Fur goulwen.lefur@obeo.fr Le but de cette session Montrer : Ce qu'est-un DSL/DSM Comment implémenter
Plus en détailPolymorphisme, la classe Object, les package et la visibilité en Java... 1
Polymorphisme, la classe Object, les package et la visibilité en Java. Polymorphisme, la classe Object, les package et la visibilité en Java.... 1 Polymorphisme.... 1 Le DownCast... 4 La Classe Object....
Plus en détailCours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé. http://www.rzo.free.fr
Cours de Java Sciences-U Lyon Java - Introduction Java - Fondamentaux Java Avancé http://www.rzo.free.fr Pierre PARREND 1 Octobre 2004 Sommaire Java Introduction Java Fondamentaux Histoire de Java Machine
Plus en détailUML est-il soluble dans les méthodes agiles?
Pascal ROQUES Valtech Training UML est-il soluble dans les méthodes agiles? octobre 07 Résumé On entend beaucoup parler actuellement de deux approches ayant l'air fondamentalement opposées : l'approche
Plus en détailModèle conceptuel : diagramme entité-association
Modèle conceptuel : diagramme entité-association Raison d'être de ce cours «La conception et l'utilisation de bases de données relationnelles sur micro-ordinateurs n'est pas un domaine réservé aux informaticiens.»
Plus en détailEncapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.
Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres
Plus en détailPlateforme AnaXagora. Guide d utilisation
Table des matières 1. PRESENTATION DE LA PLATE-FORME D APPRENTISSAGE ANAXAGORA... 3 2. ARCHITECTURE FONCTIONNELLE... 4 3. L APPRENTISSAGE... 5 3.1. L ESPACE DE TRAVAIL... 5 3.1.1. Le calendrier... 5 4.
Plus en détailIndustrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational
IBM Software Group Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational Fernard Bonaguidi fernand.bonaguidi@fr.ibm.com
Plus en détailAnaXagora LMS v3.0. Guide d utilisation
AnaXagora LMS v3.0 Guide d utilisation Sommaire 1. PRESENTATION DE LA PLATE-FORME D APPRENTISSAGE ANAXAGORA...3 2. ARCHITECTURE FONCTIONNELLE...5 3. L APPRENTISSAGE...6 3.1. L ESPACE DE TRAVAIL...6 3.1.1.
Plus en détailComposants Logiciels. Le modèle de composant de CORBA. Plan
Composants Logiciels Christian Pérez Le modèle de composant de CORBA Année 2010-11 1 Plan Un rapide tour d horizon de CORBA 2 Introduction au modèle de composant de CORBA Définition de composants CORBA
Plus en détailBES WEBDEVELOPER ACTIVITÉ RÔLE
BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et
Plus en détail