GÉNIE LOGICIEL AVANCÉ



Documents pareils
Catalogue des Formations Techniques

Paul FLYE SAINTE MARIE

7 villa de la citadelle Né le 13 mai Arcueil Nationalité : Française. Développeur Web JEE COMPÉTENCES

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Cours en ligne Développement Java pour le web

Dossier de Presse. Ergonomie. E-commerce. Portails internet. Applications Facebook. Logiciels «prêts à adapter» Logiciels sur mesure

Développement des Systèmes d Information

Joomla! Création et administration d'un site web - Version numérique

Refonte front-office / back-office - Architecture & Conception -

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É JAVA. 32 ans - 6 ans d'expérience

Ingénieur Développement Nouvelles Technologies

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis

CQP Développeur Nouvelles Technologies (DNT)

SYSTÈMES DE PUBLICATION POUR L INTERNET. Beatep Marie-France Landréa - Observatoire de Paris

Les outils de création de sites web

Rapport de stage. Création d un site web. Stage du 20/01/2013 au 21/02/2013

Programmation Web. Introduction

Echosgraphik. Ce document sert uniquement à vous donner une vision sur ma manière de travailler et d appréhender un projet

Avant-propos 1. Avant-propos Organisation du guide À qui s'adresse ce guide?...4

Formation en Logiciels Libres. Fiche d inscription

Bienvenue. Présentation de la société. Mons, le 19 septembre Gilles Dedisse, Chef de Projets

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février Exposé Système et Réseaux : ApEx, Application Express d Oracle

Nouveautés joomla 3 1/14

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Environnements de Développement

CHEF DE PROJET - DÉVELOPPEUR EXPÉRIMENT É PHP - JAVA -.NET. 28 ans - 7 ans d'expérience

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

TP1 : Initiation à Java et Eclipse

Mercredi 15 Janvier 2014

May Lopez PETIT COUTEAU SUISSE CRÉATIF. May Lopez Petit couteau suisse créatif

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Remote Cookies Stealing SIWAR JENHANI (RT4) SOUHIR FARES (RT4)

OFFRE MDB Service & Architecture Technique. MyDataBall Saas (Software as a Service) MyDataBall On Premise

webmestre : conception de sites et administration de serveurs web 42 crédits Certificat professionnel CP09

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Formation : Langues : Types d Intervention et Secteurs d Activité :

Bienvenue. Présentation de la société. Microsoft Innovation Center, le 20 mars Gilles Dedisse, Chef de Projets

ECLIPSE ET PDT (Php development tools)

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Bases de données et interfaces Génie logiciel

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É JAVA - J2EE. 27 ans - 5 ans d'expérience

OFF OF R F E R E DE D E S TA T G A E G 02/04/09

Programmation Web. Madalina Croitoru IUT Montpellier

les techniques d'extraction, les formulaires et intégration dans un site WEB

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Mise en œuvre des serveurs d application

Expert technique J2EE

IBM DB2 Alphablox. d administration GC

FICHE TECHNIQUE. Secondaire et postsecondaire

INGÉNIEUR - DÉVELOPPEUR EXPÉRIMENT É PHP - MAGENT O. 30 ans - 6 ans d'expérience

Outil de planification en ligne pour des créations de rendez-vous ou de sondage

TIC 12 ATELIER INTEGRATION CAHIER DES CHARGES. Page 1/5

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Projet 2. Gestion des services enseignants CENTRE D ENSEIGNEMENT ET DE RECHERCHE EN INFORMATIQUE. G r o u p e :

REQUEA. v PD 20 mars Mouvements d arrivée / départ de personnels Description produit

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Ingénieur R&D en bio-informatique

Architectures en couches pour applications web Rappel : Architecture en couches

M1 IFPRU Cahier des Charges du projet de TER. Vidéo Surveillance sur IP Le système Rapace. Membres du groupe : Encadrés par :

emuseum PUBLIEZ VOS COLLECTIONS SUR INTERNET Pourquoi choisir emuseum? Intégration facile avec TMS Puissante fonction de recherche

Notre Catalogue des Formations IT / 2015

Profil. Formations Certifications. Etienne de LONGEAUX Architecte logiciel/ Lead développeur PHP5/SYMFONY2/ZEND 13 ans d expérience.

Master Technologies numériques appliquées à l'histoire Deuxième année

Comparatif CMS. Laurent BAUREN S Bérenger VIDAL Julie NOVI Tautu IENFA

Un serveur d'archivage

Petite définition : Présentation :

LICENCE PROFESSIONNELLE SYSTEMES INFORMATIQUES & LOGICIELS

Documentation de conception

Formation Webmaster : Création de site Web Initiation + Approfondissement

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

Devenez un véritable développeur web en 3 mois!

Normes techniques 2011

Formation : WEbMaster

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

Utilisation de Jakarta Tomcat

CATALOGUE FORMATION 2015

Bien programmer. en Java ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

HTML. Notions générales

ANICOTTE Guillaume GUFFROY Matthieu LIMA Juliette SALLOUH Chamsseddine CAHIER DES CHARGES SI 28

SITE WEB E-COMMERCE ET VENTE A DISTANCE

QUELQUES ÉLÉMENTS DU DÉVELOPPEMENT LOGICIEL

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Bibliothèque Numérique L'intégrale Collection Ressources Informatiques

Publier dans la Base Documentaire

Banque de données d offres & carte web interactive d offres

Ingénieur d Etudes.NET. Involys :.NET,3.5, C#, Vb.net, Asp.net, vb6,sql server2005, Oracle8i, TFS, MSProject, UML, Rational Rose

Nous vous proposons des formations à la carte et vous accompagnons dans leur mise en oeuvre au quotidien.

Le passage à l échelle de serveur J2EE : le cas des EJB

Comment faire pour créer ses propres pages html?

UTILISATEUR. Notice d utilisation du service Support de Psi Informatique

Développeur - Conseiller - Formateur web

Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE

Autour du web. Une introduction technique Première partie : HTML. Georges-André SILBER Centre de recherche en informatique MINES ParisTech

Transcription:

Institut de la Francophonie pour l Informatique RAPPORT DU PROJET GÉNIE LOGICIEL AVANCÉ Implémentation d un logiciel de gestion d emploi du temps de l IFI Réalisé par: KASEREKA Kabunga Selain TRƯƠNG Xuân Hà PHI Huu Tuan Hanoï, Avril 2013

TABLE DES MATIERES 1. INTRODUCTION... 3 2. SPECIFICATION DE L'APPLICATION... 3 3. LES EXIGENCES FONCTIONNELLES ET NON FONCTIONNELLES DE L'APPLICATION... 4 3.1. Méthodes pour définir/capturer les exigences... 4 3.2. Exigences fonctionnelles de l application... 4 a. Diagramme de cas d utilisation... 6 3.3. Les exigences non-fonctionnelles de l application... 6 4. LA CONCEPTION... 7 4.1. Diagramme de classe... 7 4.2. Diagramme de séquence... 8 a. Ajouter des nouvelles informations... 8 b. Connexion au système par l administrateur... 8 c. Afficher les informations... 9 5. IMPLEMENTATION ET TEST... 9 5.1. Solutions techniques... 9 a. Le choix de la plate forme de développement... 9 b. Le choix du langage de programmation... 9 c. La base de données... 10 d. Architecture générale de l application... 10 e. Partage des tâches... 11 6. CONCLUSION ET PERSPECTIVES... 15

1. INTRODUCTION C est dans le cadre du cours de Génie logiciel avancé que nous avons réalisé ce travail. Le but poursuivi est de mettre en place un logiciel de gestion d emploi tu temps à l IFI Jadis les notions de gestion par les technologies de l'information et de la communication n'existaient pas, la gestion d'informations était totalement manuelle et plusieurs désavantages de cette façon de faire se sont vite fait remarquer par plusieurs indices. Nous pouvons citer le gaspillage de temps dans la gestion, la sécurité des informations non garantie, les erreurs dans les calculs rendant ainsi le résultat biaisé, etc. L outil que nous développons est un logiciel qui doit permettre à l IFI de gérer l emploi du temps pour ses étudiants concernant les séances de cours, les professeurs, les emplois du temps selon les années, Ce petit document présente d une manière générale les spécifications du logiciel implémenté, l analyse du problème, la modélisation et l implémentation. 2. SPECIFICATION DE L'APPLICATION Le projet que nous concevons et réalisons dans ce travail est un gestionnaire de l emploi du temps de l IFI. Ce logiciel fourni aux utilisateurs les fonctionnalités suivantes: 1. Ajouter un emploi du temps; 2. Ajouter une séance de cours à l emploi du temps; 3. Ajouter un professeur 4. Ajouter un module de classe 5. Supprimer une séance de cours 6. Afficher Emploi du temps 7. Afficher module de classe 8. Afficher des informations sur le module 9. Afficher un professeur et les informations sur lui 10. Modifier un emploi du temps; 11. Modifier une séance de cours; 12. Modifier un professeur 13. Modifier un module de classe

3. LES EXIGENCES FONCTIONNELLES ET NON FONCTIONNELLES DE L'APPLICATION 3.1. Méthodes pour définir/capturer les exigences Pour bien capturer les exigences de notre logiciel, nous avons appliqué quelques méthodes vues au cours : Interview : cette méthode nous a permis de discuter avec Monsieur Tuan sur l utilisation de l emploi du temps qui existe déjà à l IFI. Observation : cette méthode nous a permis de voir le logiciel existant en ligne et directement chez monsieur Tuan, son administrateur enfin de relever ses difficultés et voir ses souhait sur son utilisation. Séance de réflexion : grâce a cette méthode nous avons effectue quelques discussion avec les utilisateurs prévus pour le nouveau système (étudiant, monsieur Tuan, ) 3.2. Exigences fonctionnelles de l application Notre application se base sur plusieurs exigences fonctionnelles que nous décrivons dans le tableau ci-dessous : EF 1.0 EF 1.1 EF 1.2 EF 1.3 Ajouter un emploi du temps Le système doit demander de saisir des informations sur l emploi du temps Le système doit enregistrer l emploi du temps Le système doit attribuer un identifiant à cet emploi du temps EF 2.0 EF 2.1 EF 2.2 EF 2.3 Ajouter une séance de cours à l emploi du temps Le système doit demander de saisir des informations sur la séance Le système doit enregistrer la séance Le système doit attribuer un identifiant à cette séance EF 3.0 EF 3.1 Modifier un professeur Le système doit permettre de modifier un professeur

EF 3.2 Le système doit permettre d enregistrer les nouvelles informations sur la personne EF 4.0 EF 4.1 EF 4.2 Supprimer un professeur Le système doit permettre de supprimer un professeur Le système doit demander la confirmation de suppression EF 5.0 EF 5.1 Afficher Le système doit permettre d afficher les informations sur l emploi du temps, sur les classes, sur les modules, sur les professeurs EF 6.0 EF 6.1 EF 6.2 EF 6.3 Ajouter un professeur Le système doit demander de saisir des informations sur le professeur Le système doit enregistrer le professeur Le système doit attribuer un identifiant à ce professeur EF 7.0 EF 7.1 EF 7.2 EF 7.3 Ajouter un module de classe Le système doit demander de saisir des informations sur le module Le système doit enregistrer le module Le système doit attribuer un identifiant à ce module EF 8.0 EF 8.1 EF 8.2 Modifier une séance de cours Le système doit permettre de modifier une séance Le système doit permettre d enregistrer les nouvelles informations sur une séance EF 9.0 EF 9.1 EF 9.2 Supprimer une séance de cours Le système doit permettre de supprimer une séance Le système doit permettre de mettre a jour Tableau 1. Tableau des exigences fonctionnelles

a. Diagramme de cas d utilisation Ci-dessous nous présentons le diagramme de cas d utilisation pour montrer l interaction entre les utilisateurs et le système : Figure 1. Diagramme de cas d utilisation 3.3. Les exigences non-fonctionnelles de l application Ci-dessous nous présentons un tableau qui présente les exigences non fonctionnelles, leur description et leur numéro d exigence fonctionnelle utilisées. Description EF utilisée ENF 1.0 Le taux pour qu un échec survienne lors Toutes les exigences

d une opération sur le système doit être très faible soit 0.0001% ENF 2.0 Le système doit être disponible durant toutes les opérations ENF 3.0 En cas de défaillance, le système ne devra pas causer de dommages matériels ENF 4.0 En cas d erreurs venant de l utilisateur, les données ne doivent subir aucun changement, la disponibilité des données doit être garantie. ENF 5.0 Le système doit avoir au plus 3 secondes comme temps de réponse à une opération. Toutes les exigences Toutes les exigences Toutes les exigences Toutes les exigences Tableau 2. Tableau des exigences non fonctionnelles 4. LA CONCEPTION 4.1. Diagramme de classe Voici le diagramme de classe de notre application : Figure 2. Diagramme de classe

4.2. Diagramme de séquence Dans ce point nous présentons les opérations qui se font sur le système via le diagramme de séquence : a. Ajouter des nouvelles informations Figure 3. Diagramme de séquence de l ajout dans le système b. Connexion au système par l administrateur Figure 4. Diagramme de séquence connexion au système par l administrateur

c. Afficher les informations Figure 5. Diagramme de séquence pour afficher les informations 5. IMPLEMENTATION ET TEST 5.1. Solutions techniques a. Le choix de la plate forme de développement Pour implémenter notre application nous avons utilisé Eclipse IDE, qui est un environnement de développement intégré libre extensible, universel et polyvalent, permettant potentiellement de créer des projets de développement mettant en œuvre n'importe quel langage de programmation. b. Le choix du langage de programmation Le langage utilisé pour l implémentation de cette application est le langage java, le JSP, le XHTML, le CSS, et JavaScript. Notons que les serveurs Apache et tomcat7 nous ont aussi servi pour la mise en place de ce logiciel. Grace au langage java nous avons programmée notre applications d'une façon orientée objet, donc une application bien structurée, modulable, maintenable beaucoup plus facilement et efficace. Le JSP a été utilisé pour appelé nos classes java dans des pages HTML grâce aux Beans, le CSS nous a servi pour faire nos feuilles de style.

c. La base de données Nous avons utilisé Mysql comme système de gestion de base de base de données pour créer notre base de données. Ci-dessous nous présentons la structure de nos tables dans la base. Figure 5. La structure des tables dans la base de données d. Architecture générale de l application Figure 6. Architecture générale

e. Partage des tâches Pour mieux réaliser ce travail nous avons jugé bon de partager les taches spécifiques: Codage Java et base de données: TRƯƠNG Xuân Hà et KASEREKA Selain Codage view JSP, CSS, JavaScript, HTML, XHTML : TRƯƠNG Xuân Hà et KASEREKA Selain Analyse et conception : TRƯƠNG Xuân Hà, KASEREKA Selain et PHI Huu Tuan Rapport : TRƯƠNG Xuân Hà, KASEREKA Selain et PHI Huu Tuan 5.2. Le test d acceptation Dans cette partie nous soumettons à notre programme un jeu de données pour le tester. Ces opérations englobent l ensemble d opérations qui seront faites par les utilisateurs de ce logiciel. 1. Home Page La page ci-dessous est le Home Page de notre logiciel, grâce à cette page, l utilisateur a la possibilité de faire le choix dans les options précises ci-dessous (choisir promotion et choisir la classe) pour voir l emploi du temps correspondant ou voir les cours correspondants. Soulignons que nous utilisons un navigateur web pour visualiser nos pages car nous avons mis en place une application web.

Admettons que l utilisateur choisisse de voir l emploi du temps, la fenêtre ci-dessous s affiche selon les choix de l utilisateur. 2. Affichage de l emploi du temps Sur cette page plusieurs options sont disponibles : Voir les détails sur le cours, il suffit de cliquer sur le cours pour savoir la durée du cours et s il enseigné par quel professeur. Voir la semaine suivante ou précédente en cliquant sur suivant ou précédent sur le bas de page droit. 3. Détails sur le cours

Ici nous voyons les détails sur le cours Initiation UNIX enseigné par le Professeur Nguyen Hong Quang dont la durée est de 15 Heures. Soulignons que toutes ces informations sont tirées de notre base de données. 4. Détails sur le professeur Sur la figure ci-dessus, il suffit de cliquer sur le nom du professeur pour avoir des informations sur lui, notamment son email, et tous les cours qu il donne. 5. Ajouter des informations sur l emploi du temps

6. Affichage des tous les cours 7. Supprimer une séance dans l emploi du temps Sur cette fenêtre, l administrateur peut, après s être connecté avec succès, supprimer les séances dans l emploi du temps.

6. CONCLUSION ET PERSPECTIVES Dans ce document nous présentons le logiciel que nous avons réalisé. Ce programme permet de gérer l emploi du temps dans une institution académique, nous avons pris le cas spécifique de l IFI. Pour la partie modélisation nous avons utilisé UML. Les opérations, dans ce logiciel, sont faites en interaction avec une base de données Mysql. Ce programme marche très bien et répond aux exigences décrites dans le cahier de charge. Cependant, ce programme peut être amélioré dans l avenir pour permettre la prise en charge d autres fonctionnalités que nous n avons pas fini à implémenter, notamment les notifications automatiques par mail.