WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Analyse et conception par approche orientée objet d'une application e- location et e-commerce des produits divers


par Jonathan KUBUYA NDAKOLA
Université protestante de Lubumbashi - Ingénier en sciences informatique 2020
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

2. Les applications web

2.1. Définition :

Une application web est un logiciel applicatif, hébergé sur un serveur et accessible via les navigateurs Internet (Explorer, Mozilla Firefox, Safari...) ou sur un réseau intranet. Contrairement à un logiciel classique, les applications web n'ont pas besoin d'être installées sur les ordinateurs de leurs utilisateurs : il leur suffit en effet de se connecter à l'application à l'aide de leurs navigateurs favoris pour pouvoir y accéder. Leur but ? Offrir une expérience à l'utilisateur et des fonctionnalités équivalentes aux logiciels habituellement installés sur les ordinateurs, en utilisant de technologies de développement identiques à celles employées habituellement dans la création des sites internet. [9]

La création de web apps demande la maitrise parfaite de différents langages de codage, comme le HTML, le CSS, Javascript, PHP... Le dynamisme et l'ergonomie des web apps tiennent dans le fait qu'elles contiennent divers widgets qui permettent de les manipuler et d'envoyer de nouvelles requêtes. En résumé, les web apps sont des pages vivantes qui réagissent à vos sollicitations et vous obéissent « au doigt et à l'oeil ». Cela nécessite donc deux critères d'utilisation : simplicité et efficacité !

2.2. Importance d'une Application web

Les applications web se déclinent sous de multiples formes : jeux, moteurs de recherche, géolocalisation, messagerie, logiciels professionnels... Elles présentent de nombreux atouts, que nous allons vous détailler.

Les applications web offrent donc de nombreux avantages aux utilisateurs : système ouvert et libre de droit, coûts de développement réduits, compatibilité totale avec les navigateurs, adaptation à tous les formats d'écrans, consultation possible hors connexion, facilité du référencement et excellent SEO, mises à jour immédiates ou encore indépendance totale des apps stores.

L'avantage majeur des web apps utilisant par exemple des langages modernes comme HTML 5 est qu'elles n'ont pas besoin d'utiliser d'autres composants comme Google Gears, Adobe Flash Player ou Microsoft Silverlight pour fonctionner. Elles peuvent afficher des vidéos et des plages sonores, ou intégrer le drop and drag, ce qui les rend consultables depuis n'importe quel terminal. De plus, leurs coûts de développement sont très réduits et elles sont aussi plus rapides à mettre en place. Enfin, elles ne cessent d'évoluer et proposent sans cesse de nouvelles fonctionnalités. Par exemple, le stockage des fichiers et la gestion du mode hors-ligne sont maintenant possibles.

Par ailleurs, l'annonceur est indépendant vis-à-vis de ses web apps et de son app store. En effet, il ne subit pas le contrôle et la pression permanents des plateformes d'application comme Appstore ou Android Market, et ne doit pas leur verser de commission prohibitive.

Les applications sont donc désormais incontournables pour toutes les entreprises, et permettent de s'imposer face à la concurrence en offrant de nombreuses possibilités d'exploitation.

2.3. Avenirdes applications web

L'informatique et Internet étant totalement incontournables de nos jours, tout le monde est amené à utiliser des applications web au quotidien. Au travail, on communique par exemple via intranet et utilise des web apps comme Outlook, des applications de paie, de saisie de congés ou de pointage et de comptabilisation des horaires... Sur internet, à la maison, onse divertis en jouant ou bien en achetant en ligne grâce à ces mêmes applications web. Elles ne cessent de se développer, aussi bien sur les ordinateurs de bureau que sur les smartphones, et sont en pleine expansion. Grâce à des langages de codage de plus en plus poussés, comme HTML5 cité plus haut, les web apps ne cesseront d'évoluer, pour garantir toujours plus de performances, de maniabilité et de plaisir.

2.4. Vision externe d'une application web

Lorsqu'un utilisateur souhaite « surfer » sur le web afin d'accéder à un site web, il utilise un outil appelé navigateur. Un navigateur est un outil permettant d'accéder à des ressources sur le web. Les plus utilisés à l'heure actuelle sont Google Chrome, Mozilla Firefox, Internet

Explorer, Safari et Opera.

Ce navigateur affiche un document d'accueil dans lequel une fenêtre de pilotage permet la saisie de l'adresse web. L'adresse web du serveur identifie le serveur web de façon unique sur le web.

Elle est aussi appelée URL (Uniform Ressource Locator).Du serveur. Le document affiché est appelé « page ».[10]

2.5. Vision interne d'une application web

L'exécution d'une application web met donc en oeuvre un certain nombre d'actionsinternes qui font intervenir :

· Des requêtes émises par le client ;

· Des réponses fournies par le serveur ;

· Un protocole de communication ;

· Un ensemble de pages.

2.6. Structure d'une Application web

Une application web est organisée autour de trois composants : un client, un serveur et un réseau. Généralement, ces applications manipulent des données stockées dans des bases de données.

ü Le serveur web désigne tout à la fois le serveur matériel (hardware) et le serveur logiciel composé du système d'exploitation (compilateurs, interpréteurs de code), des applications (Apache, Java, NodeJS) et des données (les ressources).

ü Le réseau est composé par l'interconnexion mondiale Internet et l'utilisation pour les applications web du protocole HTTP.

ü Le client web désigne tout à la fois le client matériel (hardware) et le client logiciel à savoir le navigateur.

2.7. Le Web Statique

L'architecture client-serveur

Internet est l'exemple extrême d'architecture client-serveur : chaque serveur est potentiellement accessible par des millions de clients. On peut dire que le Web illustre de manière aiguë les avantages de l'architecture client-serveur : chacun est libre de décider de ce qu'il met en ligne, chacun possède en permanence le droit d'accéder à un volume de données plus d'un million de fois supérieur à ses capacités de stockage personnelles.

Sur le web,

ü Le serveur s'appelle « serveur internet ». Le programme le plus utilisé est Apache.

ü Le client s'appelle navigateur, (ou bien browser, ou butineur). Les programmes les plus utilisés sont Google Chrome et Firefox, puis Opera de fois aussi Internet Explore.

2.8. Le web dynamique

Le Web que nous avons décrit jusqu'ici est purement statique : chaque adresse correspond à une page, et chaque page est un fichier qui s'affiche de manière univoque sur votre navigateur. Avec le web dynamique, nous allons avoir des pages qui pour une même adresse peuvent prendre des formes différentes selon les actions de l'utilisateur.

Pour obtenir une page changeante, nous disposons de deux techniques :

ü Soit c'est le serveur qui construit une nouvelle page, qu'il envoie au client (scripts côté serveur)

ü Soit le client reçoit une page fixe, et il modifie cette page (scripts côté client)

Accès aux bases de données

MySQL est un SGBD (Système de Gestion de Base de Données), c'est-à-dire un programme qui assure la cohérence, le stockage et l'interrogation des données dans une base de données.

Toutes les données importantes d'un site web doivent être stockées dans une base de données.

Parmi les nombreux SGBD du marché, il faut en connaître quelques-uns de nom :

ü Oracle est le SGBD historique. C'est la solution la plus robuste, la solution commerciale la plus utilisée. C'est aussi la plus chère.

ü MySQL est un SGBD relativement simple, gratuit et très populaire. Il est recommandé pour les prototypes et pour les applications simples.

ü PostgreSQL est un peu plus compliqué que MySQL. Il est gratuit lui aussi. Il comporte un module spatial (la cartouche spatiale) qui permet de manipuler de l'information géographique. Le module spatial de PostgreSQL se nomme PostGIS.

2.9. Les Architectures des Applications

Une architecture est un modèle générique et conceptuel qui se rapporte à un sujet et qui représente une fonctionnalité, une structure, un positionnement, l'interrelation des différents types d'éléments (hardware, logiciels, infrastructure) qui la composent.

En règle générale, une application est découpée en 3 niveaux (couches) d'abstraction :

· La couche présentation : c'est la partie de l'application visible par les utilisateurs (d'interface utilisateur). Composée de formulaire, de bouton, des images, etc.

· La couche métier : correspond à la partie fonctionnelle de l'application, celle qui implémente la logique, et qui décrit les opérations que l'application opère sur les données, en fonction des requêtes d'un utilisateur effectué au travers de la couche présentation.

· La couche accès aux données : elle consiste en la partie gérant l'accès à la base de données du système.

Il existe différentes architectures pour une application :

1. Architecture 1-tiers

Dans une application un tiers les couches applicatives sont liées et s'exécutent sur le même ordinateur. On ne parle pas ici d'architecture client-serveur, mais d'informatique centralisée. Dans ce contexte plusieurs utilisateurs se partagent des fichiers de données stockés sur un serveur commun.

2. Architecture 2-tiers

L'architecture à deux niveaux (aussi appelée architecture 2-tiers) caractérise les systèmes clients/serveurs pour lesquels le client demande une ressource et le serveur la lui fournit directement, en utilisant ses propres ressources. Cela signifie que le serveur ne fait pas appel à une autre application afin de fournir une partie du service.

L'échange de messages transite à travers un réseau reliant les deux machines (client et serveur), il met en oeuvre des mécanismes relativement complexes qui sont, en général, pris en charge par un middleware. L'architecture 2-tiers présente de nombreux avantages qui lui permettent de présenter un bilan globalement positif : elle permet l'appropriation des applications par l'utilisateur, l'utilisation d'une interface utilisateur riche et elle introduit la notion d'interopérabilité.

Figure 2. I. Architecture 2-tiers

3. Architecture 3-tiers

L'architecture 3-tier aussi appelée architecture à trois niveaux ou architecture a trois couches, est l'application du modelé plus général qu'est le multi-tiers. L'architecture logique est divisée en trois niveaux ou couches :

ü Couche de présentation : La présentation de données correspond à l'affichage, la restitution sur le poste de travail, le dialogue avec l'utilisateur ;

ü Couche de traitement : Le traitement métier de données, correspond à la mise en oeuvre des règles de gestion et de la logique applicative ;

ü Couche d'accès aux données : L'accès aux données persistantes correspond aux données qui sont destinées à être conservées sur la durée, voire de manière définitive

C'est une architecture basée sur l'environnement client-serveur.

Voici comment se présente cette architecture trois-tiers que nous avons utilisé dans notre travail.

Figure 3. I. Architecture 3-tiers

2.10. Quelques langages de réalisation des Application Web

A. Le langage HTML (Hypertexte Markup Langage)

C'est un langage de description permettant de structurer et d'afficher différents objets surun écran (qu'on appellera abusivement "page"). Ces objets peuvent être du texte, destableaux, des images voire de la vidéo et des sons. Ils peuvent être aussi les élémentsdevenus classiques des environnements graphiques, à savoir les boutons, pop-listes, listesà ascenseurs, boîtes de dialogue... Sur la plupart de ces objets, il est possible de placerdes liens qui vont permettre de se connecter à d'autres pages. Ce langage est donc à l'origineessentiellement statique. Sur le serveur, le fichier HTML décrit une "scène" qui seraenvoyée à la demande vers un client (le browser, logiciel de navigation présent sur leposte de consultation). Ce client va décoder les instructions HTML pour afficher la scènequi restera ensuite la même ; seule une nouvelle requête vers le serveur sera à même d'enmodifier l'apparence.[11]

B. Le langage JavaScript

Crééà l'origine par Netscape, ce langage de programmation est conçu pour traiter localementdes événements provoqués par le lecteur (par exemple, lorsque le lecteur fait glisserla souris sur une zone de texte, ce dernier change de couleur). C'est un langage interprété,c'est-à-dire que le texte contenant le programme est analysé au fur et à mesure parl'interprète, partie intégrante du browser, qui va exécuter les instructions.Ce langage a fait l'objet d'une normalisation sous le nom de ECMAScript.[12]

Depuis l'origine, il est possible de faire exécuter par les serveurs des programmes dont lerésultat est une page Web. Contrairement à ces programmes, les "JavaScripts" sont chargés avec la page Web pour êtreexécutés sur le poste client par le logiciel de navigation. Cette notion d'exécution locale est importante. En effet, avec HTML le posteclient n'avait pas d'intelligence ; il se bornait à afficher une page telle qu'elle était décritedans le fichier provenant du serveur. Avec JavaScript, on exécute localement un programmetéléchargé lui aussi depuis le serveur ; ce programme est par définition uneentité capable de prendre des décisions en fonction d'événements survenant localement,une partie de l'intelligence résidant sur le poste client.Les browsers intègrent donc un interpréteur qui décode les instructions et les exécute aumoment opportun, soit par exemple au chargement de la page dans le browser, soit àl'apparition d'un événement particulier (clic sur un bouton, saisie d'une valeur, mouvementde souris, etc.).

C. PHP

PHP est un langage de script HTML exécuté du côté du serveur. Il veut dire « PHP : HyperText

Preprocessor ». Sa syntaxe est largement inspirée du langage C, de Java et de Perl, avec desaméliorations spécifiques. Le but du langage est d'écrire rapidement des pages HTML dynamiques.

L'origine de PHP remonte à 1995 quand RasmusLerdorf a créé PHP/FI, une librairie de scripts Perlutilisés pour la publication de son CV sur son site personnel. Au fur et à mesure des évolutions, lalibrairie a été portée en C et agrémentée de nouvelles fonctionnalités pour créer des pagesdynamiques simples pour le web et accéder à quelques sources de données. PHP/FI signifiePersonal Home Page/Forms Interpreter.[13]

PHP est un langage de programmation Orienté objet, qui facilite aussi la connexion aux bases des données que l'on peut gérer à partir des SGBD, il propose des différentes manières de se connecter aux basses des donnes comme le PDO, MySQL qui n'est plus utiliser actuellement qui est une ancienne version, on peut aussi utiliser Mysqli pour la connexion.

2.11. PayPal

PayPal Intégral Évolution est une plateforme de paiement permettant aux marchands de recevoir sur le site des paiements par carte et par compte PayPal. Cette solution est hébergée par PayPal. On n'ani donc à collecter ni à stocker d'informations relatives aux cartes des acheteurs sur le site, ce qui contribue à la conformité PCI.[14]

Intégral Évolution est le meilleur choix pour les marchands qui préfèrent une solution où les informations financières sont gérées par PayPal.Outre Intégral Évolution, PayPal recommande de mettre un bouton PayPal Express surle site. Le bouton apparaît beaucoup plus tôt dans le flux de paiement et donne auxtitulaires de compte PayPal la possibilité d'utiliser PayPal, augmentant ainsi le taux deconversion.

Si PayPal est la seule solution de paiement proposée sur le site, les transactions traitées viaIntégral Évolution peut bénéficier de la Protection des Marchands PayPal. Cette protection couvre les paiements effectués par l'intermédiaire du flux de paiement du site pour des objets vendus en France comme à l'étranger. Ceux-ci peuvent être payés à l'aide d'une carte ou d'un compte PayPal. Pour bénéficier de la Protection des Marchands PayPal, l'objet acheté doit être expédié à l'adresse que l'on communiquée à PayPal.

Pour bénéficier de la Protection des Marchands PayPal, on doit procéder à l'intégration en activant la vérification instantanée de paiement. La vérification de paiement est une fonction qui identifie les transactions à haut risque et nous avertit pour que nous puissions reporter l'expédition ou la livraison jusqu'à ce que le risque ait été évalué par PayPal. Cette fonction est disponible pour tous les marchands. Elle nous aide à réduire nos pertes et nous permet de faire bénéficier les transactions de la Protection des Marchands.

Lorsqu'une transaction est initiée, PayPal effectue une évaluation supplémentaire du risque présenté par l'acheteur. PayPal évalue toutes les transactions (Autorisations et Ventes) de façon immédiate et identifie les transactions à haut risque comme étant « En cours de vérification », et vous en êtes immédiatement averti. Vous ne devez pas envoyer les biens ou, s'il s'agit d'un support électronique, que vous ne devez pas autoriser l'accès au téléchargement tant que le paiement est en cours de vérification. Les spécialistes de la fraude PayPal étudient la transaction dans un délai de 24 heures et vous indiquent s'il s'agit d'une transaction Terminée (validée par la vérification de paiement) ou Annulée (rejetée par la vérification de paiement).

Pour les transactions à risque, nous vous conseillons de ne pas expédier les objets avant que la transaction ne soit Terminée. Les paiements validés sont admissibles à la Protection des

Marchands PayPal.

Pour intégrer Intégral Évolution à votre site, identifiez un point du flux de paiement de votresite où vous souhaitez placer un bouton sur lequel l'acheteur clique pour effectuer le paiement.

L'intitulé du bouton doit être Continuer, Payer ou un texte similaire et un clic sur le boutondoit déclencher l'envoi d'un formulaire POST à PayPal. Le clic sur ce bouton redirigeégalement le navigateur de l'acheteur vers la page de paiement de PayPal, où il peut procéderau paiement avec une carte ou son compte PayPal.

2.12. Orange Money

Orange Money est un « porte-monnaie électronique » qui permet de transférer de l'argent, recevoir de l'argent, payer des factures et des recharges téléphoniques, payer des commerçants, et retirer de l'argent dans n'importe quel point de vente Orange Money, le tout directement depuis le téléphone mobile.

Quel que soit l'opérateur mobile, la ligne mobile permet d'ouvrir un compte Orange Money.Il suffit de disposer d'une ligne mobile souscrite auprès d'un opérateur télécom établi dans son pays.Dans le cas contraire, achetez une SIM Orange en point de vente lors de l'inscription.

L'ouverture du compte Orange Money est immédiate. Juste après la réception du SMS qui confirme l'ouverture du compte, va permettred'effectuerla première transaction.

Conclusion 

Dans cette partie nous avons présenté la méthodologie, le language de modélisation, les applications web et les outil ou technologie qui en compagne ses application.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Nous devons apprendre à vivre ensemble comme des frères sinon nous allons mourir tous ensemble comme des idiots"   Martin Luther King