Académique Documents
Professionnel Documents
Culture Documents
Université de Carthage
Faculté des Sciences Economiques et de Gestion de Nabeul
Rapport de Stage
Elaboré par
Arafet Zouari
Réalisé au sein de
Encadré par
Année universitaire
2018 - 2019
Dédicaces
Pour leurs grand amour, que dieu vous protège et je vous espère
le bonheur et la réussite
Pour tout l’affection et l’amour qu’elle m’a entouré, que dieu vous
Arafet Zouari
i
Remerciements
C’est avec un plaisir immense et un grand honneur que j’ai réservé cette
page en signe de gratitude à toute personne qui m’a aidé pendant la réalisation
de mon projet.
ii
Table des matières
Dédicaces………………………………………………………………………..…………….……...…..i
Remerciement……………………………………………………………...…………….……...……….ii
Table des matières……………………………………………...…………………………….……......iii
Liste des figures……………………………..…………………………………………….……...……..v
Liste des tableaux………………………………………………………………………….……..…….vii
Liste des abréviations…………………………………………………………………….……..…….viii
Introduction générale…………………………………………………………………….……....…...1
Chapitre I: Étude préalable…………………………………………………………….…….....…...3
I.1 Introduction……………………………………………………………………………….…….....…3
I.2 Cadre de stage………………………………………………………………………….….………...3
I.2.1 Présentation de l’organisme d’accueil………………………………….….……........3
I.2.2 Mission de CNI………………………………………………………………….……......4
I.2.3 Organigramme de CNI………………………………………………………………......5
I.3 Présentation du projet……………………………………………………………………………….6
I.3.1 Étude de l’existant………………………………………………………………....……..6
I.3.2 Critique de l’existant……………………………………………………………….…….6
I.3.3 Solution proposée………………………………………………………………….……...7
I.4 Méthodologie de développement…………………………………………………………....….….8
I.4.1 Méthode de cycle de vie classique vs méthodes agiles…………………………........8
I.4.2 Choix de la méthodologie de développement………………………………………....9
I.5 Technologie de développement……………………………………………………………..........11
I.6 Conclusion…………………………………………………………………………………..………16
Chapitre II: Analyses et spécification des besoins……………………………………………...17
II.1 Introduction………………………………………………………………………………....……..17
II.2 Identification des besoins ………………………………………………………………………..17
II.2.1 Identification des besoins fonctionnels………………………………………….......17
II.2.2 Identification des besoins non fonctionnels…………………………………….......19
II.3 Identification des acteurs et des cas d’utilisations……………………………………………19
II.4 Elaboration de backlog produit………………………………………………………………….20
II.5 Conclusion…………………………………………………………………………………..……..22
Chapitre III: Étude et réalisation du sprint 1…………………..…………………………........23
III.1 Introduction………………………………………………………………………………..……...23
III.2 Backlog produit sprint 1…………………………………………………………………...……23
III.3 Analyse……………………………………………………………………………………..……...24
iii
III.3.1 Raffinement du cas d’utilisation <<Authentification>>......................................24
III.3.2 Raffinement du cas d’utilisation <<Gérer citoyens>>........................................25
III.3.3 Raffinement du cas d’utilisation <<Gérer communes>>....................................26
III.3.4 Raffinement du cas d’utilisation <<Gérer institutions>>...................................28
III.3.5 Raffinement du cas d’utilisation <<Gérer motifs>>...........................................30
III.3.6 Raffinement du cas d’utilisation <<Gérer comptes utilisateurs>>.....................31
III.4 Conception………………………………………………………………………………......……32
III.4.1 Diagramme de classe associé à sprint 1…………………………………………...33
III.4.2 Diagramme de séquence <<Authentification>>................................................34
III.4.3 Diagramme de séquence <<Rechercher citoyen>>..........................................34
III.4.4 Diagramme de séquence <<Supprimer institution>>.......................................35
III.4.5 Diagramme de séquence <<Ajouter commune>>............................................36
III.4.6 Diagramme de séquence <<Désactiver citoyen>>..........................................37
III.5 Réalisation………………………………………………………………………………......…..38
III.6 Conclusion………………………………………………………………………………...…….45
Chapitre IV: Étude et réalisation du sprint 2…………………..………………………….....46
IV.1 Introduction………………………………………………………………………………..……46
IV.2 Backlog produit sprint 2…………………………………………………………………...….46
IV.3 Analyse…………………………………………………………………………………….……46
IV.3.1 Raffinement du cas d’utilisation <<S’inscrire>>................................................46
IV.3.2 Raffinement du cas d’utilisation <<Gérer profil>>............................................48
IV.3.3 Raffinement du cas d’utilisation <<Consulter extrait de naissance>>...............51
IV.4 Conception………………………………………………………………………………...………52
IV.4.1 Diagramme de classe associé à sprint 2………………………………………….53
IV.4.2 Diagramme de séquence <<S’inscrire>>..........................................................53
IV.4.3 Diagramme de séquence <<Imprimer code d’autorisation>>..........................54
IV.4.4 Diagramme de séquence <<Modifier informations>>.....................................55
IV.4.5 Diagramme de séquence <<Consulter extrait de naissance>>.........................56
IV.5 Réalisation………………………………………………………………………………....……..57
IV.6 Conclusion………………………………………………………………………………....…….64
Conclusion générale…………………………………………………………………………….……..65
Neto graphie……………………………………………………………………………………..……..67
Annexe 1 Journal de stage……………………………………………………………………....…….69
iv
Liste des figures
v
Figure 33 - Interface gérer communes…………………………………………………………..42
Figure 34 - Interface gérer institutions………………………………………………………....43
Figure 35 - Interface gérer motifs………………………………………………………………..44
Figure 36 - Interface gérer comptes utilisateurs……………………………………………....45
Figure 37 - Diagramme de cas d’utilisation s’inscrire…..………………………………..….47
Figure 38 - Diagramme de cas d’utilisation gérer profil....……………………………..…...48
Figure 39 - Diagramme de cas d’utilisation consulter extrait de naissance………....…...51
Figure 40 - Diagramme de classe associé au deuxième sprint……………………………...53
Figure 41 - Diagramme de séquence s’inscrire……..………………………………………...54
Figure 42- Diagramme de séquence imprimer code………......……………………………...55
Figure 43 - Diagramme de séquence modifier information………...………………………..56
Figure 44 - Diagramme de séquence consulter extrait de naissance….……..……………..57
Figure 45 - Interface inscription………………..………………………….…………………….58
Figure 46 - Interface créer un compte utilisateur……..………………….……………………59
Figure 47 - Interface consulter profil……………………...……………….……………………60
Figure 48 - Interface gérer enfants...………………….…………………….…………………..61
Figure 49 - Interface gérer autorisations……………..…………………….…………………..62
Figure 50 - Interface de saisie de code en mode Iphone X....………..…..…………………..63
Figure 51 - Interface de consultation d’extrait de naissance…….……..………………...…..64
vi
Liste des tableaux
vii
Liste des abréviation
A
API : Application Programming Interface
C
CNI : Centre National d’Informatique
CSS: Cascading Style sheets
J
JS: JavaScript
H
HTML: HyperText Markup Language
HTTP: HyperText Transfer Protocol
I
IOS: Iphone Operating System
M
MVC: Model View Controler
O
OS: Operating System
R
REST API : Representational state transfer application programming system
S
SQL: Structured Query language
T
TS: Type Script
U
UML:Unified Modeling Language
URL: Uniform Resource locator
X
XML: eXtensible Markup language
viii
Introduction Général
_________________________________________________________________________________
Introduction générale
De nos jours, un acte de naissance est demandé par plusieurs institutions soit pour
des papiers de citoyennetés soit pour un mariage, un divorce ou encore une inscription
scolaire.
Pour avoir un extrait de naissance, un citoyen est obligé d’assister auprès d’un guichet
municipal, faire la queue et attendre parfois des heures.
En conséquence, les citoyens peuvent perdre beaucoup de temps en attendant leurs tours. De
plus, un acte de naissance coûte aujourd’hui deux dinars cinq cents millimes pour les citoyens
et trois dinars pour l'Etat nettement les coûts d’impressions et d’électricité.
Dans ce contexte, les institutions cherchent à favoriser l’efficience et la rapidité des services.
Elles recourent aux nouvelles technologies d’informations. En effet, la majorité des gens
s’adressent aux applications mobiles puisque les Smartphones occupent une place
prépondérante dans notre quotidien. De plus, on ne peut nier qu'une autre portion s’intéresse
aux applications web.
Cette application regroupe à la fois un espace destiné aux citoyens qui vont gérer leurs
profils, un autre espace pour les responsables d’institutions qui vont consulter l’extrait de
naissance des citoyens, et un dernier espace pour l’administrateur qui va gérer les citoyens,
les communes, les institutions, ainsi que les motifs.
Nous avons adopté la méthodologie de conception Agile Scrum pour développer notre
application. Le premier sprint est relatif à la gestion citoyens, communes, institutions et des
1
Introduction Général
_________________________________________________________________________________
motifs ainsi que la gestion des comptes utilisateurs. Le deuxième sprint se concentre sur la
gestion des profiles citoyens. Notre rapport s'articule autour de quatre chapitres.
Le premier chapitre, situe le projet dans son contexte général. D’abord, nous présenterons
l’organisme d’accueil CNI. Ensuite, nous allons critiquer l’existant et nous allons proposer
des solutions. Enfin nous allons mettre l’accent sur la méthodologie et les outils de
développement.
Le deuxième chapitre est destiné aux analyses et spécification des besoins ainsi qu’à
l’élaboration du diagramme de cas d’utilisation global et du backlog product.
Le dernier chapitre comprendra le deuxième sprint. Une partie est destinée aux citoyens
et une autre au responsable d’institution. Il va comporter la conception et la réalisation de
différentes tâches.
2
Chapitre I Etude préalable
_________________________________________________________________________________
________________________________________________________
I.1 Introduction
L'étude d’un projet est une démarche stratégique qui va nous permettre d’avoir une
vision globale sur le plan de travail. Nous commencerons par la présentation de l’organisme
d’accueil qui est le CNI. Ensuite nous présenterons notre projet en dressant un état de
l’existant, analyser ses forces et faiblesses et formuler une solution potentielle. Enfin, nous
mettrons l’accent sur la méthodologie et les outils de développement.
3
Chapitre I Etude préalable
_________________________________________________________________________________
4
Chapitre I Etude préalable
_________________________________________________________________________________
● Formation continue
● Formation certifiante
● Stage et initiation à la vie professionnelle
I.2.2.7 Déploiement des Applications et assistance des utilisateurs:
● Le CNI déploie les applications développées pour le compte de l’administration en
vue de leur exploitation.
● Le déploiement des postes peut se faire sur site (chez le client) ou dans les locaux du
CNI.
Les institutions tunisiennes cherchent à améliorer la qualité de service afin de satisfaire les
citoyens. Elles ont recouru à ces nouvelles technologies qui sont aujourd’hui adaptées par la
majorité des gens.
Suite à notre étude du processus actuel de l’obtention d’un extrait de naissance d’une
manière traditionnelle en allant aux municipalités, nous présenterons certaines limites:
➢ Perte de temps: les citoyens perdent leurs temps en se déplaçant aux municipalités,
faire la queue, attendre parfois des heures vu l’encombrement au niveau des guichets.
➢ Coût: un extrait de naissance coûte au citoyen deux dinars cinq cents millimes et
à l'État trois dinars (impression, électricité etc)
6
Chapitre I Etude préalable
_________________________________________________________________________________
➢ Stress: l’encombrement au niveau du guichet ainsi que le bruit peuvent énerver les
citoyens ainsi que l’agent de guichet qui devient stressé par le travail.
Dans le but de pallier aux limites citées et surtout rapprocher les prestations du
citoyen et de l’entreprise, nous avons proposé au sein de CNI le développement d’une
application qui va accélérer les procédures, limiter les déplacements et éviter
l’encombrement et les pertes de temps.
Cette application sera utilisée d’une part par les citoyens nés en Tunisie et qui vont donner
une autorisation aux institutions qui demandent un extrait de naissance pour que cet
institution puisse consulter son acte. Cette autorisation doit être obligatoirement conforme
à un motif c’est à dire que le citoyens doit donner la raison pour laquelle l’institution va
consulter son acte de naissance. De plus, cette autorisation peut être personnelle ou bien
relative à l’un de ses enfants. Notons aussi que cette autorisation n’est effectué qu'après avoir
un code qui sera envoyé par SMS ou bien par email ou encore imprimé par le citoyen selon
son choix.
Cette application permet aussi aux citoyens d’ajouter leurs enfants à conditions que les
informations soient totalement correctes si non chaque information incorrecte peut engendrer
des poursuites judiciaires.
D’autre part, cette application sera aussi utilisée par les responsables d’institutions qui vont
tout d’abord, s’authentifier selon un login et un mot de passe donnés par le CNI. Puis, dès
que le responsable institution est identifié il va consulter l’extrait de naissance du citoyen
selon un code donné par ce dernier.
Cette application sera à la fois disponible sur un site web et en même temps téléchargeable
gratuitement du stories: Google Play, Apple Store et Windows Store.
7
Chapitre I Etude préalable
_________________________________________________________________________________
Le choix de méthode de travail est une étape primordiale du travail tout au long de la
période de stage.
Parmi les méthodes nous citons trois grandes familles du processus de développement
logiciel: les méthodes classiques linéaire (cycle en v, cascade), les méthodes itératives
(spiral, incrémental) et les méthodes itératives incrémentales (processus unifié et méthodes
agiles)
Dans le paragraphe qui suit, nous montrerons les différences entre les modèles
classiques et les méthodes agiles (scrum, XP)
Le tableau 1 illustre une comparaison entre les deux approches (traditionnelle et Agile) [2]
Equipe une équipe avec des ressources une équipe soudée qui communique
spécialisées dirigés par un chef et interagisse plutôt qu’une équipe
projet d’individualité soutenue par un
Chef projet
8
Chapitre I Etude préalable
_________________________________________________________________________________
Suite à la comparaison effectuée dans la section I.4.1 nous pouvons dire que les
méthodes agiles sont considérées comme une méthodologie efficace et qui est adaptée avec
notre projet et qui va satisfaire les besoins de notre client.
Parmi les méthodes agiles nous allons opter la méthode Scrum et cela selon une étude
comparative des différentes méthodes agile.
I.4.2.1 Détails sur la méthode SCRUM
La méthodologie SCRUM est expérimentée en 1993, et c’est la méthode agile la plus
utilisée dans le monde. Cette méthode consiste à définir un cadre de travail permettant la
réalisation de projets complexes .Cette méthode a été initialement prévue pour le
développement de projet informatique mais elle peut être appliquée à tout type de projet de
plus simple au plus innovant.
Les projets qui suivent la méthode agile SCRUM sont divisés en plusieurs cycles de
travail relativement court que l’on appelle sprints.
Ces derniers permettent aux membres de l’équipe de mieux planifier les prochaines
étapes de développement du projet.les sprints peuvent durer d’une à quatre semaines. [2]
I.4.2.2 Répartition des rôles
Les projets qui utilisent la méthode SCRUM se forment autour d’une équipe
auto-organisée et qui ont tous le même but.
L’équipe SCRUM est répartie en trois rôles principaux [2]:
● Le product owner (responsable produit): ce dernier définit les spécifications
fonctionnelles et communique la vision globale du produit à l’équipe .Il établit la
priorité des fonctionnalités à développer ou à corriger et valide les fonctionnalités
développées. Il doit jouer le rôle de client final qui a le plus de responsabilités et
d’autorité.
● Le SCRUM Master: Ce dernier agit en tant que facilitateur entre le responsable
produit et l’équipe. Son rôle principal est d’éliminer tous obstacles qui peuvent
empêcher l’équipe à atteindre les objectifs fixés pour chaque sprint .Il facilite la
communication au sein de l’équipe et cherche à améliorer le savoir-faire de son
équipe.
● Les Membres de l’équipe: Sont des multiples compétences responsables du résultat
final de chaque sprint.
9
Chapitre I Etude préalable
_________________________________________________________________________________
10
Chapitre I Etude préalable
_________________________________________________________________________________
Cette architecture est formée par le modèle qui va traiter la demande de l’utilisateur
en accédant à la base de donnée ,la vue qui se concentre sur l’affichage et qui va présenter
les résultats de traitement ,retourné par le contrôleur ,à l’utilisateur et le contrôleur qui est
un intermédiaire entre le modèle et la vue et qui va récupérer l’information du modèle et les
affiche dans la vue [4].
11
Chapitre I Etude préalable
_________________________________________________________________________________
REST API est un style d’architecture inspiré de l’architecture web pour construire des
services web et il utilisera les standards HTTP, URL (pour identifier les ressources),
XML/HTML (pour présenter les ressources donnés)
Les services Web Rest est plus facile on ne parle pas d’opérations on va soit ajouter un
élément, lister un élément, supprimer ou bien mettre à jour un élément donc pour Rest juste
accès au données et modification des données.
Pour Rest on trouve une ressource, un identifiant ressource(URL)et une représentation de la
ressource (en HTML,XML, TEXT,JSON…)qui nous donne une vue sur l état de ressource .
REST ne va pas invoquer des opérations complexe mais il va invoquer des requêtes HTTP
simple qui sont GET POST PUT DELETE concernant les méthodes on les appelles les
méthodes CRUD : Create(post) ,Retrieve(GET), Update(put), Delete(delete) [5].
❖ Ionic 4.0.1:
Ionic est un Framework open-source créé en 2013 qui s’appuie sur Angular et
Cordova et qui sert à créer des applications multiplateformes en utilisant des outils
web comme HTML, CSS, JS. Il sert à créer des applications hybrides c’est à dire que
d’une côté nous allons avoir des éléments qui vient de web et de l’autre les éléments
qui vient de natifs ce qui va réduire le temps de développement et limiter les webView
et cette application va être distribuée sur différentes plateformes(App Store, Google
Play, Market Place..) autrement dit différents systèmes d’exploitation IOS, Android ,
Windows Phone etc avec un seul développement [6].
12
Chapitre I Etude préalable
_________________________________________________________________________________
La première version est AngularJS et elle a été lancée en 2010 et dernièrement en 2018 a été
lancé la version 7 d’angular [7]
❖ Cordova 8.1.2
Cordova est un Framework open source développé par Apache et nous
permet d’interagir avec les fonctionnalités natives de Smartphone et elle permet de
créer des applications hybrides pour différentes plateformes (Android,IOS,windows...)
en HTML, CSS et JavaScript [8].
❖ HTML
HyperText Markup Language est un langage de balisage dont le rôle est de
formaliser l'écriture d'un document avec des balises de formatage. Les balises
permettent de définir la structure logique du document et les liens qu'il établit avec
d'autres documents [9].
CSS
13
Chapitre I Etude préalable
_________________________________________________________________________________
❖ TS
TypeScript est un langage de programmation orienté objet plus structuré que
JavaScript et son développement est plus facile et rapide d’ailleurs il ajoute des
fonctionnalités extrêmement utiles comme le Typage Script qui permet de s’assurer
qu’une variable ou une valeur passée ou retournée soit de type prévue ,lamba ou
arrows permettant d’obtenir un code plus lisible et donc plus simple et des classes et
des interfaces permettant de coder de manière beaucoup plus modulaire
et robuste [11].
14
Chapitre I Etude préalable
_________________________________________________________________________________
➢ Modèle : HP
➢ Mémoire RAM installée : 4.00GO
➢ Processeur : Intel(R) Core TM i3-5005U CPU @ 2.00GHZ.
➢ Système d’exploitation : windows 10 64 bits
❖ Postman
Postman est l’un de solutions pour appeler et tester une API Web .Une
fois Postman installé, vous disposez d’un environnement graphique complet
pour gérer l’ensemble de vos interactions avec vos API Web. Il offre de très
nombreuses possibilités pour manipuler une API, conserver l’ensemble des
15
Chapitre I Etude préalable
_________________________________________________________________________________
requêtes dont vous avez constamment besoin ainsi que sauvegarder des
variables à jeu de requêtes [15].
❖ Node JS 10.15.0
Node.js est une plateforme logicielle libre et événementielle en JavaScript
autrement dit c’est un environnement d’exécution java script qui permet d’utiliser le
langage JS sur le serveur et pour l’utilisation d’angular et ionic nous devons installer
tout d’abord Node.JS pour que nous puissions créer le projet ionic [16].
❖ StarUML
C’est un logiciel de modélisation UML. Il est open source et il gère la plupart
des diagrammes spécifiés dans la norme UML 2.0 et il permet de modéliser les
traitements informatiques et leurs bases de données associées [17].
I.6 Conclusion
Dans ce premier chapitre, nous avons présenté le cadre général de notre projet .
En effet, nous avons commencé par une présentation de notre organisme d’accueil. Ensuite,
nous avons détaillé l'intérêt de réalisation de notre projet. Enfin , nous avons montré la
méthode de développement suivi pour la conception de notre application ainsi que les outils
nécessaires pour la réalisation du produit.
16
Chapitre II Analyse et spécification des besoins
_________________________________________________________________________________
II.1 Introduction
Pour avoir une bonne vision du produit, nous entamerons dans ce chapitre la phase
d’analyse et spécification de besoins en mettant l’accent en premier lieu sur les besoins
fonctionnels et la branche non fonctionnelle afin de produire le backlog produit. Nous
présenterons par la suite les acteurs et les cas d’utilisation.
● Des “Daily Meeting” qui sont des réunions quotidiennes de moins de 15 min avec
le product owner, le représentant du client et qui porte la vision globale du produit ,
gère le backlog produit et définir les priorités.
Les exigences fonctionnelles sont les services que le système doit fournir afin de
satisfaire les besoins de l’utilisateur, autrement dit, ce sont les fonctionnalités qu’offrira
notre projet pour chaque acteur.
-Le citoyen a la possibilité de consulter la liste de ses enfants ainsi qu’ajouter un enfant
ou bien changer des informations relatives à ses enfants
-Le Citoyen a la possibilité de donner une autorisation aux institutions qui demandent un
extrait de naissance soit de consulter son extrait soit de consulter l’extrait de l’un de ses
17
Chapitre II Analyse et spécification des besoins
_________________________________________________________________________________
-Le citoyen peut consulter l’historique des autorisations qu’il a données ainsi que savoir
l’institution qui a consulté son extrait.
● S’inscrire
-Le citoyen doit remplir un formulaire qui contient les informations nécessaire pour son profil
puis un autre formulaire qui contient son login et mot de passe.
● S’authentifier
-Un utilisateur doit saisir son login et mot de passe pour qu’il puisse accéder à son profil.
18
Chapitre II Analyse et spécification des besoins
_________________________________________________________________________________
Les exigences non fonctionnelles sont les attributs qui caractérisent le système pour
son bon développement ainsi que son bon fonctionnement.
➢ Extensibilité: le code doit être clair pour les futures évolutions ou améliorations
probables.
Un acteur est toute entité en dehors du système et qui interagit directement avec lui
(Acteur Principal: la personne qui utilise les fonctions principales de système, Acteur
Secondaire: qui effectue des tâches administratives. Matériel Externe: les dispositifs
matériels, Autres Systèmes)
les institutions et les motifs .De plus, il a une visibilité totale sur la base de données et
il est chargé de mise à jour de contenu et tout ça après son authentification.
19
Chapitre II Analyse et spécification des besoins
_________________________________________________________________________________
➢ Citoyen: c’est l’acteur qui doit tout d’abord créer un profile puis il a le droit de
s’inscrire en remplissant un formulaire, s’identifier par un login et mot de passe et
gérer son profile en ajoutant , modifiant ou supprimant des informations qui le
concerne ou bien concerne l’un de ces enfants et aussi bien il imprime un code qui
donne une autorisation au responsable de l’institution qui demande un extrait de
naissance pour consulter cet extrait puisque pour des raisons de protection des
données personnels il ne peut pas lui même le consulter ou bien l’imprimer.
Gérer Communes
Gérer Institutions
Gérer Motifs
Citoyen S’inscrire
Gérer Profil
20
Chapitre II Analyse et spécification des besoins
_________________________________________________________________________________
21
Chapitre II Analyse et spécification des besoins
_________________________________________________________________________________
8.4 Elevée
En tant que citoyen je veux imprimer
le code qui donne autorisation aux
institutions qui demande mon propre
extrait de naissance ou bien l’extrait
de l’un de mes enfants pour consulter
ce dernier.
II.5 Conclusion:
Dans ce chapitre, nous avons préparé notre plan de travail. En effet, nous avons
capturé les besoins fonctionnels et non fonctionnels de notre application. Ensuite, nous avons
identifié les acteurs et les cas d’utilisation. Enfin, nous avons montré le backlog de notre
application et le plan de sprint de notre projet.
22
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Sprint 1
________________________________________________________
III.1 Introduction
Au Cours de ce chapitre nous présenterons la première partie de notre réalisation.
Nous commencerons par l’élaboration du backlog produit sprint 1. Ensuite, nous nous
intéresserons à l’analyse ainsi qu’à la conception des différentes tâches. Enfin nous
afficherons les interfaces de notre réalisation.
Les itérations qui se succèdent dans notre projet sont considérées comme étant des
sprints et qui sont planifiées selon un sprint backlog. Un sprint backlog se compose de
plusieurs tâches. Notre premier sprint a été d’une durée de 4 semaines du 01/03/2019
jusqu’au 28/03/2019.
Le tableau 4 illustre les besoins fonctionnels suivants que nous allons les détailler.
Tâches
S’authentifier
Gérer citoyens
Sprint 1
Gérer commune
Gérer institutions
Gérer motifs
23
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
III.3 Analyse
Dans cette partie nous présenterons le raffinement des différentes tâches associés à ce
premier sprint
Dans cette étape nous allons illustrer le diagramme du cas d’utilisation “authentification” et
qui est présenté dans la figure 18 et il est suivie par une description textuelle.
Tableau 5 - S’authentifier
24
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Dans cette étape nous allons illustrer le diagramme du cas d’utilisation “Gérer
citoyens” et qui est présenté dans la figure 19 et il est suivie par des descriptions textuelles.
Acteurs Administrateur
25
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Acteurs Administrateur
26
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Acteurs Administrateur
27
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Dans cette étape nous allons illustrer le diagramme du cas d’utilisation “Gérer
institution” et qui est présenté dans la figure 21 et il est suivie par des descriptions textuelles
Acteurs Administrateur
28
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
institution>>
Acteurs Administrateur
Dans cette étape nous allons illustrer le diagramme du cas d’utilisation “Gérer
motifs” et qui est présenté dans la figure 22 et il est suivie par des descriptions textuelles.
29
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Acteurs Administrateur
30
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Dans cette étape nous allons illustrer le diagramme du cas d’utilisation “Gérer comptes” et
qui est présenté dans la figure 23 et il est suivie par des descriptions textuelles.
Acteurs Administrateur
31
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
utilisateur>>
Acteurs Administrateur
III.4 Conception
Dans cette section nous allons élaborer la conception de notre premier sprint. Nous allons
adopter la langage de modélisation UML (Unified Modeling Language) puisque c’est un
support de communication performant qui facilite la représentation et la compréhension de
solution.
❖ Diagramme de classe pour présenter les classes et les interfaces relatives à ce sprint
ainsi que les différentes relations entre celles-ci.
❖ Diagramme de séquence pour montrer les interactions d’objets.
32
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Ces objets sont liés par des associations ou bien agrégations ou même par un
mécanisme d’héritage.
33
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
34
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
35
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
Dans cette partie nous montrerons le diagramme de séquence d’ajouter une commune.
En effet, après l’authentification de l’administrateur, l’administrateur a possibilité d’ajouter
une commune suite à une décision prise par l’Etat.
36
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
37
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
III .5 Réalisation
Dans cette partie, nous allons présenter quelques interfaces décrivant les principales
fonctionnalités de premier sprint et qui relatif au backoffice. Il comporte le compte
administrateur ainsi que les différentes tâches associé à ce dernier.
L’ interface présentée à la figure 30 est en mode Galaxy S5 puisque notre application est à la
fois web et téléchargeable sur n’importe quel smartphone. D’après cette interface
l’administrateur va accéder à son profil afin de réaliser les différentes tâches.
38
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
39
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
La figure 32 montre la liste des citoyens en mode Ipad Pro. Selon cette interface
l’administrateur a possibilité de consulter la liste des citoyens, chercher un citoyen
selon son numéro de carte d’identité national, modifier ses données ou bien le
supprime. L’administrateur a possibilité d’ajouter un nouveau citoyen en cliquant sur
le bouton au dessous de liste et saisit par la suite les données nécessaires.
40
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
La figure 33 montre la liste des communes en mode Ipad. Selon cette interface
l’administrateur a possibilité de consulter la liste des communes, chercher une
commune selon son nom et le supprime en cas de besoin. L’administrateur a
possibilité d’ajouter une nouvelle commune en cliquant sur le bouton au dessous de
liste et saisit par la suite le nom et le gouvernorat de cette commune.
41
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
42
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
43
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
44
Chapitre III Etude et Réalisation de Sprint 1
_________________________________________________________________________________
III .6 Conclusion
Dans ce chapitre nous avons détaillé la réalisation de notre premier sprint qui
a comme objectif de finaliser les tâches de l’administrateur et nous avons montré les
interfaces relatives au back office de notre application. Nous allons traiter dans le
chapitre suivant notre deuxième sprint relatif à la partie front office.
45
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Sprint 2
________________________________________________________
IV.1 Introduction
Au Cours de ce chapitre nous présenterons la deuxième partie de notre réalisation.
Nous commencerons par l’élaboration du backlog produit sprint 2. Ensuite, nous
intéresserons l’analyse ainsi que la conception des différentes tâches. Enfin nous afficherons
les interfaces de notre réalisation.
Dans ce deuxième sprint nous allons détailler les besoins fonctionnels suivants:
Tâches
Sprint 2 S’inscrire
Gérer profil
IV.3 Analyse
Dans cette partie nous présenterons le raffinement des différents cas d’utilisations
Tableau 15 - S’inscrire
Acteurs Citoyens
47
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Acteurs Citoyen
48
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Acteurs citoyen
49
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Acteurs Citoyen
50
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Acteurs citoyen
51
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Acteurs Responsable
Extensions (Scénarios affichage de message d’erreur s’il existe une erreur dans le code
alternatives) donnée par le citoyen.
IV.4 Conception
Dans cette partie nous allons montrer le diagramme de classe associé au deuxième
sprint ainsi que les diagrammes de séquences relatifs aux différentes tâches.
52
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
53
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
54
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
55
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
56
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
IV.5 Réalisation
Dans cette partie, nous allons présenter quelques interfaces décrivant les principales
fonctionnalités de notre deuxième sprint.
Le citoyen doit tout d’abord saisir ses données personnelles selon la figure 45 puis le système
va vérifier si les données sont correctes à partir de table des citoyens tunisiens existant déjà
au sein de CNI.
57
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Une fois les données saisies, selon l’interface au dessus, sont totalement correcte le citoyen
va remplir un formulaire d’inscription qui va lui permettre d’avoir un compte pour accéder
à son profil comme il est indiqué dans la figure 46
58
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
59
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
60
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
61
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
62
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
Une fois le système vérifie le code saisi par le citoyen selon l’interface au dessus, l’extrait de
naissance relatif à ce code sera affiché pour le responsable comme il est indiqué dans la
figure au dessous.
63
Chapitre IV Etude et Réalisation de Sprint 2
_________________________________________________________________________________
IV.6 Conclusion
64
Conclusion générale
Tout au long de ce rapport, nous avons présenté les différentes étapes de réalisation d’une
application web/mobile d’un registre en ligne. Cette application permet aux citoyens de
donner autorisation aux institutions, qui demandent un acte de naissance, pour consulter cet
extrait à travers un code donné. Cette autorisation peut être personnelle ou bien relative à
l’un de ses enfants. Notons aussi que cette autorisation n’est effectué qu'après avoir un code
qui sera envoyé par SMS ou bien par email ou encore imprimé par le citoyen selon son choix.
De plus, cette application sera aussi utilisée par les responsables d’institutions qui vont tout
d’abord, s’authentifier selon un login et un mot de passe donnés par le CNI. Puis, dès que le
responsable institution est identifié il va consulter l’extrait de naissance du citoyen selon un
code donné par ce dernier.
Cette application sera à la fois disponible sur un site web. En effet, nous avons choisi de
développer une application à la fois web et mobile téléchargeable gratuitement des différents
stories. Cette application tourne sur différents systèmes d’exploitation ce qui explique le
grand avantage de l’outil de développement Ionic.
Au cours développement, nous avons adapté la méthodologie SCRUM qui nous a permis de
décomposer notre plan de travail selon des sprints. Cette décomposition a facilité la
réalisation de travail selon le backlog sprint.
Au sein de CNI, nous avons essayé à respecter les différents principes de SCRUM. D’ailleurs,
notre travail a été basé essentiellement sur la communication. Nous avons organisé souvent
des daily meeting au cours desquels nous nous discutons sur différents tâches ainsi que
actualiser le plan de sprint. Ces réunions nous ont aidé à éliminer beaucoup d’obstacles
ainsi que communiquer et évaluer l’avancement de projet.
65
Sur le plan humain, ce stage nous a offert la possibilité d’améliorer nos capacités
d’intégration, de communication et de développer nos aptitudes pour le travail en groupe.
Au cours de réalisation de notre projet, nous avons été astreints par quelques limites
notamment, les contraintes de temps qui nous ont empêchés d’ajouter certaines
fonctionnalités. Cependant, il était une occasion d’apprendre des nouveaux outils de
développement particulièrement Angular pour le développement web et Ionic pour le
développement mobile.
Le projet peut être amélioré en ajoutant quelques modules ou interfaces pour mieux l'adapter
aux besoins des utilisateurs d’ailleurs nous pouvons ajouter une interface destiné pour les
tunisiens à l’etranger. Il été un honneur pour moi que j’ai été parmi l’équipe réalisatrice de
ce projet qui sera à l’avenir utilisé par tous les citoyens espérant bien qu’il arrivera à
satisfaire leurs besoins.
66
NETOGRAPHIE
67
[14], Description VSC, https://fr.wikipedia.org/wiki/Visual_Studio_Code, consulté le
02/04/2019
68
Annexes
Annexe 1
Journal du stage
69
Semaine du 4 mars 2019
70
Semaine du 11 mars 2019
71
Semaine du 18 mars 2019
72
Semaine du 25 mars 2019
73
Conception et Réalisation d’une application web/mobile d’un Registre en ligne
_________________________________________________________________
RÉSUMÉ
De nos jours, la majorité des institutions des Etats cherchent à faciliter les services des
citoyens d’une part et de minimiser le taux d’encombrement au niveau des institutions
d’autres part. Dans ce contexte nous avons réalisé dans le centre national d’informatique une
application web/mobile qui permet aux citoyens essentiellement de donner autorisation aux
institutions qui demandent un acte de naissance pour consulter cet extrait à travers un code
donné par le citoyen au lieu de se déplacer aux municipalités et attendre parfois des heures
pour avoir un extrait de naissance. De plus, un citoyen a la possibilité d’ajouter ses enfants
dans son profil à condition que les informations ajoutées soient totalement correctes si non
une information saisie incorrectement va engendrer des poursuites judiciaires
_________________________________________________________________
SUMMARY
In our days, everybody needs to have his birth certificate. However, he is obliged to move to
the municipality and stand in line. Sometimes, we need to wait for hours. This Traditional way
can be waste of time, that’s why we thought about creating a web mobile application that will
facilitate the service of citizens. Our application allows us to give permission to the institution
that needs our birth certificate to consult it through a code. Morever, we can add our children
in our profile but the information should be correct. This application will help not only
citizens but also the institution to reduce congestion at the counter.