Modélisation avec UML

Dimension: px
Commencer à balayer dès la page:

Download "Modélisation avec UML"

Transcription

1 2 Vue générale du cours ) Introduction au langage de modélisation UML points de vue et diagrammes cas d'utilisation, analyse, conception, implémentation 2) Le diagramme des cas d utilisations acteur cas d'utilisation et scénario 3) Notion de classes et objets et leur diagramme introduction aux classes, aux objets notion de relation, de composition et d'héritage recherche d'un diagramme de classes à partir du cahier des charges 4) Modèle dynamique diagramme de séquences, de collaboration, d'état et d'activité réalisation des cas d'utilisation par les diagrammes de séquences réalisation des cas d'utilisation par les diagrammes de collaboration 5) Conception diagramme de déploiement et de composants 6) Le langage de contrainte OCL

2 3 ) Introduction au langage de modélisation UML Unified Modeling language OMT-2 James Rumbaugh Booch 93 Grady Booch OOSE Ivar Jacobson 4 Proposé à un standard OMG fin997 OOPSLA 95 WWW Juin96 UML 0.8 Partenaires Divers UML.0 Standard OMG, ADTF fin997 UML. Task Force UML 0.9 UML UML.3 UML.4 UML.5 UML 2.0 2

3 Pourquoi modéliser 5 ƒ Un modèle est une simplification de la réalité qui permet de mieux comprendre le système à développer. ƒ Il permet - De visualiser le système comme il est ou comme il devrait l'être. - De valider le modèle vis à vis des clients - De spécifier les structures de données et le comportement du système. - De fournir un guide pour la construction du système. - De documenter le système et les décisions prises. Les principes de la modélisation 6 ) Le modèle doit être connecté au monde réel 2) Un modèle peut être exprimé avec différents niveaux de précision 3) Un simple modèle n'est pas suffisant, il y a plusieurs façons de voir un système. ƒ plan de masse ƒ vue de face, de coté, ƒ plan des niveaux ƒ plan électrique ƒ plan de plomberie ƒ plan des calculs de construction 3

4 Qu apporte la modélisation objet 7 ƒ Plus grande indépendance du modèle par rapport aux fonctionnalités demandées. ƒ Des fonctionnalités peuvent être rajoutées ou modifiées, le modèle objet ne change pas. ƒ Plus proche du monde réel. 8 Les objectifs d UML Représenter des systèmes entiers Etablir un couplage explicite entre les concepts et les artefacts exécutables Prendre en compte les facteurs d échelle Créer un langage de modélisation utilisable à la fois par les humains et les machines Recherche d un langage commun : ƒ Utilisable par toutes les méthodes ƒ Adapté à toutes les phases du développement ƒ Compatible avec toutes les techniques de réalisation 4

5 UML un langage 9 ƒ UML n est pas une méthode ƒ UML est un langage de modélisation objet ƒ UML a été adopté par toutes les méthodes objet ƒ UML est dans le domaine public, c est une norme UML un langage pour 0 ƒ visualiser ƒ chaque symbole graphique a une sémantique ƒ spécifier ƒ de manière précise et complète, sans ambiguïté, ƒ construire ƒ les classes, les relations SQL peuvent être générées automatiquement ƒ documenter ƒ les différents diagrammes, notes, contraintes, exigences seront présentés dans un document. 5

6 UML et les domaines d utilisation ƒ Systèmes d'information des entreprises ƒ Les Banques et les services financiers ƒ Télécommunications ƒ Transport ƒ Défense et aérospatiale ƒ Scientifique ƒ Applications distribuées par le WEB Les trois éléments de base en UML ) les blocs de base pour construire ƒ les entités utilisées ƒ la notion de relation les diagrammes ƒ 2) les règles à observer pour utiliser ces blocs de base ƒ règles sémantiques règles de présentation ƒ 3) les mécanismes communs ƒ spécification ƒ présentation ƒ extension des modèles Entités structurelles Entités de comportement Entités de regroupement Entité d'annotation 2 6

7 3 Les entités structurelles Chien race age couleur Comparable Interface observateur Collaboration emprunte Cas d utilisation aboyer() mordre () obéir () Classe Producteur Noyau Serveur suspend() run() Nœud Classe Active Composant Les entités de comportement 4 appel Message emprunté Etat Les entités de groupement Accès BD Paquetage Le livre a été emprunté Note Les entités de notation 7

8 Les relations 5 dépendance association héritage réalisation 6 Stéréotypes et icônes associées <<contrôle>> Gestion Commande gestion Commande <<entité>> Stockage Commande stockage Commande <<frontière>> Réception Commande réception Commande 8

9 Les 9 diagrammes en UML 7 Diagrammes Cas d'utilisation Classes Etats- Transitions Activité Déploiement Objets Séquences Collaboration Composants Aspect statique : classes et objets paquetages 5 façons de voir un système (4+ vues de Kruchten) Aspect dynamique : d'interaction (séquences, collaboration), d'états-transitions et d'activité Aspect statique : les paquetages les méthodes les threads 8 Vue logique Vue implantation Vue des cas d'utilisation Vue des processus Vue de déploiement Aspect parallélisme : threads processus tâches interactions Aspect fonctionnel : Cas d'utilisations acteurs classes collaboration Aspect répartition : diagramme de déploiement nœuds, modules 9

10 Point de vue des cas d utilisation 9 ƒ Vue du système par ses utilisateurs finaux ƒ Regroupe le comportement du système selon ƒ Priorité: critique, important, accessoire ƒ Risques à circonscrire ƒ Options disponibles ƒ Couverture de l architecture ƒ Autres objectifs tactiques et contraintes Point de vue logique 20 ƒ Décomposition orientée-objet ƒ Décomposition en objets et classes ƒ Regroupement en paquetages. ƒ Connexions par héritage, association, etc. ƒ Accent sur l abstraction, l encapsulation, l uniformité. ƒ Réalisation des scénarios des cas d'utilisation. 0

11 Point de vue processus 2 ƒ Décomposition en tâches et processus ƒ Regroupement des groupes de processus ƒ Communication ƒ Information sur les caractéristiques suivantes ƒdisponibilité, fiabilité ƒintégrité, performance ƒcontrôle Point de vue implantation 22 ƒ Décomposition en modules et niveaux ƒ Regroupement de modules en paquetages ƒ Organisation des sous-systèmes en niveaux pour : ƒ Réduire le couplage et la visibilité ƒ Augmenter la robustesse ƒ Information sur les caractéristiques suivantes : ƒ Facilité de développement ƒ Potentiel de réutilisation ƒ Gestion de configuration

12 Point de vue déploiement 23 ƒ Décomposition en nœuds d exécution ƒ Rôle d un nœud ƒ Inter-connectivité, topologie ƒ Information sur les caractéristiques suivantes : ƒ Performance, disponibilité ƒ Installation, maintenance Les trois composantes d une modélisation 24 Modèle Fonctionnel Que fait le système Aspect dynamique : diagrammes d'interaction (séquences, collaboration), d'états-transitions et d'activité Séquencement des actions dans le système Modèle temporel Aspect fonctionnel : diagrammes des cas d'utilisation Modèle structurel (objet) Sur quoi le système agit Aspect statique : diagramme de classes et d'objets 2

13 25 Phases de la modélisation Cahier des charges Expression des besoins S accorder sur ce qui doit être fait dans le système Analyse Comprendre les besoins et les décrire dans le système Conception S accorder sur la manière dont le système doit être construit Implémentation Codage du résultat de la conception Test Le système est-il conforme au cahier des charges? Code exécutable Rôle de l'expression des besoins ƒpermettre une meilleure compréhension du système 26 ƒcomprendre et structurer les besoins du client ƒ clarifier, filtrer et organiser les besoins, ne pas chercher l exhaustivité ƒune fois identifiés et structurés, ces besoins : ƒ définissent le contour du système à modéliser (ils précisent le but à atteindre), ƒ permettent d'identifier les fonctionnalités principales (critiques) du système. 3

14 27 Expression des besoins ƒ Comprendre le contexte du système en définissant un modèle du domaine et du métier ƒ Recenser les besoins fonctionnels et les définir par des cas d'utilisations ƒ Noter les contraintes, exigences non fonctionnelles. Le modèle du domaine regroupe les objets qui se situent dans le contexte du système : - entités existantes ou événements qui s'y produisent. Exigences non fonctionnelles 28 ƒ Contraintes de concurrence ƒ Contraintes de temps de réponse ƒ Contraintes de distribution ƒ Contraintes de performance ƒ Contraintes de répartition 4

15 Dépendances entre phases de modélisation 30 spécifié par modèle cas d'utilisation vérifié par implémenté par Modèle de test Modèle d'analyse réalisé par Modèle de conception Modèle d'implémentation L analyse 3 ƒ Le but de l analyse est de traduire dans un langage proche de celui des informaticiens les modèles exprimés dans l'expression des besoins. ƒ Cependant pour rester compréhensible par les clients ou utilisateurs, il n'intervient que des entités du domaine (métier) considéré. ƒ Elle sert d'interface, avec l'expression des besoins, aux dialogues et aux contrats avec les clients et les utilisateurs. ƒ L'analyse doit servir de support pour la conception, l'implémentation et la maintenance. 5

16 Expression des besoins : vue orientée utilisateur 32 Cahier des charges Dialogue clients et futurs utilisateurs Cas d utilisation Système Scénarios d'utilisation Définition des fonctionnalités du système Analyse du système Système Cahier des charges 33 Cas d utilisation Diagramme de classes Propagation des événements dans le système Diagramme de collaboration ou de séquences Diagramme d'états-transitions 6

17 La notation graphique 34 BUT : ƒ Modéliser les objets, les relations entre objets, les interactions avec le système. ƒ Servir de support de communication entre l'analyste, le client, et les utilisateurs. Cahier des charges : gestion de bibliothèque ƒ Un gérant de bibliothèque désire automatiser la gestion des prêts. ƒ Il commande un logiciel permettant aux utilisateurs de connaître les livres présents, d'en réserver jusqu'à 2. L'adhérent peut connaître la liste des livres qu'il a empruntés ou réservés. ƒ L'adhérent possède un mot de passe qui lui est donné à son inscription. ƒ L'emprunt est toujours réalisé par les employés qui travaillent à la bibliothèque. Après avoir identifié l'emprunteur, ils savent si le prêt est possible (nombre max de prêts = 5), et s'il a la priorité (il est celui qui a réservé le livre). ƒ Ce sont les employés qui mettent en bibliothèque les livres rendus et les nouveaux livres. Il leur est possible de connaître l'ensemble des prêts réalisés dans la bibliothèque. 35 7

18 36 2) Le diagramme des Use Cases ou des cas d utilisation Ce que doit faire le système sans spécifier comment il le fait But des Use Cases Les cas d'utilisation représentent les fonctionnalités que le système doit savoir faire. Chaque cas d'utilisation peut être complèté par un ensemble d'interactions successives d'une entité en dehors du système (l utilisateur) avec le système lui même. Système 37 Les Uses Cases permettent : De connaître le comportement du système sans spécifier comment ce comportement sera réalisé. De définir les limites précises du système Au développeur de bien comprendre l'attente des utilisateurs et les experts du domaine. De plus les Use Cases sont : Des instruments de validation et de test du système en cours et en fin de construction. 8

19 Modèle des cas d'utilisations 38 ƒ Un diagramme de cas d utilisation définit : ƒ le système ƒ les acteurs ƒ les cas d'utilisations ƒ les liens entre acteurs et cas d'utilisations ƒ Un modèle de cas d'utilisation se définit par : ƒ des diagrammes de cas d utilisation ƒ une description textuelle des scénarios d'utilisation ƒ une description de ces scénarios par : ƒ les diagrammes de séquences ƒ les diagrammes de collaboration Les Acteurs 39 ƒ Un acteur représente une personne ou un périphérique qui joue un rôle (interagit) avec le système. ƒ Relation entre acteurs : généralisation (héritage) abonné bibliothécaire abonné Héritage relation entre acteurs un bibliothécaire est un abonné un administrateur est un bibliothécaire un administrateur est un abonné Acteur bibliothécaire administrateur 9

20 Les cas d utilisation (use-case) 40 ƒ Un cas d utilisation est un moyen de représenter les différentes possibilités d'utiliser un système. ƒ Il exprime toujours une suite d'interactions entre un acteur et l'application. ƒ Il définit une fonctionnalité utilisable par un acteur. Emprunter Réserver Regarder la liste des livres Organisation des Use Cases : include 4 ƒ La relation "include" précise qu'un cas d utilisation contient le comportement défini dans un autre cas d utilisation. ƒ Cette relation permet de mettre en commun des comportements communs à plusieurs cas d'utilisation.. Emprunt <<include>> Identification abonné Réservation <<include>> 20

21 Organisation des Use Cases : extend ƒ La relation "extend" précise qu'un cas d utilisation peut dans certains cas augmenter le comportement d'un autre cas d'utilisation. ƒ Une condition devra valider cette augmentation. ƒ Le point d'utilisation de cette augmentation peut être défini dans un "point d'extension". 42 Réservation Extensionpoints avant le choix du livre <<extend>> avant le choix du livre Regarder liste des livres ƒ Dans cet exemple, le cas d'utilisation "Regarder la liste des livres" augmente le cas d'utilisation d'une réservation, avant le choix du livre, si l'utilisateur en fait la demande. Organisation des Use Cases : généralisation 43 ƒ Cette relation "est un" introduit la notion d héritage. ƒ Les cas d'utilisation "Vérification par mot passe" et "Vérification par carte" sont des spécialisations du cas d'utilisation "Identification abonné". ƒ Autrement dit : si l'on dit que l'on fait une "Identification abonné", ce peut être une "Vérification par carte" ou une "Vérification par mot passe". héritage Identification abonné Vérification par mot passe Vérification par carte 2

22 Modélisation d un système: obtenir les cas d'utilisation ƒ Identifier les acteurs qui utilisent, qui gèrent, qui exécutent des fonctions spécifiques. ƒ Organiser les acteurs par relation d héritage. ƒ Pour chaque acteur, rechercher les cas d utilisation avec le système. En particulier, ceux qui modifient l état du système ou qui attendent une réponse du système. ƒ Ne pas oublier les variantes d interactions (cas d erreur, cas interdits). ƒ Organiser ces interactions par héritage, par utilisation et par extension. 44 Le système ƒ Le système définit l'application informatique, il ne contient donc pas les acteurs, mais les cas d'utilisation et leur associations Gestion de bibliothèque 45 Réserver un livre Connaître les livres empruntés Connaître les livres présents Ajouter de nouveaux livres Remettre un livre Réaliser un emprunt 22

23 46 Les diagrammes de cas d utilisation Bibliothèque Acteurs Client Réserver un livre Connaître les livres empruntés Connaître les livres présents Cas d utilisation Ajouter de nouveaux livres Employé Remettre un livre Réaliser un emprunt Les diagrammes de cas d utilisation Bibliothèque 47 Connaître les livres empruntés Client Employé Réserver un livre Extension point avant la réservation <<extends>> Connaître les livres présents Ajouter de nouveaux livres Remettre un livre Réaliser un emprunt <<include>> << include >> Identification Identification par mot de passe Identification par carte 23

24 Scénarios d'un cas d'utilisation 48 ƒ La description d un cas d utilisation se fait par des scénarios qui définissent la suite logique des interactions qui constituent ce cas. ƒ On peut définir des scénarios simples ou des scénarios plus détaillés faisant intervenir les variantes, les cas d'erreurs, etc. ƒ Cette description se fait de manière simple, par un texte compréhensible par les personnes du domaine de l'application. ƒ Elle précise ce que fait l'acteur et ce que fait le système ƒ La description détaillée pourra préciser les contraintes de l'acteur et celles du système. Scénarios d'un cas d'utilisation 49 Réservation d'un livre description simplifiée Le client se présente devant un terminal: () Le système affiche un message d accueil. (2) Le client choisit l opération réservation parmi les différentes opérations proposées. (3) Le système lui demande de s'authentifier. (4) Le client donne son identification (nom, mot de passe). (5) Le système lui demande de choisir un livre. (6) Le client précise le livre qu'il désire. (7) Le système lui précise si un exemplaire du livre lui est réservé. 24

25 Scénarios d'un cas d'utilisation 50 Réservation d'un livre description détaillée Pré-conditions: Le client doit être inscrit à la bibliothèque Le client ne doit pas avoir atteint le nombre maximum de réservation Un exemplaire du livre doit être enregistré Post-conditions: (Si l'opération s'est bien déroulée) Le client a une réservation supplémentaire Le nombre d'exemplaires disponibles du livre est décrémenté de Scénarios d'un cas d'utilisation Réservation d'un livre Cas normal description détaillée. () Le système affiche un message d accueil sur le terminal avec un choix d'opérations 2. (2) Le client choisit l opération réservation parmi les différentes opérations proposées. 3. (3) Le système lui demande de s'authentifier. 4. (4) Le client donne son identification (nom, mot de passe). 5. (5) Le système demande le titre du livre en donnant la possibilité de choisir dans une liste. 6. (6) Le client précise le livre qu'il désire. 7. (7) Le système lui précise que un exemplaire du livre lui est réservé. variante en (6) le client demande à connaître les livres présents 5 variante 2 variante 3 variante 4 en (4) le client n'est pas reconnu, dans ce cas, tant qu'il n'est pas reconnu, on lui redemande de s'authentifier en (4) le client est reconnu, mais le mot de passe est incorrect, il peut avoir 5 essais, par la suite le client sera interdit pendant heure. en (4) le client n'a plus le droit de réserver variante 5 en (7) le livre n'est pas libre 25

26 Scénario par diagramme de séquences ƒ Suite aux descriptions textuelles, le scénario peut être représenté en utilisant un diagramme de séquences. Le diagramme de séquences permet : ƒ de visualiser l aspect temporel des interactions ƒ de connaître le sens des interactions (acteur vers système ou contraire) 52 Client Réserver un livre Afficher message d accueil Choix de l opération réservation Demande d identification du client Identification du client Demande identification du livre Identification du livre Message «le livre est réservé» :Système de prêts temps Variation du scénario 53 Client Réserver un livre Afficher message d accueil Choix de l opération réservation Demande d identification du client Identification du client Refus trop de livres réservés :Système de prêts 26

27 Cas d utilisation: Distributeur de billets Distributeur de billets Effectuer un virement Cas d utilisation 54 Client Acteur client Retirer l argent Consulter un compte Gérer le distributeur Banque Acteurs gestionnaires Effectuer la Maintenance Employé Diagramme de séquences Use Case Retirer de l'argent Client Retirer l argent Afficher message d accueil Insère la carte Demande de mot de passe Entre mot de passe Demande type opération Entre demande retrait Demande somme Entre somme Distribue l'argent Demande prendre les billets Prendre les billets Imprimer le reçu Ejecter la carte Demande de prendre la carte Prendre la carte Afficher message d accueil :Distributeur de billets 55 27

28 56 3) Concepts objets et diagrammes de classes La classe CLASSE Personne nom age adresse mot de passe nbre livres empruntés Caractéristiques attributs données membres informations propriétés Famille d'objets ayant mêmes caractéristiques et même comportement 57 changeradresse() donnerage() donneradresse() vérifiermotdepasse() Comportement opérations méthodes fonctions procédures messages services CLASSE Personne 28

29 58 La classe et ses membres Personne nom : String âge : Integer adresse : String mot de passe : String nbre livres empruntés : Integer 0<= nbre livres empruntés <=5 <<constructeur>> Personne(nom:String, âge : Integer adresse:string, motdepasse:string) <<caractéristiques>> changeradresse (String) <<authentification>> vérifiermotdepasse(string) : Boolean changermotdepasse(old:string, new:string) La classe et l objet instance de un objet 59 CLASSE Personne nom age adresse mot de passe nbre livres empruntés Attributs :Personne nom = Alain Dupont age = 45 adresse = France mot de passe = 4RSA67 nbre livres empruntés = 4 changeradresse() obtenirage() obteniradresse() vérifiermotdepasse() Comportement :Personne : Personne André Roué 25 France 6FT

30 Protection des attributs et des opérations : principe de l'encapsulation ƒ Peut-on accéder à tous les attributs ou à toutes les méthodes d'un objet? NON ƒla classe définit ce qui est accessible. C'est le principe de l'encapsulation. Un objet complexe ne peut être utilisé qu'au travers de ce qui est accessible. Exemple : ƒon ne peut utiliser une voiture qu'à travers son volant, son frein, son accélérateur, etc. ƒl accès au carburateur est impossible sauf par les méthodes qui le font de manière cohérente (méthode accélérer de l accélérateur). 60 Protection des attributs et des opérations : usage et notation ƒ Les attributs sont en général inaccessibles (secret). ƒ Ils sont alors qualifiés de : ƒ "protected" (notation UML : # ) ƒ ou "private" (notation UML: - ) ƒ Leur lecture ou modification n'est possible qu'au travers de certaines opérations (accesseurs : changeradresse(), obtenirage(), etc.) ƒ Les opérations sont en général accessibles (publiques) : ƒ Elles sont alors qualifiées de : ƒ "public" (notation UML: + ) ƒ Certaines opérations peuvent cependant être privées et certains attributs peuvent être publics (non souhaitable / principe d encapsulation) 6 30

31 Protection des attributs et des opérations : notation UML 62 CLASSE - nom - âge - adresse Personne + : attribut public # : attribut protected - : attribut private # changeradresse() # obtenirrue() + obtenirage() + : opération public # : opération protected - : opération private 63 Attributs et opérations de classe Personne - nom - age - adresse - mot de passe - nbrelivresempruntés - nbrelivresempruntables = 5 + changeradresse() + obtenirage() + obteniradresse() + vérifiermotdepasse() + getnblivresempruntables() Le nombre de livres empruntables n'est pas une caractéristique d'alain Dupont (objet). C'est une caractéristique valable pour l'ensemble des personnes (la classe). une_personne:personne nom = Alain Dupont age = 45 adresse = France mot de passe = 4RSA67 nbrelivresempruntés= 4 La méthode getnblivresempruntables() utilise la valeur nbrelivresempruntables connue par la classe. Cette méthode peut être appliquée directement à la classe Personne et bien sûr aussi aux objets instances de Personne. 3

32 Attributs et opérations de classe Notation UML 64 CLASSE Personne - nom - âge - adresse - nombrepersonne # changeradresse() # obtenirrue() + obtenirage() +obtenirnombrepersonne() + : attribut public # : attribut protected - : attribut private : attribut de classe + : opération public # : opération protected - : opération private : opération de classe La réification 65 Chien Mariage entité physique race age couleur événement époux épouse date aboyer() mordre () obéir () semarier () divorcer () relation Appartenir propriétaire date voiture vendre () acheter () prêter () situation Cours professeur salle élèves assister () quitter () 32

33 Modèle du type abstrait Pile 66 PileEntier - contenu - hauteur - taille +empiler (valeur : Integer) +dépiler () +elementsommet () : Integer +nombreelements : Integer +estvide : Boolean Surcharge et polymorphisme 67 Personne nom : String age : Integer adresse : String Fichier nom : String taille : Integer propriétaire : String changeradresse(sonadresse : String) obtenirage() : entier obteniradresse() : String imprimer() imprimer() imprimer(nombrelignes : entier) notions : polymorphisme surcharge signature 33

34 68 Classes paramétrables Pile Element taille : Integer +Pile() +empiler(valeur : Element) +dépiler () : Element +nombreelements() : Integer +estvide (): Boolean +estpleine() : Boolean return nombreelements() ==taille Pile <Integer,34> Pile <Point,20> <<bind>>(personne, 00) Guichet Association entre classes Nom d association Sens de lecture du nom d association 69 Livre titre apourauteur Auteur nom unlivre : Livre titre = La peste apourauteur unhomme : Auteur nom = Camus 34

35 70 Multiplicité, nom d association, nom de rôle Société nom adresse employeur 0.. nom de rôle emploie estemployée employé * (par défaut) (explicite) Personne nom patron patron adresse 0.. grade ouvrier * multiplicité *.. * ou 0 ou plusieurs ou plusieurs intervalle dirige nom d association Lien entre objets 7 constructeur : Société nom : Peugeot adresse : Sochaux employeur emploie employé contremaître : Personne nom = Dupont 35

36 Lien entre objets 72 constructeur : Société Nom : Peugeot adresse : Sochaux employeur estemployée emploie e m p l o i e ledirecteur : Personne nom = Madec uncontremaître : Personne nom = Simon ouvrier patron d i r i g e uncadre : Personne nom = Dupont ouvrier 73 Classe d association Société Nom adresse 0.. emploie Emploi * Personne Nom adresse grade salaire grade salaire Classe d association 36

37 Qualificateurs : restriction de la cardinalité Banque gère * CompteBancaire numérocompte 74 Banque numérocompte gère CompteBancaire Répertoire gère * Fichier nom Répertoire nom gère Fichier Contraintes sur les associations 75 CompteChèque * * appartient {or} Personne Société Conférence assiste organise * {sous-ensemble} * Personne 37

38 Attribut dérivé 77 {Contexte Personne Inv : age = datecourante - datenaissance } Personne Nom adresse grade datenaissance /age Attribut dérivé Les associations ternaires Cours 78 Cours Enseignant Salle Elève 38

39 79 Agrégation C'est une association qui exprime un couplage fort lié à une relation de subordination, elle est asymétrique du type ensemble/élément. Règles permettant de choisir une agrégation : Est ce une partie de? Les opérations appliquées à l'ensemble sont elles appliquées à l'élément? Les changements d'états sont-ils liés? Polygone Mais un élément agrégé peut être lié à d'autres classes la suppression de l'ensemble n'entraîne pas celle de l'élément *.. * attaché * Polycopié 3.. * Point {ordonnés}.. * * Titre Destinataire Texte Fichier * Composition : agrégation forte La composition est une agrégation forte qui lie les cycles de vie entre le composé (ensemble) et les composants (élements). 80 Le choix entre composition et agrégation peut être laissé à la phase de conception. Document * Paragraphe * Phrase Voiture 4 Roue Carrosserie 2-5 Porte Moteur Habitacle 39

40 Association, agrégation ou composition?. Règles obligatoires pour l'agrégation : Est ce une partie de? Les opérations appliquées au composé sont elles appliquées au composant? Les changements d'états sont-ils liés? 8 2. Règles obligatoires pour la composition : La suppression du composé entraîne t-elle la suppression des composants? Les attributs du composé sont-ils utilisés dans les composants? Les composants sont des instances du composé? Un composant ne peut pas être en relation avec d'autres classes externes au composé. Magasin gère *??? Client Magasin Magasin gère gère * * Client Client Composition 82 Fenêtre scollbar Ascenceur contrôle Bordure 2 contenu Panel Fenêtre scollbar [2]: Ascenceur contrôle : Bordure contenu : Panel 40

41 Navigabilité 83 Par défaut une association est bidirectionnelle. Il est possible de réduire la portée en la rendant unidirectionnelle. En général, ce choix se fait dans la phase de conception. Agenda * Réunion alieu TrancheHoraire fin début Flèche de navigabilité : Association unidirectionnelle Date 84 Eléments sur une association ordonnancement cardinalité navigabilité rôle Polygone {ordered} 3..* Point nom d association qualificateur +contenu montre agrégation composition visibilité - support numéro Canevas Présentation {frozen} couleur texture changeable densité 4

42 85 3) Concepts objets et diagrammes de classes Héritage Héritage : buts et principes /3 Nouvelles classes dérivées de classes existantes 86 BUT Permettre une réutilisation optimale des classes déjà écrites, utilisées et validées ƒ réutilisation de la structure des données héritées ƒ réutilisation du code des services hérités PRINCIPE Ne pas modifier les classes déjà écrites cela modifierait l'utilisation qui en est faite. ƒ ne pas hésiter à créer des classes, extensions d'autres déjà validées 42

43 Héritage : adaptation 87 Hérite est un est une sorte de MoyenTransport vitesselimite désignation prixht annéeconstruction prixttc() obtenirvitesse() changerprix() obtenirage() Camion nombreessieux capacité charge estplein() Voiture nombreportes couleur Tramway nombrepassagers niveaubruit nombrepassagers() prixttc() VoitureEssence nombrebougies VoitureDiesel typeinjecteur redéfinition Héritage : buts et principes 2/3 Ajout d une classe de base (analyse) 88 BUT 2 Permettre une factorisation des caractéristiques et des comportements communs à plusieurs classes ƒ mise en commun des structure des données ƒ mise en commun du code des services PRINCIPE Lorsque plusieurs classes ont des caractéristiques et des comportements communs la création d'une classe ancêtre permet de regrouper ce qui est commun. Cette classe ancêtre peut correspondre à une classe concrète ou à une classe abstraite 43

44 89 Héritage : généralisation Factorisation des propriétés Permanent numérobureau spécialité nombrecours nom numérosécu Vacataire nombrevacation nombrecours spécialité nom numérosécu 90 Héritage : généralisation Factorisation des propriétés Enseignant nombrecours Spécialité nom numérosécu Permanent numérobureau Vacataire nombrevacation 44

45 9 Héritage : généralisation Factorisation des propriétés Avocat nombreaffaires adressecabinet nom numérosécu Vendeur ancienneté nomdustand nom numérosécu Enseignant nombrecours Spécialité nom numérosécu Permanent numérobureau Vacataire nombrevacation 92 Héritage : généralisation Factorisation des propriétés Personne nom numérosecu {disjoint,incomplete} Avocat nombreaffaires adressecabinet Vendeur ancienneté nomdustand {disjoint,complete} Enseignant nombrecours spécialité Permanent numérobureau Vacataire nombrevacation 45

46 Héritage multiple et répété 93 Véhicule {overlapping} Véhicule terrestre Véhicule marin Voiture Voiture amphibie Bateau Véhicule Véhicule marin Véhicule terrestre Voiture amphibie Bateau Voiture Classe abstraite Un média peut être transporté, dupliqué, affiché. Le transport et la duplication sont indépendants du type du média (copie de fichiers). Par contre, tout média peut être affiché et ce n'est pas la même chose pour l'audio, la vidéo, le graphisme, le texte. Un média ne peut pas définir comment s'afficher tant qu'il ne sait pas ce qu'il est. Notation UML : nom de classe italique ou stéréotype <<abstract>> Média auteur titre date création transporter() dupliquer() afficher() 94 Il n'y a pas d'instance de la classe média. Un média n existe qu en tant que livre, chanson, graphique ou vidéo. Livre afficher() Chanson durée afficher() Graphique largeur hauteur afficher() Vidéo durée afficher() 46

basé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 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étail

Université de Bangui. Modélisons en UML

Université 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étail

Les diagrammes de modélisation

Les 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étail

Chapitre I : le langage UML et le processus unifié

Chapitre 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étail

UML (Diagramme de classes) Unified Modeling Language

UML (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étail

Cours de Génie Logiciel

Cours 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étail

Pré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.) 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étail

Encapsulation. 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. 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étail

Table des matières Sources

Table 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étail

IFT2255 : Génie logiciel

IFT2255 : 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étail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour 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étail

UML. Diagrammes de classes (suite) Delphine Longuet. delphine.longuet@lri.fr

UML. 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étail

3. UML - Unified Modeling Language Diagrammes statiques

3. 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étail

Analyse,, Conception des Systèmes Informatiques

Analyse,, 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étail

Plan. Exemple: Application bancaire. Introduction. OCL Object Constraint Language Le langage de contraintes d'uml

Plan. 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étail

Diagramme de classes

Diagramme 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étail

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

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étail

Guichet automatique de banque

Guichet 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étail

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh NOTATION UML AVEC RATIONAL ROSE G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh Sommaire 1 GÉNÉRALITES...2 1.1 ENVIRONNEMENT LOGICIEL...2 1.2 LES VUES DU LOGICIEL ROSE...3 1.3 ORGANISATION RECOMMANDÉE...3

Plus en détail

Master 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 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étail

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)

Apprendre 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étail

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

UML 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étail

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA I. Introduction Suite à une demande des étudiants, il m'est apparu intéressant de montrer, à travers un exemple concret, comment

Plus en détail

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

MODELISATION 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étail

Rational Unified Process

Rational Unified Process Rational Unified Process For Christiane DAVOINE-GUHUR Société GICAB - Vannes Christiane.Davoine@CA-GICAB.fr Table des Matières 1 INTRODUCTION... 1 2 LES COMPOSANTS ET LES GRANDS PRINCIPES DU PROCESSUS...

Plus en détail

GOL502 Industries de services

GOL502 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étail

Génie Logiciel avec Ada. 4 février 2013

Gé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étail

Héritage presque multiple en Java (1/2)

Héritage presque multiple en Java (1/2) Héritage presque multiple en Java (1/2) Utiliser deux classes ou plus dans la définition d'une nouvelle classe peut se faire par composition. class Etudiant{ int numero; Diplome d; float passeexamen(examen

Plus en détail

C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement

C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement des objets d'une classe Utilisation d'une classe Droit

Plus en détail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

Langage 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. 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étail

Conception des bases de données : Modèle Entité-Association

Conception des bases de données : Modèle Entité-Association Conception des bases de données : Modèle Entité-Association La modélisation d un problème, c est-à-dire le passage du monde réel à sa représentation informatique, se définit en plusieurs étapes pour parvenir

Plus en détail

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

GOL-502 Industrie de services. Travaux Pratique / Devoir #7 GOL-502 Industrie de services Travaux Pratique / Devoir #7 Version 2012 Modélisation à l'aide du langage UML 1) Diagramme de cas d'utilisation 2) Diagramme de classes 3) Diagramme de séquence 4) Diagramme

Plus en détail

Cours STIM P8 TD 1 Génie Logiciel

Cours 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étail

Polymorphisme, la classe Object, les package et la visibilité en Java... 1

Polymorphisme, 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étail

TP 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 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étail

Ingénérie logicielle dirigée par les modèles

Ingénérie logicielle dirigée par les modèles Ingénérie logicielle dirigée par les modèles Destercq Lionel & Dubuc Xavier 17 décembre 2009 Table des matières 1 Introduction 1 2 Diagrammes de classes 1 2.1 Principal..............................................

Plus en détail

Diagrammes de Package, de déploiement et de composants UML

Diagrammes de Package, de déploiement et de composants UML labsticc.univ-brest.fr/pages_perso/babau/ Diagrammes de Package, de déploiement et de composants UML Jean-Philippe Babau Département Informatique, UFR Sciences, Laboratoire Lab-STICC 2 1 Plan Description

Plus en détail

Ingénierie des Modèles. Méta-modélisation

Ingé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étail

Patrons de Conception (Design Patterns)

Patrons 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étail

Chapitre 1 : Introduction aux bases de données

Chapitre 1 : Introduction aux bases de données Chapitre 1 : Introduction aux bases de données Les Bases de Données occupent aujourd'hui une place de plus en plus importante dans les systèmes informatiques. Les Systèmes de Gestion de Bases de Données

Plus en détail

Méthodes de Conception Orientés Objet (MCOO) SOMMAIRE

Méthodes de Conception Orientés Objet (MCOO) SOMMAIRE SOMMAIRE Sommaire... 1 INTRODUCTION... 3 I. Particularités d UML... 4 I.1 UML est une norme... 5 I.2 UML est un langage de modélisation objet... 5 I.3 UML est un support de communication... 6 I.4 UML est

Plus en détail

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Expression 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étail

Chapitre 2. Classes et objets

Chapitre 2. Classes et objets Chapitre 2: Classes et Objets 1/10 Chapitre 2 Classes et objets Chapitre 2: Classes et Objets 2/10 Approche Orientée Objet Idée de base de A.O.O. repose sur l'observation de la façon dont nous procédons

Plus en détail

Sommaire. Conduite de projet Méthode d analyse et de conception. Processus unifié. Objectifs d un processus de développement

Sommaire. 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étail

UML (Paquetage) Unified Modeling Language

UML (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étail

OCL - Object Constraint Language

OCL - 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étail

Chapitre VI- La validation de la composition.

Chapitre 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étail

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)

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) 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étail

EXERCICES UML. Modéliser cette situation par un diagramme de cas d utilisation. Consulter planning

EXERCICES UML. Modéliser cette situation par un diagramme de cas d utilisation. Consulter planning EXERCICES UML 1 ) Dans un établissement scolaire, on désire gérer la réservation des salles de cours ainsi que du matériel pédagogique (ordinateur portable ou/et Vidéo projecteur). Seuls les enseignants

Plus en détail

Méthodologies Orientées-Objet!

Méthodologies Orientées-Objet! MAI NFE103 Année 2013-2014 Méthodologies Orientées-Objet! F.-Y. Villemin (f-yv@cnam.fr) Plan!!Les différentes méthodologies! Démarche! Cycle de vie!!rational Unified Process (RUP)!!La méthode Layman!!Notre

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : 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étail

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

Le 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étail

Génie Logiciel Orienté Objet UML

Gé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étail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage 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étail

Alfresco Guide Utilisateur

Alfresco Guide Utilisateur Alfresco Guide Utilisateur ATELIER TECHNIQUE DES ESPACES NATURELS - 1 Table des matières Alfresco Guide Utilisateur...1 Accéder à la GED de l'aten...3 Via un client FTP...3 Onglet Général...3 Onglet Avancé...3

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

Généralités sur le Langage Java et éléments syntaxiques.

Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...

Plus en détail

UML et les Bases de Données

UML 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étail

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées PRODIGE V3 Manuel utilisateurs Consultation des métadonnées Pour plus d'information sur le dispositif : à remplir par chaque site éventuellement 2 PRODIGE V3 : Consultation des métadonnées SOMMAIRE 1.

Plus en détail

2. Activités et Modèles de développement en Génie Logiciel

2. Activités et Modèles de développement en Génie Logiciel 2. Activités et Modèles de développement en Génie Logiciel Bernard ESPINASSE Professeur à l'université d'aix-marseille Plan Les Activités du GL Analyse des besoins Spécification globale Conceptions architecturale

Plus en détail

Méthodes de développement. Analyse des exigences (spécification)

Méthodes de développement. Analyse des exigences (spécification) 1 / 16 Méthodes de développement Analyse des exigences (spécification) 1 -Objectifs de l'analyse des exigences... 2 2 - Approfondissement et formalisation du besoin... 2 2.1 Séparation des besoins, contraintes

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Architecture 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étail

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

3. 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étail

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE 2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance

Plus en détail

Programmation Orientée Objet

Programmation 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étail

Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon

Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon Travail pratique #1 «Réalisation d'une plateforme de vente aux enchères électronique» À réaliser individuellement ou en équipe

Plus en détail

Programmation Objet - Cours II

Programmation Objet - Cours II Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à

Plus en détail

MEGA ITSM Accelerator. Guide de Démarrage

MEGA ITSM Accelerator. Guide de Démarrage MEGA ITSM Accelerator Guide de Démarrage MEGA 2009 SP4 1ère édition (juin 2010) Les informations contenues dans ce document pourront faire l objet de modifications sans préavis et ne sauraient en aucune

Plus en détail

II. Modèle conceptuel le modèle entité-association

II. Modèle conceptuel le modèle entité-association II. Modèle conceptuel le modèle entité-association Personne Voiture Schéma conceptuel Monde réel υ Concepteur υ Personne conduit Voiture ϖ ϖ Schéma logique utilisateurs ω LMD BD Personne Dupont Durant

Plus en détail

Modèle conceptuel : diagramme entité-association

Modè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étail

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d

Plus en détail

Objets et Programmation. origine des langages orientés-objet

Objets 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étail

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

C 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étail

Génie Logiciel. Rappels. C. Crochepeyre Génie Logiciel Rappels 1

Génie Logiciel. Rappels. C. Crochepeyre Génie Logiciel Rappels 1 Génie Logiciel Rappels C. Crochepeyre Génie Logiciel Rappels 1 INTRODUCTION GL: ingénierie appliquée au logiciel informatique Objectif: la qualité diminution du coût du logiciel et fiabilité Besoin: complexité

Plus en détail

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA http://www.labri.fr/~marlet. (d'après A.-M. Hugues) màj 17/04/2007

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA http://www.labri.fr/~marlet. (d'après A.-M. Hugues) màj 17/04/2007 1 Génie Logiciel (d'après A.-M. Hugues) Conception Renaud Marlet LaBRI / INRIA http://www.labri.fr/~marlet màj 17/04/2007 2 Position dans le cycle de vie Contexte : étant donnée une spécification (ce que

Plus en détail

Description de la formation

Description de la formation Description de la formation Modalités Ce parcours de formation est un parcours en alternance, d une durée de 2ans, à raison d une semaine de formation par mois, soit 770 heures et de trois semaines de

Plus en détail

Cours en ligne Développement Java pour le web

Cours en ligne Développement Java pour le web Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité

Plus en détail

HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM. Manuel d'utilisation

HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM. Manuel d'utilisation HelpAndManual_unregistered_evaluation_copy GESTIONNAIRE D'ALARMES CENTRALISE OPTIM'ALARM Manuel d'utilisation OPTIMALOG 2008 Table des matières I Table des matières Part I Gestionnaire d'alarmes Optim'Alarm

Plus en détail

PG208, Projet n 3 : Serveur HTTP évolué

PG208, Projet n 3 : Serveur HTTP évolué PG208, Projet n 3 : Serveur HTTP évolué Bertrand LE GAL, Serge BOUTER et Clément VUCHENER Filière électronique 2 eme année - Année universitaire 2011-2012 1 Introduction 1.1 Objectif du projet L objectif

Plus en détail

Guide de démarrage rapide

Guide de démarrage rapide Guide de démarrage rapide 1 Sommaire 1.Préambule...3 2.Démarrage du programme...4 3.Prise en main...6 3.1.Les saisies...6 3.2.Les listes...10 4.Gestion courante...13 4.1.Saisie d'un devis...13 4.2.Transformation

Plus en détail

RTDS G3. Emmanuel Gaudin emmanuel.gaudin@pragmadev.com

RTDS 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étail

Sage CRM. 7.2 Guide de Portail Client

Sage CRM. 7.2 Guide de Portail Client Sage CRM 7.2 Guide de Portail Client Copyright 2013 Sage Technologies Limited, éditeur de ce produit. Tous droits réservés. Il est interdit de copier, photocopier, reproduire, traduire, copier sur microfilm,

Plus en détail

Info0604 Programmation multi-threadée. Cours 5. Programmation multi-threadée en Java

Info0604 Programmation multi-threadée. Cours 5. Programmation multi-threadée en Java Info0604 Programmation multi-threadée Cours 5 Programmation multi-threadée en Java Pierre Delisle Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique 18 février 2015 Plan

Plus en détail

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES Antonin AILLET Remi DEVES Thibaut AZZOPARDI 2 ème année de DUT Informatique Cahier Technique «Développer une application intranet pour la gestion des stages des étudiants» Encadré par Didier BOULLE Année

Plus en détail

Annexe : La Programmation Informatique

Annexe : La Programmation Informatique GLOSSAIRE Table des matières La Programmation...2 Les langages de programmation...2 Java...2 La programmation orientée objet...2 Classe et Objet...3 API et Bibliothèque Logicielle...3 Environnement de

Plus en détail

Cyberclasse L'interface web pas à pas

Cyberclasse L'interface web pas à pas Cyberclasse L'interface web pas à pas Version 1.4.18 Janvier 2008 Remarque préliminaire : les fonctionnalités décrites dans ce guide sont celles testées dans les écoles pilotes du projet Cyberclasse; il

Plus en détail

FileSender par RENATER - Guide utilisateur

FileSender par RENATER - Guide utilisateur FileSender par RENATER - Guide utilisateur Filesender par RENATER est un service de transfert sécurisé de fichiers volumineux à disposition des utilisateurs de la communauté de l'enseignement supérieur

Plus en détail

Le génie logiciel. maintenance de logiciels.

Le génie logiciel. maintenance de logiciels. Le génie logiciel Définition de l IEEE (IEEE 1990): L application d une approche systématique, disciplinée et quantifiable pour le développement, l opération et la maintenance de logiciels. Introduction

Plus en détail

Java 7 Les fondamentaux du langage Java

Java 7 Les fondamentaux du langage Java 184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque

Plus en détail

RAPPORT DE CONCEPTION UML :

RAPPORT DE CONCEPTION UML : Carlo Abi Chahine Sylvain Archenault Yves Houpert Martine Wang RAPPORT DE CONCEPTION UML : Bamboo Ch@t Projet GM4 Juin 2006 Table des matières 1 Introduction 2 2 Présentation du logiciel 3 2.1 Précisions

Plus en détail

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 OEM Console Java OEM Console HTTP OEM Database Control Oracle Net Manager 6 Module 6 : Oracle Enterprise Manager Objectifs Contenu A la fin de ce module,

Plus en détail

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e : CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE Projet 2 Gestion des services enseignants G r o u p e : B E L G H I T Y a s m i n e S A N C H E Z - D U B R O N T Y u r i f e r M O N T A Z E R S i

Plus en détail

Le Guide Pratique des Processus Métiers

Le 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étail

Introduction au Génie Logiciel

Introduction au Génie Logiciel Introduction au Génie Logiciel Lydie du Bousquet Lydie.du-bousquet@imag.fr En collaboration avec J.-M. Favre, I. Parissis, Ph. Lalanda Qu est-ce que le logiciel? programme, ensemble d instructions Caractéristiques

Plus en détail

Installation d'un serveur DHCP sous Windows 2000 Serveur

Installation d'un serveur DHCP sous Windows 2000 Serveur Installation d'un serveur DHCP sous Windows 2000 Serveur Un serveur DHCP permet d'assigner des adresses IP à des ordinateurs clients du réseau. Grâce à un protocole DHCP (Dynamic Host Configuration Protocol),

Plus en détail

Maarch V1.4 http://www.maarch.org

Maarch V1.4 http://www.maarch.org COLD (factures clients) Maarch Professional Services Maarch PS anime le développement d un produit d archivage open source : http://www.maarch.org Guide de visite COLD (factures clients) VERSION DATE ACTEUR

Plus en détail

Auto-évaluation Programmation en Java

Auto-é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étail