Vous êtes sur la page 1sur 38

Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Introduction générale

Dans un monde actif et continuellement évolutif, la motivation d'avoir des moyens perfor-
mants et efficaces de communication et d'échange d'informations devient de plus en plus fonda-
mentale.

Pour répondre à cet enjeu, les solutions collaboratives dans le cadre de notre projet position-
nent l’information au centre d' échanges d'utilisateurs de groupe .

Interconnectés, les services et les applications de partage de l’information s’articulent autour des
outils de communication et d'échange de l’information et de collaboration.

La centralisation, synchronisation et partage des données et de ressources. Alliant performance et


simplicité, ils se combinent afin de développer la synergie au sein de différents organisation.

Pour vos collaborateurs nomades, c’est là une possibilité d’optimiser l’organisation de leur temps
pour gagner en efficacité et en productivité.

C’est dans ce cadre qu’entre le sujet de notre PFE. Il s’agit en fait, de concevoir et de déve-
lopper une solution informatique assurant l’exposition de certaines informations sur les utilisa-
teurs, les départements, les filiales, les ressources de groupe matériel et immatériel et leurs par-
tages d'informations.

Pour une meilleure accessibilité à ces informations, nous avons décidé de développer une pla-
teforme capable de gérer et d’exposer toutes ses informations et de les synchroniser avec le ser-
veur d'annuaire d'utilisateur du groupe.

Ce rapport détaillera les différentes phases dont nous sommes passées par afin d’aboutir à une
intranet fiable et satisfaisante. Pour cela le rapport définit le travail qui nous avons effectué, il est
composée par trois grands chapitre. Le premier chapitre aura pour présente l’entreprise et
l’analyse et spécification des besoins, le deuxième chapitre est consacré aux conceptions. Le
dernier chapitre comporte les détails de réalisation de notre application.

1 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

et Fin d’É

Chapitre 1 : Analyses et Spécifications

des Besoins

2 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Chapitre 1 : Analyses et Spécifications des Besoins

I. Introduction
Dans ce chapitre, nous allons présenter en premier lieu la société dans laquelle nous avons
effectué notre stage de fin d’étude. Ensuite, nous allons faire une étude de l’existant sur les mo-
dalités des travaux actuelles afin de partager ou réserver une ressource dans l'entreprise. Enfin
nous allons spécifier l'ensemble des besoins fonctionnels et non fonctionnels liés à notre projet.

II. Cadre du projet


Le projet entre dans le cadre de préparation de stage de fin d'études pour l'obtention de la li-
cence appliquée en Développement des Systèmes d’Information (DSI) de l'Institut Supérieur
d’Études Technologiques de Sousse. Ce projet a été effectué au sein de la société Proxym Group
durant la période du 4 mois.

III. Présentation de la société

Le groupe Proxym est un acteur informatique mondial reconnu comme un fournisseur de ser-
vices numériques dans les domaines du gouvernement intelligent, de la finance et du commerce
de détail, ainsi que comme intégrateur de solutions numériques par le biais de ses quatre filiales
de montage de logiciels dans les domaines de la banque OMNICANAL numérique Bankerise,
Gestion de flotte - NAVIACOM, vente au détail et distribution - VALOMNIA et Smart Home -
CHIFCO.
Avec plus de 400 projets numériques réussis et clients satisfaits depuis 2006 et plus de 170 ingé-
nieurs mobiles en Europe, en Afrique et au Moyen-Orient, le groupe Proxym est au cœur de l'in-
novation, comme en témoigne sa sélection parmi les 100 partenaires commerciaux les plus inno-
vants d'IBM.

Figure 1 : Logo de la société

3 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

IV. Étude de l’existant

1. Description de l’existant

Actuellement ce qui concerne la gestion des accès pour les applications ou pour les ressources
de groupe, en trouve que les informations des accès sont partagées par des emails ou bien sur un
bout de papier avec des grands risques de sécurité.
La réservation des ressources dans le groupe n'est pas standardiser avec aucun niveau de traçabi-
lité, elle nécessite toujours sur la vaillance du service IT. Et de même la gestion des équipements
n'est pas métrisé du service concerné, et pose beaucoup de problèmes de disponibilités.

2. Critique de l’existant

Les problématiques sont nombreuses et couvrent plusieurs préoccupation:


=> Préoccupation en terme de rapidité : Comment accélérer le processus de façon à gagner
le maximum de temps.
=> Préoccupation en termes d’accessibilité: Comment fournir aux utilisateurs un environ-
nement simple et facile à exploiter.
=> Préoccupation en terme d’efficacité: Comment obtenir des résultats à satisfaisants à
l’utilisateur.

Pour y remédier nous devrions se doter d’une solution informatique à la fois simple,
pratique et robuste (Plateforme Web ou Intranet).

3. Solution proposée

Notre solution consiste à créer une d'intranet qui rassemble plusieurs modules dans une plate-
forme web contenant :

• Module authentification.
• Module gestionnaire de mot de passe comme un coffre fort.
• Module réservation de ressource.
• Module gestion de terminaux mobiles.

4 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Le module authentification c'est le module moteur qui géré les autorisation des accès au plate-
forme et qui gère la liste des collaborateurs ou utilisateurs de groupe avec la synchronisation de
l'information avec le système d'information active directory de groupe (AD) en respectant le pro-
tocole Lightweight Directory Access Protocol (LDAP).

Et par la suite notre plateforme gère les accès du différents applications du groupe et aussi les
accès aux différents serveurs et aux serveurs clients et le partage des mots de passes individuel-
lement ou avec un groupe d'utilisateurs en toute sécurité afin de facilité la navigation entre les
applications de groupe et veiller sur les accès sensible avec notification par mail .

Et aussi la plateforme gère les ressources de groupe talque les salles et les équipements avec
un système de réservation afin de bien optimisé et gérer les conflits d’horaire pour la disponibili-
té et garder le contrôle des équipements.

V. Comment gérer notre Projet?


1. Choix de la méthodologie

Le choix entre une méthode et une autre, dépend de la nature du projet et de sa taille. Pour des
projets de petite taille et dont le domaine est maitrisé, par exemple, un cycle de vie en cascade
s'avère largement suffisant. Lorsqu'il s'agit d'un projet ou les données ne sont pas réunies dés le
départ, ou les besoins sont incomplets voire floues, il faut s'orienter vers une méthode itérative
ou orientées prototypes.

Parmi les méthodes itératives, nous pouvons distinguer les méthodes AGILE largement utili-
sées de nos jours à travers le monde. Une méthode AGILE est menée dans un esprit collaboratif
et s'adapte aux approches incrémentales. Elle engendre des produits de haute qualité tout en te-
nant compte de l'évolution des besoins du client.

Une méthode AGILE assure une meilleure communication avec le client et une meilleure visi-
bilité du produit livrable. Elle permet aussi de gérer la qualité en continu et de détecter des pro-
blèmes le plus tôt au fur et à mesure, permettant ainsi d'entreprendre des actions correctrices sans
trop de pénalités dans les couts et les délais.

Il y a moult méthodes AGILE et il ne s'agit pas de choisir la meilleure méthode parmi celles
existantes. Il s'agit plutôt de sélectionner la méthode la plus adaptée à notre projet.

5 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

La nature de projet qui doit être évolutif et dont tous les besoins n'ont pas encore été totalement
identifiés, nous a orientées vers une méthode de type AGILE et plus particulièrement SCRUM.

2. Présentation de la méthodologie SCRUM

Le principe de la méthodologie SCRUM est de développer un logiciel de manière incrémen-


tale en maintenant une liste totalement transparente des demandes d'évolutions ou de corrections
à implémenter.

Avec des livraisons très fréquentes, toutes les 4 semaines en moyenne, le client reçoit une pla-
teforme fonctionnel à chaque itération. Plus nous avançons dans le projet, plus la plateforme est
complet et possède toujours de plus en plus de fonctionnalités.

Figure 2 : Cycle de vie de la méthode SCRUM

Comme nous pouvons le remarquer dans cette figure, pour mettre en place la méthode
SCRUM, il faut tout d'abord définir les différentes fonctionnalités de notre intranet qui forment
le Backlog du produit.
Les sprints durent généralement une à quatre semaines. Durant un sprint, il y a toujours des réu-
nions quotidiennes entre les différents collaborateurs du projet afin de présenter l'état d'avance-
ment des différentes taches en cours, les difficultés rencontrées ainsi que les taches restantes à
réaliser.

6 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Une fois le produit partiel est prêt, nous vérifions la conformité de ce qui a été fait durant le
sprint et nous pouvons alors l'améliorer en procédant à l'étape de rétrospective.

2.1. Principes essentiels de la méthode

Nous pouvons remarquer quatre valeurs principales dans les méthodes agiles :
• L'équipe : nous nous concentrons sur les personnes et leurs interactions plutôt, que sur
les processus et les outils.
• L'application: le plus important c'est d'avoir une plateforme fonctionnelle plutôt que
d'avoir une documentation complète.
• La collaboration : cette méthode se base sur la collaboration avec le client.
• L'acceptation du changement : nous ne suivons pas un plan fixe mais nous réagissons à
chaque nouveau changement.

2.2. Organisation

La méthodologie SCRUM fait intervenir 3 rôles principaux qui sont :


• Product owner : dans la majorité des projets, le responsable produit (Product owner) est
le responsable de l'équipe projet client. C'est lui qui va définir et prioriser la liste des
fonctionnalités du produit et choisir la date et le contenu de chaque sprint sur la base des
valeurs (charges) qui lui sont communiquées par l'équipe,

• Scrum Master : véritable facilitateur sur le projet, il veille à ce que chacun puisse tra-
vailler au maximum de ses capacités en éliminant les obstacles et en protégeant l'équipe
des perturbations extérieures. Il porte également une attention particulière au respect des
différentes phases de SCRUM.

• Equipe : l'équipe s'organise elle-même et elle reste inchangée pendant toute la durée d'un
sprint. Elle doit tout faire pour délivrer le produit.

• Intervenants : ils observent et donnent des conseils à l'équipe.

Dans notre projet, nous pouvons distinguer les rôles suivants :


• Product owner : M. Hamdi Ben Abdallah,
• Scrum Master : M. Hamdi Ben Abdallah

7 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

• Testeur : M. Hamdi Ben Abdallah,


• Développeurs: Jedidi Rochdi.

VI. Spécifications des besoins


La spécification de besoins constitue la phase de départ de toute application à développer.
Dans cette partie nous allons identifier les besoins de notre intranet. Nous allons mette
l’accent sur les besoins fonctionnels ainsi que les besoins non fonctionnels pour éviter le déve-
loppement d’une intranet non satisfaisante.

1. Besoins fonctionnels

Dans notre plateforme l'utilisateur qui à le rôle administrateur peut gérer et paramétrer les dif-
férents modules de la solution, talque le module :
• Configuration qui contient principalement la configuration et le mappage des attributs de
notre serveur LDAP, qui assure la synchronisation de notre serveur web avec le serveur
LDAP .
• Et aussi la configuration de notre serveur de messagerie sortant qui assure la notification
dans notre plateforme.
• Et de même il peut aussi créer, modifier ou supprimer des nouvelles compagnies, des
nouveaux départements, des types utilisateurs, des nouveaux jobs...

Et en effet chaque utilisateur indépendamment de son rôle, utilisant sont login et mot de
passes AD, ils peuvent exploiter les autres modules de la plateforme tout dépond de leur type
d'utilisateur (Admin or simple User).
Et ce qui concerne le module de réservation de ressource matériel, il ya une interface de créa-
tion, modification ou suppression de ressources, et une interface de partage de ressource avec un
collaborateur ou avec groupe de collaborateur et de même l'utilisateur peut lister, modifier, sup-
primer ou cloner une ressource partagé, une interface d'inventaire de ressource et une interface
de réservation avec la possibilité de lister et consulter le planning de réservation.
Et finalement entente de développer un web service qui peut être exploitable par d'autres solu-
tions indépendamment de sa plateforme.

8 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

2. Besoins non fonctionnels

Les besoins non fonctionnels spécifient les propriétés du système telles que les contraintes
d'environnement et d'implémentation, la performance, la maintenance, l'extensibilité et la flexibi-
lité. Certains besoins non fonctionnels sont généraux et ne peuvent pas être rattachés à un cas
d'utilisation particulier.

Les contraintes ergonomiques sont les contraintes liées à l'adaptation entre les fonctionnalités de
l'intranet et leur utilisation. Pour notre intranet, nous devons obéir aux contraintes ergonomiques
suivantes :

- Permettre un accès rapide de l'information.


- Interface simple et compréhensible.
- L'organisation des rubriques, des onglets, etc.

La plateforme doit guider les collaborateurs ou le back office afin d'avoir leurs demandes. C'est à
dire qu'elle doit être développée avec un langage compréhensif, et de présenter les informations
d'une façon simple et claire.

Et pour les contraintes techniques il faut que toutes les interfaces de l'intranet soit homogène, en
effet, les différentes pages doivent suivre le même modèle de représentation (couleurs, images,
textes défilants, etc.).
Et finalement le code doit être extensible et maintenable pour faciliter toute opération d'améliora-
tion ou d'optimisation.

VII. Conclusion
À travers ce chapitre, nous avons présenté l’entreprise et le cadre du projet. En outre nous
avons analysé et étudié nos fonctionnalités et augmenter la performance de notre intranet pour
répondre à nos besoins en appuyant sur la méthode Agil.
Ainsi, nous nous sommes positionnés dans le contexte de notre projet, ceci va nous permettre
d’entamer la prochaine étape qui consiste à présenter la phase de conception.

9 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Chapitre 2 : Conception

10 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Chapitre 2 : Conception

I. Introduction
Le Modèle conceptuel de données est une représentation statique du système d’information. Il a
comme objectif de constituer une représentation claire et cohérente des données manipulées dans
le système d’information.

Cette section sera présentée comme suit : nous commençons par le choix de la méthodologie de
conception et justification. Ensuite nous identifions les acteurs et les diagrammes des cas
d’utilisation, puis nous présentons les diagrammes de séquence, enfin le diagramme de classe.

II. Langage de conception


Pour élaborer cet application on doit établir une conception modeste pour attentera le but de
notre projet pour cela on doit choisira un langage de conception adaptable avec notre besoins.

1. Langage UML

« UML » (en anglais Unified Modeling Language ou langage de modélisation unifié) est un lan-
gage de modélisation graphique à base de pictogrammes. Il est apparu dans le monde du génie
logiciel, dans le cadre de la « conception orientée objet ».

Couramment utilisé dans les projets logiciels, il peut être appliqué à toutes sortes de systèmes ne
se limitant pas au domaine informatique.

Les 14 diagrammes UML sont dépendants hiérarchiquement et se complètent, de façon à per-


mettre la modélisation d'un projet tout au long de son cycle de vie. Ces diagrammes sont :

• Diagrammes structurels ou statiques:

o Diagramme de classes

o Diagramme d'objets

o Diagramme de composants

o Diagramme de déploiement

o Diagramme des paquetages

o Diagramme de structure composite


11 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019
Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

o Diagramme de profils

• Diagrammes comportementaux :

o Diagramme des cas d'utilisation

o Diagramme états-transitions

o Diagramme d'activité

• Diagrammes d'interaction ou dynamiques :

o Diagramme de séquence

o Diagramme de communication

o Diagramme global d'interaction

o Diagramme de temps

2. Utilisation de l’UML

L’UML est un langage formel et normalisé en termes de modélisation objet. Son indépen-
dance par rapport aux langages de programmation, son caractère polyvalent et sa souplesse ont
fait de lui un langage universel. En plus UML est essentiellement un support de communication,
qui facilite la représentation et la compréhension de solution objet. Sa notation graphique permet
d’exprimer visuellement une solution objet, ce qui facilite la comparaison et l’évaluation des
solutions. L’aspect de sa notation, limite l’ambigüité et les incompréhensions.

III. Diagramme de cas d’utilisation

1. Les Acteurs

Nous allons maintenant énumérer les acteurs susceptibles d'interagir avec le système. Tout
d'abord, nous commençons par définir ce qui est un acteur.
Définition : un acteur représente l'abstraction d'un rôle joué par des entités externes (utilisateur,
dispositif matériel ou autre système) qui interagissent directement avec le système étudié.
Les acteurs de notre intranet sont :
Administrateur (Service IT): C'est lui qui gère les différents module de configuration et de
paramétrage de l'intranet avec un rôle Super user.
Les collaborateurs: Se sont les utilisateurs qui exploitent et alimentent les ressources de l'in-
tranet ou la plateforme avec un rôle utilisateur.

12 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Le serveur AD: C'est le serveur qui stock la liste des utilisateurs de groupe et qui autorise l'ac-
cès dans le réseau de groupe.

Acteur Type Acteur Descriptions


• Configurer la synchronisation avec le serveur AD

Super User • Configurer le mappage avec AD


(Administrateur) • Configurer la synchronisation avec le serveur SMPT
• Gérer les compagnies du groupe
• Gérer les départements du groupe
Acteur
• Gérer les titres d'emplois du groupe
Principale
• Gérer les types utilisateur du groupe
Utilisateur
• Lister le personnelle du groupe
(Collaborateur)
• Gérer la gestion d'actifs du groupe
• Gérer la gestion de ressources
• Enregistrer et partager les ressources dans le groupe
• Stoker les informations relatifs au utilisateur
Serveur AD
• Import les données

Acteur • Lancer les mises à jour de la liste user


Secondaire • Envoyer les notifications
Serveur Web
• Synchroniser avec AD
• Stocker et délivrer des pages web

Tableau 1 : Descriptions des acteurs

2. Diagramme de cas d’utilisation global

Chaque usage que les acteurs font du système est représenté par un cas d’utilisation. Chaque
cas d’utilisation représente une fonctionnalité qui leur est offerte afin de produire le résultat at-
tendu. Ainsi, le diagramme de cas d’utilisation décrit l’interaction entre le système et l’acteur en
déterminant les besoins de l’utilisateur et tout ce que doit faire le système pour l’acteur.

13 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Figure 3 : Diagramme de cas d'utilisation global pour l'intranet

14 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Titre : • Diagramme de cas d’utilisation globale

• SuperUser, Collaborateur, Serveur AD, Serveur Web,


Acteurs :
Système intranet
Raffinement du Dia-
• Aucun
gramme :
• Connexion au même réseau requise
Pré conditions :
• L’authentification requise
Description : • Configurer la synchronisation avec le serveur AD
• Configurer le mappage avec AD
• Configurer la synchronisation avec le serveur SMPT
• Gérer les compagnies du groupe
• Gérer les départements du groupe
• Gérer les titres d'emplois du groupe
• Gérer les types utilisateur du groupe
• Lister le personnelle du groupe
• Gérer la gestion d'actifs du groupe
• Gérer la gestion de ressources
• Enregistrer et partager les ressources dans le groupe
• Stoker les informations relatifs au utilisateur
• Import les données
• Lancer les mises à jour de la liste user
• Envoyer les notifications
• Synchroniser avec AD
• Stocker et délivrer des pages web

Cas dérivé : • Si la l’authentification échoue un message sera affiche

Post Conditions : • Interfaces affichées

Tableau 2 : Détails du diagramme de cas d’utilisation global

15 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

3. Diagramme de cas d’utilisation « Authentification »

Figure 4 : Diagramme de cas d'utilisation Authentification

4. Diagramme de cas d’utilisation «Gérer la gestion de ressources»

Figure 5 : Diagramme de cas d'utilisation Gérer la gestion de ressources

16 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

IV. Diagramme de séquence


Le diagramme de séquence représente la succession chronologique des opérations réalisées
par un acteur et la représentation temporelle des interactions entre les objets, il indique les objets
que l’acteur va manipuler et les opérations qui font passer d’un objet à l’autre.

Afin de d'étendre le vocabulaire de l'UML, et de séparer les préoccupations de l'interface


homme-machine (IHM), l’application et les données. Il ya les stéréotypes, qui nous permettent
de classer les éléments du modèle.

Les stéréotypes sont utilisés pour ajouter de l’information sémantique aux diagrammes de
classes ou de données. Ils peuvent être utilisés pour dire aux gabarits ou à la génération de mo-
dules de traiter certains objets stéréotypés différemment (par exemple, en générant du code diffé-
rent).

Ces stéréotypes sont issues de l’architecture MVC (Model-View-Control)

Figure 6 : Architecture MVC

NB: On présentera ci-après les diagrammes de séquences, que nous avons jugés importants
de notre intranet.

17 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

1. Diagramme de séquence « Authentification »

Figure 7 : Diagramme de séquence « Authentification »

Ce diagramme décrit le cas de l’authentification dans notre plateforme, l’utilisateur doit indi-
quer son login et mot de passe. Une fois vérifiée le système charge l’interface d’accueil si non un
message d’erreur survenue sera affiché.

18 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

2. Diagramme de séquence « Lister le personnelle du groupe »

Figure 8 : Diagramme de séquence «Lister le personnelle du groupe»

Ce diagramme décrit le cas de lister les utilisateurs du serveur AD. Le collaborateur demande
de lister les utilisateurs, par la suite la vue demande la configuration du serveur AD du model, en
suite ce dernier retourne une réponse au vue, âpres cette dernière elle synchronise avec le serveur
AD en respectant le protocole LDAP et récupère une réponse contenant la liste des utilisateurs
avec les attributs mappées avec le module. Finalement la vue envoi ces données vers leur gabarit.

19 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

3. Diagramme de séquence « Gérer la gestion de ressources du


groupe »

Figure 9 : Diagramme de séquence «Lister le personnelle du groupe»

20 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

V. Diagramme de classes global


Le diagramme de classe représente les classes intervenant dans le système. Le diagramme de
classe est une représentation statique des éléments qui composent un système et de leurs rela-
tions.

Le diagramme suivant présent le diagramme de classe global.

Figure 10 : diagramme de classe global

21 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

VI. Conclusion
Ce chapitre a été consacré à différentes étapes de la conception détaillée. Du raffinement du dia-
gramme de cas d’utilisation, vers du diagramme de séquence de plusieurs cas d’utilisations pour
montrer les interactions entre les acteurs et le système. Finalement nous avons terminé avec le
diagramme de classe avec lequel nous avons pour présenter la structure de notre plateforme.
Le prochain chapitre contiendra des explications et des clarifications de plusieurs concepts en
rapport avec le contexte de notre travail.

22 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Chapitre 3 : Réalisation

23 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Chapitre 3 : Réalisation

I. Introduction
En détaillent ce chapitre, nous sommes déjà passé par les étapes nécessaires à fin d’entrainer la
phase de la réalisation. Le problème a été profondément analysé, nous avons défini une concep-
tion complète à notre jugement. Une conception qui comporte et décrit tous les besoins de
l’application.
Dans ce chapitre nous commencerons par la description de l’environnement de développement
(matériel et logiciel) ainsi que les différents outils utilisées. Ensuite, nous présenterons les diffé-
rents aspects de fonctionnement de notre application.

II. Environnement de travail


Dans ce paragraphe, nous allons présenter l’environnement matériel et logiciel de développe-
ment de l’application que nous avons utilisée.

1. Environnement matériel

Pour développer l’application, nous avons utilisé comme environnement matériel un ordina-
teur portable qui possèdent les caractéristiques suivant :

Marque Dell
Processeur Intel Core i5 2.4GHz
Mémoire 12 GO
Disque Dur SSD 128 GB
Système d’exploitation Windows 10 Professionnel

Tableau 3 : Performance du l'environnement matériel de développement

24 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

2. Environnement logiciel
PyCharm

PyCharm est un environnement de développement intégré utilisé pour pro-


grammer en Python. Il permet l'analyse de code et contient un débogueur gra-
phique. Il permet également la gestion des tests unitaires, l'intégration de logiciel de
gestion de versions, et supporte le développement web avec Django. Développé par
l'entreprise tchèque JetBrains, c'est un logiciel multiplateforme qui fonctionne sous
Windows, Mac OS X et Linux. Il est décliné en édition professionnelle, diffusé
sous licence propriétaire, et en édition communautaire diffusé sous licence Apache.

google chrome

Google chrome est un navigateur web propriétaire développé par Google basé
sur le projet libre Chromium fonctionnant sous Windows, Mac, Linux, Android et iOS.

Sqlite Browser

Sqlite Browser est un logiciel gratuit, domaine public, outil visuel open
source utilisé pour créer, concevoir et éditer des fichiers de base des données com-
patible avec Sqlite.

Astah Professional

Astah Professional est un logiciel de conception créé par la société Chan-


geVision, qui permet de modéliser les traitements informatique en utilisent les dia-
grammes UML.

VMware Workstation

VMware Workstation est un outil de virtualisation de poste de travail créé par


la société VMware, il peut être utilisé pour mettre en place un environnement de test
pour développer de nouveaux logiciels, ou pour tester l'architecture complexe d’un
système d’exploitation avant de l’installer réellement sur une machine physique.

25 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

3. Langage de programmation et technologies utilisés

 PYTHON

Python est un langage de programmation interprété, multi-paradigme et multipla-


teformes. Il favorise la programmation impérative structurée, fonctionnelle et orientée
objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire
par ramasse-miettes et d'un système de gestion d'exceptions ; il est ainsi similaire
à Perl, Ruby, Scheme, Smalltalk et Tcl.

Le langage Python est placé sous une licence libre proche de la licence BSD8 et fonc-
tionne sur la plupart des plates-formes informatiques, des smartphones aux ordinateurs
centraux9, de Windows à Unix avec notamment GNU/Linux en passant par macOS, ou
encore Android, iOS, et peut aussi être traduit en Java ou .NET. Il est conçu pour optimi-
ser la productivité des programmeurs en offrant des outils de haut niveau et une syntaxe
simple à utiliser.

Il est également apprécié par certains pédagogues qui y trouvent un langage où la syntaxe,
clairement séparée des mécanismes de bas niveau, permet une initiation aisée aux con-
cepts de base de la programmation.

 HTML5

L’HyperText Markup Language, généralement abrégé HTML, est le format de


données conçu pour représenter les pages web. C’est un langage de balisage permet-
tant d’écrire de l’hypertexte, d’où son nom.

 JavaScript & JQuery

JavaScript est un langage de programmation de scripts principalement em-


ployé dans les pages web interactives mais aussi pour les serveurs.

JQuery est une bibliothèque JavaScript libre et multiplateforme créée pour fa-
ciliter l'écriture de scripts côté client dans le code HTML des pages web. La première ver-

26 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

sion est lancée en janvier 2006 par John Resig.

 JSON

JSON ou JavaScript Object Notation, est un format de données textuelles dé-


rivé de la notation des objets du langage JavaScript.

 Bootstrap

Bootstrap est une collection d'outils utile à la création de sites et d'applications


web. C'est un ensemble qui contient des codes HTML et CSS, des formulaires, boutons,
outils de navigation et autres éléments interactifs, ainsi que des extensions JavaScript en
option..

4. Le Framework (Django)

En fournissant une plateforme de développement ouverte, Python offre aux déve-


loppeurs la possibilité de créer rapidement des applications extrêmement riches et innovants. Et
spécialement en utilisant Django qui est un framework Web de haut niveau qui encourage le dé-
veloppement rapide et une conception propre et pragmatique. Construit par des développeurs
expérimentés, il prend en charge une grande partie des problèmes liés au développement Web.
Vous pouvez ainsi vous concentrer sur l'écriture de votre application sans avoir à réinventer la
roue. C'est gratuit et open source.
Django est apprécié également des grandes entreprises telles que Pinterest, Instagram, Mozil-
la, etc...

L'architecture utilisée par Django diffère légèrement de l'architecture MVC classique. En effet,
la « magie » de Django réside dans le fait qu'il gère lui-même la partie contrôleur (gestion des
requêtes du client, des droits sur les actions…). Ainsi, nous parlons plutôt de framework utilisant
l'architecture MVT : Modèle-Vue-Template.

27 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Figure 11 : Architecture MVT : Modèle-Vue-Template

5. Les bibliothèques (Libraires)

Une des forces de python est la multitude de bibliothèques disponibles au près de 6000 biblio-
thèques gravitent autour du projet Django par exemple. Installer une bibliothèque peut vite deve-
nir ennuyeux: trouver le bon site, la bonne version de la bibliothèque, l'installer, trouver ses dé-
pendances, etc. a travers la commande PIP INSTALL.
Pip est un système de gestion de paquets utilisé pour installer et gérer des librairies écrites en
Python.
Django django-rest-framework
pytz django-simple-history
sqlparse coreapi
Ldap3 pyyaml
django-extensions python-dateutil
djangorestframework- django-sekizai
stubs django-countries
django-widget-tweaks pillow
django-autocomplete- django-auth-ldap3-ad
light

Tableau 4 : Quelles exemples de bibliothèques installées

28 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

III. Présentation des interfaces de l’intranet

Cette section comporte des captures d’écran de quelques interfaces de l’intranet réalisée ac-
compagnée par une brève description.

a. Interface d’authentification

Figure 12 : Interface d'authentification

L’accès à l'intranet est protégé par un système d’authentification qui synchronise avec le ser-
veur AD suivant le protocole LDAP. Les utilisateurs doit saisir leur login et mot de passe à fin
d’y accéder.

Et si l'utilisateur a fait une faute de saisie de mot de passe un message de notification s'apparue
pour le mentionné qu'il ya un problème d'authentification dans la figure suivante.

29 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Figure 13 : Interface d'authentification

b. Interface du page d'accueil

Figure 14 : Interface page d'accueil

30 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

c. Interface liste de mes accès

Ces deux interface suivant décrit la liste de mes accès partagées et non partagées avec utilisateurs
ou avec groupes du utilisateurs.

Figure 15 : Interface liste de mes accès

Figure 16 : Interface liste de mes accès partagées et non partagées avec utilisateur ou groupe utilisateurs

31 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

d. Interface de création d'un accès

Figure 17 : Interface de création des accès

C'est l'interface de création des accès partagées et non partagées avec utilisateur ou groupe utili-
sateurs

e. Interface liste groupe d'utilisateurs

Figure 18 : Interface liste groupe user

32 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

f. Interface d'ajout groupe utilisateur

Figure 19 : Interface d'ajout groupe user

Dans cette interface on fait la création d'un groupe d'utilisateur en ajoutant, utilisateur par uti-
lisateur, et de même âpres la création en peut modifier ou supprimer un groupe d'utilisateur.

g. Interface de listing staff group

Figure 20 : Interface de listing collaborateur du groupe

33 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

h. Interface d'affichage de mon profile

Figure 21 : Interface de mon profile

Dans cette interface l'utilisateur peut voir et modifier son détail de profile. Et il peut aussi
changer son mot de passe qui sera synchroniser avec le serveur AD du groupe et de même pour
sa photo de profile.

Figure 22 : Interface de changement mot de passe

34 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

i. Message de confirmation d'action

Figure 23 : Message de confirmation

Dans tous les interfaces d'ajout, de modification ou du suppression un message de confirmation


apparaitre .

Figure 24 : Message de confirmation

35 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

j. Interface du web service

Figure 25 : Interface web service de mise à jour d'email

IV. Conclusion
Dans ce chapitre on a mis l’accent sur la description des caractéristiques de l’environnement
du travail et décrit les plateformes matérielles et logiciel sur lesquelles nous avons construit notre
application d’une part, d’autre part par la représentation des différents interfaces développées
tout au long du projet.

36 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Conclusion générale

Au bout de notre cursus en licence informatique, nous avons été chargés de réaliser un projet
de fin d’études. Notre travail s'est basé sur le développement web. En utilisant python nous a
amené à découvrir une nouvelle plateforme de développement et à enrichir notre savoir et notre
expérience.

Ce projet se dirige dans le cadre de notre licence appliques en informatique en développement


des systèmes d'information au sein de l’Institut Supérieur d’Études Technologique de Sousse
pour le compte de la société Proxym Group.

Au cours de la phase de réalisation de notre intranet, nous avons élaboré une étude préalable sur
les systèmes de partages et la gestion de ressource et son importance dans un groupe d'utilisa-
teurs assez nombreux. Cette phase a constitué le point de départ pour l’étape d’analyse et de spé-
cification des besoins. Une fois nos objectifs sont fixés nous avons enchaîné avec la conception
afin de mener à bien notre projet. Nous avons procédé à la phase de réalisation au cours de la-
quelle nous nous sommes familiarisés avec le langage de programmation python.

Pour conclure, notre travail peut être sujet à des extensions. En effet, nous envisageons
d’améliorer le module web service et la possibilité de l'utiliser sous d’autres plateformes.

37 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019


Projet Fin d’Études Conception et Réalisation d'une intranet Jedidi Rochdi

Netographie
[1] https://openclassrooms.com
[2] https://www.youtube.com
[3] https://www.wikipedia.org
[4] https://lipn.univ-paris13.fr
[5] https://fr.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol
[6] https://fr.wikipedia.org/wiki/Kivy
[7] https://fr.wikipedia.org/wiki/Django_(framework)
[8] https://www.commentcamarche.net/contents/525-le-protocole-ldap
[9] https://www.onelogin.com/fr/product
[10] https://www.appvizer.fr
[11] https://blog.david-dahan.com
[12] https://github.com/amigos-do-gesiel
[13] https://wiki.dolibarr.org/index.php/Module_LDAP
[14] https://wiki.dolibarr.org/index.php/Installer_et_configurer_OpenLDAP
[15] https://www.djangoproject.com/
[16] https://python-django.dev/page-django-introduction-python
[17] https://docs.djangoproject.com

38 Institut Supérieur Des Etudes Technologiques de Sousse 2018/2019

Vous aimerez peut-être aussi