Projet Active Object

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

Download "Projet Active Object"

Transcription

1 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 Appliquées à la Gestion des Entreprises Université de Rennes 1,

2 Table des matières 1. Introduction Le projet Observer Spécifications Définition des trois algorithmes de diffusion Algorithme de diffusion atomique Algorithme de diffusion séquentielle Algorithme de diffusion par époque Architecture du projet Le dossier de sources : «src» Le fichier de configuration : «init.properties» Le dossier de JAVADOC : «javadoc» Les patrons de conception Observer Command Singleton Proxy Strategy Active Object Le diagramme de conception : Plateform Independant Model Le diagramme de conception : Plateform Specific Model Diagramme de séquence de notre implémentation Tests et validation Politique de test Interface graphique pour les tests Résultat des tests LEFRANC Pierre-François Page 2

3 3. Difficultés rencontrées Conclusion du projet LEFRANC Pierre-François Page 3

4 1. Introduction Le module de Techniques Avancées pour la conception par Objets (TAO) a pour but d offrir aux étudiants la compréhension de la mise en œuvre d architectures asynchrones, via l implémentation du patron de conception Active Object et l utilisation du langage Java. TAO permet en outre d associer les principaux patrons de conception vus au cours du module AOC à une architecture asynchrone. L objectif du projet était de réaliser un service de diffusion de données de capteur. La solution à construire devait s appuyer sur des mécanismes de programmation par «threads», le patron de conception observer ainsi que le patron de conception Active Object. Ce dernier nous a notamment permis de limiter la manipulation de «Threads» Java qui se révèle, le plus souvent, très fastidieuse. Pour cela, nous avons utilisé la méthode dite du «cycle en V». Nous avons commencé par analyser les besoins et la faisabilité du projet, puis rédigé les spécifications logicielles avant de réaliser la conception pour terminer par les tests et la validation. LEFRANC Pierre-François Page 4

5 2. Le projet Observer 2.1. Spécifications Le but de l application est de proposer à l utilisateur un programme permettant d envoyer des informations numériques pour ensuite les afficher sur différents afficheurs. Pour cela, nous devions mettre en place un système de capteur transmettant des valeurs à des canaux de diffusion. Ces derniers devaient se charger de créer des «Method Invocation» permettant l envoi des valeurs sur des afficheurs. Une des spécificités du projet est que ces canaux devaient posséder des délais de propagation aléatoires, simulant une latence. De plus, l application devait proposer un choix d algorithmes permettant différents types de diffusion de valeurs. Ces spécifications nous ont amené à mettre en place différents composants au niveau de l interface utilisateur : Un champ de saisi du nombre d afficheurs : «nombre d afficheurs», Un bouton marche : «Démarrer», Des boutons dits «radio» de sélection de l algorithme de diffusion : «Algorithme diffusion». Un écran d affichage des différents canaux et afficheurs est présent afin que l utilisateur puisse s assurer du bon fonctionnement de l application. Sur cet écran, on retrouve notamment l identifiant du canal, sa latence mais également la valeur de l afficheur ainsi que sa version. Les valeurs possibles de latence sont comprises entre 500 et millisecondes (inclus). L interface de ce projet est une interface SWING dont l interactivité est gérée grâce à des «listeners» qui détectent les actions de l utilisateur et réalisent les traitements idoines : il y a inversion du contrôle. Moteur du projet IHM SWING LEFRANC Pierre-François Page 5

6 2.2. Définition des trois algorithmes de diffusion Algorithme de diffusion atomique La diffusion atomique consiste à envoyer la donnée du capteur à tous ses observateurs en s assurant que cette dernière est affichée sur tous les afficheurs avant de se modifier. De plus, ces derniers ne doivent occulter aucune valeur. Cela nécessitait donc une action à mettre en place pour bloquer le capteur tant que tous les afficheurs n ont pas reçu leur valeur Algorithme de diffusion séquentielle La diffusion séquentielle ressemble trait pour trait à la diffusion atomique à l exception près que toutes les valeurs du capteur ne sont pas obligatoirement affichables. Cela se traduit par le fait que le capteur continue de fonctionner durant la transmission des valeurs. Ce qui a pour conséquence, le non affichage de certaines valeurs Algorithme de diffusion par époque La diffusion par époque consiste à ajouter un numéro de version à la valeur transmise. Il n existe aucune contrainte tant au niveau des afficheurs qu au niveau du capteur Architecture du projet Le dossier de sources : «src» Client Ce package permet de regrouper les «lanceurs» du projet. Il s agit du «main» de l application. Command Ce package permet de regrouper toutes les commandes de l application. IHM Ce package regroupe tous les composants nécessaires à l élaboration de l IHM ainsi que les «listeners SWING». Matériel Ce package regroupe tout le matériel de l application : une horloge, un fichier de configuration. Active Object Ce package regroupe l «executor» (ou Scheduler) ainsi que les «Method Invocation» du patron de conception active object. LEFRANC Pierre-François Page 6

7 Afficheur Ce package regroupe les afficheurs de l application permettant l affichage des valeurs et des versions. Canal Diffusion Ce package regroupe les canaux de diffusion qui transmettent les valeurs depuis le capteur jusqu à son afficheur via la création de «Method invocation». Capteur Ce package regroupe les classes du capteur qui permet de modifier la valeur à transmettre. Strategy Diffusion Ce package regroupe l ensemble des algorithmes de diffusion : atomique, séquentielle, par époque. Valeur Ce package regroupe la classe VersionValeur, objet qui est transmit depuis le capteur vers les afficheurs Le fichier de configuration : «init.properties» Ce fichier de configuration contient des propriétés qui spécifient des valeurs propres au fonctionnement du projet. Ces valeurs sont accédées par l application au cours de son fonctionnement et lors de son initialisation. Pour mettre en œuvre ce mécanisme nous avons utilisé la classe Java «Properties» qui permet de lire un fichier contenant une liste de propriétés sous la forme «<clef> = <valeur>». Les valeurs enregistrées sont les suivantes : La fréquence d incrémentation : fréquence d incrémentation de la valeur à transmettre. La valeur initiale : valeur initiale au démarrage de l application. Identifiant algorithme atomique : identifiant de l algorithme atomique permettant de l identifier dans certaines fonctions. Identifiant algorithme séquentiel : identifiant de l algorithme séquentiel permettant de l identifier dans certaines fonctions. Identifiant algorithme par époque : identifiant de l algorithme par époque permettant de l identifier dans certaines fonctions. LEFRANC Pierre-François Page 7

8 Le dossier de JAVADOC : «javadoc» Ce dossier contient l intégralité de la JAVADOC générée pour cette application Les patrons de conception Nous allons maintenant détailler les patrons de conception présents dans notre application au travers d extrait du diagramme de classe de conception spécifique à la plateforme Java (PSM) Observer Description Le patron de conception «observer/subject» est utilisé en programmation pour envoyer un signal à des modules qui jouent le rôle d'observateurs. En cas de notification, les observateurs effectuent alors l'action adéquate en fonction des informations qui parviennent depuis les modules qu'ils observent (les «Subject») Mise en œuvre Figure 1 : Diagramme de classe du patron de conception Observer Nous avons utilisé ce patron de conception afin de mettre à jour les afficheurs lors d un changement de valeur du capteur. LEFRANC Pierre-François Page 8

9 Pour cela, lors d un changement, l algorithme de diffusion, qui joue le rôle de Proxy (cf. paragraphe 2.4.4) sur le capteur, met à jour ses observateurs via la méthode «update» afin que ces derniers lancent les traitements aboutissant à la mise à jour des valeurs affichées. Ce patron de conception définit des rôles : Le Subject : Ce rôle est joué par l interface «Subject» qui est étendue par les interfaces «Capteur» et «AlgoDiffusion». L Observer : Ce rôle est joué par l interface «Observer» qui est étendue par l interface «Afficheur». Notons que, dans cette présentation du patron de conception, nous ne détaillons pas les traitements réalisés pour la mise à jour des Afficheurs suite à la modification de la valeur du capteur. Nous aborderons cela dans la suite de ce rapport Command Description Le patron de conception Command permet de séparer complètement le code initiateur de l action à celui de l action elle-même. En outre, il offre la possibilité de manipuler l action en ellemême sous forme d un objet du langage Mise en œuvre Figure 2 : Diagramme de classe du patron de conception Command LEFRANC Pierre-François Page 9

10 Command est utilisé dans notre application au niveau de la modification des valeurs du capteur. En effet, ces modifications sont réalisées par notre classe «HorlogeImpl» qui est en fait un «Timer» Java. Cette classe est capable d exécuter des actions à intervalle de temps régulier. Nous avons donc réifié ce concept d action dans une commande qui est ensuite exécutée par l horloge via un appel périodique de la méthode «execute» chargée de l incrémentation des valeurs du capteur. Ce patron de conception définit des rôles : Le Receiver : Ce rôle est joué par les classes implémentant l interface «AlgoDiffusion». L Invoker : Ce rôle est joué par l «HorlogeImpl». La Command : Ce rôle est joué par les classes implémentant l interface «Command» Singleton Description Le patron de conception a pour but de limiter l instanciation d une classe à un seul objet et de la rendre accessible à toutes les classes de l application. Il est utilisé lorsque l'on a besoin d'exactement un objet pour coordonner des opérations dans un système. Le modèle est parfois utilisé pour son efficacité, car il permet de s assurer de la présence de peu d'objets dans des systèmes limités en mémoire ou performances Mise en œuvre Figure 3 : Le patron de conception singleton Nous avons utilisé ce patron afin d assurer l unicité de certains objets tels que l horloge, le fichier de configuration et le «Scheduler» du patron de conception Active Object qui sont des attributs de l instance unique de la classe «Materiel». Grâce à cela, l application accède à ces éléments depuis n importe laquelle de ses classes. LEFRANC Pierre-François Page 10

11 Proxy Description Un proxy est une classe se substituant à une autre. Par convention et simplicité, le proxy implémente la même interface que la classe à laquelle il se substitue. L'utilisation de proxy ajoute une indirection à l'utilisation de la classe à substituer Mise en œuvre Figure 4 : Le patron de conception proxy Dans notre application, nous avons utilisé quatre patrons proxy. Dans un premier temps, nous l avons appliqué deux fois sur la classe «CanalImpl» pour appliquer le patron de conception Active Object qui doit comporter un proxy. De plus, nous avons fait le choix de placer l algorithme de diffusion comme un proxy sur le capteur, pour la commande et le canal. Ce choix nous a paru opportun car il nous a notamment permis de contrôler les accès à la valeur du capteur lors de la mise en place des différents algorithmes de diffusion. Ce patron de conception définit plusieurs rôles : Le proxy : Il représente la classe qui vient se substituer à la classe que l on veut «masquer». Le component (et concrete component): Il représente la classe que l on veut «masquer» via le proxy. Le client : Il représente la classe qui veut accéder à l objet masqué par le proxy. LEFRANC Pierre-François Page 11

12 Strategy Description Le patron stratégie est un patron de conception de type comportemental grâce auquel des algorithmes peuvent être sélectionnés à la volée au cours de l'exécution selon certaines conditions. Il est particulièrement utile pour des situations où il est nécessaire de permuter dynamiquement les algorithmes utilisés dans une application Mise en œuvre Figure 5 : Le patron de conception strategy Le patron de conception «strategy» définit les rôles suivants : Le context : Il représente la classe qui fait appel aux algorithmes : la «CommandIncrementer». La strategy (et concrete strategy) : Elle représente la ou les classes contenant les corps des algorithmes que l on souhaite modifier dynamiquement : les classes implémentant l interface «AlgoDiffusion». Dans ce projet, nous devions définir trois stratégies de diffusion pour les valeurs du capteur (cf. paragraphe 2.2). Lorsque l horloge notifie l algorithme du besoin de modifier la valeur du capteur. Ce dernier est modifié et l algorithme de diffusion exécuté. LEFRANC Pierre-François Page 12

13 La mise en œuvre de ces algorithmes est la suivante : Algorithme de diffusion séquentielle : nous avons mis en place un mécanisme de copie de la valeur du capteur. C est cette copie qui est envoyée aux afficheurs quelque soit la valeur réelle du capteur. Ensuite, nous avons utilisé un entier qui stocke à tout moment le nombre de diffusions en cours. Tant qu il en existe une (i.e. tant que l entier ne vaut pas zéro), aucune nouvelle valeur n est envoyée aux canaux. Algorithme de diffusion atomique : nous avons mis en place un système similaire à la diffusion séquentielle au niveau de l entier indiquant le nombre de diffusions en cours. Cependant, cet algorithme nécessitant un blocage du capteur lorsqu une valeur est en cours de diffusion, nous avons fait un appel à la méthode «setetat» du capteur avec le paramètre «false» dans le but de le bloquer. Lorsque tous les afficheurs ont obtenu la valeur, le capteur est débloqué, se modifie, et l opération est répétée. Algorithme de diffusion par époque : nous avons mis en place un objet stockant la valeur du capteur et lui associant une version (un entier). Plus cet entier est élevé, plus la version de la valeur est récente. Concernant la diffusion proprement dite, cet algorithme n a aucune contrainte : les valeurs sont envoyées aux afficheurs anarchiquement et à chaque modification du capteur Active Object Description Le patron de conception Active Object permet de découpler les méthodes d'exécution des méthodes d invocation pour améliorer la concurrence et simplifier l'accès synchronisé d un objet qui réside dans son propre thread de contrôle. Le principe est de pouvoir faire communiquer les objets entre eux de manières à ce que les messages échangés soient asynchrones. Sa grande force est de permettre au développeur de limiter la programmation parallèle classique, à l aide de «Threads» Java par exemple. En effet, ce patron de conception est capable de gérer de manière automatique les actions asynchrones sans que le développeur n ait à se soucier des éventuels problèmes de synchronisation et d accès concurrent sur une même variable. Il en résulte que l ordre d'exécution de méthodes peut différer de leur ordre d invocation par exemple Mise en œuvre Dans notre projet, nous avons choisi d utiliser une implémentation du patron de conception fournie par Sun dans la bibliothèque Java standard. Cette mise en œuvre dispose d un planificateur intégré (le «Scheduler») et se révèle être très performante. LEFRANC Pierre-François Page 13

14 Figure 6 : Structure statique du patron de conception Active Object Ce patron de conception définit plusieurs rôles : Client : Dans notre application, le patron est utilisé deux fois (une fois pour l appel de la «Method Invocation update» et une fois pour l apelle de la «Method Invocation getvalue») et certaines classes n ont pas le même rôle selon le cas. Ainsi, les classes implémentant l interface «AlgoDiffusion» et celles implémentant «Afficheur» sont les «Client». Servant : Ce sont les classes qui mettent en œuvre les services appelés lors de l exécution des «Method Invocation», c'est-à-dire celles implémentant «AlgoDiffusion» et «Afficheur». Future : Ce rôle est géré par la bibliothèque standard Java. Il représente l objet retourné après l appel des services par les «Method Invocation» Scheduler : Il planifie l appel des «Method Invocation» de manière asynchrone, c est la classe «Scheduler» dans notre cas. Activation Queue : Ce rôle est géré par la bibliothèque standard Java, c est la file d attente où sont placées les «Method Invocation» avant leur appel. Method Invocation : Le concept de méthode est encapsulé dans un objet qui représente les «Method Invocation» du patron. Elles sont chargées de réaliser l appel du service à leur exécution via leur méthode «Call». Ce rôle est joué par les classes implémentant l interface «Method Invocation» de notre implémentation. Proxy : Un proxy standard, ce rôle est joué par les classes implémentant l interface «Canal». LEFRANC Pierre-François Page 14

15 Figure 7 : Notre mise en œuvre d'active Object On remarque que nous avons fait le choix d associer le «Scheduler» à notre patron de conception singleton (cf. paragraphe 2.4.3). Comme indiqué sur cette figure, la gestion de l «Activation Queue» et des «Futures» est réalisée par la bibliothèque Java fournie par Sun. LEFRANC Pierre-François Page 15

16 2.5. Le diagramme de conception : Plateform Independant Model Figure 8 : Diagramme de classe du PIM Le «Platform Independent Model» aussi appelé PIM constitue un modèle UML d'analyse de l'application possédant les caractéristiques suivantes : Complet fonctionnellement Indépendant de la cible technique Validé par simulation LEFRANC Pierre-François Page 16

17 2.6. Le diagramme de conception : Plateform Specific Model Figure 9 : Diagramme de classe du PSM Le «Platform Specific Model», aussi appelé PSM représente un modèle de conception détaillée de l'application. Il possède les caractéristiques suivantes : Dépendant de la cible technique (langages de programmation et OS notamment) Généré depuis le PIM (cf. paragraphe 2.5), par des règles de transformation spécifiques à une plateforme cible. LEFRANC Pierre-François Page 17

18 2.7. Diagramme de séquence de notre implémentation Du fait que cette page ne soit pas très lisible, nous vous joignons l image originale (diag_sequence.jpg) dans le rendu de notre projet. LEFRANC Pierre-François Page 18

19 2.8. Tests et validation Après la phase de conception, nous nous sommes lancés dans le développement de l application. Cette phase est relativement courte puisque le travail d analyse et de conception permettent de guider pas à pas les développements. Une fois ces développements terminés, nous avons débuté la phase de tests de notre application Politique de test Pour réaliser la phase de tests, nous nous sommes orientés, dans un premier temps vers une relecture du code, c'est-à-dire une approche «boite blanche». Cette relecture nous a, dans un premier temps, permis d alléger notre code et de factoriser des traitements. Grâce à ces tests, nous avons pu vérifier que chacun de nos composants Java jouait le rôle que nous voulions qu il joue. Cette première étape de test nous a donc servi de point d entrée dans notre phase de tests. Dans un second temps, nous nous sommes orientés vers des tests visuels. En effet, les traitements Active Object sont réalisés par les classes de la librairie Java (ScheduledExecutorService et Callable). Il en est de même pour l Horloge qui étend un timer Java Interface graphique pour les tests Dans le but de s assurer du bon fonctionnement des classes métiers, nous avons conçu une IHM utilisant les librairies SWING. Cette dernière permet : de s assurer du bon fonctionnement de l horloge grâce à l affichage de la valeur du capteur, de voir la latence des canaux, de tester les différents algorithmes de diffusion, de s assurer que les afficheurs respectent les spécifications énoncées paragraphe 2.2. LEFRANC Pierre-François Page 19

20 Figure 10 : Présentation de notre interface utilisateur Résultat des tests Après plusieurs séries de tests, l application est totalement fonctionnelle et respecte les spécifications demandées. 3. Difficultés rencontrées Les principales difficultés rencontrées sur le projet son intervenues lors des phases d analye. En effet, cette phase est la plus importante dans tout projet informatique et peut parfois représenter plus de 50% du temps passé. Dans un premier temps, il nous a fallu saisir les différentes subtilités des algorithmes de diffusion pour ensuite pouvoir les formaliser dans le langage Java. Ensuite, nous avons mis en place les différents patrons de conception et avons dû nous attacher à bien repérer leur rôle dans le projet. Pour ce qui est des patrons de conception Observer, Proxy, Singleton, Command, Strategy, leur mise en œuvre nous est apparue naturelle grâce, notamment, aux travaux réalisés dans le module d AOC. Concernant Active Object, il nous a fallu nous documenter et analyser son fonctionnement au travers de multiples diagrammes de séquences. En outre, nous avons dû étudier les implémentations proposées dans la librairie Java standard dans le but de sélectionner la plus adaptée à notre projet. Une fois ces difficultés dépassées, les phases de développements et de tests ont été réalisées sans véritables difficultés. LEFRANC Pierre-François Page 20

21 4. Conclusion du projet Ce projet qui intervient dans notre dernière année de Master Informatique a renforcé notre vision et notre compréhension des patrons de conception, notamment par la découverte du patron Active Object. La réalisation de ce projet fait suite à la réalisation, en Master 2, d un métronome. Nous avons donc pu réutiliser une méthodologie de travail acquise au premier semestre en améliorant cette dernière. Ces améliorations sont passées par la rédaction d un solide livret de conception qui a optimisé le temps de développement et de tests de l application. Au cours du projet, nous avons pu mettre en œuvre la méthode de programmation dite du «cycle en V» que nous aurons à utiliser au cours de notre stage de fin d études. Cette dernière s est d ailleurs fortement rapprochée de ce qui se fait dans le monde professionnel. En outre, au travers de l analyse, la conception, le développement et la validation d une application simple, nous avons mis en place quelques patrons de conception parmi les nombreux existants. Cependant, le réel objectif était de comprendre et maitrisé un nouveau patron : Active Object. Ce dernier nous est apparu plus complexe que les autres du fait qu il définisse un grand nombre de rôles (cf. paragraphe 2.4.6). Au final, nous avons correctement implémenté Active Object, ce qui nous a permis de gérer le parallélisme de manière beaucoup moins fastidieuse qu en usant de méthodes vues dans notre cursus : les Threads. Pour conclure, ce projet de TAO a été pour nous une véritable ouverture sur le monde de la programmation parallèle, monde qui représente certainement l avenir du développement en tirant parti des architectures multi-cœurs. LEFRANC Pierre-François Page 21

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

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

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

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

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

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

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

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

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

Apps Sage : les 10 étapes pour publier vos données dans le Cloud.

Apps Sage : les 10 étapes pour publier vos données dans le Cloud. Apps Sage : les 10 étapes pour publier vos données dans le Cloud. Produits concernés : Sage Customer View et Sage Reports Contexte Depuis Sage Data Manager, vous venez d installer Sage Business Sync (cf

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

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

Messagerie asynchrone et Services Web

Messagerie asynchrone et Services Web Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 34 NFP111 Systèmes et Applications Réparties Cours 7 - CORBA/Partie 1 Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon

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

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant Master CCI Compétences Complémentaires en Informatique Livret de l étudiant 2014 2015 Master CCI Le Master CCI (Compétences Complémentaires en Informatique) permet à des étudiants de niveau M1 ou M2 dans

Plus en détail

CalDav Manager : Gestionnaire d emploi du temps

CalDav Manager : Gestionnaire d emploi du temps Génie logiciel - M1 ALMA CalDav Manager : Gestionnaire d emploi du temps Auteurs : Stanislas KOBAK - Céline BARILLERE 5 décembre 2012 Table des matières 1 Introduction 2 1.1 Rappel de l énoncé du projet.............................

Plus en détail

Network musical jammin

Network musical jammin Network musical jammin Projet PC2R - 2015 Pour ce projet, nous allons réaliser une application permettant d effectuer des jams sessions en temps-réel entre des musiciens répartis à travers le monde. Le

Plus en détail

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret. Bien programmer en Java 7 Avec plus de 50 études de cas et des comparaisons avec C++ et C# Plus de 10 000 ex. vendus! Édition en couleur Emmanuel Puybaret, ISBN : 978-2-212-12974-8 chapitre1 Présentation

Plus en détail

REALISATION d'un. ORDONNANCEUR à ECHEANCES

REALISATION d'un. ORDONNANCEUR à ECHEANCES REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6

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

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

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

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

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

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

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

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés

Plus en détail

BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)

BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM) Ministère de l Enseignement Supérieur et de la Recherche Scientifique Ecole Supérieure Privée d Ingénierie et de Technologie BULK SMS Envoi en masse d un message texte moyennant un téléphone mobile (GSM)

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

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

WEA Un Gérant d'objets Persistants pour des environnements distribués

WEA Un Gérant d'objets Persistants pour des environnements distribués Thèse de Doctorat de l'université P & M Curie WEA Un Gérant d'objets Persistants pour des environnements distribués Didier Donsez Université Pierre et Marie Curie Paris VI Laboratoire de Méthodologie et

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

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

Projet Robot Centaure

Projet Robot Centaure Projet Robot Centaure Année 2013-2014 IMA4 S8 Étudiants : Clément TACHÉ Liying WANG Enseignants : Robert Litwak Xiavier Redon Table des matières : Remerciements Introduction Présentation et état des lieux

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

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

Business Process Execution Language

Business Process Execution Language Business Process Execution Language Rapport du projet de systèmes distribués d information Markus Lindström 6 mai 2009 Motivation personnelle Le sujet que j ai retenu et présenté dans le cadre du cours

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

Manipulation 4 : Application de «Change».

Manipulation 4 : Application de «Change». Manipulation 4 : Application de «Change». Première partie : Cette manipulation a pour but d utiliser un service Web afin d obtenir les taux de change appliqués entre les différentes monnaies référencées

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

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

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de

Plus en détail

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21 INSA - ASI TechnoWeb : Rappels UML 1/21 Technologie Web Conception de sites Web Alexandre Pauchet INSA Rouen - Département ASI BO.B.RC.18, pauchet@insa-rouen.fr INSA - ASI TechnoWeb : Rappels UML 2/21

Plus en dé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

Mise en place Active Directory / DHCP / DNS

Mise en place Active Directory / DHCP / DNS Mise en place Active Directory / DHCP / DNS Guillaume Genteuil Période : 2014 Contexte : L entreprise Diamond Info localisé en Martinique possède une cinquantaine de salariés. Basé sur une infrastructure

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

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

1 Mesure de la performance d un système temps réel : la gigue

1 Mesure de la performance d un système temps réel : la gigue TP TR ENSPS et MSTER 1 Travaux Pratiques Systèmes temps réel et embarqués ENSPS ISV et Master TP1 - Ordonnancement et communication inter-processus (IPC) Environnement de travail Un ordinateur dual-core

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

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

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL Un bus de services Un bus de services (ESB) permet d assembler des web services existants, le résultat de cet

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

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

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

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

Etude et développement d un moteur de recherche

Etude et développement d un moteur de recherche Ministère de l Education Nationale Université de Montpellier II Projet informatique FLIN607 Etude et développement d un moteur de recherche Spécifications fonctionnelles Interface utilisateur Responsable

Plus en détail

TRAAM STI 2013-2014 Acquisition et exploitations pédagogiques des données sur un système pédagogique

TRAAM STI 2013-2014 Acquisition et exploitations pédagogiques des données sur un système pédagogique TRAAM STI 2013-2014 Acquisition et exploitations pédagogiques des données sur un système pédagogique Bilan technique et éléments de développement Fonctionnalités attendues Une vingtaine d établissements

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

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

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

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd UE 503 L3 MIAGE Initiation Réseau et Programmation Web La couche physique A. Belaïd abelaid@loria.fr http://www.loria.fr/~abelaid/ Année Universitaire 2011/2012 2 Le Modèle OSI La couche physique ou le

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

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

Business Intelligence avec SQL Server 2012

Business Intelligence avec SQL Server 2012 Editions ENI Business Intelligence avec SQL Server 2012 Maîtrisez les concepts et réalisez un système décisionnel Collection Solutions Informatiques Extrait Alimenter l'entrepôt de données avec SSIS Business

Plus en détail

Module SMS pour Microsoft Outlook MD et Outlook MD Express. Guide d'aide. Guide d'aide du module SMS de Rogers Page 1 sur 40 Tous droits réservés

Module SMS pour Microsoft Outlook MD et Outlook MD Express. Guide d'aide. Guide d'aide du module SMS de Rogers Page 1 sur 40 Tous droits réservés Module SMS pour Microsoft Outlook MD et Outlook MD Express Guide d'aide Guide d'aide du module SMS de Rogers Page 1 sur 40 Table des matières 1. Exigences minimales :...3 2. Installation...4 1. Téléchargement

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

Traduction des Langages : Le Compilateur Micro Java

Traduction des Langages : Le Compilateur Micro Java BARABZAN Jean-René OUAHAB Karim TUCITO David 2A IMA Traduction des Langages : Le Compilateur Micro Java µ Page 1 Introduction Le but de ce projet est d écrire en JAVA un compilateur Micro-Java générant

Plus en détail

Compte-rendu de projet de Système de gestion de base de données

Compte-rendu de projet de Système de gestion de base de données Compte-rendu de projet de Système de gestion de base de données Création et utilisation d'un index de jointure LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Thierry Grison

Plus en détail

CINEMATIQUE DE FICHIERS

CINEMATIQUE DE FICHIERS ANDRE ANTHONY BRUNEAU Vincent JOUANNIN ROMAIN MAZEAUD MARINE RIOCHET Tony Groupe 609 CINEMATIQUE DE FICHIERS Mini-projet: Gestion de Ventes d'articles Enseignant: MONCEAUX Laura Année 2011 / 2012 TABLE

Plus en détail

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

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

Intervenants. Thomas d'erceville Project Manager. Christian NGUYEN Practice Manager IT Quality

Intervenants. Thomas d'erceville Project Manager. Christian NGUYEN Practice Manager IT Quality Intervenants Thomas d'erceville Project Manager Christian NGUYEN Practice Manager IT Quality 2 14/04/2015 De l'assurance qualité à l'ingénierie des tests logiciels 1. Contexte général des tests mobiles

Plus en détail

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information. PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue

Plus en détail

REGLEMENT DE LA CONSULTATION N 07-18 Du 24 mai 2007. Centre International d Etudes Pédagogiques 1, Avenue Léon Journault 92318 Sèvres cedex

REGLEMENT DE LA CONSULTATION N 07-18 Du 24 mai 2007. Centre International d Etudes Pédagogiques 1, Avenue Léon Journault 92318 Sèvres cedex REGLEMENT DE LA CONSULTATION N 07-18 Du 24 mai 2007 PERSONNE PUBLIQUE Centre International d Etudes Pédagogiques 1, Avenue Léon Journault 92318 Sèvres cedex Téléphone : 01 45 07 60 00 Télécopieur : 01

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

INITIATION AU LANGAGE JAVA

INITIATION AU LANGAGE JAVA INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal

Plus en détail

Méthodologies de développement de logiciels de gestion

Méthodologies de développement de logiciels de gestion Méthodologies de développement de logiciels de gestion Chapitre 5 Traits caractéristiques des deux approches de méthodologie Présentation réalisée par P.-A. Sunier Professeur à la HE-Arc de Neuchâtel http://lgl.isnetne.ch

Plus en détail

PROJET ALGORITHMIQUE ET PROGRAMMATION II

PROJET ALGORITHMIQUE ET PROGRAMMATION II PROJET 1 ALGORITHMIQUE ET PROGRAMMATION II CONTENU DU RAPPORT A RENDRE : o Fiche signalétique du binôme o Listing des différents fichiers sources o CD sources o Il sera tenu compte de la présentation du

Plus en détail

Rapport d activité. Mathieu Souchaud Juin 2007

Rapport d activité. Mathieu Souchaud Juin 2007 Rapport d activité Mathieu Souchaud Juin 2007 Ce document fait la synthèse des réalisations accomplies durant les sept premiers mois de ma mission (de novembre 2006 à juin 2007) au sein de l équipe ScAlApplix

Plus en détail

PROGRAMMATION EVENEMENTIELLE sur EXCEL

PROGRAMMATION EVENEMENTIELLE sur EXCEL MASTERs SMaRT & GSI PROGRAMMATION EVENEMENTIELLE sur EXCEL Pierre BONNET Programmation évènementielle La programmation évènementielle permet un appel de procédure depuis l'interface HMI d'excel (ou d'un

Plus en détail

CATALOGUE FORMATION. Product Lifecycle Management. Juin 2013

CATALOGUE FORMATION. Product Lifecycle Management. Juin 2013 CATALOGUE FORMATION Product Lifecycle Management Juin 2013 s de formation ENOVIA V6 ENOVIA V6 Plateforme Collaborative 5 ENOVIA V6 Installation et Administration 9 ENOVIA V6 Implémentation et Développement

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

Entraînement au concours ACM-ICPC

Entraînement au concours ACM-ICPC Entraînement au concours ACM-ICPC Concours ACM-ICPC : format et stratégies Page 1 / 16 Plan Présentation Stratégies de base Page 2 / 16 Qu est-ce que c est? ACM-ICPC : International Collegiate Programming

Plus en détail

Plan. Patrons de conception. Motivations. Design Pattern : principe. Philippe Collet

Plan. Patrons de conception. Motivations. Design Pattern : principe. Philippe Collet Plan Patrons de conception Philippe Collet Master 1 Informatique 2005-2006 http://deptinfo.unice.fr/twiki/bin/view/minfo/gloo Introduction Premier exemple Principes et classification Présentation des patrons

Plus en détail

Guide d utilisation WEBPORTAL CPEM Portail d Applications Web CPEM

Guide d utilisation WEBPORTAL CPEM Portail d Applications Web CPEM Guide d utilisation WEBPORTAL CPEM Portail d Applications Web CPEM Ce guide vous aidera à installer et à mettre en place les modules nécessaires afin d accéder à vos Applications Web SOMMAIRE I. Pré requis...

Plus en détail

LICENCE : INFORMATIQUE GENERALE

LICENCE : INFORMATIQUE GENERALE LICENCE : INFORMATIQUE GENERALE RÉSUMÉ DE LA FORMATION Type de diplôme : Licence (LMD) Domaine : Sciences, Ingénierie et Technologies Mention : Informatique générale Objectifs Le diplôme offre une formation

Plus en détail

LA GESTION DE PROJET INFORMATIQUE

LA GESTION DE PROJET INFORMATIQUE Structurer, assurer et optimiser le bon déroulement d un projet implique la maîtrise des besoins, des objectifs, des ressources, des coûts et des délais. Dans le cadre de la gestion d un projet informatique

Plus en détail

LA GESTION DE PROJET INFORMATIQUE

LA GESTION DE PROJET INFORMATIQUE LA GESTION DE PROJET INFORMATIQUE Lorraine Structurer, assurer et optimiser le bon déroulement d un projet implique la maîtrise des besoins, des objectifs, des ressources, des coûts et des délais. Dans

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

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

Fiche Technique Windows Azure

Fiche Technique Windows Azure Le 25/03/2013 OBJECTIF VIRTUALISATION mathieuc@exakis.com EXAKIS NANTES Identification du document Titre Projet Date de création Date de modification Fiche Technique Objectif 25/03/2013 27/03/2013 Windows

Plus en détail

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice

Plus en détail

WINDOWS SHAREPOINT SERVICES 2007

WINDOWS SHAREPOINT SERVICES 2007 WINDOWS SHAREPOINT SERVICES 2007 I. TABLE DES MATIÈRES II. Présentation des «content types» (Type de contenu)... 2 III. La pratique... 4 A. Description du cas... 4 B. Création des colonnes... 6 C. Création

Plus en détail

Le modèle de données

Le modèle de données Le modèle de données Introduction : Une fois que l étude des besoins est complétée, deux points importants sont à retenir : Les données du système étudié Les traitements effectués par le système documentaire.

Plus en détail

Analyse de performance, monitoring

Analyse de performance, monitoring Analyse de performance, monitoring Plan Principes de profilage Projet TPTP dans Eclipse Utilisation des profiling tools de TPTP Philippe Collet Master 1 Informatique 2009-2010 http://deptinfo.unice.fr/twiki/bin/view/minfo/gl

Plus en détail

Formation. Module WEB 4.1. Support de cours

Formation. Module WEB 4.1. Support de cours Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,

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