PROJET LMD-J2EE Projet encadré par Yves BEKKERS AGUILLON Patrick - ARFA Nizar -
PROJET LMD-J2EE Projet encadré par Yves BEKKERS AGUILLON Patrick - ARFA Nizar - BOLO Sébastien - CUINET Erwan DENIS Nolwenn - FERRAND Steeve - GAZAGNE Pierre-François HACHED Mehdi KERVRAN Damien - KHAOULANI Mohamed Amine - LE MONTREER Fiona LE VILLIO Yann-Arzel - LORAND Mikaël - MESSAN Benjamin - QUIBOEUF Aurélie RAYMOND Steeve - SALAS-BALLON Fany - THOMAS Aubin 1 Table des matières 1 Introduction......................................................................................................................................3 2 Le travail de recherche.....................................................................................................................4 2.1 Les CMS...................................................................................................................................4 2.2 Les serveurs d'application.........................................................................................................5 2.3 Les plugins d'Eclipse................................................................................................................6 3 Le site internet..................................................................................................................................7 3.1 Le contenu.................................................................................................................................7 3.2 L'apparence du site.................................................................................................................10 4 Conception de l'application............................................................................................................12 4.1 Le modèle UML......................................................................................................................12 4.2 Explication des packages – Objets métiers.............................................................................13 4.3 Spécification des attributs – Dictionnaire de données............................................................16 5 Noyau de l'application...............................................................................................................20 6 Organisation du projet....................................................................................................................21 6.1 Organisation du premier semestre..........................................................................................21 6.2 Organisation du second semestre................................................................................................24 6.2.1 Planning prévisionnel..........................................................................................................24 7 Conclusion......................................................................................................................................26 ANNEXES.........................................................................................................................................27 2 1 Introduction Dans le cadre de la première année de Master informatique, les étudiants sont amenés à réaliser un projet en groupe de quinze à dix-huit personnes. Ainsi, les étudiants apprennent à travailler en équipe, à partager et gérer leurs ressources, à assumer les responsabilités liées à un tel projet et à faire preuve d’indépendance décisionnelle. Tout ceci permet aux étudiants de se rendre compte de l’ampleur d’un tel projet et de la nécessité d’une bonne organisation. Le projet LMD-J2EE a pour principal objectif la création d'une application répartie. L'utilisation de la technologie J2EE (Java2 Enterprise Edition) met à notre disposition une architecture ainsi qu'un ensemble d'outils qui permettent d'assurer la robustesse et la richesse d'une application lourde. La création d'un portail d'information sur les différentes offres de formation universitaire est une des possibilités de mise en oeuvre de notre application. En effet, une telle architecture nous offre de multiples possibilités d'évolution. Par exemple : l'intégration d'un intranet, d'un service de gestion d'emploi du temps, etc. Depuis la mise en place de la réforme LMD, les universités rencontrant des obstacles pour adapter leur système ont besoin d’une centralisation de leurs données pour proposer une représentation plus claire de leurs formations. Le portail devra permettre les actions suivantes : · Ajout, modification et consultation des formations et des ressources les constituant. · Recherche au sein des ressources et des formations. · Gestion des différents types d’utilisateurs (lecteurs, enseignants, administrateurs). Après cette brève description de notre application, nous verrons en premier lieu le travail de recherche concernant les outils que nous avons etudié afin de préparer la phase de développement. Dans un second temps, nous détaillerons l'organisation du site internet : le contenu et l'apparence du site. Ensuite, nous exposerons la conception de l'application : les diagrammes organisationnels, la définition des différents objets métiers et leur contenu. Puis, nous décrirons globalement le fonctionnement du noyau de l'application. Enfin, nous présenterons les différentes méthodes d'organisation et le planning suivi. Pour réaliser notre étude, après s'être placés dans le contexte du projet, nous avons souhaité partir d'une vue globale avant d'analyser les choix techniques et les problèmes qui y sont liés. 3 2 Le travail de recherche Le travail de recherche était une étape importante du projet pour, tout d’abord, s’informer sur ces technologies nouvelles pour nous, et ensuite choisir entre les différents outils concurrents existants. Ces choix étaient basés sur des critères tels que : Open Source, portabilité, facilité d’utilisation, etc. 2.1 Les CMS Un CMS (Content Management System) est un outil devant entre autre permettre à plusieurs individus de travailler simultanément sur un ensemble de documents. Il est possible de structurer le contenu tout en séparant les opérations de gestion de la forme et du fond, et de fournir une chaîne de publication. C'est le principe fondamental de la gestion de contenu ; il garantit la cohérence, l'évolutivité et la robustesse de l'information. Il offre, par l'intermédiaire d'un ensemble de scripts accessibles en général par un navigateur web, la possibilité d'administrer un site internet de façon dynamique (contrairement aux sites purement HTML, totalement statiques). A travers cet outil, les administrateurs d'un site web ont donc, sans connaissances techniques spécifiques, la possibilité de créer, de manière intuitive, de nouvelles pages, de nouveaux chapitres, de supprimer ou de modifier certains contenus. 2.1.1 Magnolia · Points positifs Magnolia rend possible une édition en ligne simultanée, assurant ainsi la disponibilité du projet lors d'une phase d'écriture. Il permet aussi un suivi d'édition et un contrôle d'accès aux informations, grâce à un système d'identification. Magnolia dispose, selon le constructeur, d'un service de cache efficace. Sa programmation est basée sur les technologies JSP et Servlets. Le développement de Magnolia en Java donne aux développeurs l'assurance que ce CMS peut fonctionner avec un serveur d'application développé selon la technologie J2EE. Enfin, Magnolia est le premier CMS à s'appuyer sur la norme JSR 170 (Java specification request) et à définir une API pour permettre l'accès au référentiel de contenu nommé JCR. Ce standard a été défini pour que tous ceux souhaitant développer de nouveaux CMS, se mettent en conformité avec les spécifications définies par SUN pour l'accès au contenu. En réalité, la grande majorité des gestionnaires de contenus ont différents formats de données, ainsi que des plates-formes d'exécutions variées. Les problèmes d'accès aux données sont donc dûs à ces différences. Le but de la définition de ce standard est donc de remédier à ces problèmes. · Points négatifs Il s'agit d'un CMS écrit en Java nécessitant le JDK 1.4.1 au minimum. De plus, il ne semble pas fonctionner correctement avec tous les navigateurs. Enfin, comme nous voulons avoir un CMS assurant de bonnes montées en charge, l'absence de documentation concernant ce point ne nous permet d'utiliser Magnolia que comme outil de gestion de documents internes. 4 2.1.2 Lenya · Points positifs Lenya supporte tous les types de base de données. Il supporte l'identification des utilisateurs(LDAP et technologie constructrice) et permet donc un contrôle des accès aux informations. De plus, Lenya dispose d'un support commercial. Sa programmation se fait en Java/XML/XSLT/JavaScript/JSP. Lenya dispose d'un système de cache avancé et paramétrable. – supporté par la fonction Apache – pas de base de données interne (stockage sous forme de fichiers XML) – basé sur les standards : J2EE, XML, Cocoon, Lucène, Tomcat XSL – types de contenus paramétrables – gestion des droits d'édition – gestion des accès concurrents – éditeurs XLM et XHTML intégrés – prévisualisation avant production – export PDF des contenus « à la volée » – moteur de recherche intégré avec Lucene · Points négatifs Lenya ne dispose d'aucune documentation. De plus, il ne fournit pas le support FTP. 2.1.3 OpenCMS · Points positifs OpenCMS est un CMS puissant, multi-plateforme et déjà éprouvé. · Points négatifs Il est incompatible avec les JCR. 2.2 Les serveurs d'application Parmi les serveurs d'application les plus utilisés, nous pouvons noter WebSphere (IBM),Weblogic (BEA), Oracle (Oracle Corporation), .NET (Microsoft), JBoss (JBoss Inc.), et JOnAS (ObjectWeb). Dans le cadre de ce projet, nous avons étudié les deux serveurs gratuits : JBoss et JOnAS. 2.2.1 JBoss · Points positifs Nous avons choisi JBoss pour son évolutivité, sa facilité d'utilisation. De plus, il est peu gourmand en ressources, compatible avec J2EE et simple d'installation. · Points négatifs A ce jour, aucun problème n'a été soulevé. 5 2.2.2 JOnAS · Points positifs C'est un des meilleurs serveurs à l'heure actuelle. · Points négatifs Il connaît ces derniers temps un sérieux ralentissement dans son développement, ce qui le rend moins attractif. 2.3 Les plugins d'Eclipse 2.3.1 Description d'Eclipse Eclipse est une interface de développement extensible (IDE). De par cette extensibilité, nous avons l'opportunité d'installer des plugins de natures diverses qui nous permettront d'ajouter des fonctionnalités annexes pouvant s'avérer utiles et de simplifier la mise en oeuvre de notre application, par exemple avec Lomboz ou JBoss IDE. 2.3.2 Le plugin Lomboz Lomboz, plugin open source à destination des développeurs J2EE, ajoute à Eclipse des assistants pour la création de Servlets, de pages JSP et d'EJB. Une des directives du projet est d'ailleurs l'utilisation de la technologie J2EE ( Java 2 Enterprise Edition ). La plateforme J2EE permet de simplifier le développement d'applications multi-tiers. Elle met à notre disposition un ensemble d'API et une infrastructure d’exécution pour héberger des applications. · Points positifs Lomboz est un très bon plugin J2EE Open Source pour Eclipse, il est intuitif, léger et muni d'un assistant de génération de code très pratique. · Points négatifs Son principal défaut par rapport à un de ses rivaux, MyEclipse (qui n'est pas gratuit) se situe au niveau de la génération des EJBs, il ne faut pas oublier de les régénérer à chaque modification de code. 2.3.3 Le plugin JBoss IDE JBoss IDE est un plugin développé par l'équipe de JBoss afin de permettre une gestion simplifiée des serveurs JBoss. Il met également à disposition des outils de développement utiles au déploiement d'application sur le serveur JBoss (créateur de scripts de « packaging », et créateur de scripts de configuration XDoclet). · Points positifs Il s'agit d'un plugin simple d'utilisation et très efficace. · Points négatifs Quelques bugs concernant la gestion des serveurs subsistent. 6 3 Le site internet Lors de uploads/Management/ projet-lmd-j2ee.pdf
Documents similaires










-
33
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Oct 27, 2021
- Catégorie Management
- Langue French
- Taille du fichier 1.3285MB