2008 : Station météo


Mise en situation
Niveau : BTS IRIS première année (17/03/2008)
Durée : 36 H
Equipe : 4 Etudiants
|
Objectif
- C1.6 Présenter la mise en œuvre d’une solution informatique
- C2.1 S’intégrer dans une équipe de projet
- C4.6 Assembler les éléments matériels assurant la liaison physique dans un système de communication
- C4.7 Installer les différentes couches logicielles d’un système de communication sur une station
- C4.8 Coder un module logiciel
- C4.9 Intégrer un module logiciel dans une application
- C5.4 Exploiter un réseau local industriel ou un bus de terrain
- C5.5 Installer des services techniques internet
- C6.2 Dépanner un système informatique
- C6.6 Dépanner un module logiciel
|
Pré requis
- Programmation HMTL
- Programmation en Java
- TCP/IP – Ethernet : modélisation et concepts associés (Modèle OSI)
- Notions de base de données.
|
Travail demandé
- Utiliser un serveur de socket
- Créer un interface en applet Java
- Créer un application cliente
- Utiliser une base de données (MySql) et un serveur de données (Tomcat)
|
Matériel minimum
- Un Tice Serveur WEB Orphy connecté par une liaison Ethernet à un PC ou un réseau local
- Un PC fonctionnant sous windows avec un navigateur WEB connecté à ce réseau
- Un poste de développement (éventuellement le même que le PC précédent) avec :
- Netbeans 6.0
- Exemple de communication avec serveur TICE
- La documentation du Tice Serveur WEB Orphy accompagné de son CD
|
Critères d’évaluation
- Un rapport par groupe figurant la description du travail fourni. Une première partie décrit le travail du groupe, puis chaque étudiant décrit son propre travail. Le rapport doit être clair et doit servir de guide d’utilisateur c’est à dire qu’un utilisateur doit pouvoir à l’aide de ce rapport facilement utiliser l’application développée. Les sources du code seront données en annexe.
- Un exposé oral d’une durée de 15mn, décomposé en 10mn sans interruption du jury suivi de 5mn de questions. Cet exposé aura comme support le rapport précédemment décrit. Il se déroulera dans la semaine 20/21.
- Une démonstration du développement en cours de TP
- Une partie du travail se fait en groupe, une autre individuellement. Mais le principe est de réaliser la totalité de l’application. Le travail de groupe est donc prédominant, l’entraide entre étudiant est donc souhaité, voir indispensable.
- Un CD de sauvegarde de l’ensemble du travail (Rapport, code, manuel d’utilisation…)
|
1. Cahier des charges
1.1 Mise en situation
Station Météo
1.2 Travail demandé :
1.2.1 Configuration souhaitée
L’application actuelle présente certains défauts :
- L’IHM n’est pas conviviale
- Les données historiques ne sont pas stockées
- Il n’existe pas de visualisation au travers de courbes ou histogrammes des données sur le mois ou l’année
Pour remédier à cela, vous allez réaliser la configuration suivante :

Le serveur sera continuellement connecté au serveur TICE par socket en mode TCP/IP. Il l’interrogera toutes les 5minutes. Les données météorologiques seront sauvegardées dans la base de données.
Le serveur aura un service web Apache permettant l’envoie d’une pas HTML contenant une Applet dès que le client l’appelle. La communication avec le client se fera de deux façons :
- Le client veut les informations instantannées, la communication se fera par le serveur par des socket en TCP/IP qui communiquera avec le TICE (par socket aussi)
- Le client veut des historiques, la communication se fera entre client/serveur qui récupèrera les données dans MySql et les transmettra par socket TCP/IP, la trame restant à définir (la communication des informations se fera par un objet dont la structure devra être défini)
1.2.2. Travail de groupe :
- A l’aide du document de prise en main CD3/OrphyWeb/Documentaion/Prise en main, découvrez tous les éléments reliés entre eux.
- Avec l'aide de l’exemple de communication avec le TICE donné, récupérer la trame à l’aide d’une applet contenant toutes les informations météorologiques
- Définissez toutes les valeurs correspondant aux différents capteurs.
- Installer le serveur de service web Apache sur le serveur.
1.2.3. Etudiant 1 :

L’étudiant s’occupera du stockage régulier (toutes les 5minutes) des informations dans une base de données. Son travail comportera :
- Installation de MySql sur le PC serveur
- Création de/des tables de la base de données
- Création du processus client qui ouvrira une socket en TCP/IP vers le serveur TICE toutes les 5 minutes, demandera les informations, les stockera dans la bdd et fermera la connexion.
1.2.3. Etudiant 2 :

Actuellement, l'IHM se présente sous la forme ci-dessus. Cette représentation n'est pas très avenante. Il vous est demandé, en vous aidant du code actuel :
- Ecrire le serveur socket sur le PC serveur
- Ecrire en java une applet cliente qui permette de dialoguer avec le serveur.
- En vous aidant du travail de l’étudiant 1, récupérer les informations du TICE
- Communiquer régulièrement ces informations au client si connecté. Le client utilisera un processus qui interrogera le serveur toutes les 5 secondes.
- Le rafraîchissement se fait régulièrement, mais les données ne sont pas sauvegardées en locales.
- L’IHM doit être soignée (dessin, photos, animation…).
1.2.4. Etudiant 3 :
Il s’occupera de la communication des informations entre la bdd et le client. Le client peut lui demander soit des informations journalières, hebdomadaires ou mensuelles. En s’aidant du travaille de l’étudiant 2, il créera un serveur de socket sur un port différent de ceux déjà utilisé. Suivant la requête du client, il enverra les informations dans un objet par le biais d’une socket en TCP/IP. Il s’aidera aussi du travail de l’étudiant 1 pour effectuer les requêtes sur la base de données.
Il s’occupera aussi de mettre en place une webcam visualisant la station météo. Cette visualisation se fera dans une applet. Dans un premier temps, il utilisera la webcam Trend de la section Iris, dans un deuxième temps, il trouvera une webcam extérieur (température négative) indépendante au niveau énergétique (panneau solaire).
1.2.5. Etudiant 4 :
Il s’occupera de l’affichage par graphique des données journalières, hebdomadaires ou mensuelles. Il aura le choix de créer un composant Java ou d’utiliser un composant graphique existant (JfreeChart). Grâce au travail de l’étudiant 3, il récupèrera les informations suivant sa requête par socket en TCP/IP (voir étudiant 1)
Remarque générale : Le travail des étudiants est étroitement lié, il est fortement conseillé de communiquer ensemble et de s’entraider, le but étant de réaliser une application complexe et de pouvoir la mettre en ligne sur le site du lycée.

