IFT2251 : Génie logiciel

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

Download "IFT2251 : Génie logiciel"

Transcription

1 Conception détaillée Julie Vachon, Automne 2006 IFT2251 : Génie logiciel Chapitre 5 - Conception Section 1. Conception détaillée orientée objets 1. Qu est-ce que la conception? 2. Objectifs de la conception détaillée 3. Réalisation des cas d utilisation Analyse de robustesse 6. Élaboration des collaborations Règles d attribution des responsabilités 7. Chap.5, Sect.1, p.2 Copyrights Julie Vachon, L activité de conception Étape cruciale du développement logiciel : pont entre l analyse des besoins et l implémentation Activité exigeant de la créativité et de la rigueur. Pas de recette toute faite Il existe des méthodologies (principes et bonnes pratiques) et de bons conseils. Résultat de la phase de conception : une conception (ou un «design») Un bonne conception contribue à la qualité du logiciel : fiabilité, correction, évolubilité, etc. L activité de conception Pont entre la définition des besoins et l implémentation Activité itérative/incrémentale qui transforme les besoins vers le produit final Analyse Conception Décomposition en modules (classes, packages, composants, etc.) Rôle et responsabilités de chaque module Relations entre modules Implémentation Chap.5, Sect.1, p.3 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.4 Copyrights Julie Vachon, 2006

2 L activité de conception Décomposition et raffinement progressif du logiciel en modules de plus en plus détaillés Processus en n étapes : chaque étape (itération) raffine et décompose, en sous-modules, les modules définis à l étape précédente Implémentation étape n Conception bas niveau La décomposition étape 2 se poursuit jusqu à ce qu on obtienne Conception haut niveau étape 1 des modules suffisamment Conception globale «concrets» pour être directement Besoins implémentés Chap.5, Sect.1, p.5 Copyrights Julie Vachon, 2006 Package, composants (use case) Types de conception Conception architecturale (conception de haut niveau, conception globale, «the big picture») Structure et organisation générale du logiciel à concevoir. Description des principaux modules composant le système, des relations entre eux, des contraintes à respecter, des motifs et de la logique de cette décomposition. classe Conception détaillée Description du fonctionnement interne de chacun des modules Étape qui consiste à détailler les résultats de l analyse fonctionnelle, jusqu'à un niveau suffisant pour en permettre finalement le codage dans un langage de programmation Définition de la conception du logiciel respectant le plan de la conception architecturale Chap.5, Sect.1, p.6 Copyrights Julie Vachon, 2006 Architecture logicielle Types de conception «An architecture is the set of significant decisions about the organization of a software system, the selection of the structural elements and their interfaces by which the system is composed, together with their behaviror as specified in the collaborations among those elements, the composition of these structural and behavioral elements into progressively larger subystems, and the architectural style that guides this organization these elements and their interfaces, their collaborations, and their composition.» [Booch, Jaobson and Rumbaugh. The UML specification documents, Rational Software Corp., 1997] Caractéristiques d une bonne conception Une bonne conception = Une bonne décomposition en modules qui favorise Une forte cohésion : les éléments ne sont pas réunis dans un même module par hasard, ils forment un tout pour réaliser une tâche Un faible couplage : les modules sont relativement indépendants, ils ne dépendent pas trop des éléments d autres modules L abstraction et le masquage d information Chap.5, Sect.1, p.7 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.8 Copyrights Julie Vachon, 2006

3 Caractéristiques d une bonne conception Qualités logicielles en jeu Évolubilité : si le logiciel est difficile à changer, les autres qualités sont directement compromises (fiabilité, performance, etc.) Réutilisation : on veut minimiser les coûts et rentabiliser les efforts de développement Principes mis en œuvre Rigueur et formalité Séparation des préoccupations Modularisation Abstraction Anticipation des changements Concevoir pour changer Incrémentalité Famille de produits Chap.5, Sect.1, p.9 Copyrights Julie Vachon, 2006 Tâches de la phase de conception Concevoir et intégrer le réseau Mise en œuvre de la communication entre les processus distribués qui collaborent Concevoir l architecture des applications «Qui» fera «quoi» et «où»? Concevoir les interfaces utilisateurs du logiciel Concevoir et intégrer les bases de données Décrire les détails de la conception Conception détaillée Spécifier ces détails puis les prototyper Concevoir et intégrer les contrôles du logiciel Mise en œuvre de tous les aspects liés au contrôle, à la correction, à la sécurité, à la tolérance aux fautes, à la protection des données, etc. Chap.5, Sect.1, p.10 Copyrights Julie Vachon, Objectifs de la conception détaillée Transformer le modèle d analyse (spécification, haut niveau d abstraction) en un modèle de conception détaillé (implémentation, bas niveau d abstraction, concret, détails techniques) à partir du duquel le programmeur pourra directement implémenter le logiciel + Degré d abstraction - Modèles d analyse Modèles de conception Implémentation (java, etc.) raffinement raffinement Chap.5, Sect.1, p.11 Copyrights Julie Vachon, 2006 Objectifs de la conception détaillée Services (événements) Réalisation des cas d utilisation Modèle d analyse Quoi? Données (éléments) Approche BCE Modèle de conception Comment? : identification des objets servant d interface (boundary), de contrôle (control) ou représentant les données du domaine (entity) Chap.5, Sect.1, p.12 Copyrights Julie Vachon, 2006

4 Réalisation des cas d utilisation Pour chaque cas d utilisation, expliquer en détails comment il sera réalisé La conception détaillé a pour but d associer une collaboration (implémentation) à chaque cas d utilisation Collaboration Ensemble d objets qui coopèrent pour réaliser une tâche Description de la réalisation (l implémentation) d un cas d utilisation (ou d une opération) Plusieurs collaborations (implémentations) peuvent réaliser, de façon différente, un même cas d utilisation (spécification) Effectuer un transfert de fonds Solution X du transfert de fonds Solution Y du transfert de fonds Chap.5, Sect.1, p.13 Copyrights Julie Vachon, 2006 Réalisation des cas d utilisation Collaboration = Description d un arrangement de liens et d objets qui interagissent pour implémenter un comportement spécifié par un cas Partie statique : instanciation des objets, des liens Partie dynamique : envoie de messages, calculs Collaboration peut être décrite Par un diagramme de collaboration (partie statique et dynamique) Par un diagramme de classes (partie statique) et diagramme de séquences (partie dynamique) Etc. Chap.5, Sect.1, p.14 Copyrights Julie Vachon, 2006 Réalisation des collaborations Élément de Spécification (Ex. cas d utilisation) Lien de réalisation Solution d implémentation (Ex. une collaboration) Réalisation = Lien entre un élément décrivant une solution d implémentation et un élément de spécification Élément de spécification = Description du comportement et ou de la structure du logiciel Ex. Interface, classe abstraite, cas d utilisation Élément d implémentation = Explique en détail comment le comportement du logiciel est effectivement implémenté Ex. Classe, composant, collaboration Chap.5, Sect.1, p.15 Copyrights Julie Vachon, 2006 Réalisation des collaborations Quelle est l erreur? Inscrire les étudiants aux cours de B.Sc. informatique L implémentation doit supporter tous les comportements inclus dans la spécification. Consulter la liste des étudiants Ajouter l étudiant aux cours choisis Chap.5, Sect.1, p.16 Copyrights Julie Vachon, 2006

5 pour construire le modèle de conception détaillé Pré-requis provenant du modèle d analyse Diagramme de classes décrivant les données Diagramme de cas d utilisation et leur documentation. Facultatifs mais très utiles Autres diagrammes complétant l analyse : diagramme de séquence ou d activités, diagramme d états. Chap.5, Sect.1, p.17 Copyrights Julie Vachon, 2006 Conception préliminaire Client cliquer login Home page Illustrer les scénarios principal (et secondaires) sur un diagramme de robustesse. entrer les données et cliquer login Boîte de dialoguerappel du mot de passe afficher Page de Login Ouvrir un compte bancaire consulter l'indice de mdp Compte Cas d utilisation: Se logguer Scénario principal: 1. Le client clique sur le bouton «login» de la home page. 2. Le système affiche la page de login Scénarios secondaires: 3.a. Le client clique sur le bouton «nouveau compte» sur page de login: Point d extension «ouvrir_compte» Chap.5, Sect.1, p.18 valider Copyrights Julie Vachon, 2006 Pour faire le design détaillé, pour chaque cas d utilisation, faire les étapes suivantes: Phase 1 Réviser la description détaillée du cas d utilisation, ajouter les détails manquants, s assurer d une documentation complète des scénarios principal et alternatifs. Chap.5, Sect.1, p.19 Copyrights Julie Vachon, 2006 Phase 2 : analyse de robustesse (conception préliminaire) Construire le schéma de robustesse associé au cas d utilisation (se concentrer sur le scénario principal d abord), suivre chacune des étapes du scénario Introduire un objet boundary pour chaque interface (avec l utilisateur, avec un périphérique, avec un système externe, etc.) Introduire un objet control pour chaque tâche à effectuer Introduire un objet entity pour chaque élément de données (c.f. diagramme de classes construit pendant l analyse) Tracer les liens d interactions entre ces objets Réviser le schéma Mettre à jour le diagramme de classes, ajouter les classes d interface identifiées pendant l analyse de robustesse, les attributs des classes si nécessaire Chap.5, Sect.1, p.20 Copyrights Julie Vachon, 2006

6 Phase 3 : élaboration des collaborations, i.e., attribution des responsabilités Construire le diagramme de collaboration ou de séquence Placer les objets interfaces et entités sur le diagrammes (se référer au schéma de robustesse) Pour chaque tâche représentée par un objet control, identifier le(s) message(s) qui doi(ven)t être échangé(s) entre les objets pour réaliser les tâches représentées par les objets control dans le schémas de robustesse Faire correspondre la signature d une opération à chaque message Ajouter les flèches d envois de messages correspondantes dans le diagramme de collaboration ou de séquence Mettre à jour le diagramme de classes : ajouter les opérations identifiées :ObjA toto(m) :ObjB ObjB +toto(integer) Chap.5, Sect.1, p.21 Copyrights Julie Vachon, 2006 Phase 4 : amélioration et révision Utiliser des patrons de conception pour améliorer la conception des collaborations Si nécessaire, compléter la modélisation par des diagrammes d états pour décrire le comportement des instances d une classe donnée en fonction des événements Vérifier la cohérence des informations entre les différents diagrammes : diagramme de classes, schéma de robustesse, diagrammes de collaboration et ou de séquence, description des cas d utilisation, etc. Chap.5, Sect.1, p.22 Copyrights Julie Vachon, 2006 Quelques précisions sur les phases 2 et 3 L analyse de robustesse (conception préliminaire) Phase 2 La réalisation des collaborations Phase 3 Chap.5, Sect.1, p.23 Copyrights Julie Vachon, 2006 Analyse de robustesse Phase 2 Objectifs et avantages Raffinement et validation de la documentation des cas d utilisation : description opérationnelle, réaliste et réalisable? Validation des cas d utilisation: Complets? Corrects? Découverte dynamique des objets participant à la réalisation du cas d utilisation Constitue une étape de conception préliminaire permettant de faire le pont entre l analyse et la conception détaillée (diagrammes d interactions) Chap.5, Sect.1, p.24 Copyrights Julie Vachon, 2006

7 Analyse de robustesse Analyse de robustesse Les objets d interface (boundary) Objets que les acteurs utilisent pour communiquer avec le logiciel Ex. Fenêtre, page web, menus, etc. Les objets entités (entity) Objets qui correspondent aux données du logiciel, ces objets correspondent à des classes identifiées dans le diagramme de classes pendant l analyse, ils seront éventuellement stockés en base de données Les objets contrôleur (control) Éléments liant les objets d interface et les entités Représentent les fonctionnalités du logiciel Ces fonctionnalités seront plus tard attribuées à une interface ou à une entité ou bien on créera réellement un objet contrôleur pour réaliser la fonctionnalité Servent de «boîte» pour être certain de n oublier aucune fonctionnalité requise par le cas d utilisation Chap.5, Sect.1, p.25 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.26 Copyrights Julie Vachon, 2006 Révision du schéma Analyse de robustesse Les interactions entre objets BCE doivent généralement respecter les règles suivantes Les acteurs ne peuvent envoyer de messages qu à des objets boundary Les objets boundary ne peuvent envoyer des messages qu à des objets control et aux acteurs Les objets entity ne peuvent envoyer des messages qu aux objets control Les objets control peuvent envoyer des messages aux objets boundary, control et entity, mais non aux acteurs Chap.5, Sect.1, p.27 Copyrights Julie Vachon, 2006 Analyse de robustesse Associations autorisées Associations interdites Chap.5, Sect.1, p.28 Copyrights Julie Vachon, 2006

8 Schéma de robustesse Retrait bancaire Cas d utilisation : Retrait Acteur principal : Client Déclencheur : le client sélectionne l option «retrait» dans la page principale Pré-conditions : le client a déjà inséré sa carte et son NIP, il a été authentifié par le logiciel et sa fiche client peut être consultée Post-conditions : si le compte sélectionné par le client est actif et si le solde est suffisant, le compte se trouve débité de la somme demandée Chap.5, Sect.1, p.29 Copyrights Julie Vachon, 2006 client Log In Retrait Scénario principal Schéma de robustesse Retrait bancaire Le client sélectionne l option «retrait» dans la page principale Le logiciel affiche la liste des comptes bancaires dont le client est propriétaire et l invite à en sélectionner un Le client sélectionne un des comptes bancaires proposés Le logiciel vérifie que le compte est actif puis affiche une page où il invite le client à saisir le montant de son retrait Le client saisit la somme qu il souhaite retirer Le logiciel vérifie que le solde du compte est suffisant, i.e., qu il est supérieur ou égal au montant du retrait, le cas échéant, le compte est débité de la somme correspondante et l argent est versé dans le bac du distributeur, le logiciel affiche un message confirmant le retrait et invitant le client à récupéré l argent versé dans le bac Scénarios alternatifs Chap.5, Sect.1, p.30 Copyrights Julie Vachon, 2006 Schéma de robustesse Retrait bancaire Page de saisie du montant Page principale Page des comptes bancaires afficher page de saisie montant Vérifier solde suffisant Trouver liste des comptes bancaires afficher liste des comptes vérifier l'état actif du compte fiche client compte bancaire Page avis de retrait Afficher avis de retrait Chap.5, Sect.1, p.31 Copyrights Julie Vachon, 2006 débiter Interface du distributeur de billets verser les billets Analyse de robustesse Révision du schéma En révisant le schéma de robustesse, le concepteur devrait être capable de lire le scénario du cas d utilisation pas à pas et simultanément suivre du doigt les associations sur le schéma Si ça ne correspond pas, faire les corrections nécessaires Chap.5, Sect.1, p.32 Copyrights Julie Vachon, 2006

9 Élaboration des collaborations Phase 3 Objectifs et avantages Attribuer les responsabilités (i.e., les opérations) aux interfaces, contrôleurs et entités Illustrer le détail des interactions sur un diagramme de collaborations ou de séquences Compléter le diagramme de classe en ajoutant les classes, les opérations (et attributs) découverts Étapes Élaboration des collaborations Revoir la documentation des scénarios du cas d utilisation Construire le squelette du diagramme de séquences ou de collaborations à partir du schéma de robustesse Inclure les objets entités et les objets interfaces dans le diagramme d interaction <<boundary>> :ClasseInterfaceX <<entity>> :ClasseEntitéY Chap.5, Sect.1, p.33 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.34 Copyrights Julie Vachon, 2006 Étapes Élaboration des collaborations Chaque objet contrôleur du schéma de robustesse représente une ou plusieurs responsabilités à assigner aux objets du diagramme d interaction, assigner ces responsabilités (i.e., les appels de méthodes) aux objets du diagrammes d interactions Comment décider de l attribution des responsabilités? Voir les règles qui suivent Doit-on ajouter des objets contrôleurs pour la coordination? Oui, pour gérer les événements du logiciel (par exemple ceux générés par les interfaces utilisateurs) Mettre à jour le diagramme de classes en ajoutant les classes et les opérations nouvellement identifiées en construisant le diagramme d interactions Chap.5, Sect.1, p.35 Copyrights Julie Vachon, 2006 Élaboration des collaborations :PagePaiement fairepaiement(m) v : Vente create(m) p : Paiement L objet p de type PagePaiement a pour responsabilité de demander à l objet v de type Vente d enregistrer un paiement de montant m La classe Vente doit donc avoir une opération de signature correspondante : +fairepaiement(integer) Chap.5, Sect.1, p.36 Copyrights Julie Vachon, 2006

10 Règle de l expert Attribution des responsabilités Assigner la responsabilité à la classe qui possède l information nécessaire pour effectuer la tâche Ex. Quel instance possède l information nécessaire (i.e., la longueur des côtés) pour calculer le périmètre d un polygone? Polygone +périmètre():integer 3..n côté longeur : integer Chap.5, Sect.1, p.37 Copyrights Julie Vachon, 2006 Attribution des responsabilités Règle du créateur Assigner à une classe B la responsabilité de créer une instance de la classe A si (entre autres) B est un agrégat d objets de A (agrégation) B contient des instances de type A (composition) B enregistre (ex. v : dans V ente une liste) des instances de type A create(m ) p : P aiem ent La vente B utilise de près les instances de la classe enregistre A les paiements. B possède les données nécessaires pour créer et initialiser les instances de A Chap.5, Sect.1, p.38 Copyrights Julie Vachon, 2006 Attribution des responsabilités Règle du couplage faible Assigner les responsabilités de façon à minimiser le couplage Meilleure solution pour le couplage 1. fairepaiement(m) : PagePaiement v : Vente Attribution des responsabilités Règle de la cohésion forte Assigner les responsabilités de façon à maximiser la cohésion Que penser de la classe ContrôleurCentral? z : Z z a:a : PagePaiement 2. ajouterpaiement(p) v : Vente 1.1. create(m) y : Y x y :contrôleurcentral b:b p : Paiement 1. p:=create(m) p : Paiement Chap.5, Sect.1, p.39 Copyrights Julie Vachon, 2006 x : X Chap.5, Sect.1, p.40 Copyrights Julie Vachon, 2006 c:c À éviter : les classes surchargées d opérations diverses

11 Attribution des responsabilités Règle du contrôleur Assigner la responsabilité de recevoir ou de traiter un événement du logiciel (par exemple les événements produits par les I.U.) À un contrôleur dédié au cas d utilisation (stratégie use case controller) À des gestionnaires définis dans l interface utilisateur (stratégie control in the screen) Recommandé : contrôle indépendant de l interface Chap.5, Sect.1, p.41 Copyrights Julie Vachon, 2006 C. Larman Chap.5, Sect.1, p.42 Copyrights Julie Vachon, 2006 Non recommandé : contrôle dans l interface : Client 1. selectionretrait() Diagramme de séquence Retrait bancaire : PagePrincipale L'acteur interagit ici avec le système via des appels synchrones, puisqu'il doit attendre la réponse du système pour poursuivre. On aurait pu choisir de représenter ces messages de l'acteur par des messages asynchrones (la numérotation aurait alors été différentes.) :PageComptes Bancaires 1.1. debutretrait() On suppose ici que les interfaces fonctionnent en mode procédural et qu'elles se bloquent pendant le traitement par le contrôleur create() affichercomptes(listecmptes) :Contrôl eur du Retrait l:=getlistecomptes() f :Fiche Client c :Compte bancaire :InterfaceDistributeur De Billets On suppose ici que le(s) compte(s) bancaire(s) et la fiche client sont déjà en mémoire vive: ils ont déjà été récupérés de la base de données. 2. selectioncompte() 2.1. comptesélectionné(i) actif?() :PageSaisieDu Montant create() affiche() 3. entrermontant(m) 3.1. montantsaisi(m) fondssuffisants?(m) distribuerbillets(m) :PageAvis Retrait create() afficher() Chap.5, Sect.1, p.43 C. Larman Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.44 Copyrights Julie Vachon, 2006

12 Attribution des responsabilités Les patrons de conception Assigner les responsabilités en suivant les recommandations d un patron de conception Solution générique (donc réutilisable!), proposant une «bonne façon» de résoudre un problème de conception (ex. Attribuer les responsabilités ) dans un contexte donné Qu est-ce qu un patron de conception? «Une solution à un problème dans un contexte» Contexte = Ensemble de situations récurrentes dans lesquelles le patron s applique Problème = Ensemble de buts et de contraintes qui se présentent dans le contexte. Solution = Motif de conception canonique ou règle de conception qui peut être utilisé pour résoudre le problème Micro-architecture réutilisable qui décrit les structures statiques et dynamiques des collaborations entre les éléments du patron Chap.5, Sect.1, p.45 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.46 Copyrights Julie Vachon, 2006 Utilité Partager et de réutiliser l expertise en conception et le savoirfaire Outil de documentation Moyen de communication conceptuelle Outil pédagogique, diffusion des connaissances en conception Les patrons de Gamma et al. (GoF), trois catégories Création : solutions pour de créer des instances de façon flexible Structure : solutions permettant d organiser l agencement structurel d un ensemble de classes, d instance de façon à en faciliter la maintenance Comportement : solutions permettant d organiser les interactions d un ensemble d instances de façon efficace et maintenable Exemple Serveur de fichiers distant Serveur de fichiers root Java LaTeX Documents bin source new Chap.5, Sect.1, p.47 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.48 Copyrights Julie Vachon, 2006

13 Exemple Serveur de fichiers distant Patron Observateur Structure statique Les contraintes L identité et le nombre de receveurs ne sont pas connus à l avance De nouvelles classes de receveurs pourraient s ajouter au logiciel Le sondage (polling) inapproprié, i.e., impossible ou trop coûteux avec un grand nombre de receveurs Solution? Patron de conception Observer «abstract» Subject notify() attach(observer) detach(observer) ConcreteSubject subjectstate getstate() setstate() 1 * observer For all o in observers { o. } subject return subjectstate «abstract» Observer Update() ConcreteObserver observerstate observerstate = subject.getstate() Chap.5, Sect.1, p.49 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.50 Copyrights Julie Vachon, 2006 Patron Observateur Structure dynamique Patron = Collaboration Des objets qui interagissent pour accomplir une tâche! ConcreteSubject ConcreteObserver1 ConcreteObserver2 set_state() ServeurFichier observer Ordinateur 1: notify() getfiletree() 1.1: 1.1.1: get_state() subject 1.2: 1.2.1: get_state() Observer PC Mac Chap.5, Sect.1, p.51 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.52 Copyrights Julie Vachon, 2006

14 Patron = Collaboration Valeurs des données getvalues() subject Observer Tableur observer Affichage Histogramme Graphique circulaire Documentation Si Vous vous trouvez dans ce [contexte] Par exemple [exemples] Aux prises avec ce [problème] Impliquant ces [buts et contraintes] Alors Pour ces [raisons] Appliquer ce [patron de conception] et ou [règle] suivants Pour construire cette [solution] Conduisant à ce [nouveau contexte] et [autres patrons] Chap.5, Sect.1, p.53 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.54 Copyrights Julie Vachon, 2006 Documentation d un patron: Nom du patron Objectif Autres noms Motivation Applicabilité Structure Participants Collaborations Conséquences Implémentation Exemple de code Utilisations connues Patrons connexes Patrons comportementaux (behavioral patterns) Patrons structuraux (structural patterns) Patrons créateurs (creational patterns) Chap.5, Sect.1, p.55 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.56 Copyrights Julie Vachon, 2006

15 Patrons comportementaux Utilité générale Algorithmes et à attribution des responsabilités aux classes et à leurs instances Patrons du GoF Chaîne de responsabilité Commande Interpréteur Itérateur Médiator Mémento Observateur State Stratégie Méthode modèle Visiteur Utilité générale Patrons structuraux Spécifier comment les classes et leurs instances sont associées pour former de plus grandes structures Patrons du GoF Adaptateur Pont Composite Décorateur Façade Poids léger Mandataire Chap.5, Sect.1, p.57 Copyrights Julie Vachon, 2006 Chap.5, Sect.1, p.58 Copyrights Julie Vachon, 2006 Patrons créateurs Utilité générale Découpler la connaissance du type d une instance (quoi) du processus de création de cette instance (quand et comment) Patron du GoF Usine abstraite Constructeur Méthode usine Prototype Singleton Chap.5, Sect.1, p.59 Copyrights Julie Vachon, 2006

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

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

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

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

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

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

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

Projet Active Object

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

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

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

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

COMMUNITAKE TECHNOLOGIES EXIGENCES TECHNIQUES, DÉPLOIEMENT

COMMUNITAKE TECHNOLOGIES EXIGENCES TECHNIQUES, DÉPLOIEMENT COMMUNITAKE TECHNOLOGIES EXIGENCES TECHNIQUES, DÉPLOIEMENT CommuniTake Technologies, Exigences techniques en vue du déploiement Copyright 2012, CommuniTake Technologies Ltd., Yokneam, Israël. Tous droits

Plus en détail

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7 Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application

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

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

Génie logiciel avec UML. Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique

Génie logiciel avec UML. Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique Génie logiciel avec UML Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique Claude Boutet Session hiver 2008 Modélisation de systèmes Table des matières TABLE DES

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

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

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION THÈSE N O 2388 (2001) PRÉSENTÉE AU DÉPARTEMENT D'INFORMATIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE

Plus en détail

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

Les frameworks au coeur des applications web

Les frameworks au coeur des applications web Les frameworks au coeur des applications web Mémoire de bachelor réalisé par : Arielle Moro Directeur de mémoire : Peter Daehne, Professeur HES Genève, le vendredi 27 août 2010, Haute Ecole de Gestion

Plus en détail

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

Plus en détail

OpenPaaS Le réseau social d'entreprise

OpenPaaS Le réseau social d'entreprise OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3

Plus en détail

Design patterns. Design patterns - définition. Design patterns - avantages

Design patterns. Design patterns - définition. Design patterns - avantages Design patterns Conception UML Implantation Java Anne Lapujade 1 Design patterns - définition 2 v Objectif : proposer des solutions standardisées à des problèmes de conception classiques v Design pattern

Plus en détail

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP Vue d ensemble du basculement DHCP Dans Windows Server 2008 R2, il existe deux options à haute disponibilité dans le cadre du déploiement du serveur DHCP. Chacune de ces options est liée à certains défis.

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

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

Corrigés des premiers exercices sur les classes

Corrigés des premiers exercices sur les classes Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.

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

Contrôleur de communications réseau. Guide de configuration rapide DN1657-0606

Contrôleur de communications réseau. Guide de configuration rapide DN1657-0606 K T - N C C Contrôleur de communications réseau Guide de configuration rapide DN1657-0606 Objectif de ce document Ce Guide de configuration rapide s adresse aux installateurs qui sont déjà familiers avec

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

Développement itératif, évolutif et agile

Développement itératif, évolutif et agile Document Développement itératif, évolutif et agile Auteur Nicoleta SERGI Version 1.0 Date de sortie 23/11/2007 1. Processus Unifié Développement itératif, évolutif et agile Contrairement au cycle de vie

Plus en détail

Générer du code à partir d une description de haut niveau

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

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet Curriculum Name Guide du participant CCENT 3 Section 9.3 Dépannage de l adressage IP de la couche 3 Cette section consacrée au dépannage vous permettra d étudier les conditions nécessaires à l obtention

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

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 I. Objectifs Mettre en œuvre les compétences acquises ou en cours d acquisition en: o Modélisation UML, Réseau, Base de données,

Plus en détail

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez... Au programme Conception Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille 1 Présentation L UE COO est le prolongement immédiat de l UE POO du S4 informatique. cf. http://portail.fil.univ-lille1.fr/portail/ls4/poo

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

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

Processus d Informatisation

Processus d Informatisation Processus d Informatisation Cheminement de la naissance d un projet jusqu à son terme, deux grandes étapes : Recherche ou étude de faisabilité (en amont) L utilisateur a une idée (plus ou moins) floue

Plus en détail

Gestion de la relation Client (CRM)

Gestion de la relation Client (CRM) Gestion de la relation Client (CRM) Les meilleures pratiques pour gérer vos équipes de vente et marketing Claude Rose, président de Gestisoft Ordre du jour de la présentation Objectif d une solution CRM?

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

M1805 - Études et développement informatique

M1805 - Études et développement informatique Appellations Analyste cogniticien / cogniticienne informatique Analyste concepteur / conceptrice informatique Concepteur / Conceptrice analyste informatique Concepteur / Conceptrice d'application informatique

Plus en détail

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29 FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29 FOIRE AUX QUESTIONS Confidentiel Titre du document : Monetico

Plus en détail

L'intelligence d'affaires: la statistique dans nos vies de consommateurs

L'intelligence d'affaires: la statistique dans nos vies de consommateurs L'intelligence d'affaires: la statistique dans nos vies de consommateurs Jean-François Plante, HEC Montréal Marc Fredette, HEC Montréal Congrès de l ACFAS, Université Laval, 6 mai 2013 Intelligence d affaires

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

Cours Bases de données

Cours Bases de données Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

Flexible Identity. authentification multi-facteurs. authentification sans token. Version 1.0. Copyright Orange Business Services mai 2014.

Flexible Identity. authentification multi-facteurs. authentification sans token. Version 1.0. Copyright Orange Business Services mai 2014. Flexible Identity authentification multi-facteurs authentification sans token Version 1.0 1 of 23 historique des mises à jour date no. version auteur description mai 2014 1.0 Version initiale. Copyright

Plus en détail

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

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

M1 : Ingénierie du Logiciel

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

SUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2

SUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2 SUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2 Version 1.0.5 Mentions légales Mentions légales Ce document est susceptible de modification à tout moment sans

Plus en détail

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt Procédure pas à pas de découverte de l offre Service Cloud Cloudwatt Manuel Utilisateur 03/07/2014 Cloudwatt - Reproduction et communication sont interdites sans autorisation 1/45 Contenu 1. Introduction...

Plus en détail

Rapport de Synthèse. Création d un Générateur de modèle PADL pour le langage C++ Sébastien Colladon

Rapport de Synthèse. Création d un Générateur de modèle PADL pour le langage C++ Sébastien Colladon L Y O N Département Informatique Année 2011/2012 Rapport de Synthèse Création d un Générateur de modèle PADL pour le langage C++ Sébastien Colladon Laboratoire Ptidej de L Ecole Polytechnique de Montréal

Plus en détail

Pré-conditions : Evénement déclencheur : le client souhaite un virement. Description du déroulement du cas : Description des Use cases

Pré-conditions : Evénement déclencheur : le client souhaite un virement. Description du déroulement du cas : Description des Use cases Description des Use cases. Demander un virement bancaire 2. Constituer les listes reflets S'identifier et s'authentifier «include» Demander un v irement bancaire Abonné Smartphone «include» Consulter le

Plus en détail

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

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 Informations juridiques Copyright 2010 Adobe Systems Incorporated and its licensors. All rights reserved. Administration d Adobe LiveCycle Mosaic 9.5 13 octobre

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

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

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

Cours Bases de données 2ème année IUT

Cours Bases de données 2ème année IUT Cours Bases de données 2ème année IUT Cours Bilan : Des vues à PL/SQL corrigé Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Cas exemple 2 Les tables... 3 Vues et index 4 Privilèges 5 Fonctions

Plus en détail

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Logiciel Libre Cours 3 Fondements: Génie Logiciel Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/

Plus en détail

Conception des systèmes répartis

Conception des systèmes répartis Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan

Plus en détail

Vérifier la qualité de vos applications logicielle de manière continue

Vérifier la qualité de vos applications logicielle de manière continue IBM Software Group Vérifier la qualité de vos applications logicielle de manière continue Arnaud Bouzy Kamel Moulaoui 2004 IBM Corporation Agenda Analyse de code Test Fonctionnel Test de Performance Questions

Plus en détail

8. Gestionnaire de budgets

8. Gestionnaire de budgets 8. Gestionnaire de budgets 8.1 Introduction Le Gestionnaire de budgets (Budget Workbench) permet aux utilisateurs de travailler sur les données budgétaires qu ils ont importées sur leur station de travail

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

Once the installation is complete, you can delete the temporary Zip files..

Once the installation is complete, you can delete the temporary Zip files.. Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une

Plus en détail

Définition des Webservices Ordre de paiement par email. Version 1.0

Définition des Webservices Ordre de paiement par email. Version 1.0 Définition des Webservices Ordre de paiement par email Version 1.0 Rédaction, Vérification, Approbation Rédaction Vérification Approbation Nom Date/Visa Nom Date/Visa Nom Date/Visa Historique du document

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

Présentation du Programme Régional de Formations Qualifiantes

Présentation du Programme Régional de Formations Qualifiantes Présentation du Programme Régional de Formations Qualifiantes Le Programme Régional de Formations Qualifiantes (PRFQ) a pour objectif d aider les ligériens à accéder et à se maintenir dans un emploi durable

Plus en détail

L accès à distance du serveur

L accès à distance du serveur Chapitre 11 L accès à distance du serveur Accéder à votre serveur et aux ordinateurs de votre réseau depuis Internet, permettre à vos amis ou à votre famille de regarder vos dernières photos, écouter vos

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

Introduction au génie logiciel

Introduction au génie logiciel Introduction au génie logiciel Guillaume Laurent ENSMM 2007 G. Laurent (ENSMM) Introduction au génie logiciel 2007 1 / 36 Plan du cours 1 Problématique du génie logiciel 2 Méthodes de développement logiciel

Plus en détail

Comment consolider des données

Comment consolider des données Comment consolider des données Version 0.02 du 18.11.2004 Réalisé avec : OOo 1.1.3 Plate-forme / Os : Toutes Distribué par le projet fr.openoffice.org Sommaire 1 Introduction...3 2 Création des données...4

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

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

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Rational ClearCase or ClearCase MultiSite Version 7.0.1 Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Product Overview IBM Rational

Plus en détail

QUELQUES ÉLÉMENTS DU DÉVELOPPEMENT LOGICIEL

QUELQUES ÉLÉMENTS DU DÉVELOPPEMENT LOGICIEL QUELQUES ÉLÉMENTS DU DÉVELOPPEMENT LOGICIEL LA DÉCOUPE MVC (MODEL VIEW CONTROL) Imaginez la programmation en Python d un petit menu d une application visible sur la figure A.1. Lorsqu on clique sur un

Plus en détail

Installation d un manuel numérique 2.0

Installation d un manuel numérique 2.0 Installation d un manuel numérique 2.0 Après la commande d un manuel numérique enrichi, le Kiosque Numérique de l Education envoie un email de livraison (sous 24h pour les commandes passées par Internet

Plus en détail

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement

Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement Bases de données et environnements distribués Chapitre I : Architecture logicielle technologies de developpement en environnement distribué Éric Leclercq Département IEM / Laboratoire LE2i Septembre 2014

Plus en détail

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris : Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens

Plus en détail

Cahier des charges (CDC)

Cahier des charges (CDC) Cahier des charges (CDC) PTella Auteur Arnaud Aucher - Ecole Centrale Groupe PT1 3 Nom du document Version 3 Page 1 / 5 Sommaire Sommaire... 2 Présentation générale du projet... 3 1. Descriptif du projet...

Plus en détail

Vous êtes bien à la bonne présentation, c est juste que je trouvais que le titre de cette présentation étais un peu long,

Vous êtes bien à la bonne présentation, c est juste que je trouvais que le titre de cette présentation étais un peu long, Vous êtes bien à la bonne présentation, c est juste que je trouvais que le titre de cette présentation étais un peu long, en fait ça me faisait penser au nom d un certain projet gouvernemental je me suis

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

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

Utiliser un proxy sous linux

Utiliser un proxy sous linux Utiliser un proxy sous linux Par LoiselJP Le 22/05/2013 Objectif Les systèmes d exploitation sont de plus en plus gourmand en ressource, notemment en consommation réseau. C est d autant plus vrai que Linux

Plus en détail

NetSupport Notify (v2.01) Guide de démarrage. Tous droits réservés. 2009 NetSupport Ltd

NetSupport Notify (v2.01) Guide de démarrage. Tous droits réservés. 2009 NetSupport Ltd NetSupport Notify (v2.01) Guide de démarrage Tous droits réservés 2009 NetSupport Ltd NETSUPPORT NOTIFY : PRÉSENTATION GÉNÉRALE NetSupport Notify est une solution mise au point spécifiquement pour permettre

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

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

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

Competence Management System (Système de Gestion de Compétences)

Competence Management System (Système de Gestion de Compétences) Dispositif :... 3 Qu est-ce qu un CMS?... 3 Quels sont les dispositifs intégrés à un CMS... 3 Comment envoyer des emails?... 3 Puis-je envoyer des emails seulement à un groupe de personnes?... 4 Comment

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

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

Math 5 Dallage Tâche d évaluation

Math 5 Dallage Tâche d évaluation Math 5 Dallage Tâche d évaluation Résultat d apprentissage spécifique La forme et l espace (les transformations) FE 21 Reconnaître des mosaïques de figures régulières et irrégulières de l environnement.

Plus en détail

PROJET 1 : BASE DE DONNÉES REPARTIES

PROJET 1 : BASE DE DONNÉES REPARTIES PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties

Plus en détail

Date: 22/10/12 www.sugarpshop.fr Version: 3.2

Date: 22/10/12 www.sugarpshop.fr Version: 3.2 Date: 22/10/2012 contact@sugarpshop.fr Page 1 / 16 Table des matières 1 SUGARPSHOP : SCHEMA... 3 2 QUE VOUS APPORTE L INTERFACE SUGARPSHOP?... 4 3 DESCRIPTION FONCTIONNELLE GENERALE... 5 4 MODULE DE DEMANDE

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de

Plus en détail

Nom de l application

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

Installation d'un TSE (Terminal Serveur Edition)

Installation d'un TSE (Terminal Serveur Edition) Installation d'un TSE (Terminal Serveur Edition) Par LoiselJP Le 01/05/2013 (R2) 1 Objectifs Le TSE, comprenez Terminal Server Edition est une application de type 'main-frame' de Microsoft qui réside dans

Plus en détail