• Aucun résultat trouvé

Conception et Réalisation d’une Plateforme Web de Gestion D’administration TIC

N/A
N/A
Protected

Academic year: 2021

Partager "Conception et Réalisation d’une Plateforme Web de Gestion D’administration TIC"

Copied!
83
0
0

Texte intégral

(1)

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieure et de la Recherche Scientifique

Université Ahmed Draia - Adrar

Faculté des Sciences et de la Technologie

Département des Mathématiques et Informatique

Mémoire de fin d’étude, en vue de l’obtention du diplôme de Master

en informatique

Option : Systèmes d'Information et Technologie De Web

Thème

Conception et Réalisation d’une Plateforme Web de Gestion

D’administration TIC

Etude de cas

DWPTIC TAMANRASSET

Préparés par

Mustapha Benali Et Tahar Biga

Membres du Jury:

- M

r

Benatiallah Djelloule (Président)

- M

r

Mohammed Demri (Encadreur)

- M

r

Kaddi Mohammed

(Examinateur 1)

- M

r

Mamouni Mamoune (Examinateur 2)

(2)

Remerciement

Remerciement

Nous tenons tout d’abord à remercier Dieu le tout puissant et

miséricordieux, qui nous a donné la force et la patience d’accomplir ce

Modeste travail.

En second lieu, nous tenons à remercier notre encadreur Mr : Demri

Mohammed (professeur à l’université Adrar, notre encadreur de

projet),

, son précieux conseil et son aide durant toute la période du

travail.

Nos vifs remerciements vont également aux membres du jury pour

l’intérêt qu’ils ont porté à notre recherche en acceptant d’examiner

rnotre travail Et de l’enrichir par leurs propositions.

Enfin, nous tenons également à remercier toutes les personnes qui ont

participé de près ou de loin à la réalisation de ce travail.

• Tous les personnels de la DWPTIC Tamanrasset.

· responsable du Master 2 informatique. A tout le corps

professoral du master. Au corps administratif du Master en

particulier Monsieur Mejdoub

A tous ceux dont les noms n’ont pu être cités, nous exprimons notre

profonde gratitude pour

Le soutien dont ils nous ont gratifiés durant ce stage. A toutes et à

tous, merci.

(3)

Dédicace

Dédicace

A l'aide de DIEU tout puissant, qui trace le chemin de ma vie, j'ai pu

arriver à réaliser ce modeste travail que je dédie:

A la mémoire A ma mère très chère; A ma petite famille, madame fils

Toufik et tous ma famille sans exception ;

Et à tous ceux qui m’aiment et qui me cannaient de proche ou de loin.

Et je né oublier pas mon chère ami et mon collège dans ce travail

Monsieur « Biga tahar »

Ben Ali Mustapha

(4)

DEDICACES

Affable, honorable, aimable : Tu représentes pour moi le symbole de la

bonté par excellence, la source de tendresse et l’exemple du

dévouement qui n’a pas cessé de m’encourager et de prier pour moi.

Ta prière et ta bénédiction m’ont été d’un grand secours pour mener à

bien mes études.

Aucune dédicace ne saurait être assez éloquente pour exprimer ce que

tu mérites pour tous les sacrifices que tu n’as cessé de me donner

depuis ma naissance, durant mon enfance et même à l’âge adulte.

Tu as fait plus qu’une mère puisse faire pour que ses enfants suivent

le bon chemin dans leur vie et leurs études.

Je vous dédie ma mère ce travail en témoignage de mon profond

Amour.

Je ne connue pas comment exprimer l’amour, l’estime, le

dévouement et le respect que j’ai toujours eu pour vous.

Rien au monde ne vaut les efforts fournis jour et nuit pour mon

éducation et mon bien être.

Ce travail est le fruit de tes sacrifices que tu as consentis pour mon

éducation et ma formation, à l'esprit de mon père qu’est Faites défiler

à la miséricorde de Dieu je dédie ce Modeste travail.

Et je né oublier pas mon chère ami et mon collège dans ce travail

Monsieur « Mostapha ben Ali »

Et en fin à toutes les personnes qui aime le savoir et la science

Biga tahar

(5)

Année académique 2016-2017 1

Remerciement ... I

Dédicace ... II

Liste de abréviations ...

5

Introduction général ...

6

Chapitre I : Présentation de la structure d’accueil et contexte du projet . 7

I .1 Introduction ... 7

I .2 L’entreprise d’accueil ... 7

I.2-1 Historique et présentation. ...7

I.2-2Missions de la direction de wilaya ...7

I.2-3 Organigramme d’une Direction de Wilaya (DWPTIC) ...9

I .3- Présentation cotexte du projet ... 10

I.3-1 Problématique ...10

I.3-3 Objectifs de l’étude ...10

I.3-4 Cahier de charges ...10

I.3-5 Contraintes ...12

I .4 Gestion du projet ... 12

I.4-1 Processus de développement du projet ...13

I.4-2 Démarche de travail ...13

I-5 Conclusion ... 13

Chapitre II : Méthodologies et les outils technologiques de

programmation web ... 15

II .1. Introduction ... 15

II .2. Introduction au World Wide Web ... 15

II .2.1 Qu'est-ce qu'un site web ? ...15

II .2.2 Qu'est-ce qu’une page statiques ...15

II .2.3 Qu'est-ce qu'une page dynamique ...16

II .2.4 Le fonctionnement des pages dynamiques ...16

(6)

Année académique 2016-2017 2

II .4- Programmation web orienté objet sélectionné ... 17

II .4-1 Notion de Programmation Objet...17

II .4-2 Qu'est-ce qu'une classe plus précise ? ...18

II .4.3 Qu'est-ce qu'un objet ? ...18

II .4.4 Les caractéristiques d’un Framework doivent être : ...18

II .5 Le développement d'applications web: ... 18

II .6. les Langages web et Framework ... 19

II .7 le choix des Langages de programmation ... 22

II .8 Architecture de développement ... 22

II .8-1 Architecture MVC ...22

II .8-2 Architecture model ASP.NET WebForms ...23

II .9 Bilan ... 24

II .10 Les avantages de MVC par rapport à WebForms: ... 24

II .11 Méthode d'accès à la base de données utilisée : ... 24

II .11-1 Introduction...24

II .11-2 Interface d'accès à une base de données depuis PHP ...24

II .11-3 Méthode PDO utilisée ...26

II-12 .Conclusion ... 27

Chapitre III: Analyse et Etude conceptuelle fonctionnelle ... 28

III .1 Introduction ... 28

III .2 Etude de l’existant ... 28

III .2-1 Existantes organisations administratives et humaines ...28

III .2-2 Données administrative disponibles...28

III 2-3. Existant réseautique ...28

III. 2-4 Existants matériels et logiciels ...28

III .2-5 Critiques de l’existant ...28

III .3 Architecture du système ... 28

III. 3.1 Présentation de l'architecture à 2 niveaux ...29

III. 3.2 Présentation de l'architecture à 3 niveaux ...29

III. 3.3 Architecture adoptée ...30

(7)

Année académique 2016-2017 3

III .4 Pourquoi vouloir modéliser? ... 31

III .5 Choix du modèle conceptuelle ... 31

III .5.1 Le modèle Merise ...32

III .5.2. Le modèle UML (Unified modeling language ...33

III .5.3. Conclusion ...33

III .6. Présentation d’UML sélectionnée ... 34

III .7. Etude fonctionnelle ... 34

III. 7.1 Identification des différents acteurs ...34

III. 7.2 Identification de cas d’utilisation ...34

III. 7.3 Identification des besoins ...35

III. 7.4 Diagramme de cas d’utilisation ...35

III. 7.5 Description des cas d’utilisation ...37

III .8 Diagramme des classes... 40

III. 8.1. Cette étude aboutit au diagramme de classes des cas d'utilisations suivant ...41

III.8.2. Description des classes cas d'utilisations ...42

III. 8.3 Cette étude aboutit au diagramme de classes objets d'application suivant : ...43

III.8.4. Description des classes d'applications ...44

III. 9 Conclusion ... 45

Chapitre IV : Implémentation et Réalisation... 47

IV .1 Introduction ... 47

IV .2. les outils technologiques utilisés ... 47

IV .2-1 . Architecture générale de l'application (architectural pattern) ...47

IV .2-2. Architectures de l’application ...47

IV .2-3. Environnement de développement ...47

IV .3 présentation des outils de développement ... 47

IV .3.1 Présentation d'architecture MVC2 ...47

IV .3.2 Présentation de model client-serveur ...48

IV.3.3 présentation l'environnement logiciel ...48

IV .4 Installation et configuration des outils utilisés ... 53

IV .4.1 Installation d'un logiciel de virtualisation ...53

(8)

Année académique 2016-2017 4

IV .4.3 Création d'une machine virtuelle ...53

IV .4.4 Installation d'un système d’exploitation sur la machine virtuelle 53

IV .4-6 Installation Ubuntu Server ... 55

IV .4.8 Installation éditeur KompoZer ...58

IV .5. Sécurisation de notre système ... 58

IV .5.1. Introduction...58

IV .5.2. Sécurisation d’Ubuntu ...59

5.3.2 Création et sécurisation d'un répertoire de travail ...60

IV .6 les étapes de réalisation ...60

IV .6-1 Construction de la base de données ...60

IV .6-2 Définition des classes ...61

IV .6.3. Construction des pages ...61

IV .6.4 Structuration de l'application ...62

IV.6-4-1- Dossier et les fichiers structuration d’application ...62

IV .7. Interfaces de l'application ... 63

IV .8. Test d'application ... 65

IV .7 Conclusion ... 65

Perspective…...………..66

Conclusion générale..………67

Liste références bibliographiques ... 68

Annexes A : liste des tableaux base des données postale ... 69

Annexe B : Tableaux bases de données télécom ... 70

Liste des Figures ... 71

Liste des Tableaux :... 72

(9)

Année académique 2016-2017 5

Liste des abréviations

ASP : application service providing BDD : Base De Données

CGI : Common Gateway Interface CSS : Cascading Style Sheets

DWPTIC : Direction de la poste et technologies de l'information et communication GNU GPL: GNU Not UNIX

HTML: Hyper Text Markup Language Http: Hyper Text Transfer Protocol IDE: Integrate Development Environment IDS: Intrusion Detection System

IHM: Interface homme machine IP : Internet Protocol

IE : Internet Explorer JSF : Java Server Faces JSP : Java Server Pages (JSP) LATEX: Lamport TeX LS : Ligne Spécialisée

LAMP: Linux/Apache2/MySQL/ PHP Mac: Macintosh

MVC: Model View Controller

MPTIC: Ministère de la Poste et des Technologies de l’Information et de la communication

ORM: Mapping de relation objet OMG: Object Management Group

OGC: Office of Government Commerce PDO: PHP Data Object

Php : Hypertext Preprocessor

SGBD-R : Système gestion base de données relationnel SI : Système d’Information

SQL : Structured Query Language UML: Unified modeling language URL: Uniform Resource Locator Www: World Wide Web

WYSIWYG: What You See Is What You Get XHTML : Extensible HyperText Markup Language XML: extensible Markup Language

(10)

Année académique 2016-2017 6

Introduction général

Les technologies de l’information et de la communication font partie intégrante de notre quotidien. En effet, le monde est de plus en plus connecté, que ce soit par les ordinateurs de bureau, ordinateurs portables ou encore des Smartphones ou tablettes. L’avènement de ces dispositifs qui ont la particularité d’être simples d’utilisation et pratiques à transporter les informations et les données, ont favorisé l’évolution du développement des applications informatiques vers les technologies orientées Web. De plus, celles-ci trouvent également une large application dans le monde de l’administration où il faut pouvoir développer, déployer et maintenir rapidement des outils informatiques sur un nombre important de postes utilisateurs sur différentes plateformes.

(11)
(12)

Année académique 2016-2017 7

Chapitre I : Présentation de la structure d’accueil et contexte du projet

I .1 Introduction

Lorsque l’on souhaite créer une application web, la première des choses est de définir notre projet. La perception d’un projet est essentielle pour sa réussite. Pour évité mauvais cadrage ou d’une mauvaise définition du projet. Il est donc important de définir la dimension d’un projet avant son lancement.

Pour une démarche visant à structurer, assurer et optimiser le bon déroulement d’un projet, l’objectif étant d’obtenir un résultat de qualité pour le moindre coût et dans le meilleur délai possible.

I .2 L’entreprise d’accueil

I.2-1 Historique et présentation.

Depuis l’année 2000, le secteur de la poste et des télécommunications a fait l'objet d'une réforme en profondeur caractérisée par l'adoption de la loi n°03/2000 du 05 Août 2000 fixant les règles générales relatives à la poste et aux télécommunications.

Parallèlement à la reforme du cadre législatif et réglementaire, la restructuration du secteur s'est traduite par la création de l'Autorité de régulation de la poste et des télécommunications, d'Algérie Poste et d'Algérie Telecom avec ses filiales.

Cette Loi a permis un transfert des activités de la Poste et des Télécommunications exercées précédemment par le Ministère des PTT à des opérateurs publiques et privés. Et sur le même sillage la création des Directions de Wilayas a vu le jour par le décret exécutif N° 03-233 correspondant au 24 juin 2003.

La restructuration du Secteur des Postes et Télécommunications intervenue en l’An 2000 en vertu de la Loi n° 2000-03 du 05 Août 2000 a donné naissance aux deux entités actuelles à savoir :

L’Entreprise Publique à caractère Industriel et Commercial de la Poste (EPIC POSTE) dénommée EPIC ALGERIE POSTE.

La Société Par Actions des Télécommunications dénommée ALGERIE TELECOM SPA. Ces dernières jouissant de leur propre statut et réglementées par des textes spécifiques, élaborent et mettent en œuvre une politique de gestion et de développement autonome. • La loi N°: 03/2000 du 05 aout 2000 fixant les règles générales relatives à la poste et aux télécommunications.

• Décret exécutif N°: 02/43 du 14 Janvier 2002 portant la création d'Algérie poste.

• Décret exécutif N°: 03-233 du 24 juin 2003 portant la création de la DWPTIC et fixant son organisation.

• Décret exécutif : N° 12-15 du 09 janvier 2012 modifiant et complétant le décret exécutif N° 03-233 du 24 juin 2003.

I.2-2Missions de la direction de wilaya

La direction de wilaya étant un service déconcentré du département ministériel, à ce titre, elle exerce les missions de puissance publique au niveau local et a pour mission : • de veiller à l'application de la législation et de la réglementation relatives à la poste, aux télécommunications et aux technologies de l’information et de la communication;

(13)

Année académique 2016-2017 8 • de s'assurer du fonctionnement normal des réseaux de la poste et des télécommunications, de veiller aux conditions de leur permanence, de continuité et de sécurité ainsi qu'au respect des normes édictées en la matière;

• de veiller à la fourniture du service universel de la poste, des télécommunications et des technologies de l’information et de la communication conformément aux prescriptions légales et réglementaires;

• de veiller au bon accomplissement du service public et de coordonner avec les autres secteurs l'utilisation des technologies de l’information et de la communication ainsi que le développement de l’administration électronique et des services en ligne;

• d'effectuer par ses agents légalement habilités le contrôle et l'inspection conformément aux lois et règlements en vigueur en la matière;

• d’identifier les localités non ou peu desservies par les réseaux de la poste et des télécommunications et de donner un avis sur les programmes de construction et d’acquisition de nouveaux bureaux de poste et de nouvelles structures de télécommunications aux fins d’une meilleure couverture du territoire de la wilaya; • d’entreprendre des études de la marché dans le cadre du développement des réseaux de la poste, des télécommunications et des technologies de l’information et de la communication;

• de participer à l'élaboration avec les opérateurs publics des plans et études et de mettre en œuvre les programmes de développement inscrits en concours définitifs ou au fonds d’appropriation des usages et du développement des technologies de l’information et de la communication et d'en évaluer les résultats;

• de veiller régulièrement à l'accomplissement, par les opérateurs du secteur, d'exercices de simulation du déploiement du plan ORSEC et de mettre en ouvre des plans d'urgence et de sécurité adaptés aux risques majeurs;

• d'organiser des programmes d'utilisation des réseaux dans le cadre des actions de défense nationale et de sécurité publique;

• de coordonner, avec les autorités compétentes, l'utilisation des réseaux de télécommunication et de l’information et de la communication aux fins de défense nationale;

• de recueillir et d'analyser les données statistiques sur la poste et les technologies de l'information et de la communication notamment auprès des services extérieurs des autres secteurs, des opérateurs de la poste et des télécommunications, des fournisseurs de services Internet et des opérateurs de services faisant appel à des techniques audiovisuelles;

• d'identifier et de proposer toute initiative et mesure concourant à la réduction de la fracture numérique et à la promotion et la généralisation des espaces d'accès aux technologies de l’information et de la communication;

• de contribuer à la promotion de l’industrie des télécommunications et des technologies de l’information et de la communication et d’accompagner localement les investisseurs et porteurs de projets en la matière;

• de traité, en coordination avec les responsables locaux des opérateurs, les doléances qui lui sont adressées.

(14)

Année académique 2016-2017 9 I.2-3 Organigramme d’une Direction de Wilaya (DWPTIC)

Figure I.1: Organigramme d’une Direction de Wilaya

DWPTIC

Secrétariat

Cellule

Secrétariat

Services de l’Administration et des Moyens Services de la Poste et des Services Services des Technologies de l’Information et de la Bureau de la Gestion des Ressour ces Humain e et du Budget Bureau des Moyens Bureau Exploita tion et dévelop pement de la Poste Bureau des Services Financie rs Postaux Bureau Exploita tion et dévelop pement des Télécom s Bureau études, des statistiq ues et de des services Informa tique

(15)

Année académique 2016-2017 10

I .3- Présentation cotexte du projet

I.3-1 Problématique

Les problèmes rencontrés notre secteur TIC au niveau locale, situent à plusieurs niveaux. sont résument à la non coordination administratif entre la direction per DWPTIC et les deux directions postal et télécom de côté la gestion et changement des données et les statistiques concernant les information sectoriel ,la misa jour fréquent de des données sectoriel entre l’Etat et les entreprises liée au secteur , de recueillir et d'analyser les données statistiques sur la poste et les technologies de l'information et de la communication notamment auprès des services secteurs, des opérateurs de la poste et des télécommunications, des fournisseurs de services Internet et des opérateurs de services faisant appel à des techniques le manque de coordination de traité et analyser les données, en coordination avec les responsables locaux des opérateurs publique.

Notre étude sera apporter à la approche d’intégration de ces données sectoriel à travers l’utilisation des Systèmes d’Information web. Intégrée une base de données sectoriel pour faciliter la gestion administratif et changement, mise a jour, et statistique des données et les informations.

I.3-3 Objectifs de l’étude a- Objectif principal

L’objectif principal poursuivi par cette étude est de réaliser une application web axée sur la gestion de l'intégration et l'interactivité des données entre trois établissements de manier E-administrative rapide et a fin de cette travail en peut faire une simulation sur les outils utilisés de coté de compatibilité entre aux.

b- Objectifs spécifiques

En termes d’objectifs spécifiques, il s’agira de : - concevoir une base de données partageable - d’intégrer les données entre trois établissements - permettre la communication en temps réels - évaluer les données dynamiques et interactives

- gain le temps de traitement de documents administratives - rapidité de traitement de données.

- présentation différents de services de secteur - Simulation des outils des développements I.3-4 Cahier de charges

Pour réaliser ce projet, un cahier des spécifications techniques et fonctionnelles a été fourni par les différents services de notre établissement d’accueil. Ce document constitue une synthèse de l’audit technique et décrit toutes les prestations attendues dans le cadre du projet de refonte de l’application. Il présente les besoins fonctionnels ainsi que l’ensemble des règles techniques à respecter lors de la réalisation.

Celui-ci contient deux parties

-

Un cahier de charges fonctionnel qui reprend tous les besoins exprimés ainsi que toutes les futures fonctionnalités.

(16)

Année académique 2016-2017 11 a- Cahier de charges fonctionnel

Ce tableau présente les besoins et les fonctionnalités qui répondent à ces besoins.

Besoins Fonctionnalités

La possibilité d'voir une espace de

communication entre le corps administratif et les trois directions

Créer une page d’accueil regroupé les trois directions

Faire l’implémentation des services concernés sur lequel sont marqués les évènements

La possibilité d'avoir une espace qui présente les ressources et les métas donnés de chaque établissement

Créer des pages qui présentent chaque direction.

Avoir une espace qui présente les services partageables entre les trois directions

Créer des pages qui présentent des services partageables à chaque direction

Avoir une espace qui présente le corps administratif pour direction père

Créer une page détaillant le corps administratif pour DWPTIC la possibilité de faire Mise à jour des

informations Et les interactions cible la base de données pour chaque établissements, Avoir une couche administration de

données, consultation de données, visualiser les données, validation de mise à jour et différent opérations…..

- Création de la base de données pour chaque administration,

- Créer des formulaires interfaces de saisi des données pour chaque administration - Donner la permission pour les

responsables pour qu’ils auront accès à aux informations

- Donner la possibilité de voir et télécharger les états de données à imprimer

- Créer des pages interactives différent opérations avec la base de données- -créer une couche agent administrateurs de

données, consultation, visualiser, misé à jour des informations, validation de misé à jour de données pour chaque administration

- créer une couche agent visiteur de consultation de données publique

(17)

Année académique 2016-2017 12 b- Plan du projet

Figure I.2: Plan du projet

I.3-5 Contraintes

Les axes ont listé dans le cahier des spécifications ses attentes pour réalisation de solution:

—Un seul logiciel transactionnel en mode Web : réalisation de solution avec les outils de dernière génération :

— Platform à réaliser en mode «Web »regroupant tous les taches dans un seul « Platform ».

— Usage de l’outil de SGBD-R LAMP Server — Usage d’une architecture MVC

— Compatibilité avec les systèmes d’exploitation linux ubuntu15.10,

— Développement des interfaces graphiques en mode «Web »à l’aide un logiciel d'interfaçages web kompozer intégrer code PHP

— Compatibilité avec les navigateurs standards du marché (Internet Explorer, Google Chrome, Firefox,. . .)

I .4 Gestion du projet

La gestion du projet est un élément important dans le processus de mise en œuvre d’un projet. Il permet de gérer le projet du début à la fin par une planification des ressources, du temps et des activités. C’est une démarche visant à structurer, assurer et optimiser le bon déroulement d’un projet à travers notamment :

Mise à jour de données, saisie les données et Les

états à imprimer Des statistiques traitements et validation Envoyer ver le DWPTIC

Direction DWPTIC

Analyse et traitement des données Services DWPTIC

Direction Algérie Télécom

Mise à jour et traitement de données par Services Algérie Télécom

Direction postal

Mise à jour et traitement de

données par

Services postal

Les données et statistique Demandées Documents et rapports Les données et statistique Demandées Documents et rapports

(18)

Année académique 2016-2017 13 - la maîtrise et le pilotage des risques ;

- la planification ; - la budgétisation ;

- et enfin la clarification de la méthode de travail. [9] I.4-1 Processus de développement du projet

Le développement du projet se repose sur une approche agile. En effet cette approche permet au client d’avoir régulièrement un rendu des fonctionnalités de l’application tout au long de la durée du projet. La figure suivant offre un aperçu de cette approche.

Chaque étape du processus est définie en concertation avec le client et le planning des livrables correspondants est défini conjointement. [9]

Figure I.3 : Processus de développement du projet

I.4-2 Démarche de travail

En raison de la spécificité de notre étude, nous proposons une démarche de travail en trois étapes :

- l’étude de l’existant ;

- l’étude fonctionnelle et conceptuelle de la base de données ; - la réalisation de la base de données de gestion de notre système ;

Un langage de modélisation orientée objet nous servira de support pour la Conception du notre système.

I-5 Conclusion

Dans ce chapitre, On a défini les environnements du projet, le cahier de charges est défini. On a défini les en besoins et les fonctionnalités qu’il faut les implémenter pour nous répondrons à ces besoins.

Dans ce qui suit, nous détaillons les outils et les technologies utilisés pour la réalisation de ce projet.

(19)
(20)

Année académique 2016-2017 15

Chapitre II : Méthodologies et les outils technologiques de

programmation web

II .1. Introduction

Après la partie de définition contexte de projet, vient l'étape de concrétisation technique de la programmation web. C'est la phase que permettre de nous découvrirent la nouvelle technique de développement web application.

Dans ce chapitre, on découvre ce nouveau monde, le monde Web. C’est quoi Web? C’est quoi une page Web dynamique? Quelles sont les technologies utilisées pour la réalisation d’une page Web dynamique?

II .2. Introduction au World Wide Web

Le web, C'est le service de consultation de documents sur Internet, le plus connu, le plus récent et aujourd'hui le plus utilisé, C'est le service d'Internet qui a contribué le plus à sa popularité.

Le web a été inventé plusieurs années après Internet, mais c'est lui qui a contribué à l'explosion de l'utilisation d'Internet par le grand public, grâce à sa facilité d'emploi. Depuis, le Web est fréquemment confondu avec Internet alors qu'il n'est en réalité qu'un de ses services.

Le principe de web repose sur l'utilisation d'hyperliens pour naviguer entre des documents (appelés «pages web») grâce à un logiciel appelé. Une page web est ainsi un simple fichier texte écrit dans un langage de description (appelé HTML par exemple), permettant de décrire la mise en page du document et d'inclure des éléments graphiques ou bien des liens vers d'autres documents à l'aide de balises. . [1]

II .2.1 Qu'est-ce qu'un site web ?

Un site web est un ensemble de fichiers web stockés sur un ordinateur connecté en permanence à internet et hébergeant les pages web (serveur web).Un site web est habituellement architecturé autour d'une page centrale, appelée «page d'accueil» et proposant des liens vers un ensemble d'autres pages hébergées sur le même serveur, et parfois des liens dits «externes», c'est-à-dire de pages hébergées par un autre serveur. II .2.2 Qu'est-ce qu’une page statiques

Ce type des pages, construit directement en langage html, a pour défaut majeur de n'offrir qu'une et une seule présentation, sans aucune possibilité de personnalisation et avec une interactivité limitée au strict minimum. Cette limitation est due à la nature même du html, langage de description des données dans lequel le contenu et sa présentation sont indissociables. C'est pour cela que ces pages sont dites statiques (voir Figure II.1). [1]

(21)

Année académique 2016-2017 16

Figure II.1 : la requête d’une page statique

II .2.3 Qu'est-ce qu'une page dynamique

Le principe d'un page dynamique est d'être construit à la demande (à la volée) par le serveur (côté serveur), en fonction de critères spécifiques. La présentation et le contenu affichés peuvent ainsi être personnalisés de manière interactive, en fonction des produits, des internautes, des langues, etc...

On reconnaît facilement un page dynamique grâce à l'URL qui s'affiche dans le navigateur web de l'utilisateur come par exemple:

v page statique: http://www.monsite.com/accueil.htm: affiche la page accueil.htm, stockée telle quelle sur le serveur,

v page dynamique: http://www.monsite.com/accueil.php?langue=fr: affiche la page accueil.php en demandant au serveur d'afficher le contenu de cette page en français.

Alors que les pages statiques font appel au html, langage de description de données, les pages dynamiques sont mises en œuvre grâce à un langage de programmation.

Le langage de programmation variera en fonction de la technologie retenue (PHP, ASP, Java, etc.). [1]

Le langage de programmation ne remplace pas le html, mais il en produit. II .2.4 Le fonctionnement des pages dynamiques

Pour bien comprendre l'intervention de la programmation, il faut rappeler rapidement le principe de fonctionnement d'un serveur web. Lorsque l'internaute tape l'adresse d'un site dans son browser, celui-ci envoie une requête au serveur qui héberge ce site (voir Figure

II.2). Le serveur transmet alors la page demandée au browser qui l'affiche.

C'est l'architecture client/serveur : le client, c'est l'ordinateur et le browser de l'internaute, et le serveur, c'est le serveur web.

Cette manière de faire offre deux avantages majeurs:

v Tous les traitements sont exécutés sur le serveur, côté serveur, de manière totalement transparente pour l'internaute. Le résultat envoyé étant du html standard, on évite tout problème d'incompatibilité avec le browser, comme c'est parfois le cas avec des programmes exécutés côté client (avec le langage JavaScript par exemple). [1]

(22)

Année académique 2016-2017 17 v Chaque nouvelle requête reconstruit systématiquement la page demandée, ce qui veut dire que l'information transmise est à jour.

Figure II.2 : la requête d’une page dynamique

II .3- Le Back Office

Un site dynamique Back Office est "automatiquement" double: une partie publique vue par les internautes et une zone d'administration privée protégée par mots de passe et gérée par un web master comme le montre la (Figure II.3) [9]

Figure II.3 : Gestion site dynamique Back Office.

II .4- Programmation web orienté objet sélectionné

II .4-1 Notion de Programmation Objet

La programmation objet permet, en développant une bonne fois pour tout un ensemble de classes appelé Framework, de simplifier grandement le travail de développement et de maintenance de logiciels complexes, de manière que ces logiciels soient facilement adaptables. Ainsi, une entreprise telle qu’une société de services, d’un client à l’autre, reprendra tel quel une grande partie de son code, sans même le retoucher. Ce code doit avoir une interface de développement, c'est-à-dire qu’il doit mettre à disposition des développeurs un ensemble de méthodes qui permettent de réaliser toutes les tâches de base dont le programmeur peut avoir besoin pour développer chaque application particulière. [2]

(23)

Année académique 2016-2017 18 II .4-2 Qu'est-ce qu'une classe plus précise ?

Une classe est un modèle de définitions pour la création d'objets.

Une classe définit les attributs de l'objet (des champs) et des méthodes (des fonctions). Par analogie : le plan d'une maison n'est pas une maison mais c'est le moyen de créer une ou plusieurs maisons. [3]

II .4.3 Qu'est-ce qu'un objet ?

Concrètement, un objet est une instance d'une classe.

Par analogie : La maison est une instance faite à partir du plan de la maison. [3]

II .4.4 Les caractéristiques d’un Framework doivent être :

a. Robustesse : les classes de base du Framework doivent être testées et doivent être

conçus pour réduire le risque de bugs lorsqu’un développer utilise les classes du Framework, ou d’attaques lorsqu’un utilisateur malveillant utilise un site construit à partir du Framework.

b. Généricité et versatilité : Le code doit pouvoir s’adapter, sans le retoucher, au plus

grand nombre d’applications possibles.

c. Facilité de maintenance du Framework lui-même : avec une modularité interne. Les

grands outils (librairies, Framework externes, etc....) Utilisé sparle Framework doivent être circonscrits à des sous-modules avec des wrappers ou helpers de manière à pouvoir changer l’un de ces outils sans revoir l’ensemble du code.

d. Une bonne lisibilité et une bonne documentation, notamment parce que les

développeurs qui utilisent le Framework ne sont pas nécessairement les mêmes que les développeurs du Framework lui-même. [9]

II .5 Le développement d'applications web:

III. 5-1 Le développement d'applications web est complexe et simple en même temps, car on peut travailler pour des cibles multiples :

- Cibles machines (serveur, station client, Smartphone, Tablet …) - Cibles browsers (IE 6et+, Chrome, Firefox, Safari, Opéra…)[3]

II .5-2 Le développement d'applications web est complexe et simple en même temps car, on doit travailler avec de multiples langages :

- Langages coté serveur web [ASP,PHP,Python,Perl …] - Langages coté client [Javascript,Vbscript] [3]

- Langages de balisage [HTML, CSS]

II .5-3. Le développement d'applications web est complexe et simple en même temps, car on doit travailler pour de multiples publics:

- Utilisateur débutant - Utilisateur confirmé - Gestionnaire des données

- Administrateur de l'application [3]

II .5.4. Le développement d'applications web est complexe et simple en même temps, car on est soumis à des contraintes :

- Contraintes de sécurités

(24)

Année académique 2016-2017 19 - Contraintes légales [3]

II .6. les Langages web et Framework

II .6-1. Notions Framework

Dans cette partie nous avons présenterons différents langages de programmation qui pourraient être utilisés dans le cadre du développement d’application web, ainsi que quelques Framework qui permettraient de répondre aux notre besoins.

Un Framework (littéralement « Cadre de travail »en français) est un ensemble de bibliothèques conçus dans le but de simplifier le travail des développeur en leur fournissant les composant nécessaires pour créer les fondations, l’architecture et les grandes lignes d’un logiciel. [10]

a-. L'objectif d’un Framework

Le principal objectif d’un Framework est d’améliorer la productivité des développeurs, il leur offre la possibilité d’utiliser tel ou tel composants pour plus d’aisance dans le développement du logiciel. Par exemple, la récupération de données depuis une base de données et son affichage dans un tableau en HTML est un des composants que fourni le Framework. [10]

b-. Avantage d'un Framework

Comme nous l’avons dit précédemment, le principal avantage de l’utilisation d’un Framework est le gain en productivité, le code est organisé et lisible. De plus les composants du Framework permettent au développeur de ne pas se répéter dans son code pour effectuer les actions de bases qui sont souvent récurrentes durant le développement d’un programme tel que l’exécution d’une requête visant à récupérer des données depuis une base et la gestion de leur affichage. [10]

c- inconvénient d’un Framework

Le principal inconvénient d’un Framework est la courbe d’apprentissage qui est plus élevée, car pour maîtriser un Framework, une période de formation doit être prise en compte. [10]

II .6-2 les Langages web et leurs Framework a)PHP

Le PHP (Hypertext Preprocessor) est un langage de scripts Open Source, essentiellement utilisé pour la production de pages Web dynamiques à la volée. Il peut être simplement intégré à une page HTML.

Le code est exécuté sur le serveur qui s’occupera de générer les éléments HTML, XHTML ou encore CSS, mais aussi les données telles que les images qui seront ensuite renvoyés au navigateur puis interprétés. Il est également à noter que 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. [1]

a-a Framework PHP

Voici une liste des Framework PHP les plus populaires à l’heure actuelle. L’avantage des Framework populaire vient du fait que la communauté liée au Framework est très active et permet donc de trouver de l’aide rapidement.

— CakePHP 2 — Code Igniter — Symfony2 — Yii

(25)

Année académique 2016-2017 20 L’ensemble de ces Framework prennent en compte nativement les éléments suivants: — Le modèle MVC : modèle vue contrôleur, permet de structurer l’application en séparant la partie présentation (vue), la partie base de données (modèle) et la partie applicative (contrôleur).

— Une gestion de templates (gabarits) : La gestion de gabarit permet de distinguer la présentation du code applicatif.

— Une gestion du cache : permet de stocker des pages afin d’optimiser leur temps de chargement. .

— Une gestion des SGBDR (Système de gestion de bases de données relationnelles : qui permet de gérer plusieurs type de base de données telles que MySQL, PostgreSQL ou encore Oracle selon les besoins.

— L’intégration de l’ORM : Mapping de relation objet qui permet la gestion de la base de données sous forme d’objets.

— L’intégration du Scaffolding (échafaudage) : Permet la création d’un espace d’administration de l’application sans aucun développement, uniquement à partir de l’ORM.

— Utilisation de conventions : Oblige les développeurs à utiliser les mêmes conventions de codage afin d’avoir un code uniforme. [10]

b) JavaScript

JavaScript est un langage de programmation de scripts principalement employé dans les pages web interactives mais aussi pour les serveurs avec l'utilisation (par exemple) de Node.JS. 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 créer leurs propriétés, et notamment une propriété de prototypage qui permet d'en créer des objets héritiers personnalisés. En outre, les fonctions sont des objets de première classe. Le langage supporte le paradigme objet, impératif et fonctionnel. [9]

b-a) Frameworks JavaScript

Nous avons relevé quelques Frameworks populaire pour Java Script:

— jQuery: ce Framework JavaScript mettre les développeurs JavaScript dans les meilleures conditions pour développer efficacement.

— Le framework Dojo : Ce framework Javascript est notamment distribué sous licence BSD, une autre licence libre. Il est franchement très utilisé et dispose d'atouts qui font de lui un concurrent de choix à jQuery pour développer des applications web plus facilement. basé sur l’architecture MVC sous licence Apache

— AngularJS ce Framework basé sur l’architecture MVC. c) ASP.NET

ASP.NET est un ensemble de technologies développées par Microsoft permettant la programmation d’applications web dynamiques. Il s’agit du successeur de la technologie Active Server et fait partie de la plateforme .NET de Microsoft, Les pages ASP.NET sont compilées et exécutées par le Common Langage Runtime7. Cet ensemble de technologies permet de développer des applications web de manière rapide tout en leur fournissant une certaine robustesse.

(26)

Année académique 2016-2017 21

Il existe trois modèles de programmation en ASP.NET :

Le modèle ASP.NET WebForms, est un des trois modèles de programmation pour créer des sites et des applications web en ASP.NET. Il s’agit d’éléments d’interface qui peuvent être positionnés et qui offrent la possibilité à l’utilisateur de modeler lui-même l’apparence des différentes pages de son application web via une interface de type glisser-déposer. Ce modèle a pour avantage de fournir une vaste palette de contrôle permettant le prototypage rapide d’une application. Cependant, il n’est pas possible de contrôler directement le code HTML généré en sortie.

Le modèle ASP.NET MVC, qui, comme son nom l’indique, permet de créer des applications web basées sur le MVC (Model View Controller)

L’avantage principal de ce modèle est cette séparation de la vue, du modèle et du contrôleur rendant le code plus facile à maintenir. En contrepartie, le temps de développement d’une application est plus élevé [9].

d) Ruby

Le Ruby est un langage de programmation orienté objet. Il s’agit d’un langage interprété disposant d’un système de typage dynamique ainsi que d’un ramasse-miettes 8 qui est chargé de libérer automatiquement la mémoire, sa syntaxe à pour particularité d’être concise, permettant de rendre le code plus lisible. La philosophie de conception du Ruby considère que toute donnée est un objet, y compris les types, toute fonction est une méthode et que toute variable est une référence à un objet. [9]

d-a) Frameworks Ruby

— Ruby on Rails — Sinatra

e)Python

Python est un langage de programmation haut niveau dont la philosophie de conception mets l’accent (tout comme le Ruby) sur la lisibilité du code. Une de ses particularités est qu’il peut être utilisé en tant que langage de script, mais également en langage objet. Tout comme le JavaScript, il inclut un système typage dynamique ainsi qu’une gestion automatique de la mémoire.

Un des points fort de Python est que le code source est clair et concis, car il est dépourvu de symbole indiquant le début ou la fin d’une méthode par exemple. Cependant, une configuration du serveur est nécessaire pour l’exécution des scripts. [9]

e-a) Frameworks Python

— Django — Grok — Pylons f) CSS

Les feuilles de styles (en anglais "Cascading Style Sheets", abrégé CSS) sont un langage qui permet de gérer la présentation d'une page Web. Le langage CSS est une recommandation du World Wide Web Consortium (W3C), au même titre que HTML ou XML.

Les styles permettent de définir des règles appliquées à un ou plusieurs documents HTML. Ces règles portent sur le positionnement des éléments, l'alignement, les polices de caractères, les couleurs, les marges et espacements, les bordures, les images de fond, etc... Le but de CSS est séparer la structure d'un document HTML et sa présentation. [9]

(27)

Année académique 2016-2017 22

II .7 le choix des Langages de programmation

Pour départager l’ensemble de ses technologies et dans un souci de fournir des résultats dans un délai court, il nous allons décident vers quel langage de programmation nous nous aurons orienté.

Tout d’abord, nous aurons vérifié quelles sont les contraintes émises par le système à créer. le développement des interfaces graphiques en mode Web à l’aide un langage de

programmation différent du langage de balises comme html et CSS et les codes scripte par les langages de scripte comme PHP ou JavaScript avec quel que ressemblances des

Framework, Ce qui restreint le choix du langage à sélectionner.

II .8 Architecture de développement

II .8-1 Architecture MVC

En développement logiciel web, il existe des architectures de développement (architectural pattern) dont le but est d'isoler le domaine logique de la partie IHM. Architecture de développement => Organisation logicielle de l'application. [Modèle programmeur]

Modèle conceptuel => Organisation des fonctionnalités de l'application. [Modèle utilisateur]

On trouve MVC dans des travaux datant de 1979 par un groupe de travail Xerox Parc. Les ingénieurs ont théorisé MVC pour le langage Small talk (langage objet, de haut niveau d'abstraction). [3]

a- Le but d'Architecture MVC

Le but de MVC est la séparation de l'application en trois couches :

Le Modèle décrit les actions, les traitements métiers de l'application (connexion aux données, algo de résolution, vérification, sécurité…).

La Vue est la partie restitution des données aux utilisateurs de l'application (HTML, PDF, XML…)

Le Contrôleur est une interface entre la vue et le modèle. [Le mot interface ici ne doit pas être confondu avec l'interface utilisateur ou interface de classe] [3]

b- MVC et MVC2 :

Dans une architecture MVC, il peut exister plusieurs vues, plusieurs modèles mais aussi plusieurs contrôleurs.

Dans une architecture MVC2, il n'existe plus qu'un seul et unique contrôleur réceptionnant toutes les requêtes clientes. [3]

(28)

Année académique 2016-2017 23 c- Représentation MVC pour une application WEB

Figure II-4: Représentation MVC pour une application WEB

d- Avantages et inconvénients de ce type de modèle

d-a- Avantage : - Modularités. - Maintenance. - Gestion multi-développeurs. - L'isolation d-b- Inconvénients :

- Complexité de communication entre composants.

Apprentissage notamment dans le cadre d'un Framework. [3] II .8-2 Architecture model ASP.NET WebForms

Le modèle WebForms, Comme nous l’avons dit précédemment est un l'un des modèles de programmation orienté plus vers programmation net pour créer des sites et des applications web en ASP.NET. Il s’agit d’éléments d’interface qui peuvent être positionnés et qui offrent la possibilité à l’utilisateur de modeler lui-même l’apparence des différentes pages de son application web via une interface de type glisser-déposer.

a- Avantages

Ce modèle a pour avantage de fournir une vaste palette de contrôle permettant le prototypage rapide d’une application. Cependant, il n’est pas possible de contrôler directement le code HTML généré en sortie. [12]

b- Inconvénients

Complexité du modèle

Pour pouvoir réaliser des interfaces complexes avec de multiples interactions utilisateur, il est crucial de maîtriser la survenue et l’ordre de l’ensemble des événements liés à la page et à ses contrôles. [12]

L’abstraction procurée par les contrôles, le data binding, le view state et le cycle de la page complique souvent la tâche obligeant par exemple l’écriture d’un grand nombre de

(29)

Année académique 2016-2017 24 gestionnaires d’évènement pour le paramétrage des contrôles. Signalons également que la conception de contrôles customisés est une tâche qui nécessite la maîtrise du modèle événementiel et du designer de Visual Studio. [12]

II .9 Bilan

Après ce rapide d'étude des couches de cette comparaison, nous soulignons la facilité avec laquelle il est possible d’étendre le framework.

MVC fourni par Microsoft et d'autres plateformes. L'ensemble des composants a été conçu pour être remplacé ou customisé.

WebForms peut aussi être étendu mais l'approche événementielle complexe à de quoi

rebuter.

II .10 Les avantages de MVC par rapport à WebForms:

MVC donne la main sur le protocole HTTP et sur le HTML produit. Les pages HTML sont beaucoup moins lourdes.

Les URLs sont testables.

Les développements concurrents sont facilités

Le temps de développement d’une application est plus élevé que web Formes

II .11 Méthode d'accès à la base de données utilisée :

II .11-1 Introduction

Les fonctions ayant le préfixe mysql font partie d'une extension nommée mysql ? et de même avec mysqli, et PDO aussi d'ailleurs, à l'heure actuelle, ce sont les trois API disponibles pour établir une connexion à un serveur MySQL avec PHP. [4]

II .11-2 Interface d'accès à une base de données depuis PHP

L'extension PHP Data Object (PDO) définit une interface pour accéder à une base de données depuis PHP. Maintenant nous avons bien compris qu'il existe trois extensions permettant à PHP de se connecter à MySQL, voici un tableau comparatif démontrer les principalement extension MySQL. [4]

(30)

Année académique 2016-2017 25

Tableau II-1: tableau comparatif

Extension MySQL

Extension mysqli

PDO (avec le pilote PDO MySQL Driver et MySQL Native Driver)

Version d'introduction en PHP

Avant 3.0 5.0

5.0

Inclus en PHP 5.x Oui, mais

désactivé Oui Oui

Statut de développement MySQL Maintenance uniquement Développement actif Développement actif depuis PHP 5.3 Recommandée pour les nouveaux projets

MySQL

Non Oui Oui

L'API supporte les

jeux de caractères Non Oui Oui

L'API supporte les commandes

préparées

Non Oui Oui

L'API supporte les commandes préparées

côté client

Non Non Oui

L'API supporte les

procédures stockées Non Oui Oui

L'API supporte les

commandes multiples Non Oui La plupart

L'API supporte toutes Les fonctionnalités MySQL 4.1 et plus

récent

(31)

Année académique 2016-2017 26 II .11-3 Méthode PDO utilisée

a- Qu'est-ce que PDO?

PDO signifie PHP Data Object. Il s'agit une couche d'abstraction des fonctions d'accès aux bases de données. Ça ne signifie donc pas que nos requêtes seront automatiquement compatibles avec n'importe quelle base de données, mais bien que les fonctions d'accès seront universelles :

mysql_connect(),mysql_query(),mysql_result(),mysql_fetch_array(),mysql_real_escape_st ring(), etc.... toutes ces fonctions que nous utilisez sont spécifiques à un SGBD et leur utilisation sera désormais automatiquement déterminée par PDO.P [4]Pourquoi PDO plutôt qu'un autre ? PDO plutôt qu'un autre ?

b- Quelle utilité? Pourquoi PDO plutôt qu'un autre ?

L’hétérogénéité des moyens d’accès aux bases de données a été un des problèmes les plus gênants en PHP.

Le problème vient du fait que, par exemple, les fonctions permettant l’accès à une base PostgreSQL sont différentes de celles pour MySQL, et elles sont toutes différentes de celles pour SQLite, etc...

Cela a pour effet de rendre plus difficile la migration d’un système vers un autre, nous avons écrit (par exemple en cours) un site utilisant une base PostgreSQL et nous allons faire le transférer chez un hébergeur qui n’offre que MySQL (comme c’était par exemple le cas pour Free il ya encore peu de temps), la seule solution est de reprendre et corriger) dans toutes nos pages tous les appels à des fonctions concernant PostgreSQL. Il peut y en avoir beaucoup.

Une couche d’abstraction permet d’éviter ce problème : tous nos accès à notre base de données passent par elle (avec la même syntaxe, quelle que soit la base de données) et c’est elle qui se débrouille pour s’adapter à la base de données utilisée. Pour changer de base de données (passer de PostgreSQL à MySQL par exemple)

Nous n’avons en général qu’à modifié une ligne, celle qui donne les paramètres de la base de données utilisée. [4]

(32)

Année académique 2016-2017 27 c- Pourquoi la méthode PDO plutôt qu'un autre ?

Il existe des solutions alternatives à PDO. MDB2, de Pear,etc. La différence majeure est que PDO est une extension compilée de PHP et offre donc des performances supérieures dans la plupart des cas. De plus, des rumeurs fortement insistantes et assez crédibles laissent croire que les futures évolutions de PHP délaisserons progressivement, les fonctions standards pour proposer PDO comme solution d'accès aux SGBD par défaut [4]

II-12 .Conclusion

Dans ce chapitre, on a vu plus techniquement les outils, utilisés dans la réalisation de notre projet.

Dans ce qui suit, nous présentons les aspects d’analyse et modélisation et comment on a modélisée ? Et quelles sont les étapes de modélisation effectives?

(33)
(34)

Année académique 2016-2017 28

Chapitre III: Analyse et Etude conceptuelle fonctionnelle

III .1 Introduction

La mise en œuvre d’une base de données d'un système d'information passe par une analyse des besoins fonctionnels et par la modélisation du système. Cela suppose donc l’adoption d’une méthodologie, un langage pour une modélisation du système.

La modélisation permet de mieux comprendre le fonctionnement d’un système, c’est un moyen de maîtriser la complexité du système et d’assurer sa cohérence.

III .2 Etude de l’existant

Cette partie vise à faire l’état des lieux de la gestion de système d’information administrative par notre administration et à recueillir les informations sur l’existant réseautique, matériel et logiciel afin de mieux intégrer les ressources de notre administration (DWPTIC) dans la mise en oeuvre de la base de données de système d’information et cette état des lieux résume sur les quatre point suivant .

III .2-1 Existantes organisations administratives et humaines

Nous avons déjà les décrit dans le chapitre 1 en détail d'organigramme d’une Direction de Wilaya Figure I.1

III .2-2 Données administrative disponibles

Les données et les documents administratifs de base disponibles sur la DWPTIC sont les différents documents et le fichier et le canevas de fichiers Excel.

III 2-3. Existant réseautique

La DWPTIC dispose d’un réseau local en étoile avec environ Quinze ordinateurs et une deux imprimantes réseau. Elle est interconnectée par une Ligne Spécialisée (LS) avec la Cellule MPTIC.

III. 2-4 Existants matériels et logiciels

La DWPTIC dispose un ordinateur pc au chaque employés raccorde avec la réseau local et avec impriment réseau partagé avec un logiciel de gestion de payées au niveau bureau personnel et les autres pc basée sur les applications Windows et office applications III .2-5 Critiques de l’existant

L’étude de l’existant nous a permis de dégager un certain nombre de lacunes d’une part l’outil d’administration fournit par notre administration DWPTIC, bien qu’il soit puissant mais ne satisfait pas tous les besoins nécessaires pour la gestion des E-administration TIC. En effet il’ est utilisé juste pour gérer la l'E-administration d'une façon traditionnel. Le suivi et l'analyse des données et les statistiques demandés sont réalisés sur un fichier Excel.

D’autre part les ramassés des données d'une façon lente et ne sont pas lisibles et volumineux et difficile à interroger.

III .3 Architecture du système

Dans les phases préliminaires du développement d’une application ou de la refonte d’un système d’information, la définition de l’architecture technique consiste à faire les choix de technologies et d’organisation de composants logiciels les plus adaptés aux besoins et aux contraintes de l’organisation d’accueil.

Afin de simplifier la mise à jour de l’application et d’en faciliter l’accès, le futur système va être développé sur la base d’une application Web. Une application Web se trouve sur un serveur et se manipule à l'aide d'un navigateur Web (IE, Firefox, Chrome, … ), via un réseau informatique (Internet, intranet, réseau local, etc.).

(35)

Année académique 2016-2017 29 Dans la technologie client-serveur, utilisée pour le World Wide Web, la communication est organisée par l'intermédiaire d'un réseau et d'un interface Web entre plusieurs ordinateurs." cela signifie que des machines clientes (machines faisant partie du réseau) contactent un serveur, une machine généralement très puissante en termes de capacités d'entrées-sorties, qui leur fournit des services. Lesquels services sont exploités par des programmes, appelés programmes clients, s'exécutant sur les machines clientes.

L'application Web s'oriente autour d'un serveur Web sur lequel est branché le logiciel applicatif, le tout accompagné d'un serveur de base de données. [9]

III. 3.1 Présentation de l'architecture à 2 niveaux

L'architecture à deux niveaux (aussi appelée architecture 2-tiers, tiers signifiant étages en anglais) caractérise les systèmes clients/serveurs dans lesquels le client demande une ressource et le serveur la lui fournit directement. Cela signifie que le serveur ne fait pas appel à une autre application afin de fournir le service. [9]

Figure III-1 : l'architecture à 2 niveaux

III. 3.2 Présentation de l'architecture à 3 niveaux

Dans l'architecture à 3 niveaux (appelées architecture 3-tiers), il existe un niveau intermédiaire, c'est-à-dire que l'on a généralement une architecture partagée entre:

a. Le client: le demandeur de ressources

b. Le serveur d'application (appelé aussi middleware): le serveur chargé de fournir la ressource mais faisant appel à un autre serveur

c. Le serveur secondaire (généralement un serveur de base de données), fournissant un service au premier serveur.

Tout système d'information nécessite la réalisation de trois groupes de fonctions: le stockage des données, la logique applicative et la présentation. Ces trois parties sont indépendantes les unes des autres: on peut ainsi vouloir modifier la présentation sans modifier la logique applicative.

La conception de chaque partie doit également être indépendante, toutefois la conception de la couche la plus basse est utilisée dans la couche d'au-dessus. Ainsi la conception de la logique applicative se base sur le modèle de données, alors que la conception de la présentation dépend de la logique applicative. [9]

(36)

Année académique 2016-2017 30

Figure III-2 l'architecture à 3 niveaux

III. 3.3 Architecture adoptée

Vis-à-vis l’existant : organisation, compétences, architecture du système d’information, nous avons choisi l’architecture client-serveur 3 tiers car c’est une architecture :

• pérenne: applicable durant une très longue période de temps et accepter des changements technologiques ou fonctionnels tout en protégeant les investissements réalisés.

• modulaire: un élément peut être remplacé ou modifié sans devoir changer toute l’architecture.

• ouverte: elle doit permettre de construire ou de modifier une solution à partir de composants provenant de différents constructeurs.

Figure III-3: Modèle client-serveur

III. 3.4 Architectures de développement MVC (architectural pattern)

Dans le souci de développer une application stable et évolutive, l’utilisation d’une architecture standardisée est primordiale. Le Design Pattern Model-View-Controller est une des techniques de codage les plus répandues, principalement dans le développement Web. Les nouvelles possibilités d’interfaçages riches apportent de nouveaux défis.

(37)

Année académique 2016-2017 31 Le pattern MVC répond à ces challenges en offrant la possibilité de créer des applications plus flexibles.

Rassembler les vues et les données occasionne plusieurs désavantages : ü La difficulté de gérer les données de l’extérieur de l’objet.

ü La difficulté de créer différentes interfaces utilisateurs avec la même logique ü La difficulté de faire évoluer les interfaces [3].

III .4 Pourquoi vouloir modéliser?

La conception d'un système d'information n'est pas évidente car il faut réfléchir sur l'ensemble de l'organisation que l'on doit mettre en place. La phase de conception nécessite des méthodes permettant de mettre en place un modèle sur lequel on va s'appuyer.

La modélisation consiste à créer une représentation virtuelle d'une réalité de telle façon à faire ressortir les points auxquels on s'intéresse. Ce type de méthode est appelé analyse. Il existe plusieurs méthodes d'analyse comme les plus utilisée (UML, MERISE….) mais la méthode la plus utilisée est la méthode MERISE.

Le modèle est une abstraction de la réalité, il ne rend compte que de certains aspects, et seulement de manière imparfaite dans le cas général. Le modèle constitue une vue très subjective de la réalité, mais très pertinente également, car il reflète des aspects importants de la réalité. Un bon modèle possède deux caractéristiques essentielles:

ü il doit faciliter la compréhension du phénomène étudié, il réduit la complexité; ü il doit permettre de simuler le phénomène étudié, il reproduit ses comportements. La modélisation permet de gérer le risque, c'est le point crucial dans la conception de base des données de qualité. Le modèle est une simplification, Il doit aider à mieux percevoir les relations et les interactions à l'intérieur du système. Il doit permettre de visualiser les conséquences de modifications apportées au système, de visualiser également les raisons du comportement du système par rapport à une situation donnée. C'est donc un guide pour construire un système administrative back office stable et fiable. L'expérience du passé dans l'utilisation de ce modèles de plat forme web pour facilitée la gestion administrative à distance. [5]

Le choix du modèle initial a une grande influence sur la manière dont le problème est attaqué et une solution ébauchée.

ü Tout modèle peut être exprimé à divers niveaux de précision. ü Les meilleurs modèles sont ceux qui sont connectés à la réalité.

ü Aucun modèle ne peut prétendre résoudre à lui seul un problème complexe. Tout système non trivial est bien mieux approché à l'aide d'un petit nombre de modèles pratiquement indépendants. [5]

III .5 Choix du modèle conceptuelle

Avant de réaliser une base de données, il faut procéder à une analyse informatique. Cette analyse consiste à comprendre et modéliser le système d'information sur lequel on travaille.

Un système d'information regroupe toutes les informations d'un domaine précis.

L'efficacité et la validé de l'analyse reposent sur la qualité de la communication entre les utilisateurs et le concepteur de la base de données. Pour obtenir une bonne

Figure

Figure I.1: Organigramme d’une Direction de Wilaya          DWPTIC  Secrétariat Cellule Secrétariat  Services de l’Administration et des Moyens Services de la Poste et des Services  Services des  Technologies de  l’Information et de la Bureau de la Gestion des Ressources Humaine et du Budget Bureau des Moyens Bureau Exploitation  et  développement de la Poste Bureau des Services Financiers Postaux Bureau Exploitation  et  développement des Télécoms  Bureau études, des statistiq ues et de des services Informatique
Figure I.2: Plan du projet  I.3-5 Contraintes
Figure I.3 : Processus de développement du projet  I.4-2 Démarche de travail
Figure II.3 : Gestion site dynamique Back Office.  II .4- Programmation web orienté objet sélectionné
+7

Références

Documents relatifs

-L’administrateur saisit les informations correspondant au nouvel utilisateur et confirme sa demande d’ajout. -Le système ajoute le nouvel utilisateur à la base des

En B l’action de contact ponctuel entre le plot de maintient et la barrière nommée B de 0 sur 2.. Objectif : déterminer complètement les torseurs des actions mécanique A ,

Après nous avoir dit, par discrétion, qu’il avait jadis été prisonnier, il en vint plus tard, comme il voyait que nous étions portés à critiquer de façon facile les

Exit, voice and loyalty a ainsi pour objectif d’étudier les conditions de développement, conjoint ou non, des deux modes d’action, leur efficacité respective dans

Je pourrais ajouter, mais je ne développerai pas cet aspect, que l’on peut vivre dans la classe, comme dans la société d’ailleurs, l’interculturel dans toutes ses formes,

Une fois les Ecoles Normales transformées en Ecoles Universitaires comme conséquence du développement de la LRU (Ley Orgánica de Reforma Universitaria, 1983), qui consacre

Il faut choisir un solvant extracteur non miscible avec l’eau et dans lequel l’huile essentielle d’eucalyptus y est très soluble.. Ce solvant doit être le moins dangereux pour

Définir la fréquence puis donner la relation entre la période et la fréquence (1pt) 4.. Calculer sa fréquence f, qui est celle des battements