380 likes | 537 Views
Projet 3i : informatisation. Projet 3 Organisation de la présentation. Qui sommes nous Le projet Objectifs Conception Réalisation Les choix Architecture technique L’accès aux données La sécurité Bilan Conclusion …. Démo et questions. L’équipe projet. Chantal Mordoh Rachid Souissi
E N D
Projet 3Organisation de la présentation • Qui sommes nous • Le projet • Objectifs • Conception • Réalisation • Les choix • Architecture technique • L’accès aux données • La sécurité • Bilan • Conclusion … Démo et questions
L’équipe projet • Chantal Mordoh • Rachid Souissi • Laurent Veyrieras
Projet 3 LE PROJET
Objectifs • Informatisation de l’association pour : • Diminuer les coûts de fonctionnement • Donner une meilleure information aux adhérents • Permettre l’inscription en ligne • Regroupement avec d’autres association à terme
Périmètre du projet • Lot 1 : réalisé dans le cadre du projet CNAM • Gestion des inscriptions des adhérents • Affichage des objectifs (et plannings des activités) • Affichage des événements • Lot 2 : • Gestion des affiliations annuelles • Gestion des paiements sécurisés • Gestion Intranet des relances clients et envois quotidiens • Lot 3 : • Mise en place des relations avec les associations partenaires • Lot 4 : • Mise à jour automatique de la compta et de la gestion client • Développement de statistiques • Optimisation de la gestion des ressources
Cahier des charges • Adhérents • Adhésion • Activité / Evénements • Règlements • Gestion : • Des relances • Envois du jour • Cotisations • Internet / Intranet
Organisation des données C'est beau un MCD
Accueil (présentation Association) Adhésion Evénements Sélection Activité Planning personnel Facture Modification Données perso Création Saisie mot De passe Règlement Liste des événements Liste des activités Planning personnel Mode règlement adresse N° tel & fax détail Règlement détail Règlement Mot de passe Nom email Cinématique Internet
Accueil (saisie mot de passe) Adhésion Gestion activité Gestion Mise à jour Données diverses création modification suppression radiation M S règlement relances Envois Du jour C Plan Cotisations Paramètres Envoi client liste liste Saisie pour un client Cinématique Intranet
Normalisation des écrans • Normes • Logo • Bannière et titre • Sous-menu • Menu principal • Zone de travail Valables pour tous les écrans
Choix techniques • Langages • HTML • Java (JSP 1.2 – JavaBeans 1.0 – Jvascript – JDK v J2SDK-1_4_0-win) • Javascript • SGBD • My SQL V 3.23.47-NT • JDBC org.gjt.mm.mysql.Driver • Moteur • Tomcat V 4.0.4 – B2 • Stabilisation de l’environnement de développement
Qu’est ce qu’une page JSP • C'est un document de type texte qui permet de créer une page web dynamique à la requête d'un client • Une page JSP contient : • des modèles de type texte contenant des formats de présentation (HTML), • des actions dynamiques contenues dans des instructions et dans des scriplets (JAVA).
Processus de conversion des pages JSP SERVLET (java) PAGE JSP (Document texte) convertie compilée Aucune modification depuis la dernière conversion chargée/exécutée Servlet (.class) Sortie Chargée exécutée
Qu'est-ce qu'un JavaBean? • C’est une classe java qui : • implémente la classe java.io.Serializable, • présente un constructeur sans paramètres, • définit des méthodes set et get pour chacun des attributs de la classe • contient la logique de connexion à la base de données et d’autres méthodes. • Il est instantié par la classe .jsp par l’élément <jsp:useBean id= « name" scope="session" class=« chemin de la .class" />
Intérêt de l’architectureJSP- JAVABEAN - VALUE OBJECT • Séparartion de la présentation (HTML) du traitement : séparation HTML du code java dans des classes de niveaux différents • d'où efficacité d'entretien et améliration de la protabilité. • Gestion dynamique du contenu : modification en fonction de l'état des données dans la base. • Sécurité : éviter un accès direct aux données par l'utilisateur • Réduire la charge d'accès aux bases : les attributs sont encapsulés dans une classe VALUE OBJECT (VO) : • Lecture : • VO getVO (){ return VO;} • Modification : • void setVO( VO vo){ this.vo=vo;}
Organisation des classes pour chaque entité • Exemple “Activité” • ActiviteHTML.jsp • ListeActivite.jsp • ModifyActivite.jsp ActiviteJB.java • ActiviteVO.java SGBD assoBD • AddActivite.jsp • DeleteActivite.jsp • SessionsPaActivite.jsp
Accès aux données - Principe • Principe de mise en oeuvre d’un objet héritant de AccesTable : • Initialisation de l’objet : • Nom et préfixe de la table • Un objet de type TCol est créé et initialisé par colonne • instanciation de l’objet de type TTable • Ecriture des méthodes get et set pour chacun des objet TCol • Ecriture des méthodes « plus spécifique »
AccesTable TCol ConnectionStatement TTable nomvaleurcle1 cle2 ordreAffichageDate de dernière majodre aff. colonne nomprefix Tcol[]nbColnbCol SetConnexion()insert()update()delete()idLibToAll()montantToAff() MontantToDB() DateToAff() DateToDB() getListeCol()getNbCol()initAttribut()readNext()affectation() IsJointure() RsetSql Jointure ResultSetSqlExceptionmessagenbLig Connection SelectAll()readNext() Personne getLstPersOBNom() getPersByIdPers()getPersByNom() E_newTel TTel Telephone AContacterAu Accès aux données : schéma de principe
Accès aux données Un peu de lecture
Accès aux bases : apports de la méthode • Tout ce qui est relatif à une table est décrit à un seul endroit : • une simplification de la maintenance évolutive • les ordres SQL d’accès à une table sont créés dynamiquement selon la description de celle-ci. • l’ajout d’une table au projet a un coût de développement java très réduit.
Projet 3 LA SECURITE
Sécurité : de quoi parle-t-on ? • Définition :“Absence réelle de danger que la réunion d'un ensemble de conditions matérielles et logiques permet d'obtenir dans la saisie, le traitement et la transmission des données, ainsi que dans la consultation des fichiers automatisés et la production des résultats “ • Périmètre : les paiements en ligne • Composants : • Moyens de paiement • Normes technologiques • Les enjeux
Site Web Marchand Paiements hors Internet Paiements par Internet Abonnement Virement Prélèvement Chèque, LCR CB CB Porte-monnaie Virtuel En clair Avec cryptage Authentification Sans authentification SSL seul Solution intégrée (intermédiaire financier) SET (certificat)) C-SET (carte à puce) panorama des moyens de paiement
➀ ➁ ➃ ➂ client marchand Centre CB Zoom sur la carte et ses dérivés • Caractéristiques : • Carte à piste • Carte à puce • Circuit • Les dérivés • Porte monnaie virtuel • Carte virtuelle
Les technologies : la cryptographie • Un peu d’histoire • Principe de base • Principaux algorithmes : • DES • RSA • Authentification • l’objectif • Aspect juridique
Le protocole Mise en œuvre : Simple Intégrée Les protocoles : SSL
SET C-SET Carte à puce Lecteur SET et C-SET
Comparatif • Points communs • Liaison sécurisée établie à la demande du client • Augmentation des temps de réponse ≈ 15%
Sécuriser en fonction de quels critères • Objectif du site • Montant et volume de commande • Activité sectorielle et type de produit • Marché visé
Projet 3 BILAN
Bilan du projet : quelques chiffres • 26 tables dont 15 gérés • Écrans • Charges
Les difficultés • Organisationnelles • Techniques • MySQL : • Intégrité des données • Gestion des vues • TomCat : version instable • Les ressources • Modification du périmètre
Evolutions possibles du projet • Mise en place des lots suivants • Graphisme
Perspectives en e-commerce • Potentiel d’évolution • Les clients • Les sociétés
Projet 3 Démo …