Chapitre 1
Transcription
Chapitre 1
Stage de fin de première année ETUDE ET ELABORATION D’UNE SOLUTION TPL DE RELEVE Réalisé par : BENNOUR El Mehdi Encadré par : M. ELYAHYAOUI 3.1. Java 1 page texte Java est à la fois un langage de programmation et une plateforme d'exécution [7]. Le langage Java a la particularité principale d'être portable, puisqu'il peut tourner sur n'importe quelle machine disposant d'un interpréteur Java. Cette portabilité est fondamentale sur Internet, 0.5 DH 4. Réalisation 1 page mixte Au lancement de l’application, l’utilisateur a le choix entre deux menus : New Project et Load Project. 1 DH 1 page image 2 DH 1 CD vierge 2 DH 1 pochette double 1 reliure (baguette + transparent + papier cartonné) 0.5 DH 6 DH Août 2005 Application TPL REMERCIEMENTS : Je tiens à remercier tous ceux qui ont participé à la réalisation de ce projet, pour les efforts qu’ils ont fournis dans le but de parfaire ma formation et d’enrichir mes connaissances. Je tiens à exprimer mes gratitudes à messieurs N.AGASSIM et EL YEHYAOUI pour leur confiance, leurs conseils et leur inestimable temps. Que messieurs les membres de jury trouvent ici l’expression de mes reconnaissances pour avoir accepté de juger mon travail. Enfin, merci à tous ceux qui ont contribué de près ou de loin à la réalisation de ce travail, à mes professeurs de première année et tout le cadre administratif de l’école. Stage de première année 1 Amendis Août 2005 Application TPL SOMMAIRE Introduction …………………………………………………………. 4 Chapitre 1 : L’organisme d’accueil ……………………………….. 5 1. Missions ……………………………………………………..... 6 2. Contrat ………………………………………………………... 6 3. Programmes d’investissements ……………………………….. 6 Chapitre 2 : Analyse et conception du projet …………………….. 8 I. Spécifications des besoins …………………………………………. 9 I.1. Le métier ……………………………………………………... 9 I.2. L’existant …………………………………………………….. 9 I.3. Le nouveau matériel …………………………………………. 10 I.4. Analyse et conception ………………………………………... 10 Chapitre 3 : Réalisation du projet ………………………………… 12 I. outil de développement ……………………………………………. 13 I.1. L’architecture .NET ………………………………………….. 13 I.2. Les émulateurs Pocket PC …………………………………… 14 II. La réalisation ……………………………………………………… 16 II.1. La structure de données utilisées ……………………………. 16 II.2. Les modules réalisés ………………………………………… 17 Conclusion …………………………………………………………... 22 Annexe ……………………………………………………………… 23 Bibliographie ………………………………………………………... 27 Stage de première année 2 Amendis Août 2005 Application TPL LISTE DES FIGURES Figure 1 : Base de données utilisée ………………………………………………... 10 Figure 2 : Emulateurs connecté à l’environnement .NET ...…………...................... 15 Figure 3 : La classe client (les attributs, les propriétés et les constructeurs) ……… 18 Figure 4 : La fenêtre de demande du fichier des données …………………………. 19 Figure 5 : Fenêtre de saisie d’index de consommation ……………………………. Stage de première année 3 20 Amendis Août 2005 Application TPL Introduction Les périphériques mobiles sont de plus en plus présent en entreprise et remplissent des rôles de plus en plus complexes. Simples agenda électroniques au départ, ceux-ci ont évolués tant en terme de systèmes d’exploitation qu’au niveau des capacité du matériel. Les machines d’aujourd’hui ont la capacité d’avoir des fonctionnalités puissantes et doivent s’intégrer au système d’information de l’entreprise. C’est dans ce cadre que se situe mon stage d’été d’une durée d’un mois (août) au sein du DSI-Amendis à Tétouan. En effet, on ma confié la mission d’étudier et d’élaborer une solution pour PDA qui assure la lecture des indexes de consommation d’eau et d’électricité. Le présent rapport est constitué de trois parties, la première partie est celle de la présentation de l’organisme d’accueil et du DSI. La seconde partie concerne la spécification des besoins, les contraintes et la conception de l’application. La troisième partie présente l’outil de développement C#.net et les modules réalisés de l’application. Stage de première année 4 Amendis Août 2005 Application TPL Partie 1 : L’organisme d’accueil Cette partie présente l’organisme d’accueil : son activité et ses services. Stage de première année 5 Amendis Août 2005 Application TPL Chapitre 1 : PRESENTATION D’ AMENDIS : 1. Missions : AMENDIS est une société privée qui a été crée le 26 février 2001 de l’alliance Veolia Water, Hydro Québec, ONA et SOMED. Elle a pour mission de gérer les services suivants : • Le captage, l’adduction et le traitement de l’eau potable issue des sources • La distribution d’eau potable • La distribution de l’énergie électrique • Le service de l’assainissement liquide 2. Contrat : Ces tâches ont été confiées à AMENDIS suite à un contrat de 25 ans qui a réuni l’Autorité Délégante et le Délégataire (voir Annexe). Les partis constituant ce dernier détiennent à la date de signature du contrat respectivement : 26% (VIVENDI), 25% (CGI), 18% (HQI), 16% (ONA) et 15% (SOMED). 3. Programmes d’investissements: Les objectifs principales à atteindre par AMENDIS à Tétouan ont été pré-établies comme suit : a- l’obtention des tarifs les plus bas possible de l’eau potable, de l’énergie électrique et du service d’assainissement liquide b- l’autofinancement et l’équilibre économique et financier de la gestion déléguée Stage de première année 6 Amendis Août 2005 Application TPL c- l’augmentation progressive du taux de desserte des usagers en eau potable et en énergie électrique et du raccordement au réseau d’assainissement sur l’ensemble du Périmètre de la délégation d- la qualité technique des services et leur bonne gestion administrative et commerciale e- la qualité technique et le maintien en bon état des équipements et ouvrages affectés aux services délégués f- la gestion harmonieuse des ressources humaines Il s’en suit les tâches suivantes à réaliser : Pour l’assainissement liquide : • l’amélioration du service et des installations d’assainissement liquide existantes • l’extension des réseaux d’assainissement aux zones ouvertes à l’urbanisation et à celles constituant les pôles de développement • la résorption de la pollution du milieu naturel et celle du littoral provenant des rejets des réseaux d’assainissement • La réutilisation des eaux usées épurées à diverses fins notamment en agriculture Pour l’eau potable : • assurer la régularité et la sécurité de l’alimentation • garantir la qualité bactériologique et physico-chimique conformément aux normes marocaines • faciliter le raccordement des foyers à revenu modeste Pour l’électricité : • l’amélioration de la qualité de fourniture (garantie de puissance, régularité de tension, réduction des coupures) • l’adaptation permanente des installations pour faire face à la demande Stage de première année 7 Amendis Août 2005 Application TPL Chapitre 2 : Analyse et conception du projet Cette partie spécifie les besoins, présente le métier, l’existant et la solution adoptée. Stage de première année 8 Amendis Août 2005 Application TPL I : spécifications des besoins. Pour avoir une bonne et efficace spécification des besoins, il faut comprendre le métier et le rôle des TPL dans l’automatisation et la gestion de la consommation. Les agents travaillaient déjà avec des appareils qui assurais la lecture et la relève des indexes sans problèmes. Dans la première période de mon stage l’encadrant ma demandé de lire et réécrire le code écrit en OPL (Open Programming Language) en un nouveau langage supporté par les PDA. Mais j’ai constaté qu’une telle démarche ne résous pas le problème surtout parce que je devais utiliser un langage orienté objet. 1. L’existant : La société travail avec des appareils du concepteur Symbian appelé PSION qui ont été programmé avec le langage OPL, qui à côté des problèmes des prix de ces appareils qui coûtais 7000 DH chacun et des disfonctionnements et arrêt total de quelque uns, il y avait des problèmes liées à la lenteur du transfert des données depuis et vers ces appareils. Ainsi la société a décidée de migrer vers de nouvelles technologies, celles des PDA. Nous disposions d’un échantillon de type HP (ipaq) pour faire les essayes (ce type de PDA coûte environ 2500 DH). 2. le métier : Chaque agence de la société est responsable de la consommation d’une localité bien déterminée. Chaque localité est aménagée par secteur, et chaque secteur est partitionné en des tournées et ces derniers par ordre. Ainsi chaque maison physique correspond a une clé multiple qui est la localité : le secteur : la tournée : l’ordre. Après (resp. avant) la relève des indexes, le TPL génère (resp. reçoivent) un fichier texte qui en utilisant une interface (que j’ai pas vue le code) est transformé en une base de données Access, cette dernière contient plusieurs champs nécessaire pour la relèves : Stage de première année 9 Amendis Août 2005 Application TPL La localité, le secteur, la tournée, l’ordre, le compteur, la police, index1, index2, la date, les codes d’anomalies. Figure 1 : Base de données utilisée Après la procédure de la relève des indexes commence la procédure de finalisation des indexes. En effet les TPL permettent de joindre des commentaires et des codes d’anomalies pour détecter les disfonctionnements : des compteurs dont la consommation est très forte ou bien illisibles ou qui ne fonctionnent pas…autant de cas qui nécessitent une intervention humaine pour valider ces nouveaux indexes ou bien demander la relecture. 3. le nouveau matériel : Les PDA (Personal Digital Assistant, littéralement assistants numériques personnels, aussi appelés organiseurs) sont des ordinateurs de poche composés d'un processeur, de mémoire vive, d'un écran tactile et de fonctionnalités réseau dans un boîtier compact extrêmement petit. Les PDA possèdent des systèmes d'exploitation dont la définition est adaptée à la résolution d'affichage de l'écran et dont les fonctionnalités correspondent aux caractéristiques de ce type d'appareil. On distingues deux types principaux : les Palm OS, et les Pocket PC ou Windows Mobile. Seuls les langages comme Java et C#.net peuvent développés des applications supportées par ce type d’appareils. 4. les besoins et la conception : Nous avons besoins d’une application qui d’abord charge à partir d’un fichier texte (*.txt) l’ensemble des informations nécessaires pour faire la relèves, à savoir : Stage de première année 10 Amendis Août 2005 Application TPL • La catégorie (eau ou électricité), la localité, le secteur, la tournée et l’ordre : nécessaires pour la recherche des maisons. • Le compteur : numéro du compteur pour s’assurer que c’est bien le compteur correct et détecter d’éventuels changements de compteur ou fraude. • La police : la police du contrat singer entre le client et la société relative au compteur spécifié en haut. • L’index 1 : la consommation du mois précédent (non vue par l’utilisateur) pour corriger une éventuelle saisie (mois courant) inférieure ou égale à cette dernières. • L’index 2 : la consommation du mois courant qui est égale par défaut à la consommation du mois précédent ou celle déjà relevée s’il y a demande de relecture. • Date et Heure: date de la dernière relève. • Ordre : l’ordre réel de la lecture des indexes. • Code d’anomalie : des caractères dont chacun a une signification déterminée. L’utilisateur doit être capable de faire la relève en visualisant la tournée, le compteur, la police et l’état (code d’anomalie). De chercher un client à partir du numéro du compteur ou de la police. Visualiser les clients dont on a demandé la relecture. Et enfin pouvoir ajouter un client qui n’existe pas dans la base de données. Enfin générer un fichier texte (.txt) qui contient les informations précédentes. Suite à la demande de l’encadrant j’ai dû garder l’ancienne conception, tant sur l’utilisation des fichiers textes comme flux de données et tant en gardant les mêmes fonctionnalités de gestion de la relève. Exemple d’une ligne d’un fichier d’entrer : 01A059002009002786453138314 0006390006470000000000000081 01A059002009 : tournée 002786453 : compteur 138314 : police Stage de première année 11 Amendis Août 2005 Application TPL 000639 : index 1 (ancien index) 000647 : index2 (nouvel index) 000000 : date 000000 : heure 0081 : ordre Stage de première année 12 Amendis Août 2005 Application TPL Chapitre 3 : réalisation du projet Cette partie comprend deux points : Le premier chapitre introduit l’outil de développement. Le deuxième chapitre présente les modules réalisés de l’application. Chapitre 1 : outil de développement Stage de première année 13 Amendis Août 2005 Application TPL Vu que les PDA qui marchent sous Pocket PC ne supportent que des outils de développement relativement récentes et performants comme le Java et le C#.Net, langages que je n’ai pas encore découverts avant mon stage, c’était donc un défi d’apprendre ces langages et programmer avec une telle application. J’ai choisi le langage C#.net vue sa ressemblance avec le langage C et vue la présence d’un éditeur performant qui facilite la programmation qui n’est que le Visuel Studio .Net 2002. 1. l’architecture .NET : A travers les différentes annonces de Microsoft depuis son lancement, les composants de .NET semblent s’organiser de la manière suivante : • C#, un nouveau langage orienté objet destiné à faciliter la programmation dans .NET, notamment les composants, qui intègrent des éléments de C, C++ et Java en apportant quelques innovations comme les méta-données. • Un environnement d'exécution commun (Common Language Runtime - CLR) qui exécute un byte code écrit dans un langage intermédiaire (Microsoft Intermediate Language - MSIL ou IL). Du code et des objets écrits dans un langage quelconque peuvent être compilés en IL et exécutés par le CLR. • Une grande bibliothèque de composants et d'objets de base accessibles par le CLR, qui fournissent les fondations pour écrire rapidement un programme (accès réseau, graphisme, accès aux bases de données). • ASP.NET, une nouvelle version d'ASP (Active Server Pages) qui supporte une véritable compilation en IL, alors qu'ASP était interprété auparavant. On peut également écrire les pages ASP dans n'importe quel langage disposant d'un compilateur IL. • Visual Studio.NET, une refonte de l'environnement Visual Studio et de Visual InterDev permettant aussi bien le développement d'applications et de composants classiques que Web. Stage de première année 14 Amendis Août 2005 Application TPL • WinForms et WebForms, un ensemble de composants graphiques accessibles dans Visual Studio.NET. • ADO.NET, une nouvelle génération de composants d'accès aux bases de données ADO qui utilise XML et SOAP pour l'échange de données. • Un support des terminaux mobiles avec une version compacte de l'environnement .NET. C’est ce dernier point qui nous intéressent puisque l’environnement .NET offre Le Compact Framework .Net qui est un Framework .Net allégé qui pèse moins de 2Mo afin d’être adapté aux périphériques mobiles. Ainsi les développeurs d’application Windows peuvent passer aisément au développement d’application Smart Device. 2. Les Emulateurs Pocket PC : Les émulateurs Pocket PC sont une sorte de petits logiciels qui simulent le fonctionnement et offrent un environnement semblable à celui des Pocket PC. Ainsi permettent de visualiser directement les résultats du développement au fur et à mesure. Ainsi, l’émulateur est lié à l’environnement de développement et permet un affichage instantané des résultats. Stage de première année 15 Amendis Août 2005 Application TPL Figure 2 : Emulateur connecté à l’environnement .NET Stage de première année 16 Amendis Août 2005 Application TPL Chapitre 2 : La réalisation Jusqu’au moment de la rédaction de ce rapport, je n’ai pas terminé mon application faute de temps et de soutiens de la part de mon encadrant. A titre d’exemple, la même application à été réalisée pour LYDEC par des étudiants de l’ENSIAS dans le cadre d’un PFE d’une durée de 4 mois. Ainsi j’ai décidé de réaliser chaque module à part et je suis jusqu’aujourd’hui en train de terminer mon application car je la trouve intéressante de part son utilité réelle pour l’entreprise et d’autre pour enrichir mon expérience avec l’environnement .Net. 1. Structure de données utilisées : Pour réaliser le premier module, celui du chargement des données à partir du fichier texte vers le Pocket PC, j’ai utilisé une classe Client qui contient les données relatives à chaque client. Ainsi la classe Client est déclarée comme suit : Stage de première année 17 Amendis Août 2005 Application TPL Figure 3 : La classe client (les attributs, les propriétés et les constructeurs) 2. Les modules réalisés : • Module du chargement des données : Une première fenêtre vous appelle à entrer le chemin du fichier texte. Stage de première année 18 Amendis Août 2005 Application TPL Figure 4 : La fenêtre de demande du fichier des données Ainsi les données sont stockées dans des objets de types Client qui contiennent toutes les informations relatives au client. Les clients sont stockés dans un tableau de type ‘Array List’ pour pouvoir ajouter les clients sans fixer une taille pour le tableau. Après cette phase commence la phase des relèves des indexes. Stage de première année 19 Amendis Août 2005 Application TPL Figure 5 : Fenêtre de saisie d’index de consommation Ainsi l’utilisateur peut se déplacer entre les clients et relever les indexes et définir l’état de la consommation (normal, forte, compteur défectueux….). Les données saisies sont ainsi stockées dans leurs objets relatifs et récupérés plus tard lors de la création du fichier texte, résultat de la relève. Stage de première année 20 Amendis Août 2005 Application TPL Problèmes rencontrés : Durant ce mois de stage, j’ai rencontré quelques problèmes : • Le départ en vacances durant le mois d’août de mon encadrant, ce qui m’a forcé à commencer mon stage fin juillet pour connaître le sujet du stage et puis je ne disposais pas des informations nécessaires pour terminer à cause du départ en congé (août) de mon encadrant et j’ai dû encore revenir début septembre pour terminer mon application. • Je n’ai pas eu suffisamment d’informations pour terminer mon application, dû l’absence de mon encadrant, le manque de temps et la complexité de la conception. Amélioration de l’application : • Réaliser un module qui permet la génération et l’impression des quittances et cela instantanément par réseau sans fil vers une imprimante portable. Stage de première année 21 Amendis Août 2005 Application TPL Conclusion Ce stage ma permis de découvrir le vrai travail de l’ingénieur, celui de l’analyse, de la gestion du temps, de la conception et de la prise de décision, la hiérarchie des entreprises et de la vie professionnelle qui est très différente de celle estudiantine. Ce stage été aussi l’occasion d’appliquer mes connaissances scientifiques et informatiques acquises à l’école en matière de structure de données et de gestion de fichiers…pour découvrir un nouveau langage de programmation performant et riche en fonctionnalité. Malgré les problèmes rencontrés durant mon stage et même si je n’ai pas pu terminer l’application qu’on ma confié, j’ai atteint les objectifs d’un stage de découverte de première année, à savoir le contact avec le monde du travail et découvrir les clés de la réussite qui sont le sens de la responsabilité, l’esprit d’équipe et d’initiative. Stage de première année 22 Amendis Août 2005 Application TPL Annexe TPL : terminal portable de lecture. PDA : assistant personnel numérique. Contractants Entre La Commune Urbaine de Tétouan, les Municipalités de Martil, Mdiq, F’nidaq et Oued Laou et les Communes rurales de Azla, Mallalienne, Sadina, Hamra, Zaitoune, Zaouiat SIDI Kacem, Allyene, Tassift et Tagramt, ensembles représentées respectivement par les présidents de leurs conseils qui agissent en vertu des délibérations des Conseils de la Communauté urbaine et des Communes précitées. d’une part et La Société des Eaux et de l’Electricité du Nord, Société anonyme de droit privé Marocain au capital de huit cent millions de dirhams (800 MDH), inscrite au registre de commerce de Casablanca sous le n°110 379 ayant son siège social 23, rue Carnot, Tanger et ayant pour objet la distribution d’eau et d’électricité et l’exploitation de l’assainissement liquide, représenté par son Directeur Général Monsieur Olivier DIETSCH, ayant pour actionnaires : (1) La société Vivendi Universal, société anonyme de droit français, inscrite au registre de commerce et des sociétés de Paris, sous le n°343 134 763, ayant son siège social au 42, avenue de FriedLand, 75008 Paris et la société Compagnie Stage de première année 23 Amendis Août 2005 Application TPL Générale des Eaux, société en commandite par actions de droits français, inscrite au registre du commerce et des sociétés de Paris, sous le n°B 572 025 526, ayant son siège social au 52, rue d’Anjou, 75008 Paris. (2) la société Hydro Québec International Inc, société de droit québécois instituée en vertu de la loi L.R.Q. chapitre 55, ayant son siège social au 75, boulevard RenéLévesque Ouest, Montréal (Québec) – Canada (3) la société ONA, société de droit marocain inscrite au registre de commerce de Casablanca, sous le n°479 dont le siège est situé 60, rue d’Alger à Casablanca – Maroc (4) la Société Maroc Emirats Arabes Unis de Développement (SOMED), société de droit marocain inscrite au registre de commerce de Casablanca, sous le n°96 595, ayant son siège social au 81, boulevard de l’Armée Royale, Casablanca 01Maroc. D’autre part. Introduction à .NET .NET (prononcez «Dotnet») est un standard proposé par la société Microsoft, pour le développement d'applications d'entreprises multi niveaux, basées sur des composants. Microsoft .NET constitue ainsi la réponse de Microsoft à la plate-forme J2EE de Sun. La plate-forme .NET a été élaborée en s'appuyant sur une communauté d'utilisateurs et a abouti à l'élaboration de spécifications. Ces spécifications ont été ratifiées par un organisme international de standardisation, l'ECMA (European Computer Manufacturers Association), ce qui en fait un standard. Ainsi l'effort de standardisation a permis l'émergence de platesformes portées par des entreprises tierces et disponibles sous un grand nombre de systèmes d'exploitation. On parle généralement de «Framework» (traduisez «socle») pour désigner l'ensemble constitué des services (API) offerts et de l'infrastructure d'exécution. Le framework .NET comprend notamment : • L'environnement d'exécution: o un moteur d'exécution, appelé CLR (Common Language Runtime), permettant de compiler le code source de l'application en un langage intermédiaire, baptisé Stage de première année 24 Amendis Août 2005 • Application TPL MSIL (Microsoft Intermediate Language) et agissant telle la machine virtuelle Java. Lors de la première exécution de l'application, le code MSIL est à son tour compilé à la volée en code spécifique au système grâce à un compilateur JIT (Just In Time). o un environnement d'exécution d'applications et de services web, appelé ASP .NET ; o un environnement d'exécution d'applications lourdes, appelé WinForms. Des services, sous forme d'un ensemble hiérarchisé de classes appelé Framework Class Library (FCL). La FCL est ainsi une librairie orientée objet, fournissant des fonctionnalités pour les principaux besoins actuels des développeurs. Le SDK (Software Development Kit) fournit une implémentation de ces classes. Les langages Grâce au CLR, la plate-forme .NET est indépendante de tout langage de programmation et supporte nativement un grand nombre de langages de programmation, parmi lesquels : • • • • • • • • • Ada, APL, C#, C++, Cobol, Eiffel, Fortran, Haskell, ML, Stage de première année 25 Amendis Août 2005 • • • • • • • • • • • • Application TPL J#, Jscript, Mercury, Oberon, Objective Caml, Oz, Pascal, Perl, Python, Scheme, SmallTalk, Visual Basic Le langage C# La langage C# a été développé spécifiquement pour la plate-forme .NET. Il s'agit d'un langage orienté objet, dérivé de C++. Il en reprend les majeures caractéristiques, tout en simplifiant son utilisation. Visual Studio .NET Visual Studio .NET ne fait pas partie du framework .NET. Il s'agit tout simplement d'un environnement de développement intégré proposé par Microsoft pour développer des applications conformes aux spécifications de .NET. Stage de première année 26 Amendis Août 2005 Application TPL Bibliographie Références : • Programmer Microsoft Windows avec C#, Charles Petzold 2002. • Apprentissage du langage C#, Serge Tahé (mai 2002). Sites Web : • www.labo-dotnet.com • www.developpez.com • www.microsoft.com Stage de première année 27 Amendis