Professional Documents
Culture Documents
1
Table des matières
1 Etude préalable 9
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Contexte du travail . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 Présentation de la société d’accueil : . . . . . . . . . . . . . . 9
1.2.2 Services offerts : . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Étude préalable : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.1 Le workflow : . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3.2 Gestion electronique de document . . . . . . . . . . . . . . . 14
1.3.3 Présentation du sujet . . . . . . . . . . . . . . . . . . . . . . 16
1.4 Cahier de charge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4.1 Étude de l’existant . . . . . . . . . . . . . . . . . . . . . . . . 17
1.4.2 L’application de la municipalité : . . . . . . . . . . . . . . . . 17
1.4.3 l’application de R’ads . . . . . . . . . . . . . . . . . . . . . . 19
1.5 Critique de l’existant : . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.6 Spécification des besoins : . . . . . . . . . . . . . . . . . . . . . . . . 21
1.6.1 Les besoins fonctionnels : . . . . . . . . . . . . . . . . . . . . 21
1.6.2 les besoins non fonctionnels . . . . . . . . . . . . . . . . . . 22
1.7 Solution proposée : . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.8 Architecture envisagée : . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.9 Planning des tâches : . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.10 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2 Elaboration 26
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2 Méthode et outils de modélisation choisis . . . . . . . . . . . . . . 26
2.2.1 Méthode de modélisation choisie : . . . . . . . . . . . . . . . 26
2.2.2 Choix de la laungage de conception : . . . . . . . . . . . . . 27
2.2.3 Outil de modélisation (MS Visio) : . . . . . . . . . . . . . . . 29
2.3 Modèle métier (Diagramme de Cas d’utilisation) : . . . . . . . . . 30
2
2.3.1 Diagramme de cas d’utilisation : . . . . . . . . . . . . . . . . 30
2.3.2 Identification des acteurs : . . . . . . . . . . . . . . . . . . . 31
2.3.3 Diagramme processus métier : . . . . . . . . . . . . . . . . . 32
2.4 Spécification des cas d’utilisation : . . . . . . . . . . . . . . . . . . . 33
2.4.1 CU : S’authentifier . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4.2 CU : Gérer utilisateur : . . . . . . . . . . . . . . . . . . . . . 35
2.4.3 CU :Gerer Demande : . . . . . . . . . . . . . . . . . . . . . . 38
2.4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
2.4.5 Identification des cas d’utilisation du système : . . . . . . . 44
2.4.6 Diagramme sequence systéme : . . . . . . . . . . . . . . . . . 46
2.5 conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3 Analyse et conception 51
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2 Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2.1 Modèle d’analyse (Diagramme de traçabilité et diagramme
de classe d’analyse) . . . . . . . . . . . . . . . . . . . . . . . . 51
3.2.2 Modèle du domaine (Diagramme de Classe) . . . . . . . . . 61
3.3 Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
3.3.1 Diagrammes de séquence . . . . . . . . . . . . . . . . . . . . 62
3.3.2 Diagramme de déploiement : . . . . . . . . . . . . . . . . . . 73
3.4 conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
4 Réalisation du système 77
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.2 Environnement de développement . . . . . . . . . . . . . . . . . . . 77
4.2.1 Environnement matériel : . . . . . . . . . . . . . . . . . . . . 77
4.2.2 Environnement logiciel : . . . . . . . . . . . . . . . . . . . . . 77
4.3 Présentation des exemples d’interfaces de l’application . . . . . . . 86
4.3.1 Présentation des interfaces administrateur : . . . . . . . . . 86
4.3.2 Présentation des interfaces utilisateur : . . . . . . . . . . . . 86
4.3.3 Présentation des interfaces client : . . . . . . . . . . . . . . . 86
4.4 Conclusion : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3
Table des figures
5
Liste des tableaux
6
Introduction générale
Dans la plupart des secteurs de nos jours, les déclarations papier sont en voie
de disparition pour faire place à l’informatique L’usage de cette dernière dans la
domaine urbain tunisienne souffre de nombreux aspects négatifs.Les processus
de contrôle du développement et de délivrance des permis de construire sont des
raisons important dans les developments urbaine ,financières ,sociale ,peut être
aussi économique .pour surmonter plusieurs problèmes il est évident d’introduire
une technologie puissante qui peut être utilisée pour délivrer des permis de
construire.
A cet effet, le travail que nous préparons, dans le cadre du projet de fin
d’études, à l’Institut Supérieur de Gestion de Sousse , en vue de l’obtention
du diplôme de licence fondamentale en informatique appliquée à la gestion,
consiste à développer une application dédiée à la municipalité "sousse" qui
fornir une espace collaboratif de trvail entre l’equipe de département technique
, permet de achiver les documents de chaque demande ,connaitre l’hostorique
de delivrance de demande ,Notre application met en valeur la relation entre
les citoyens et la municipalité par le suivi de procedure de etude pour chaque
demande et de savoir la décision en ligne afin de limiter plusieur probléme au
secteur de urbanisme.
Ce rapport est clôturé par une conclusion où nous résumons notre projet et
présenterons les diérentes perspectives que nous pouvons y apporter.
7
Chapitre 1: Etude préalable
1.Introduction
2.contexte de travail
2.1 Présentation de la société d’accueil
2.2 Services offerts
3.Étude préalable
3.1 Le workflow
3.2 Gestion electronique de document
3.3 Présentation du sujet
4 . Cahier de charge
4 Étude de l’existant
4.1 L’appliaction de la municipalité
4.2 l’application de R’ads
5. Critique de l’existant
6. Spécification des besoins
6.1 Les besoins fonctioneels
6.2 Les besoins non fonctioneels
7 . Soulution proposée
8. Architecture a envisagée
9. Planning de tâches
10.Conclusion
8
Chapitre 1
Etude préalable
1.1 Introduction
Nous allons essayer tout d’abord de mettre notre application dans son contexte
général. Pour cela, ce chapitre sera consacré à la présentation de l’organisme
d’accueil et à l’exposition de la problématique menant à l’idée de ce projet
dont nous révélerons brièvement ses objectifs. Ainsi on va essayer de détailler
les concepts de base à utiliser.
9
Figure 1.2 – : Fiche technique de la "Municipalite"
10
1.2.2 Services offerts:
Les services municipaux placés sous l’autorité du Maire sont dirigés par
le secrétaire général de la ville. Ces services sont organisés en sept directions
générales opérationnelles et logistiques dont les activités correspondent aux
principales compétences de la commune.
Direction du développement municipal:
Service de l’Etat Civil.
Service des Affaires Economique et Sociales.
Services de la Culture et des Loisirs.
Services de la Jeunesse, de l’Enfance et des Sports.
Direction des affaires municipales :
Service d’Ordre Central, de la Documentation et des Archives.
Service des Fonctionnaires et des Ouvriers.
Direction des affaires financières :
Services du Budget et des Prêts.
Services de la Comptabilité Analytique.
Service des Marchés et de l’Approvisionnement.
Service du Magasin Municipal.
Direction des ressources municipales:
Services des Affaires Foncières des Participations et des Publicités.
Services des Taxes Immobilières.
Services des Marchés et Abattoirs.
Direction générale technique
Direction de l’affaire urbaine :
Service des Etudes des Aménagements Urbains et d’Architecture.
Service des Lotissements, de la Technologie et de la Cartographique.
Service Autorisation de Bâtir et des Exploitations des Bâtiments.
Directions de travaux :
Services des Bâtiments Administratifs.
Service de la Sauvegarde de la Medina et des la Réhabituions des Monuments
Historiques et Religieuses.
Services de Modernisation des Routes et des Réseaux.
Services des Chaussées et de l’Embellissement de la ville.
Service d’Entretien et d’Eclairage.
Direction de la propreté ,de la sante et de l’environnement :
Service de la Propreté
11
Service de l’Environnement et de l’Amélioration de la qualité de vie.
Service de l’Aménagement des Espaces Vertes et du Pépinières.
Service de la Santé Vétérinaire Générale.
Service de la Réglementation d’Hygiène
13
Les avantages du workflow
À un niveau global, la notation BPMN est utile à toutes les parties prenantes
d’un processus métier, car elle permet de mieux le comprendre grâce à une
représentation visuelle accessible de toutes ses étapes. À un niveau plus détaillé,
elle est destinée aux personnes qui mettront en œuvre le processus en donnant
suffisamment de détails pour permettre son application. Elle offre un langage
standardisé et commun à tous les personnels impliqués, qu’ils soient techniques
ou non : analystes commerciaux, participants au processus, managers, développeurs
techniques, mais aussi équipes externes et consultants. Dans l’idéal, elle fait le
lien entre l’intention du processus et sa mise en œuvre en fournissant suffisamment
de détails et de visibilité sur la séquence des activités de l’entreprise.
Un schéma peut se révéler bien plus facile à comprendre qu’un texte. Il
permet de communiquer et de collaborer plus facilement pour atteindre un
processus efficace, produisant un résultat de grande qualité. Il contribue également
à la communication menant à la création des documents XML (Extensible
Markup Language) nécessaires à l’exécution de divers processus. L’une des
principales normes XML est appelée Business Process Execution Language for
Web Services ou, en version abrégée, BPEL/BEPEL4WS.
14
La gestion électronique des documents recèle de multiples avantages. Elle permet
de
rendre l’information disponible immédiatement pour tous les utilisateurs quel
que soit leur lieu de travail .
limiter au minimum la circulation des documents papier afin d’éviter les pertes
des données .
rassembler dans un unique dossier informatisé l’ensemble des documents disséminés
dans toute l’organisation .
éviter la multiplication des documents pour faciliter leur mise à jour ;
sécuriser le stockage et l’accès aux documents et aux dossiers. favoriser la
sauvegarde des documents sensibles.
La GED au service des démarches ISO (qualité, sécurité et/ou environnement):
Dans la cadre de la maîtrise documentaire attendue par la norme ISO 9001,
l’entreprise doit définir et respecter les modalités d’élaboration, de codification,
de diffusion, de gestion des versions périmés des documents ainsi que les modalités
de conservation (accessibilité, durée, lieux) des enregistrements.
15
Figure 1.5 – Caption
16
Figure 1.6 – Structure descriptif du projet
18
Figure 1.8 – Interface de l’application de municipalité
19
Figure 1.9 – Interface de l’application de R’ads
Problèmes vis à vis des données clients : les sources d’erreurs sont
multiples au niveau des traitements des dossiers des clients telless que les fautes
de saisie, des erreurs de manipulations de demandes
possibilité de pertes de données : les sauvegardes des données en masse
manuellement peuvent entraîner des pertes
Problèmes de corruption : la corruption est un problème majeur qui menace
les développements de notre pays, réduire la qualité des services rendus aux
municipalités
20
Problèmes administratifs: généralement l’administration tunisienne est lourde,
peu efficace c’est pourquoi on trouve plein de problèmes vis-à-vis des clients
problémes de temps: l’absence de coordination entre les agents et les réunions
inutiles au sein de la municipalité engendre une perte de temps considérable.
problémes d’organisations: la mauvaise circulation de l’information entre
les acteurs peut entraîner des obstacles pour l’étude d’une demande et des
problèmes d’organisation de travail
21
1.6.2 les besoins non fonctionnels
Interface graphique et ergonomie : Interface simple, moderne, bien
structurée et conviviale pour favoriser une prise en main rapide des fonctionnalités
de l’application.
Responsive : Une application responsive est devenue une approche de conception
Web incontournable dans tous les projets de développement, qui vise l’élaboration
de sites orant une expérience de lecture et de navigation optimales pour l’utilisateur
quelle que soit sa gamme d’appareils (téléphones mobiles, tablettes, liseuses,
moniteurs d’ordinateur de bureau, etc.).
Sécurité : Les utilisateurs inscrits ont tous un identifiant unique qui permet
de les identifier dans le middle office et le back office.
Les données d’authentification doivent être cryptées dans la base de données.
Performance et disponibilité : L’application doit être hautement disponible
et fluide afin de garantir une meilleure qualité de service. Le code de l’application
doit être bien lisible, compréhensible et bien documenté pour pouvoir la maintenir
rapidement. L’application doit être évolutive pour répondre aux changements
des besoins.
Compatibilité : Certaines fonctionnalités dans les pages de l’application middle
office ne sont pas compatibles avec certaines versions de navigateurs antérieurs.
Utiliser une version récente de navigateur et mettre à jour la version de votre
navigateur pour assurer la compatibilité.
Maintenabilité et Extensibilité : afin d’encourager la réutilisabilité du code
en tout ou parties dans d’autres applications, et la facilité de sa maintenance ,
il est requis que le code source soit lisible et compréhensible; pour ceci il faut
tenir compte de sa documentation détaillée
Portabilité : L’application doit pouvoir s’exécuter sous différents environnements
1.10 Conclusion:
Cette étude de l’existant nous a permis de présenter le cadre de projet,
de reconnaitre la méthodologie à adopter et les limites déjà existantes afin de
faciliter le processus de délivrance des permis(construire ,démolir , renouvellement...)
et d’impliquer tous les acteurs en réalisant un logiciel qui répond aux besoins
spécifiques .
Le chapitre suivant sera consacré pour détailler cette étude ainsi que spécifier
les besoins.
24
Chapitre 2: Elaboration
1.Introduction
2. Méthode et outils de modélisation choisis
2.1 Méthode de modélisation
2.2 laungage de conception
2.3 Outil de modélisation (MS Visio)
3. Modèle métier (Diagramme de Cas d’utilisation)
3.1 Diagramme de cas d’utilisation
3.2 Identification des acteurs
3.3 Diagramme processus métier
4 . Spécification des cas d’utilisation
5.Conclusion
25
Chapitre 2
Elaboration
2.1 Introduction
La phase de spécification des besoins est une étape primordiale pour réaliser
une application avec succès.
Dans ce chapitre, nous identifions d’abord les différents acteurs impliqués dans
notre application ainsi que leurs besoins fonctionnels représentés par les cas
d’utilisations. Ensuite, nous spécifions et raffinons les cas d’utilisation. Enfin,
nous présentons les besoins non fonctionnels à prendre en considération dans la
phase de développement.
28
2.2.3 Outil de modélisation (MS Visio) :
Toute méthode de développement de logiciels est mieux épaulée par un outil.
Notre conception fait l’usage de l’outil MS Visio.
29
Figure 2.3 – Logo de MS visio
Définition:
Les diagrammes de cas d’utilisation sont des diagrammes UML utilisés pour
donner une vision globale du comportement fonctionnel d’un système logiciel.
Ils sont utiles pour des présentations auprès de la direction ou des acteurs d’un
projet, mais pour le développement, les cas d’utilisation sont plus appropriés.
Un cas d’utilisation représente une unité discrète d’interaction entre un utilisateur
(humain ou machine) et un système. Il est une unité significative de travail. Dans
un diagramme de cas d’utilisation, les utilisateurs sont appelés acteurs (actors),
ils interagissent avec les cas d’utilisation (use cases).
30
Éléments de base d’un diagramme de cas d’utilisation
— Acteur : Un acteur est un rôle joué par une personne externe, un processus
ou une chose qui interagit avec un système.
— Cas d’utilisation : un cas d’utilisation représente une fonctionnalité offerte
par le système, sans imposer son mode de réalisation.
— Relation : une relation d’association représente un canal de communication
reliant un acteur à un cas d’utilisation.
— Inclusion : La relation d’inclusion entre un cas d’utilisation A et un autre B,
signifie que le cas A ne peut avoir lieu qu’après exécution de B, e.g. la réalisation
de A exige la réalisation B.
— Extension : La relation d’extension entre deux cas d’utilisation indique que
le cas étendue peut faire appel à l’autre. Supposons qu’un cas d’utilisation A
étend B, ceci signifie que l’exécution de B peut entrainer l’exécution de A; on
parle alors d’une dépendance facultative.
— Généralisation : La généralisation est un type de relation entre acteurs et
même des cas d’utilisation. Il s’agit d’une migration de comportements entre
acteurs(ou cas d’utilisation). Par exemple, un acteur A est une généralisation
d’un autre B, dé- signe que B est un aspect particulier; qu’en plus des comportements
de A, l’acteur B possède d’autres qui s’y ajoutent
31
demande et de signer
Agent de Verfication:Il l’a possibilité de consulter les demandes et la responsabilité
de vérifier la conformité des documents déposés pour chaque demande .
Citoyen: il a la possibilité de déposer une ou plusieurs demande et le suivre
en ligne.
Adminstrateur: : l’administrateur contrôle directement l’application. Il est
le responsable de la gestion des utilisateurs, back offices , les demandes, et la
gestion du contenu de l’application.
32
Figure 2.4 – cas d’utilisation global
33
2.4.1 CU : S’authentifier
34
2.4.2 CU : Gérer utilisateur :
35
Modifier Utilisateur :
36
Suprimer utilisateur:
37
2.4.3 CU :Gerer Demande :
38
nom de cas d’utilisation Déposer Demande
Acteurs Client
Description brève .
Pré Condition demande choisit
Post Condition Demande deposé.
Scénario de base
1. "include " Déposer demande
2. Le client introduit sont coordonnée et
déposer les fichiers nécissaire
3. Le client valide les données de la
demande .
4. Le système vérifie la saisie et les fichiers
déposés
5. Le système enregistre les données de
demande
6. Le système affiche un message de
"Succès"
Scénario d’exception Le client annule l’envoi :
- Retour à l’étape 3 de scénario de base
39
2.4.4
40
nom de cas d’utilisation Modifier Compte
Acteurs Client
Description brève le client a la possibilité de modifier les
données de son compte.
Pré Condition
- Acteur authentifié.
- Opération de modification choisie.
Post Condition - Compte modifié
Scénario de base
1. «include» s’authentifier.
2. «include» consulter compte.
3. L’acteur modifie les données de son
compte.
4. L’acteur valide la modification.
5. Le système vérifie la modification.
6. Le système enregistre la modification.
7. Le système affiche un message de
«Modification effectuée»
41
nom de cas d’utilisation Consulter Demandes
Acteurs Adminstrateur , Chef service , Chef
commission ,Agent de vérification ,Agent
Etude ,Agent Technique ,Agent controle,
président
Description brève L’acteur demande de consulter les demades
Pré Condition L’acteur doit être authentifié le type de
demande choisit
Post Condition demande consultée .
Scénario de base
1. « include » s’authentifier.
2. « include » consulter liste dde demande .
3. L’acteur choisit le type de demande
4. L’acteur sélectionne une demande à
consulter .
5. Le système fournit les doucments.
Scénario d’exception 3 La liste des plantes est vide :
- Retour à l’étape 2 de scénario de base.
42
Figure 2.8
43
2.4.5 Identification des cas d’utilisation du système:
Dans cette partie, nous recensons les principales fonctionnalités offertes par
le système, tout en les associant aux acteurs qui devront en bénéficier.
44
Acteurs du Admin Chef Chef Agent Agent Agent Président Agent Citoyen
système service commission contrôle vérification technique Etude
Cas
d’utilisations
Ajouter utilisateur ✔
Modifier utilisateur ✔
Supprimer utilisateur ✔
Consulter les ✔
utilisateurs
Déposer demande ✔
Modifier demande ✔
Consulter les demandes ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
Suivre demande ✔
Créer compte ✔
Modifier compte ✔
S’authentifier ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
Ajouter PV ✔ ✔ ✔
Exporter fichier ✔ ✔
Consulter statistique ✔ ✔
Signer ✔ ✔ ✔ ✔ ✔ ✔ ✔
Imprimer PV ✔ ✔ ✔ ✔
Vérifier demande ✔ ✔
Prendre décision ✔ ✔
45
2.4.6 Diagramme sequence systéme :
46
Figure 2.11 – Caption
47
Figure 2.12 – Caption
48
Figure 2.13 – Caption
2.5 conclusion:
Dans ce deuxième chapitre nous avons spécifié les acteurs et présenté les
besoins fonctionnels et non fonctionnels de notre application, nous avons ensuite
présenté les diffé- rents diagrammes de cas d’utilisation ayant servi a la modélisation
des besoins aussi la spécification des cas d’utilisation. Le chapitre suivant sera
réservé à la conception de ces cas d’utilisation.
49
Chapitre 3: Analyse et conception
1.Introduction
2.Analyse
2.1 Modèle d’analyse (Diagramme de traçabilité et
diagramme de classe d’analyse)
2.2 Modèle du domaine (Diagramme de Classe)
3.3.Conception
3.1 Diagrammes de séquence
3.2 Diagramme de déploiemant
4.Conclusion
50
Chapitre 3
Analyse et conception
3.1 Introduction
Ce chapitre se consacre, en premier lieu, à l’analyse des besoins décrits dans le
chapitre précédent, en les raffinant et en les structurant. L’objectif est d’accéder
à une compréhension plus aiguë des besoins et des exigences et d’en livrer
une description facile à entretenir, favorisant la structuration de l’ensemble du
système, y compris son architecture.
3.2 Analyse
3.2.1 Modèle d’analyse (Diagramme de traçabilité et diagramme
de classe d’analyse)
Le modèle d’analyse doit fournir une approche conceptuelle du problème.
Le but de ce modèle est de définir une structure robuste et extensible qui nous
servira de base pour la construction du système. Chaque type d’objet (entité,
contrôle et interface) apporte sa propre contribution à ces deux qualités. [1]
— Objets frontières : objets d’interface (interface
graphique, interface vers un autre logiciel).
— Objets contrôles : jouent un rôle de collaboration
avec les autres objets. Portent la responsabilité de la
réalisation des UC.
— Objets entités : objets métiers auxquels sont associés
des données. [2]
51
Analyse du cas d’utilisation « Gérer les Utilisateurs »:
52
IUListeUtilisateur : Cette interface permet à l’administrateur de consulter la
liste des utilisateurs et d’effectuer une recherche rapide. C’est à partir d’elle que
l’admin peut passer à la page d’ajout et de modification.
53
Analyse du cas d’utilisation « Gérer Demande: Client »:
54
Figure 3.3 – Diagramme de classe d’analyse du cas « Gérer Demande: Client »
55
Description :
IUConnexion : Cette interface permet au client de se connecter à
son compte en écrivant son e-mail et son mot de passe s’il a déja un
compte, sinon de passer à la page d’inscription.
IUCréerCompte : Cette interface permet au client de créer un
nouveau compte.
IUCompteClient : Cette interface permet au client de modifier les
informations de son compte et de consulter la liste de ses demandes
déposées. C’est à partir d’elle que le client peut passer à la page de
depôt d’une nouvelle demande et de page de notifications.
IUDeposerDemande : Cette interface permet au client de deposer
une nouvelle demaande.
IUNotifications : Cette interface permet au client de visualiser les
notifications qu’il a reçues.
56
Figure 3.4 – Traçabilité du cas d’utilisation « Vérifier Demande »
57
Description :
IUListeDemandes : Cette interface permet à l’agent de vérification
de consulter la liste des demandes à vérifier. C’est à partir d’elle que
l’agent de vérification peut passer à la page de vérification et la page
de profil du client.
IUVerification : Cette interface permet à l’agent de vérification de
vérifier les fichiers de la demande reçue du client puis de l’accepter ou
de l’a réfuser.
IUDemande : Cette interface permet à l’agent de vérification de
consulter la demande reçue du client.
IUProfilClient : Cette interface permet à l’agent de vérification de
consulter le profil d’un client.
58
Figure 3.6 – Traçabilité du cas d’utilisation « Ajouter un PV »
59
Figure 3.7 – Diagramme de classe d’analyse du cas « Ajouter un PV »
Description :
IUListeDemandes : Cette interface permet à l’agent de contrôle de
consulter la liste des demandes. C’est à partir d’elle que l’agent de
contrôle peut passer à la page d’ajout d’un procès verbal et la page
consultation de demande.
IUPV : Cette interface permet à l’agent de contrôle d’ajouter un
procès verbal à la demande du client après avoir faire le contrôle, de
signer le procès verbal et de l’imprimer.
IUDemande : Cette interface permet à l’agent de vérification de
consulter la demande reçue du client.
60
3.2.2 Modèle du domaine (Diagramme de Classe)
Définition
Il s’agit d’une vue statique, car on ne tient pas compte du facteur temporel
dans le comportement du système. Le diagramme de classes modélise les concepts
du domaine d’application ainsi que les concepts internes créés de toutes pièces
dans le cadre de l’implémentation d’une application. Chaque langage de Programmation
orienté objet donne un moyen spécifique d’implémenter le paradigme objet
(pointeurs ou pas, héritage multiple ou pas, etc.), mais le diagramme de classes
permet de modéliser les classes du système et leurs relations indépendamment
d’un langage de programmation particulier.
Les principaux éléments de cette vue statique sont les classes et leurs relations
: association, généralisation et plusieurs types de dépendances, telles que la
réalisation et l’utilisation. [3]
61
3.3 Conception
3.3.1 Diagrammes de séquence
Définition
Le Modèle
Le modèle représente le comportement de l’application : traitements des
données, interactions avec la base de données, etc. Il assure la gestion de ces
données et garantit leur intégrité.
La vue
La vue correspond à l’interface avec laquelle l’utilisateur interagit. Sa première
tâche est de présenter les résultats renvoyés par le contrôleur. Sa seconde tâche
est de recevoir toutes les actions de l’utilisateur (clic de souris, sélection d’une
entrée, boutons. . . ). Ces différents événements sont envoyés au contrôleur. La
62
vue n’effectue aucun traitement, elle se contente d’afficher les résultats des
traitements.
Le Contrôleur
Le contrôleur prend en charge la gestion des événements de synchronisation
pour mettre à jour la vue et la base de données. Il reçoit tous les événements
de l’utilisateur et enclenche les actions à effectuer.
63
Figure 3.9 – Diagramme de Séquence « Authentification »
Description
Action de l’acteur Réaction du Système
64
Enchainement alternatif
Description
65
Action de l’acteur Réaction du Système
1. L’administrateur clique
sur le bouton ajouter pour
demander le formulaire
d’ajout.
2. Renvoie le formulaire d’ajout d’un
nouvel utilisateur.
3. L’administrateur saisit
les données de l’utilisateur.
4. Vérifie la validité des champs.
5. Enregistre les données du nouvel
utilisateur dans la table Utilisateur de
la base de données.
6. Redirection vers la liste des
utilisateurs.
Enchainement alternatif
66
Figure 3.11 – Diagramme de Séquence « Modifier Utilisateur »
Description
Action de l’acteur Réaction du Système
1. L’administrateur
sélectionne l’utilisateur à
modifier. 2. Renvoie les données de l’utilisateur
dans formulaire.
3.L’administrateur modifie
les données de l’utilisateur. 4. Vérifie la validité des champs.
5. Enregistre les modifications dans
la table Utilisateur de la base de
données.
6. Redirection vers la liste des
utilisateurs.
67
Enchainement alternatif
Description
Action de l’acteur Réaction du Système
1. L’administrateur
sélectionne l’utilisateur à
supprimer. 2. Demande la confirmation de la
suppression.
3. L’administrateur
confirme la suppression. 3. Détruit l’utilisateur au niveau de la
BD.
68
Enchainement alternatif
Description
69
Action de l’acteur Réaction du Système
Enchainement alternatif
70
Figure 3.14 – Diagramme de Séquence « Modifier Demande »
Description
Action de l’acteur Réaction du Système
71
Enchainement alternatif
Description
72
Action de l’acteur Réaction du Système
1. L’utilisateur sélectionne
la demande à vérifier.
2. Renvoie les données de demande.
3.L’utilisateur vérifie si
les fichiers relatifs à la 4. Enregistre le résultat de la
demande sont complet. vérification dans la BD.
6. Redirection vers la liste des
demandes.
Enchainement alternatif
73
Figure 3.16 – Diagramme de Déploiement
74
3.4 conclusion:
Dans ce chapitre nous avons présenté l’analyse et la conception de notre
application. Concernant la modélisation du système d’information nous avons
appuyé le langage de modélisation UML, détaillé les diagrammes de séquences
pour la modélisation dynamique en se basant sur le modèle MVC et présenté
le diagramme de classe pour la modélisation statique.
75
Chapitre 4: Réalisation du système
1.Introduction
2.Environnement de développement
2.1 Environnement matériel
2.2 Environnement logiciel
4.3.Présentation des exemples d’interfaces de
l’application
3.1 Interfaces Administrateur
3.2 Interfaces Utilisateur
3.3 Interfaces Client
4.Conclusion
76
Chapitre 4
Réalisation du système
4.1 Introduction
Après avoir effectué l’étude et la conception de notre application, nous
passons à la phase de Réalisation du système.
Nous allons présenter l’environnement matériel et logiciel de notre projet.
Par la suite nous allons présenter des captures d’écran des interfaces de l’application.
77
ShareLaTeX est un environnement LaTeX complet et prêt à l’emploi, qui
fonctionne sur un serveur. ShareLateX prend en charge presque toutes les
caractéristiques LaTeX, y compris l’insertion d’images, les bibliographies, les
équations, etc.
De plus, ShareLaTeX est un éditeur collaboratif, il permet à plusieurs personnes
de travailler en même temps sur un même document LaTeX. Il n’y a qu’une
seule version maître de chaque document, à laquelle tout le monde a accès. Il
est ainsi impossible de créer des conflits de versions, et il n’est pas nécessaire
d’attendre que vos collègues vous envoient leur dernière version de travail pour
continuer à travailler. [8]
78
Tomcat est un serveur d’applications Java. Cela signifie deux choses : d’abord,
il est intégralement écrit en Java. Ensuite, les applications qu’il est capable
d’exécuter (nommées applications web) doivent être développées en Java.
Le rôle du serveur d’applications, nous l’avons compris, est double. Il doit
savoir exécuter des applications web pour répondre aux requêtes entrantes.
Il doit également être capable de convertir une requête en objet Java, pour
qu’elle soit exploitable par l’application. Et, en retour, savoir convertir l’objet
Java contenant la réponse générée, en réponse compréhensible par le serveur
web.[10]
Alfresco est un système de gestion de contenu (en anglais ECM pour Enterprise
Content Management) créé par Alfresco Software en 2005 et distribué sous
79
licence libre. Il se distingue des autres systèmes par sa forme. En effet, il peut
se comporter sur un ordinateur comme un disque virtuel (se montant et se
démontant), ce qui permet à l’utilisateur de partager des fichiers simplement
en les déplaçant sur le disque dédié. Alfresco Content Services est basé sur un
noyau open source avec prise en charge des standards ouverts, des API ouvertes
et de diverses options de déploiement, y compris les configurations cloud, sur
site et hybride-cloud. La plate-forme puissante est facile à intégrer, à étendre
et à personnaliser pour répondre à vos besoins spécifiques.
Alfresco Share est basé sur le référentiel ECM innovant d’ Alfresco et offre
une gestion de contenu collaborative prête à l’emploi. Alfresco Share simplifie
la capture, le partage et la récupération d’informations entre équipes virtuelles.
stimule la productivité; et réduit les besoins en bande passante réseau et les
volumes de courrier électronique entre les membres de l’équipe de projet [13]
80
pgAdmin est une plate-forme d’administration et de développement pour la
base de données PostgreSQL. Elle a été conçue pour répondre aux besoins de
tous les utilisateurs, depuis l’écriture de requêtes simples jusqu’au développement
de bases de données complexes. L’interface graphique donne accès aux fonctionnalités
de PostgreSQL les plus récentes, faisant de l’administration un véritable jeu
d’enfant. L’application comprend également un constructeur de requêtes, un
éditeur SQL, un éditeur de code server-side et bien plus encore. [14]
81
Activiti est un moteur de workflow destiné à exécuter des processus métier
modélisés en BPMN 2.0. Il est écrit en Java et s’exécute dans un conteneur web
de type Tomcat.
Cet outil trouve son utilisation dans des projets divers tels que la dématérialisation
des processus Métiers, l’administration électronique, les Ressources Humaines,
la gestion de contrats, etc. [15]
Le moteur Activiti a un objectif clair d’être léger et facile à utiliser pour les
développeurs Java.
Voici les différents composants Activiti se combinant pour former une solution
complète de BPM dans un contexte complet de développement de logiciels.
Activiti Engine
C’est le cœur du projet Activiti. C’est un moteur de processus Java qui fonctionne
nativement en BPMN 2.
Activiti Explorer
C’est un exemple d’application Web qui donne accès à l’exécution du moteur
Activiti pour tous les utilisateurs du système. Elle comprend la gestion des
tâches, l’inspection des processus en instance, les fonctions de gestion et la
visualisation des rapports basés sur les données historiques.
82
Activiti Modeler
Il peut être utilisé pour créer des processus BPMN 2.0 graphiquement à l’aide
d’un navigateur. Les fichiers de processus sont stockés par le serveur dans un
référentiel de modèles en base de données.
Activiti Designer
C’est un plugin Eclipse qui vous permet de modéliser les processus BPMN
2.0 à partir de votre environnement IDE. Il supporte également les extensions
spécifiques à une activité pour v
ous permettre d’utiliser le plein potentiel de vos processus et du moteur.
Alfresco Alfresco fournit un produit open source qui offre beaucoup de fonctionnalités,
y compris document, contenu Web et gestion des enregistrements. Avec des
millions de téléchargements, Alfresco est utilisé dans beaucoup d’entreprises.
Pour répondre aux besoins de l’entreprise, Alfresco fournit une version Alfresco
Enterprise du produit Alfresco Community open source, qui offre plus d’outils
d’administration, un large éventail de bases de données prises en charge, détaillées
documentation et support 24/7. [16]
Langages de programmation:
LATEX
83
Le terme « Java EE » signifie Java Enterprise Edition, et était anciennement
raccourci en « J2EE ».
JEE est la version entreprise de la plate-forme "Java" qui se compose de
l’environnement "JSE" ainsi que de nombreuses API et composants destinés à
une utilisation "côté serveur" au sein du système d’information de l’entreprise.
Il s’agit donc d’une évolution du Java. [18]
L’objectif majeur de Java EE est de faciliter le développement d’applications
web robustes et distribuées, déployées et exécutées sur un serveur d’applications.
[19]
JavaScript
CSS
Parmi les principaux sujets traités par L’OMG, définir un schéma d’échange
standard basé sur XML pour l’échange de modèles exécutables, en était le
principal. Le format XML défini est un enjeu important car BPMN 2.0 a la
volonté de devenir un langage de modélisation exécutable en remplacement de
BPEL. L’intérêt étant bien sûr d’être en capacité d’exécuter directement les
modèles dans un moteur d’exécution. Pour mémoire, avant, il fallait « mapper
» manuellement BPMN 1.x avec BPEL pour exécuter les processus modélisés.
86
4.4 Conclusion:
Au cours de ce chapitre, nous avons décrit la présentation de l’environnement
matériels et logiciels sur lequel nous avons fait notre application. Ensuite,
nous avons présenté des captures d’écran de certaines des interfaces de notre
application.
Maintenant, nous passons à la conclusion générale de notre projet et aux
perspectives que nous souhaitons achever dans le futur.
87
Conclusion générale
L’objectif visé à travers ce rapport est de présenter l’application réalisée au
cours de notre stage de fin d’étude au sein de la Municipalité de Sousse
Cette étude nous a permis de citer les besoins de la municipalité et les répartir
en besoins fonctionnels et non fonctionnels. Puis on a passer à la phase la plus
importante ce qui est phase de conception détailée basée sur UML et MVC.
En effet, on a pu, dans ce temps limité , développer une interface qui répond
éventuellement aux exigences soulignées pendant l’analyse et la conception.
Même si on n’a pas fini toute l’application qui nous voulions, mais la partie la
plus complexe a été réalisée et approuvée par nos superviseurs.
Ce stage et cette expérience nous ont offert une bonne préparation à notre
futur car elle fut une expérience enrichissante et complète pour nous qui conforte
notre désir d’exercer notre futur emploi dans le domaine de l’informatique.
88
Bibliographie
[1] http://www-igm.univ-mlv.fr/~dr/COURS/analyse/node6.html
[2] http://www.louvet.perso.math.cnrs.fr/documents/up_moocs.pdf
[3] https://laurent-audibert.developpez.com/Cours-UML/?page=diagramme-
classes
[4] https://fr.wikipedia.org/wiki/Diagramme_de_séquence
[5] www.jaime5a10.ca/upload/pdf/Documentation_MVC.pdf
[6] https://openclassrooms.com/courses/apprenez-a-programmer-en-
java/mieux-structurer-son-code-le-pattern-mvc
[7] http://lecourspratique.blogspot.com/2013/09/5-le-diagramme-
de-deploiement.html
[8] https://framalibre.org/content/sharelatex
[9] https://fr.wikipedia.org/wiki/Eclipse_(projet)
[10] http://www-igm.univ-mlv.fr/~dr/XPOSE2003/tomcat/tomcat.php?
rub=3
[11] http://sql.sh/sgbd/postgresql
[12]
[13]
[14] http://www.01net.com/telecharger/windows/Programmation/base_
de_donne/fiches/28430.html
[15] https://www.jmdoudoux.fr/java/dej/chap-maven.htm
[16] https://fr.wikipedia.org/wiki/Activiti_(logiciel)
[17] http://www.starxpert.fr/bonita/
[18]https://fr.wikibooks.org/wiki/Programmation_JEE/Pr%C3%A9sentation_
du_JEE
89
[19] https://openclassrooms.com/courses/creez-votre-application-
web-avec-java-ee/introduction-au-java-ee
[20] http://glossaire.infowebmaster.fr/xml/
[21]https://www.commentcamarche.com/contents/577-javascript-introduction-
au-langage-javascript
[22]http://glossaire.infowebmaster.fr/css/
90