présentation projet ia

36
Présentation Projet IA Relevé semi-automatique de compteurs d’énergie 1 GROUPE 6

Upload: esma

Post on 11-Feb-2016

56 views

Category:

Documents


0 download

DESCRIPTION

Présentation Projet IA. Relevé semi-automatique de compteurs d’énergie. GROUPE 6. Plan. I- Introduction II- Versionning III- Présentation des langages utilisés IV- Présentation des outils utilisé s V- Conclusion. I- Introduction. II- Versionning. Tortoise SVN. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Présentation  Projet IA

1

Présentation Projet IA

Relevé semi-automatique de compteurs d’énergie

GROUPE 6

Page 2: Présentation  Projet IA

2

I- Introduction

II- Versionning

III- Présentation des langages utilisés

IV- Présentation des outils utilisés

V- Conclusion

Plan

Page 3: Présentation  Projet IA

3

I- Introduction

Page 4: Présentation  Projet IA

4

II-Versionning

Page 5: Présentation  Projet IA

5

Tortoise SVN

TortoiseSVN est un client libre et open-source pour le système de contrôle de version Subversion

Gère les fichiers et répertoires dans le temps

Qu'il se rappelle chaque changement jamais fait à vos fichiers et répertoires

Permet de récupérer les anciennes versions de vos fichiers et examiner l'histoire de comment et quand vos données modifiées, et qui a changé

Page 6: Présentation  Projet IA

6

Les fonctionnalités de TortoiseSVN Accès facile aux commandes de Subversion

Gestion cohérente des données

Metadonnées versionnées

Embranchements et étiquetages efficaces

Page 7: Présentation  Projet IA

7

Google codeGoogle code met des Services à disposition et menu de gestion du projet:

La barre d'onglets horizontale offre différents services : Project Home, Downloads, Wiki, Issues, Source, Administer

Downloads permet de uploader des fichiers avec le lien New download

Wiki permet de rédiger des pages avec le lien New page

Issues permet de signaler des observations sur le projet pour aider à son bon développement.  Elles émanent des utilisateurs comme des développeurs.

Page 8: Présentation  Projet IA

8

Cela se fait avec New issue et en spécifiant entre autres le Type de l'issue -Defect (défaut du logiciel), -Enhancement (amélioration demandée sur quelque chose qui existe), -Task (quelque chose de nouveau à développer)... et sa priorité.

Par la suite, les développeurs consultent les issues et agissent en conséquence. Une issue peut recevoir plusieurs commentaires de différentes personnes. Suivant leurs traitements, les développeurs changeront leur Status (Accepté (le problème est confirmé), Fixed (defect réparée), Invalid (issue invalide), Done (task effectuée)...

Source indique les commandes à taper pour récupérer avec un client subversion (svn) depuis un poste linux les sources du projets afin

de contribuer ou seulement de les consulter.

Page 9: Présentation  Projet IA

9

III-Présentation des langages utilisés

UML

Java

PHP

Html

CSS

JavaScript

Page 10: Présentation  Projet IA

10

UMLDans notre cas, nous avons choisi la méthode de conception UML(Unified Modeling Language) parce que ce dernier n’impose pas de méthode de travail particulière, il peut être intégrer à n’importe quel processus de développement d’une manière transparente.

UML est une sorte de boite à outil, qui permet d’améliorer progressivement nos méthodes de travail, tout en préservant nos modes de fonctionnement.

Il permet de définir et de visualiser un modèle, à l’aide de diagrammes

Page 11: Présentation  Projet IA

11

Java

À ce jour, la plate-forme Java est utilisée par plus de 6,5 millions de développeurs de logiciels. Elle est présente dans tous les secteurs industriels majeurs et couvre toute une gamme de périphériques, d'ordinateurs et de réseaux.

Page 12: Présentation  Projet IA

12

Résumé des avantages de Java :

Portabilité excellente

Langage puissant

Langage orienté objet

Langage de haut niveau

Nombreuses librairies tierces

Très grande productivité

Applications plus sûres et stables

Nombreuses implémentations, JVM et compilateurs, libres ou non

Pourquoi Java?

Page 13: Présentation  Projet IA

13

Api Utilisé:

L’API RXTX est une extension Java qui facilite le développement indépendant de la plateforme d'applications de communication pour des technologies telles que les cartes à puce, systèmes embarqués, et les terminaux de point de vente, des dispositifs de services financiers, fax, modems, terminaux et équipements robotisés

Page 14: Présentation  Projet IA

14

PHPPHP (officiellement, ce sigle est un acronyme récursif pour PHP: Hypertext Preprocessor) est un langage de scripts généraliste et Open Source, spécialement conçu pour le développement d'applications web. Il peut être intégré facilement au HTML.

Au lieu d'utiliser des tonnes de commande afin d'afficher du HTML (comme en C ou en Perl), les pages PHP contiennent des fragments HTML dont du code qui fait "quelque chose" (dans ce cas, il va afficher "Bonjour, je suis un script PHP !"). Le code PHP est inclus entre une balise de début et une balise de fin qui permettent au serveur web de passer en "mode PHP".

Page 15: Présentation  Projet IA

15

Ce qui distingue PHP des langages de script comme le Javascript, est que le code est exécuté sur le serveur, générant ainsi le HTML, qui sera ensuite envoyé au client. Le client ne reçoit que le résultat du script, sans aucun moyen d'avoir accès au code qui a produit ce résultat. Vous pouvez configurer votre serveur web afin qu'il analyse tous vos fichiers HTML comme des fichiers PHP. Ainsi, il n'y a aucun moyen de distinguer les pages qui sont produites dynamiquement des pages statiques.

Le grand avantage de PHP est qu'il est extrêmement simple pour les néophytes, mais offre des fonctionnalités avancées pour les experts. Ne craignez pas de lire la longue liste de fonctionnalités PHP. Vous pouvez vous plonger dans le code, et en quelques instants, écrire des scripts simples.

Page 16: Présentation  Projet IA

16

Page 17: Présentation  Projet IA

17

HTMLL’HTML est le format de données conçu pour représenter les pages web.

C’est une langage de balisage qui permet d’écrire de l’hypertexte, d’où son nom.

HTML permet également de structurer sémantiquement et de mettre en forme le contenu des pages, d’inclure des ressources multimédias dont des images, des formulaires de saisie.

Il est souvent utilisé conjointement avec des langages de programmation (JavaScript) et des formats de présentation (feuilles de style en cascade).

Page 18: Présentation  Projet IA

18

CSSLes feuilles de style permettent  :

d'obtenir une présentation homogène sur tout un site en faisant appel sur toutes les pages à une même définition de style

de permettre le changement de l'aspect d'un site complet entier par la seule modification de quelques lignes

une plus grande lisibilité du HTML, car les styles sont définis à part

des chargements de page plus rapides, pour les mêmes raisons que précédemment

un positionnement plus rigoureux des éléments

Page 19: Présentation  Projet IA

19

JavaScript

JavaScript est un langage de programmation de scripts principalement utilisé dans les pages web interactives mais aussi coté serveur. C'est un langage orienté objet à prototype, c'est-à-dire que les bases du langage et ses principales interfaces sont fournies par des objets qui ne sont pas des instances de classes, mais qui sont chacun équipés de constructeurs permettant de générer leurs propriétés, et notamment une propriété de prototypage qui permet d'en générer des objets héritiers personnalisés.

Page 20: Présentation  Projet IA

20

Lorsqu'on cherche à afficher des graphiques, on est mis face à une suite de choix. Le premier est la technologie qui sera employée pour la génération des graphiques.

On commence par choisir si on veut générer les graphiques depuis le serveur ou sur la machine du client. Voici un tableau récapitulatif des possibilités qu'offrent les deux alternatives :

Le choix dépend comme toujours le l'objectif. Nous choisirons donc de générer les graphiques par l'intermédiaire du client principalement si on veut éviter d'impacter les performances du serveur et si on souhaite intégrer une notion d'interactivité aux graphiques. C'est notre cas.

Page 21: Présentation  Projet IA

21

Flash ou Javascript ?Des solutions clients, il n'y en a pas 60. On oublie les applets Java parce qu'elles sont vieillotes et trop contraignantes. Il nous reste Flash et Javascript. Loin de nous l'idée de vouloir ressortir la liste complète des avantages et inconvénients liés à leur utilisation en général. Voici juste un schéma récapitulatif de nos principaux facteurs de choix :

Nous avons choisi le Javascript, principalement parce que nous maitrisons mieux la technologie. L'autre raison est qu'il existe beaucoup plus de librairies Javascript que de librairies Flash pour générer les graphiques.

Page 22: Présentation  Projet IA

22

jQuery

jQuery est une bibliothèque JavaScript libre qui porte sur l'interaction entre JavaScript (comprenant AJAX) et HTML, et a pour but de simplifier des commandes communes de JavaScript.

Test 1

Test2

Page 23: Présentation  Projet IA

23

Le framework contient notamment les fonctionnalités suivantes :

Parcours et modification du DOM

Événements 

Effets et animations 

Manipulations des feuilles de style en cascade (ajout/suppression des classes, d'attributs…) 

AJAX 

Plugins 

Utilitaires (version du navigateur )

Page 24: Présentation  Projet IA

24

JqplotjqPlot est un plugin très utile pour générer des graphiques en tout genre : histogrammes, courbes, « camemberts » … sont gérés par ce plugin tout simplement impressionnant.

Un plugin assez complet et utile si vous êtes dans une optique d’optimisation … vous pouvez éviter de traiter des données par le serveur en utilisant le client HTML du visiteur et donc ses ressources directement. Attention aux données sensibles puisqu’elles sont accessibles côté client.Vous pouvez tout à fait personnaliser les couleurs, la présentation, les données (heureusement ), les axes également. Pour ce faire je vous renvoie au site officiel

Page 25: Présentation  Projet IA

25

Le choix de JqPlotA partir du moment où on a choisi d'utiliser le Javascript pour générer les graphiques, le choix est vaste. Il existe de nombreuses librairies, parmi lesquelles beaucoup sont de bonne qualité.

On peut trouver ici une liste assez exhaustive des solutions existantes : http://sixrevisions.com/javascript/20-fresh-javascript-data-visualization-libraries/

Nous avons retenu les plus sympa :

HighChart : le problème est qu'il faut payer pour une utilisation non- commerciale

The JavaScript InfoVis Toolkit : une librairie ahurissante, permettant notamment de faire des mindmaps. Elle ne permet malheureusement pas de faire des graphiques simples

Moocharts : très jolie et interactive. Malheureusement en version bêta.

JqPlot : notre choix, cette librairie est avant tout complète et stable. Elle fonctionne de plus avec l'excellente librairie jQuery.

Page 26: Présentation  Projet IA

26

Visual Paradigm

WampServer

Apach

NetBeans

MySql

IV-Présentation des outils utilisés

Page 27: Présentation  Projet IA

27

VisualParadigm

Visual Paradigm pour UML est une alternative compétitive à Together de Borland et Rantional Rose d’IBM.

VP-UML est riche en fonctionnalités et c’est aussi l’outil de conception UML le plus facile à utiliser qui dispose d’excellentes possibilités d’interopérabilité avec d’autres applications. Son environnement de développement intelligent (SDE) est disponible dans de nombreuses versions, chacune étant conçue pour s’intégrer aisément à une IDE.

Page 28: Présentation  Projet IA

28

NetBeansNetBeans est un environnement de développement intégré (IDE) pour Java, placé en open source par Sun. En plus de Java, NetBeans permet également de supporter différents autres langages, comme Python, C, C++, XML, Ruby et HTML.

Il comprend toutes les caractéristiques d’un IDE moderne (éditeur en couleur, projet multi-langage, refactoring, éditeur graphique d’interface et de page web).

Conçue en Java, NetBeans est disponible sous Windows, Lunix, Solaris..

Page 29: Présentation  Projet IA

29

MySqlMySQL est un système de gestion de base de données (SGBD). Selon le type d'application, sa licence est libre ou propriétaire. Il fait partie des logiciels de gestion de base de données les plus utilisés au monde, autant par le grand public (applications web principalement) que par des professionnels, en concurrence avec Oracle et Microsoft SQL Server.

Page 30: Présentation  Projet IA

30

Pourquoi MySQL?Non seulement MySQL est la base de données open source la plus populaire au monde mais elle est aussi devenue le choix privilégié pour la nouvelle génération d'applications développées sur la pile LAMP (Linux, Apache, MySQL, PHP / Perl / Python.). MySQL fonctionne sur plus de 20 plateformes incluant Linux, Windows, Mac OS, Solaris, HP-UX, IBM AIX, vous offrant une grande flexibilité.

Page 31: Présentation  Projet IA

31

WampServer Les fonctionnalités de WampServer sont très complètes et très intuitives, nous

ne détaillerons donc pas ici leur utilisation.

A l’aide de Wamp Server on peut assez facilement :

gérer les services d’Apache et MySQL

passer en mode online/offline (accessible à tous ou limité à localhost) installer et changer de version d’Apache, MySQL et PHP

gérer les paramètres de configuration de nos serveurs

accéder à nos logs

accéder aux fichiers de configuration

Page 32: Présentation  Projet IA

32

Page 33: Présentation  Projet IA

33

ApacheApache HTTP Server, souvent appelé Apache, est un logiciel de serveur HTTP produit par l'Apache Software Foundation. C'est le serveur HTTP le plus populaire du Web. C'est un logiciel libre avec un type spécifique de licence, nommée licence Apache.

Apache est conçu pour prendre en charge de nombreux modules lui donnant des fonctionnalités supplémentaires : interprétation du langage Perl, PHP, Python et Ruby, serveur proxy, Common Gateway Interface, Server Side Includes, réécriture d'URL, négociation de contenu, protocoles de communication additionnels, etc. Néanmoins, il est à noter que l'existence de nombreux modules Apache complexifie la configuration du serveur web.

Page 34: Présentation  Projet IA

34

Les possibilités de configuration d'Apache sont une fonctionnalité phare. Le principe repose sur une hiérarchie de fichiers de configuration, qui peuvent être gérés indépendamment. Cette caractéristique est notamment utile aux hébergeurs qui peuvent ainsi servir les sites de plusieurs clients à l'aide d'un seul serveur HTTP.

Parmi les logiciels aidant la maintenance d'Apache, les fichiers de log peuvent s'analyser à l'aide de nombreux scripts et logiciels libres tels que AWStats, Webalizer ou W3Perl. Plusieurs interfaces graphiques facilitent la configuration du serveur.

Page 35: Présentation  Projet IA

35

V-Conclusion

Page 36: Présentation  Projet IA

36

Merci pour votre

attention