création d’une application ussd pour demande de papier
TRANSCRIPT
UNIVERSITÉ D’ANTANANARIVO
SCIENCES ET TECHNOLOGIES
PHYSIQUE ET APPLICATIONS
MÉMOIRE
Pour l’obtention du diplôme de
Master d’Ingénierie en Systèmes Electroniques et Informatiques
sur :
Création d’une application USSD pour demande de papier
administratif dans la Commune rurale d’Ambohijanaka
Présenté par
ANDRIANANJANAVALONA NIAINA VANONA
Devant la commission d’examen composée de :
Président : RANAIVO-NOMENJANAHARY Flavien Noël Professeur Titulaire
Examinateur : RAKOTOARIMANANA Liva Graffin Maître de Conférences
Rapporteurs : RANDRIAMANANTANY Zely Arivelo Professeur Titulaire
: RAZANAMANAMPISOA Harimalala Maître de Conférences
Soutenu le : 27 Décembre 2019
UNIVERSITÉ D’ANTANANARIVO
SCIENCES ET TECHNOLOGIES
PHYSIQUE ET APPLICATIONS
MÉMOIRE
Pour l’obtention du diplôme de
Master d’Ingénierie en Systèmes Electroniques et Informatiques
sur :
Création d’une application USSD pour demande de papier
administratif dans la Commune rurale d’Ambohijanaka
Présenté par
ANDRIANANJANAVALONA NIAINA VANONA
devant la commission d’examen composée de
Président : RANAIVO-NOMENJANAHARY Flavien Noël Professeur Titulaire
Examinateur : RAKOTOARIMANANA Liva Graffin Maître de Conférences
Rapporteurs : RANDRIAMANANTANY Zely Arivelo Professeur Titulaire
: RAZANAMANAMPISOA Harimalala Maître de Conférences
Remerciements
Je tiens à remercier toutes les personnes qui ont contribué à la réalisation de ce mémoire de fin
d’étude, que ce soit de près ou de loin.
Mes remerciements s’adressent particulièrement à :
- Monsieur Irrish Parker RAMAHAZOSOA, Maitre de Conférences, Responsable du
Domaine Sciences et Technologies de l’Université d’Antananarivo, pour m’avoir permis de
suivre ma formation au sein de son Institution et pour avoir donné son autorisation pour la
présentation de ce mémoire.
- Madame Eulalie Odilette RAFANJANIRINA, Maitre de Conférences, Responsable de la
Mention Physique et Applications, pour avoir validé mon inscription en tant qu’étudiant
pouvant préparer le grade de Master au niveau de ladite Mention.
- Madame Harimalala RAZANAMAMPISOA, Maître de Conférences, Responsable du
Parcours Master d’Ingénierie en Systèmes Electroniques et Informatiques (MISEI) pour avoir
fait tout son possible en prodiguant des conseils dans l’orientation et l’élaboration du présent
mémoire en dépit de la lourdeur des tâches lui incombent.
- Madame Zely Arivelo RANDRIAMANANTANY, Professeur Titulaire au sein du Domaine
des Sciences et Technologies, pour avoir accepté de rapporter ce mémoire malgré ses
occupations. Ses aides et conseils m’ont aidé à la finalisation de ce mémoire.
- Monsieur Flavien Noel RANAIVONOMENJANAHARY, Professeur Titulaire au sein du
Domaine des Sciences et Technologies, pour la considération qu’il me fait en présidant le jury
d’examen de ce mémoire.
- Monsieur Liva Graffin RAKOTOARIMANANA, Maitre de Conférences au sein du
Domaine des Sciences et Technologies, pour avoir accepté d’examiner ce mémoire de fin
d’étude.
- Monsieur Hirina RAZAKAMAMONJY, Technicien Supérieur chez HABAKA pour
m’avoir donné la chance et aidé d’effectuer ce stage de fin d’étude.
- A tous les Membres de l’Equipe pédagogique du MISEI ainsi qu’aux membres des Personnels
Administratifs et Techniques du Parcours MISEI et ceux de HABAKA, pour leurs aides,
conseils, accueils et efforts tout en m’offrant des encadrements théorique et technique de
qualité.
- Et enfin des vifs remerciements à ma famille pour leur soutien moral et financier et aussi à
mes collègues de promotion pour leurs appuis et collaborations durant mes études
universitaires.
i
Table des matières
Remerciements ............................................................................................................... i
Liste des acronymes/abréviations ............................................................................. iv
Introduction ................................................................................................................. 1
Chapitre I: Présentation de Habaka et celle de la Commune d’Ambohijanaka ........................................ 3
I.1 Habaka .......................................................................................................................................... 3
I.1.1 Objectifs ......................................................................................................................................... 3
I.1.2 Produits ........................................................................................................................................... 3
I.1.3 Organigramme ................................................................................................................................ 4
I.2 Centre d’Information et de Documentation Scientifique et Technique ...................................... 4
I.2.1 Organigramme ................................................................................................................................ 5
I.2.2 Domaines de compétences ............................................................................................................. 5
I.2.3 Prestation de service ....................................................................................................................... 7
I.3 Commune rurale d’Ambohijanaka ................................................................................................ 7
Chapitre II: Matériels et méthodes pour la réalisation de l’application USSD ........................................ 12
II.1 Numérisation des donnés dans la Commune d’Ambohijanaka ................................................. 12
II.2 Création du serveur HABAKA ................................................................................................. 17
II.3 Création de l’application USSD ................................................................................................ 18
Chapitre III: Fonctionnement de l’application .......................................................................................... 23
III.1 Objectif ........................................................................................................................................ 23
III.2 Spécification fonctionnelle ......................................................................................................... 23
III.3 Spécification non fonctionnelle de l’ application ..................................................................... 29
a- Usabilité ....................................................................................................................................... 29
III.4 Mise en opération de l’application ............................................................................................... 30
III.5 Cout du projet ............................................................................................................................... 32
Chapitre IV: Discussions et data analytics ............................................................................................ 33
Conclusion .................................................................................................................. 37
ii
Liste des figures
Figure 1 Organigramme de fablab au sein de l’organisme Habaka. .................................................................. 4
Figure 2 Organigramme du centre de recherche CIDST. .................................................................................... 5
Figure 3 : Organigramme de la Commune d’Ambohijanaka. ............................................................................. 9
Figure 4 Carte de la Commune rurale d’Ambohijanaka. .................................................................................. 10
Figure 5 Exemple du fonctionnement du système. ......................................................................................... 13
Figure 6 Interface d’ajout de donné dans le serveur de la Commune. ............................................................ 16
Figure 7 Interface d 'accueil du serveur. .......................................................................................................... 17
Figure 8 Accès aux bases de données de la Commune numérisées chez Habaka. .......................................... 18
Figure 9 Organigramme fonctionnel de l’application USSD ............................................................................. 21
Figure 10 Schématisation de la réponse à la requête déposée auprès de la Commune. ................................ 21
Figure 11 Message de reccuperation ............................................................................................................... 21
Figure 12 Acheminement de la demande via le serveur USSD. ....................................................................... 22
Figure 13 Liste des demandes déposées auprès de la Commune. .................................................................. 22
Figure 14 Organigramme fonctionnel coté client. ........................................................................................... 24
Figure 15 Logigramme fonctionnel su coté serveur de Habaka ....................................................................... 25
Figure 16 Logigramme du fonctionnement du serveur USSD. ......................................................................... 26
Figure 17 Logigramme des serveurs ................................................................................................................. 27
Figure 18 Erreur sur choix de "Kopia Naterahana" .......................................................................................... 30
Figure 19 Erreur sur choix 2-Filan-kevitra ........................................................................................................ 31
iii
Liste des tableaux
Tableau 1 Tableau statistique de la Commune d’Ambohijanaka. ...................................................................... 8
Tableau 2 Exemple des données mises en page. ............................................................................................. 15
Tableau 3 Exemple de code USSD utilisé par le GSM Orange. ......................................................................... 19
Tableau 4 Types de notification envoyée par l'application .............................................................................. 28
Tableau 5 récapitulation des règles de gestion de l’application ...................................................................... 28
Tableau 6 détails des dépenses pour l’installation de l’application auprès d’une commune. ........................ 32
Tableau 7 Avantages de la numérisation ......................................................................................................... 34
iv
Liste des acronymes/abréviations
USSD : Unstructured Supplementary Service Data
CENRADERU : Centre National de Recherche Appliquée au Développement Rural
ANGAP : association nationale de la gestion des aires protégées
ECMA : European association for standardizing information and communication systems
DOM : Document Object Model
SSPL : Server Side Public License
NoSQL : Not only SQL
1
Introduction
Depuis le début du 21ème siècle, l’innovation technologique a apporté plusieurs changements
dans plusieurs domaines de la vie de l’homme tels que l’environnement, l’agriculture, la santé et
même la gestion et l’administration au sein de n’importe quel organisme.
HABAKA est un Fab Lab destiné à l’innovation de la Communauté technologique à
Madagascar comme : coworking, évènement, formation et développement des startups
technologiques. Regroupant des passionnés de l’innovation à Madagascar, Habaka vise la perfection
dans son domaine d’intervention et a comme ambition de mettre en place le Silicone Valley de
Madagascar prenant l’appellation de Hay Valley. Ainsi, nous avons orienté le choix de notre thème
selon les ambitions et qualités de notre Institution d’accueil de stage.
L’avancement de la technologie apporte plusieurs facteurs de développement dans la vie de
l’être humain. En effet, la technologie peut éliminer les pertes de temps et les pertes d’argent.
Dans la vie quotidienne chacun a ses responsabilités et occupations personnelles. Demander
des papiers administratifs au sein d’une commune est souvent une lourde tâche et des pertes de temps
à cause de la longue file d’attente parfois à perte de vue. La technologie nous offre plusieurs outils
pour la numérisation des données et pour la pratique facile de notre quotidien dans la procédure pour
la demande d’un papier administratif.
Cependant, nous avons pu étudier et mettre en place une plateforme de demande de papier
administratif grâce à l’application Unstructured Supplementary Service Data ou USSD sur téléphone
mobile. Le projet cible les personnes éloignées des bâtiments administratives qui nécessitent de faire
de longues heures de déplacement pour arriver aux lieux concernés et les personnes actives qui ne
peuvent pas quitter leurs lieux de travail.
L’usage d’un téléphone mobile est devenu fréquent chez les usagers depuis le début du 21ème
siècle. Presque 93% des habitants des pays dont Madagascar l’utilise. Tout le monde emmène avec
lui en permanence son téléphone portable, cependant et ce téléphone peut l’aider dans son quotidien
avec une application mobile comme l’USSD et qui est accessible avec n’importe quel type de
téléphone.
Ce présent ouvrage contient quatre chapitres tels que le premier présente les lieux d’accueil
de stage « HABAKA » et la Commune rurale d’Ambohijanaka.
Le deuxième chapitre présente les matériels et méthodes pour la conception de l’application
utilisée.
Le troisième chapitre est axé sur le fonctionnement de l’application tout en l’expliquant en
détail.
2
Enfin le quatrième chapitre rapporte les études de data analytiques avec les discussions des
résultats obtenus.
3
Chapitre I: Présentation de Habaka et celle de la Commune d’Ambohijanaka
I.1 Habaka
HABAKA Madagascar Innovation Hub est un organisme communautaire destiné à
l'innovation et la communauté technologiques à Madagascar au sein du Centre d’Information et de
Documentation Scientifique et Technique (CIDST) sis à Tsimbazaza.
Le nom « Habaka » signifie « espace » en malagasy. Habaka est un espace physique qui
regroupe les talents et les activités technologiques à Madagascar. Le projet met en place un certain
nombre d'initiatives visant à construire un écosystème autour des entrepreneuriat et innovation
technologiques à Madagascar.
Ce nom a été donné par Juliette Ratsimandrava, Directrice des Langues à
l'Académie Malgache pour définir les activités en ligne et virtuelle en langue Malagasy.
Les activités de Habaka gravitent autour de la mise en place d'une organisation d’évènements
sur l'entrepreneuriat et sur les nouvelles technologies, ainsi que l'incubation de startups.
I.1.1 Objectifs
L’ONG Habaka vise à regrouper la communauté technologique malagasy (blogueurs,
entrepreneurs dans les nouvelles technologies, développeurs, technophiles et passionnés, etc.) autour
des activités dont elle fait la promotion.
Habaka est né de la volonté de mettre en commun des compétences pour apporter un nouveau
souffle au secteur des nouvelles technologies à Madagascar mais aussi de celle de diffuser la culture
web et technologique.
I.1.2 Produits
Il existe différents produits conçus par Habaka dont les suivants :
• Le coworking : la gestion d’un espace physique de travail collaboratif de 300 m2, destiné
aux travailleurs indépendants du web et des nouvelles technologies à Antananarivo, sis à
Tsimbazaza (enceinte CIDST). Habaka ambitionne de créer le premier pôle dédié aux
nouvelles technologies à Madagascar appelé officiellement Hay Valley, mais pour
l’instant qui reste un projet;
• L’évènementiel : l’organisation de rencontres technologiques et d’évènements axés sur
les nouvelles technologies, l'innovation et l'entrepreneuriat technologique (conférences,
café TIC, barcamps, concours/challenges, évènements sous licence internationale, etc.) ;
• La formation et l'incubation des startups : le développement des compétences dans les
nouvelles technologies et internet par l’organisation de formations thématiques
4
régulières, formation dès le plus jeune âge cas de CoderDojo Madagascar dirigé par les
staffs technique de HABAKA, un mouvement mondial regroupant des clubs dans toute
l'Ile permettant aux jeunes malgaches d’apprendre à coder et à programmer gratuitement
grâce à l'appui des bénévoles.
I.1.3 Organigramme
Le domaine de notre lieu de stage était dans la fabrication laboratory (fablab). Un fablab est
un tiers-lieu cadré par les comités exécutifs où il est mis à leur disposition toutes sortes d'outils,
notamment des machines-outils pilotées par ordinateur pour la conception et la réalisation d'objets.
La figure 1 montre l’organigramme donnant fablab au sein de l’organisme Habaka.
Figure 1 Organigramme de fablab au sein de l’organisme Habaka.
I.2 Centre d’Information et de Documentation Scientifique et Technique
Le Centre d’Information et de Documentation Scientifique et Technique (CIDST) est l'un des
centres nationaux de recherche à Madagascar, ayant le statut d’Etablissement Public à caractère
Industriel et Commercial (EPIC). Ce centre contribue à la promotion et à la valorisation de la Science
dans tous les domaines d’Enseignement (Agriculture, Economie, Environnement, etc.) à Madagascar.
Il est sous la double tutelle du Ministère de l'Enseignement Supérieur et de la Recherche Scientifique
(MESupReS) et du Ministère de l’Economie des Finances (MEF) de Madagascar.
Conseils d' Administration
Entreprenariat Fablab
Comités exécutifs
5
I.2.1 Organigramme
Selon la figure 2, la structure organisationnelle du CIDST se compose des :
• Un Conseil d’Administration ;
• Un Conseil Scientifique d’Orientation ;
• Une Direction ;
• Des Services et Départements Techniques ;
• Quatre Antennes régionales (situées à Fianarantsoa, Toamasina, Mahajanga, Toliary) ;
• Une Cellule Technologie de l’Information et de Communication ;
• Et depuis Mai 2012, le CIDST héberge et gère le Centre d’Appui à la Technologie de
l’Innovation (CATI).
Figure 2 Organigramme du centre de recherche CIDST.
I.2.2 Domaines de compétences
Les domaines de compétence du CIDST sont très diversifiés :
• Fourniture de documents primaires ;
• Edition/impression ;
• Formation en sciences de l’information (bibliothéconomie, techniques documentaires,
gestion de l’information, recherche d’information, informatique documentaire) ;
• Informatisation et/ou réorganisation de systèmes documentaires ;
• Formation en informatique ;
• Formation en secrétariat-bureautique et en organisation administrative ;
• Participation aux foires, séminaires, etc. ;
6
La mission principale du CIDST est de satisfaire les besoins en information de n’importe
quelle cible : des décideurs, des chercheurs, des opérateurs économiques, des enseignants et des
acteurs du développement, en général.
Les outils d’information utilisent la base de données bibliographiques MIREMBY du
CIDST qui est une base agrémentée en coopération. Elle essaie de faire la synthèse du patrimoine
documentaire dans le domaine de l’information et de la documentation scientifique et technique à
Madagascar.
Cette base de données fait état actuellement de 59 000 documents détenus par les organismes
suivants :
• CIDST (17%) ;
• Centres Nationaux de recherche FOFIFA/CENRADERU, CNARP, CNRE, CNRIT ;
• Académie Nationale des Arts, des Lettres et des Sciences ;
• Parc Botanique et Zoologique de Tsimbazaza (PBZT) ;
• Institut Pasteur de Madagascar (IPM) ;
• Organismes bilatéraux IRD, CIRAD, BDPA (France et Madagascar) ;
• Organisme non gouvernemental WWF ;
• Bibliothèque Nationale ;
• Ministère de l’elevage,de l’Agriculture et de la pêche (Direction des Ressources
halieutiques de la section agriculture ) ;
• Programme Engrais Malagasy, EASTA et autres services ;
• Ministère de l’industrie, du commerce et de l’artisanat (Direction des commerces) ;
• ANGAP ;
• Laboratoire National de Recherches en Télécommunications ;
• Organismes internationaux PNUD, ONUDI, UNICEF, FNUAP, PAM, FAO ;
• Projet COEFOR (Foresterie-Environnement) ;
• Projets internationaux : SEATS (Planning Familial - USAID) ;
• Réseau IBISCUS du Ministère Français de la Coopération).
Il existe d’autres bases de données telles celle concernant l’Administration publique
Malagasy, celle des chercheurs des Centres Nationaux de Recherches à Madagascar, celles se
rapportant aux données commerciales : informations sur 230 produits agricoles.
Des disques compacts CD-ROM peuvent également être exploités en mode local pour accéder
à des bases de données agricoles (SESAME, CAB, TROPAG et RURAL, AGRICOLA et AGRIS) et
à des bases de données sur les brevets.
7
I.2.3 Prestation de service
Le CIDST réalise les prestations suivantes, selon les demandes :
• Enquêtes sur les données locales ;
• Organisation d’unité documentaire (inventaire, informatisation du fonds documentaire,
traitements manuel et informatique des documents) ;
• Etude pour la mise en place d’unités de documentation ;
• Mise en place de bases et banques de données ;
• Recherches bibliographiques sur un thème bien déterminé.
I.3 Commune rurale d’Ambohijanaka
Ambohijanaka est une Commune rurale de la Région d’Analamanga, située dans le district
d’Antananarivo Avaradrano. Le choix de cette Commune a été arbitraire. Cependant au vu de sa petite
superficie avec un taux démographique pas assez élevé comparé à celui de la Commune urbaine
d’Antananarivo, la Commune d’Ambohijanaka est idéale pour être une Commune Pilote de notre
projet.
I.3.1 Tableau statistique de la Commune rurale d’Ambohijanaka
Nous avons pu collecter des données à l’aide à nos documentations d’un côté et aux données
au sein de la Commune, de l’autre côté. Grâce aux avantages de la numérisation, nous avons pu
relever le nombre exact de la population au sein de la Commune et d’autres données qui nous ont
permis d’évaluer différents taux comme : la natalité, la mortalité, l’espérance de vie, l’indice de
fécondité et autres.
Ainsi, nous avons pu encore évaluer d’autres données comme la croissance démographique
avec sa prédiction pour les années à venir. A ce stade, nous faisons remarquer que cette information
est très importante pour la bonne gestion des catastrophes environnementales d’une Commune.
Concernant les données statistiques de la Commune, nous avons le tableau 1 les indiquant.
8
Tableau 1 Tableau statistique de la Commune d’Ambohijanaka.
Nom
Commune Ambohijanaka
Type Rurale
Province
Antananarivo
Région
Analamanga
Pays
Madagascar
Population
13984 habitants
Croissance démographique
2,71 % / an
Superficie
2500 ha ou 25km²
Densité
559,36 habitants/ km²
Esperance de vie
64,85 ans
Taux de natalité
28,58%
Indice de fécondité
3,36 enfants / femme
Taux de mortalité
7,10%
Taux de mortalité infantile
3,13%
Langue officielle
Malagasy
Nombre de fokontany
12
Activités
Elevage, agriculture et commerce
9
Taux accessibilités à la technologique
85% des habitants
Code Postal 102
I.3.2 Organigramme de la Commune d’Ambohijanaka
Selon la loi Annexe n°03 à la loi n° 2014-020 du 27 septembre 2014 relative aux ressources des
Collectivités territoriales décentralisées, aux modalités d’élections, ainsi qu’à l’organisation, au
fonctionnement et aux attributions de leurs organes, la Commune d’Ambohijanaka a la même
structure que celle de toutes les autres communes rurales. Elle travaille ainsi sous une forme
d’hiérarchie donnée par la figure 3.
Figure 3 : Organigramme de la Commune d’Ambohijanaka.
I.3.3 Localisation géographique
La Commune rurale d’Ambohijanaka se situe dans le Sud d’Antananarivo sur la route
nationale numéro 7 (RN7). Elle est à 12km du centre-ville au Sud-Est de la capitale dans le district
d’Antananarivo Avaradrano dans la région d’Analamanga. Les habitants, en majorité, vivent de
l’agriculture et de l’élevage.
10
La figure 4 montre la carte de la Commune rurale d’Ambohijanaka.
Avec cette carte sur google Map nous avons comme échelle 2000pi → 1Km
D’ où 1km→ 0.265cm
Notation:
Km : Kilometre
Cm : centimètre
Figure 4 Carte de la Commune rurale d’Ambohijanaka.
I.3.4 Activités de la Commune rurale d’Ambohijanaka.
La Commune rurale d’Ambohijanaka s’occupe, entre autres, des démarches administratives
telles que :
• Demandes de papier administratifs : chaque jour on enregistre, en moyenne, huit (8)
demandes de copie d’acte de naissance ou de décès dans la commune. Elles constituent
une de ses ressources financières importantes. Mais les demandes de papiers
administratifs pour les propriétés foncières sont les plus importantes et lui apportent des
revenus plus consistants.
• Légalisation d’un document : C’est l’activité la plus active au sein de la Commune et
contribue partiellement dans les revenus communaux.
• Demandes d’autorisation : Il s’agit des demandes de permis de construire des
infrastructures privées ou celle d’autorisation pour des organisations évènementielles
ayant lieu dans la Commune.
11
I.3.5 Procédure pour la réalisation de notre projet
Avant d’engager notre projet, nous avons demandé une audience avec le Maire
d’Ambohijanaka pour lui présenter le fruit de notre imagination pour l’innovation des demandes de
papiers administratifs auprès de la Commune. Après son accord, nous avons demandé une rencontre
avec chacun des Responsables de la Commune.
Les Responsables de la Commune abondaient dans l’idée de la mise en place et de la
réalisation de notre projet. A ces effets, toutes les procédures s’étaient bien passées sans aucune
contrainte venant d’une entité quelconque. Cependant, concernant l’accès aux données, nous avons
formulé un engagement de confidentialité que nous avons déposé auprès de la Commune elle-même.
Ce qui nous a aussi facilité les tâches par la suite. Nous avons présenté notre projet au Maire avec ses
conseillers. Suite aux débats sur la vision et sur les objectifs du projet et moyennant des rectificatifs
à certains endroits selon les besoins de la Commune, ils ont approuvé à l’unanimité les travaux à
entreprendre dans le cadre de notre projet
Puis après nous avons demandé l’autorisation d’accès à toutes les données utiles pour la
réalisation de notre application. Toutes informations concernant chaque individu sont classées dans
un grand livre pour chaque acte : acte de naissance, acte de décès, acte de légalisation, acte de
délivrance de permis de construire, etc. Cela nous a pris beaucoup de temps de procéder aux saisies
dans notre base de données. En plus certains livres étaient usés et nous avons eu du mal à lire les
écritures dedans. Il y en avait même eu certains livres ayant des feuilles manquantes. Malgré tout,
nous avons engagé les débuts de nos travaux pour pouvoir avancer dans notre projet.
12
Chapitre II: Matériels et méthodes pour la réalisation de l’application
USSD
II.1 Numérisation des donnés dans la Commune d’Ambohijanaka
II.1.1 Matériels utilisés pour la numérisation
Lors de la mise en œuvre de notre projet, nous avons utilisé le langage JavaScript comme
moyens de programmation du programme avec les plateformes Node.js, Angular.js et MongoBD pour
la réalisation de tous nos webservices.
a. Javascript
JavaScript est un langage de programmation de scripts principalement employé dans
les pages web interactives mais aussi pour les serveurs2 avec l'utilisation, par exemple, de Node.js3.
C'est un langage orienté objet à prototype, c'est-à-dire que les bases du langage et ses principales
interfaces sont fournies par des objets qui ne sont pas des instances de classe mais qui sont, chacun,
équipés de constructeurs permettant de créer leurs propriétés, notamment, une propriété de
prototypage qui permet d'en créer des objets héritiers personnalisés. En outre, les fonctions sont
des objets de première classe. Le langage supporte le paradigme objet, impératif et fonctionnel.
JavaScript est le langage possédant le plus large écosystème grâce à son gestionnaire de
dépendances npm, avec environ 500 000 paquets en août 2017, [].
a1. Concept de programmation
Le but de JavaScript est de manipuler de façon simple des objets, au sens informatique, fournis
par une application hôte. Par exemple dans un navigateur web, un script écrit en javascript peut être
utilisé pour apporter une touche interactive ou dynamique à un applicatif (page ou site web), qui sans
cela constitue une page statique figée. Le langage Javascript permet, par exemple, d'écrire des scripts
pour afficher ou cacher un paragraphe, une image ou un popup, selon les interactions de l'utilisateur,
ou d'informer le serveur du temps passé à lire une page.
Ainsi, on peut réaliser avec Javascript :
• Un système de chat, comme celui de Facebook ;
• Une suggestion lors de la frappe dans un champ de texte, comme lors d'une recherche
avec Google ;
• Un lecteur de vidéos ou de musiques, aussi puissant que celui de Youtube, grâce aux
balises <video> et <audio> ;
13
• Des jeux exploitants la balise <canvas> comme Torus, un Tetris en 3D ;
• La modélisation 3D d'une Lamborghini affichée grâce à l'API WebGL et à la
bibliothèque Three.js ;
• Etc.
b1. JavaScript, langage de scripts
JavaScript est majoritairement utilisé sur Internet, conjointement avec les pages Web HTML.
JavaScript s'inclut directement dans la page Web (ou dans un fichier externe) et permet
de dynamiser une page HTML, en ajoutant des interactions avec l'utilisateur, des animations, de l'aide
à la navigation, comme par exemple :
• Afficher/masquer du texte ;
• Faire défiler des images ;
• Créer un diaporama avec un aperçu « en grand » des images ;
• Créer des infobulles.
Le JavaScript est un langage dit client-side, c'est-à-dire que les scripts sont exécutés par le
navigateur chez l'internaute (le client). Cela diffère des langages de scripts dits server-side qui sont
exécutés par le serveur Web. C'est le cas des langages comme le PHP.
C'est important, car les finalités des scripts client-side et server-side n'est pas la même. Un
script server-side va s'occuper de « créer » la page Web qui est envoyée au navigateur. Ce dernier va
alors afficher la page puis exécuter les scripts client-side tel que le JavaScript. La figure 5 montre un
exemple du fonctionnement du système.
Figure 5 Exemple du fonctionnement du système.
14
Soit, en résumé, il vient que :
• JavaScript est un langage de programmation interprété, c'est-à-dire qu'il a besoin d'un
interpréteur pour pouvoir être exécuté.
• JavaScript est utilisé majoritairement au sein des pages Web mais son utilisation en guise
de serveur ou d'application commence à se répandre.
• Tout comme HTML, JavaScript est généralement exécuté par le navigateur de l'internaute
et l’on parle d'un comportement client-side, par opposition au server-side, lorsque le code
est exécuté par le serveur.
• JavaScript est standardisé par ECMA International sous le nom de ECMAScript qui
constitue la référence du langage.
• La dernière version standardisée de JavaScript est basée sur ECMAScript 5, version sortie
en 2009. Mais sa nouvelle version, ECMAScript 6, devient de plus en plus répandue.
b. Nodejs
Nodejs est une plateforme logicielle libre et évènementielle en JavaScript et orientée vers les
applications réseaux. Elle a été créée par Ryan Lienhart Dahl et sa première version a fait ses
apparitions le 27 Mai 2009 []. Son développement et sa maintenance sont effectués par
l'entreprise Joyent qui permet d’utiliser JavaScript du coté serveur, en dehors du navigateur. Nodejs
sert pour gérer le coté serveur de l’application ou backend.
c. Angularjs
Angularjs a fait ses débuts en 2009. C’est un Framework JavaScript libre et un open
source développé par Google. Angularjs est fondé sur l’idée de la programmation déclarative destinée
pour construire les interfaces utilisatrices.
Les objectifs de sa conception sont tels que :
• Découpler les manipulations du DOM de la logique « métier », ce qui améliore la
testabilité du code ;
• Considérer le test d'une application aussi important que l'écriture de l'application elle-
même : la difficulté de la phase de test est considérablement impactée par la façon dont
le code est structuré ;
• Découpler les côtés client et serveur d'une application, cela permet au développement
logiciel des côtés client et serveur de progresser en parallèle et permet la réutilisabilité de
chacun des côtés ;
15
• Guider les développeurs pendant toute la durée de la construction d'une application : dès
la conception de l'interface utilisateur, en passant par l'écriture de la logique métier,
jusqu'au test de l'application ;
• Rendre les tâches faciles évidentes et les tâches difficiles possibles.
Nous avons utilisé Angular pour la réalisation du front end ou coté client
d. MongoBD
MongoDB (de l'anglais humongous signifiant « énorme ») est un système de gestion de base
de données orienté documents, répartissable sur un nombre quelconque d'ordinateurs et ne
nécessitant pas de schéma prédéfini des données. Il est écrit en C++. Le serveur et les outils sont
distribués sous licence SSPL, les pilotes, sous licence Apache et la documentation, sous licence
Creative Commons4. Il fait partie de la mouvance NoSQL.
MongoDB permet de manipuler des objets structurés au format BSON (JSON binaire), sans
schéma prédéterminé. En d'autres termes, des clés peuvent être ajoutées à tout moment « à la volée »,
sans reconfiguration de la base. Le tableau 2 présente un exemple des données mises en page.
Tableau 2 Exemple des données mises en page.
ID Nom Prenom Date de
nassaice
Heure
1 Rakoto Jean 6 Mars 1978 8
2 Rabe Franck 17 Aout 2001 7
Le code correspondant dans le fichier de stockage d'une table (par exemple csv)
d'un tableur est comme suit :
ID,Nom,Prénom,date de naissance, heure
1,Rakoto,Jean,6 Mars 1978, 8
2,Rabe,Franck, 17 Aout 2001, 17
Nous avons utilisé MongoDB pour la création du serveur.
II.1.2 Création du programme pour la numérisation des données
Grâce aux outils présentés dans le paragraphe II.3.1, nous avons pu développer un programme
pour pouvoir insérer les données dans un serveur local.
16
La figure 6 montre une interface d’ajout de données dans le serveur de la Commune.
Figure 6 Interface d’ajout de donné dans le serveur de la Commune.
Comme le montre la figure 6, chaque individu a déjà un numéro de copie. Ce numéro a été
attribué selon son année de naissance suivie d’un numéro à quatre chiffres ou plus. Chaque individu
a son numéro respectivement selon sa date de naissance et est enregistré dans le livre de la commune.
Par exemple : Rakoto est né le 01 Janvier 2010 et Rasoa, le 02 Janvier 2010. Ainsi, le numéro de
Rakoto est le 2010/0001 et celui de Rasoa, 2010/0002.
Ce numéro est attribué selon l’arrivé des parents à la commune pour enregistrer la naissance
ou le décès d’une personne. Ce numéro revient à 0001 chaque année.
En conséquence, nous avons copié toutes les données dans le livre dans notre base de données
sans rien changer.
Nous pouvons voir aussi les autres données comme les nom, prénoms, date de naissance,
heure de naissance, lieu de naissance, sexe et situation patrimoniale. Une fois saisies, ces données
sont stockées dans la base de données de la Commune. Et il y a aussi des onglets où nous insérons
les informations personnelles des parents de l’individu.
Le développement de l’interface serveur nous a pris trente jours. La numération des données
dans la Commune nous a pris vingt jours.
17
La figure 7 montre l’interface d 'accueil du serveur.
Figure 7 Interface d 'accueil du serveur.
Avec cette interface graphique liée au serveur, les opérateurs de la Commune peuvent
facilement ajouter des personnes à la base de données et les numéros sont attribués automatiquement
pour les nouveaux nés, selon leurs date et heure de naissance, c'est-à-dire ces nouveaux nés sont
enregistrés directement dans la base de données avec le logiciel.
Ils peuvent dorénavant établir des copies d’acte de naissance grâce seulement aux noms d’une
personne, sa date de naissance. Ils peuvent ajouter d’autres informations composant le dossier de
chaque individu.
Nous notons que grâce à l’évolution permanente de la technologie, la base de données de
chaque service est à mise à jour de façon permanente, ce qui répond aux attentes des agents de la
Commune.
II.2 Création du serveur HABAKA
Les données numérisées de la Commune sont stockées dans le serveur de HABAKA pour
avoir une meilleure gestion des données et un accès à tout moment en cas de problème (voir figure
8).
18
Figure 8 Accès aux bases de données de la Commune numérisées chez Habaka.
A partir du moment où le serveur est opérationnel dans la Commune, chaque donnée sur
chaque naissance ou décès est directement stockée dans la base de données de HABAKA. Ainsi, les
opérateurs de la Commune peuvent effectuer une mise à jour en temps réels.
C’est le serveur de HABAKA qui est connecté avec le serveur USSD.
II.3 Création de l’application USSD
L’Unstructured Supplementary Service Data ou Données de Services Supplémentaires non
Structurées (USSD) est une connexion en temps réel entre l’opérateur téléphonique et l’utilisateur qui
permet l’envoi et la réception de données. Contrairement au SMS, les données ne sont pas stockées
et sont seulement accessibles lors de l’ouverture de la session. Concrètement, l’utilisateur renseigne
un numéro court du type #xxx# et accède à un menu contextuel dans lequel il peut naviguer grâce
aux touches de son téléphone.
USSD est une application permettant de transmettre l'information sur les canaux de
signalisation GSM. Cette application est surtout utilisée comme une méthode de suivi de la solde
disponible du titulaire de compte bancaire et d'autres informations semblables pour les services GSM
pré-payés comme les comptes mobiles ou demandes de solde/crédit (#123# pour
les mobicartes d’Orange par exemple).
Cependant, l’application USSD est un système qui fonctionne en temps réel.
Les codes USSD sont de la forme (%)(%)%1XY(*text)#, où () indique un élément
optionnel, % vaut « # » ou « * », X et Y sont deux chiffres (0 à 9), text est un élément alphanumérique
de longueur variable. Les codes de 100 à 149 sont utilisés par un opérateur pour ses clients, les codes
150 à 199 pour les clients d'autres opérateurs en roaming sur leur réseau.
Le tableau 3 rapporte un exemple de code USSD utilisé par le GSM Orange.
Numerisation des données
TransfertServeur HABAKA
19
Tableau 3 Exemple de code USSD utilisé par le GSM Orange.
#123# Orange : Suivi conso et gestion du compte mobile client 2
#122*032xxxxxxxx# Orange : Votre correspondant reçoit un SMS : « Le 06.xx.xx.xx.xx
cherche à vous joindre et souhaiterait que vous le rappeliez. »
#125# Orange : Obtenir un no d’accès Wi-Fi
#124*xxxxxxxxxxxxxx# rechargement en indiquant les 14 chiffres de la carte à gratter / ticket
*144# pour le suivi conso des clients des MVNO (Virgin, NRJ, Monacell ...)
#144# Orange Money (transfert d'argent à l'international)
II.3.1 USSD un système en temps réel
En informatique, on parle d'un système temps réel lorsque ce système est capable de contrôler
(ou piloter) un procédé physique à une vitesse adaptée à l'évolution du procédé contrôlé.
Les systèmes informatiques temps réel se différencient des autres systèmes informatiques par
la prise en compte de contraintes temporelles dont le respect est aussi important que l'exactitude du
résultat, autrement dit, le système ne doit pas simplement délivrer des résultats exacts mais il doit les
délivrer dans des délais imposés.
a. Spécificités
Concernant les spécificités de l’application USSD, il vient :
• Les différents services et algorithmes utilisés s'exécutent en temps borné mais peuvent
être interrompus par un processus plus prioritaire ;
• Un système d'exploitation temps réel doit ainsi être conçu de manière que les services
qu'il propose (accès hardware, etc.) répondent en un temps borné et soient interruptibles ;
• Les différents enchaînements possibles des traitements garantissent que chacun de ceux-
ci ne dépassent pas les contraintes temporelles. Ceci est vérifié à l'aide du « test
d'acceptabilité ».
b. Taches
Une tâche est généralement caractérisée par un temps de calcul (Ci), une échéance (Di) qui est la
date à laquelle la tâche doit être terminée ou exécution, et dans le cas des tâches périodiques, par une
période (Ti) qui représente la durée séparant ses instants d'activation.
20
c. Condition de charge
Pour tout système de n tâches, la condition suivante est nécessaire mais pas suffisante à sa faisabilité :
Avec : ∑𝐶𝑖
𝑇𝑖
𝑛𝑖=1 ≤ 1
Avec :
Ci étant le temps de calcul de la tâche n° i,
Ti, sa période.
Une valeur supérieure à 1 signifie que le système nécessite plus de temps d'exécution que le
processeur ne peut en fournir.
Le temps de réponse dans le cas le plus défavorable d'une tâche est, parmi tous les scénarios
possibles d'exécution du système, la plus longue durée entre l'activation de cette tâche et son instant
de terminaison.
Une tâche est faisable si son temps de réponse dans le pire des cas est inférieur ou égal à son
échéance.
L’application USSD est une connexion en temps réel entre l’opérateur téléphonique et
l’utilisateur qui permet l’envoi et la réception de données. Le temps de calcul d’un traitement de tâche
est inférieur à 1, ce qui est inférieur à la période T aussi et qui nous donne un temps de réponse
favorable.
II.3.2 Mise en place de l’application
Après avoir consulté les opérateurs téléphoniques de Madagascar, le service Orange est le seul
operateur à avoir répondu à notre demande et est intéressé par le projet.
Mettre en place une application USSD consiste à demander à l’opérateur de nous donner accès
à un canal de ses réseaux avec un code défini de type #xxx#.
Ainsi Orange nous a donné le code #440# comme accès des clients à l’application. Ce canal
est relié au serveur de Habaka où les données de la Commune sont enregistrées.
La figure 9 montre l’organigramme fonctionnel de l’application USSD réalisée.
xxxxxxx
x
21
Figure 9 Organigramme fonctionnel de l’application USSD
Les requêtes envoyées par les usagers sont reçues par le serveur USSD de l’opérateur puis le
serveur USSD envoie automatiquement les informations sur la personne. Son numéro ID et sa
demande d’acte de naissance ou autres reçus par le serveur HABAKA sont envoyés en même temps
à la Commune pour les impressions et aussi au serveur USSD pour qu’il envoie sous forme de sms
le message de récupération qui contient la date et l’heure de récupération et les frais du document
(voir figure 11). On peut voir la chaine effectuée par les serveurs avec les figure 10
Figure 10 Schématisation de la réponse à la requête déposée auprès de la Commune.
Figure 11 Message de reccuperation
serveur USSDServeur HABAKA
Serveur USSD
Demande
client
Sms de
récupération
N°ID : 2010/0001 acte de naissance
Ny taratasy nangatahinao dia hazonao
alaina aty amin’ny commune
Ambohijanaka ny 12/05/2019 amin’ny
10 :30. Misaotra tompoko
22
II.3.3 Web Service de la Commune
La commune a un site web connecté au serveur de Habaka où chaque demande est listée et
est envoyée dans le ce webservice pour que l’agent puisse imprimer les papiers administratifs (voir
figure 13). Les demandes sont listées respectivement dans chaque onglet selon leur types (acte de
naissance, copie ou décès) comme l’indique la figure 11.
Figure 12 Acheminement de la demande via le serveur USSD.
Les horaires de récupération sont envoyés automatiquement par le programme selon la
réception de leur demande. Chaque heure de récupération est séparée d’un intervalle de 3 minutes.
Figure 13 Liste des demandes déposées auprès de la Commune.
Serveur HABAKA Webservice de la
commune Serveur USSD
Impression
23
Chapitre III: Fonctionnement de l’application
III.1 Objectif
L’application USSD pour les demandes de papiers administratifs a pour but de :
- Faciliter la demande de fiche d’état civile
- Diminuer les pertes de temps et d’argent des demandeurs de service
- Éliminer les longs fils d’attente
- Automatiser la tâche du personnel de la Commune
- Faciliter la gestion des données auprès de la commune
Cette à application a été conçu pour subvenir à la faciliter de demande de papiers administratifs auprès
des institutions administratives.
III.2 Spécification fonctionnelle
a. Du coté client
Comme le montre la figure 13, on peut voir la schématisation du logigramme fonctionnel de
l’application du coté client.
Le client doit suivre trois étapes pour effectuer une demande, dont :
- Première étape : le client saisi le code USSD.
Le numéro court est « #440# »
- Deuxième étape : Choix des communes :
Dans cette branche, le client choisit la commune à laquelle il appartient. Notons que chaque commune
à sa base de données respective.
- Troisième étape : Services Demandées :
Il y a deux choix dans cette branche :
➢ Demande d’Acte de naissance :
Ce service a pour but de faire la demande d’une copie d’Acte de naissance
• Pour avoir accès à ce service, le client doit entrer un ID valide au sein de la commune.
(Chaque personne appartenant à la commune aura un ID unique).
L’ID sera vérifié sur la base de données du serveur
• Après avoir entré un ID valide, on lui demandera d’entrer le nombre de pièce administratif
qu’il veut obtenir avec sa tarification
• La confirmation de la transaction, si l’utilisateur confirme la transaction ; un sms de
récupération lui sera envoyer. Ce sms contiendra les informations suivantes : date et heure de
récupération, code de récupération
24
➢ Demande d’informations :
Cette partie concerne les pièces administratives requises pour l’obtention d’une telle ou telle
demande.
• Le client doit choisir quel papier administratif va-t-il besoin d’information
• Après avoir choisi, On lui enverra un sms contenant les informations nécessaires pour la
demande d’un tel ou tel permis (Permis de construire, démolition,)
NB : Chaque menu contient le menu précédent ou retour au menu principal.
Figure 14 Organigramme fonctionnel coté client.
b. Coté serveur :
En premier temps l’administrateur aura accès au serveur avec un login et mot de passe. Apres
authentification il aura accès à la base donné d’une commune qui est lié avec le serveur de Habaka.
La demande envoyée par le client sera acheminée par le réseau de l’opérateur vers le serveur lui-
même. Alors le serveur va lire l’ID envoyer par le client avec les nombres de pièces demandé et va
lister les tâches à effectuer pour l’impression des papiers administratifs. Après avoir acquis toutes les
25
informations nécessaires, le serveur envoie une notification à la commune concernant la demande du
client. Comme le montre la figure 14 sur le logigramme fonctionnel su coté serveur de Habaka
connecté à la commune.
Figure 15 Logigramme fonctionnel su coté serveur de Habaka
c. Fonctionnement du serveur USSD :
Une fois que la demande de la requête du client est reçu par le serveur USSD de l’opérateur dont le
choix du commune, le service demandé et nombre de pièce demandé ; le serveur USSD envoie une
notification au serveur de HABAKA dont il va lire l’ID du client et confirme si c’est un ID valide avec les
requête sur les nombres et types de papiers demandés. Ainsi, après lecture de tous les informations
envoyées par le serveur USSD, le serveur de HABAHA notifie le serveur USSD qu’il a reçu les informations,
et c’est le serveur USSD qui envoie le message de confirmation au client pour qu’il puisse récupérer ses
26
papiers après confirmation de la transaction des frais pour la demande. Cette procédure est effectuée en
moins d’une seconde par le programme.
Pour une demande de renseignement, c’est le serveur USSD qui envoie un sms au client sur
la liste des pièces à fournir pour quelconque demande de papiers administratifs et cela toujours
après vérification des transactions pour chaque demande.
Comme peut le montrer la figure 15, on peut voir les procédures cités ci-dessus qui sont
effectuées par le serveur USSD.
Figure 16 Logigramme du fonctionnement du serveur USSD.
27
d. Logigramme des serveurs :
Cependant la schématisation du logigramme des serveurs est comme suit (voir figure 17).
Après réception de la requête, le serveur USSD va envoyer une notification au serveur de
HABAKA, puis le serveur HABAKA va effectuer une lecture des informations envoyées par le
serveur USSD, et le notifie après vérification de l’ID et validation des tâches demandés. Le serveur
HABAKA va lister les papiers à imprimer à la commune, et c’est le serveur USSD qui va envoyer
un SMS de récupération au client.
Figure 17 Logigramme des serveurs
e. Récapitulation des informations de fonctionnement et gestions du programme :
Voici une récapitulation intégrale du mode de fonctionnement de notre application.
e1. Notifications envoyés par l’application :
La confirmation de chaque commande est envoyée sous forme d’un SMS si seulement après
vérification de la transaction.
Les nombres de pièces à imprimer sont envoyés sous forme d’Alerte dans le website de la
commune après confirmation de l’ID du client et pièce d’état civil valide.
L’opérateur responsable de la gestion des serveurs est aussi alerté lors de la synchronisation
des bases de données.
28
Comme peut le montrer le tableau 4 sur les types de notification envoyées par l’application.
Tableau 4 Types de notification envoyée par l'application
Description Type Condition
Confirmation commande SMS Transaction effectuée
Pièces à imprimer Alerte Demande de pièce d’état civil
validée
Synchronisation de la Base de données Alerte Synchronisation de la Base de
données communale
e2. Règles de gestion :
Dans les règles de gestions de l’application, les demandes sont facturées seulement après
vérification d’un ID valide par le serveur de HABAKA. Concernant les transactions, elles sont
effectuées automatiquement par le programme si seulement le client a un crédit suffisant pour sa
demande. Pour la liste des pièces à imprimer, elles sont listées dans le website de la commune et
seront imprimés seulement après validation de l’agent de la commune.
Les agents de la commune peuvent modifier les données de chaque individu dans la base de
données de la commune après authentification. Ils peuvent également ajouter et supprimer n’importe
quelle information concernant un individu au sein de la commune. Chaque accès seront sauvegarder
dans une historique d’accès de la website.
D’autre part, la commune doit assigner un ID unique pour chaque individu. Ce pendant un ID
correspond seulement à un seul individu pour éviter les erreurs d’informations dans les impressions
de papiers.
Comme le montre le tableau 5 sur la récapitulation des règles de gestion de l’application.
Tableau 5 récapitulation des règles de gestion de l’application
Module Règle
Client USSD - Serveur Les demandes de fiche d’Etat Civile nécessitent un ID
valide
Client USSD - Serveur Les transactions payant ne peuvent être effectuées si le
client ne dispose pas de crédit
Serveur – Client Commune Les bases de données du serveur seront synchronisées
automatiquement avec celle des communes
29
Serveur – Client Commune
La tâche d’impression automatique des pièces
demandées sera validée qu'après validation des agents de
la commune.
Serveur – Client Commune
Les agents de la commune pourront modifier ou ajouter
des données à leur base de données à partir du Service
Web Service Plus. Le Service Web peut fonctionner
localement. Toute modification offline sera synchronisée
une fois que le Client commune sera de retour sur le
réseau
Serveur – Client Commune
La commune doit assigner des ID unique, contenant des
caractères alphanumériques ne dépassant pas 160
caractères, à chaque personne dans sa base de données
Serveur – Client Commune Les bases de données ne peuvent être modifié à partir du
Serveur
III.3 Spécification non fonctionnelle de l’application :
a- Usabilité
Le service peut fonctionner avec tout type de terminal, allant des cellulaires bas de gamme aux
smartphones ayant accès aux services GSM. (Partie client)
L’interface est simple et semblable à celui des services USSD.
Au niveau de la commune, un ordinateur connecté en permanence est indispensable pour recevoir
les requêtes.
b- Compatibilité
Pour le client, le service est accessible depuis n’importe quel terminal avec un accès GSM.
Pour la commune, le service nécessite un ordinateur ayant une connexion internet en permanence.
c- Sécurité
La modification ou l’ajout de la base de donné requiert un mot de passe et un login propre à la base
de donnée. Seule la commune peut modifier ou ajouter des données à sa base de données par
l’intervention de ces agents.
30
III.4 Mise en opération de l’application
• Phase de test
Nous avons rencontré certaine erreur lors de la phase de test. L’erreur ne venait pas du
programme, mais du côté de l’opérateur téléphonique. La phase de test a duré une semaine en
effectuant des requêtes à une tranche d’heure aléatoire. On a pu constater deux erreurs reliées aux
serveur USSD et deux liés au serveur.
- Erreur 1
Quand on choisit « 1.Kopia Naterahana » , on n’a pas la possibilité d’entrer le « Nomerao Kopia »
Comme peut le montrer la figure 16
Figure 18 Erreur sur choix de "Kopia Naterahana"
- Erreur 2 : Le choix « 2.Filan-kevitra » ne marche pas :
Lorsqu’on choisi le menu 2- Filan-kevitra , cela n’affiche aucun resultat. Comme peut le montrer la
figure 17
31
Figure 19 Erreur sur choix 2-Filan-kevitra
➢ Détection des problèmes :
Nous avons effectué des requêtes à un intervalle de temps non défini choisi au hasard, et on a
pu constater que des fois l’application n’affiche pas d’erreur.
Alors on a pu constater que ces deux erreurs étaient liées à la maintenance de serveur chez
l’opérateur téléphonique mais non à notre système. Souvent Orange effectue une maintenance de leur
serveur, et cela peut perturber le fonctionnement du système.
Apres communication avec le responsable, la maintenance peut provoquer aussi un
changement d’architecture. Cependant, fallait se mettre d’accord sur l’heure de maintenance, c'est-à-
dire la nuit et qu’ils trouvent un moyen de ne pas perturber le système et ne jamais changer une
architecture déjà définie.
- Erreur 3 : Beug sur le serveur HABAKA.
Des fois les requête n’arrivaient pas au serveur USSD, et les clients ne reçoivent pas le sms
de récupération.
Ce problème est lié à une saturation des données, ce pendant on a dû libérer plus d’espace
dans le serveur HABAKA.
- Erreur 4 : Les clients n’ont pas accès à l’interface USSD.
Par saturation du réseau, il faut recommencer deux ou trois fois pour avoir accès à l’interface
USSD. C’est un problème fréquent pour les usagers de réseau mobile. Ce problème arrive aussi lors
des appels ou envoies de sms, non seulement à notre application. Cependant, ce n’est qu’une simple
saturation de réseau dû à l’usage simultané du réseau par les clients.
32
III.5 Cout du projet
Le coût pour la réalisation et installation du projet auprès d’une commune est au total une
somme de quatre millions quatre-cent cinquante milles Ariary. Comme le montre le tableau 6 sur
les détails des dépenses pour l’installation de l’application auprès d’une commune dont
l’hébergement du serveur de HABAKA à l’international, le coût de la numérisation des données
auprès d’une commune, les fournitures bureautiques comme les ordinateurs et imprimantes, les
salaires de chaque agent de la commune pour la gestion des impressions et enfin le prix de la
conception des logiciels et siteweb pour la mise en opération de l’application.
Tableau 6 détails des dépenses pour l’installation de l’application auprès d’une commune.
Nom cout
Hébergement serveur HABAKA à
l’international
500.000 Ariary/ an
Un ordinateur pour la commune 1.000.000 Ariary
Imprimante pour la commune 100.000 Ariary
Main d’œuvre pour la gestion des serveurs 1.000.000/mois
Numérisation des donnés par commune 700.000 Ariary
Logiciel et site web 1.000.000 Ariary
Connexion internet 150.000 Ariary/ mois
Total 4.450.000 Ariary au premier mois, puis il ne
reste que de payer le technicien pour la gestion
des serveurs et l’abonnement internet.
Revenu :
Concernant les revenus que peut apporter l’application est bénéfique pour les deux parties
dont l’opérateur Orange et HABAKA.
Après avoir négocié avec l’opérateur, il va donner 30% sans taxe du crédit consommer par
chaque demande à HABAKA, et un pourcentage encore négociable avec HABAKA et les
concepteurs du projet pour chaque demande effectuée. Selon nos estimations, une demande coutera
500 Ariary plus de coût de chaque frais de document. C’est l’opérateur qui payera les taxes pour
chaque requête reposant sur la loi des transactions mobiles et les taxes demandées par l’état pour
chaque payement.
33
Chapitre IV: Discussions et data analytiques
IV.1 Discussions
Cependant, l’application USSD est un système qui fonctionne en temps réel avec une durée
de processus qui dure en moins d’une seconde pour chaque requête. Elle répond à un temps borné
mais peut être interrompu par une processus prioritaire tels que les appels téléphonique ou sms. La
gestion de l’application nécessite un suivi à temps plein car plusieurs demandes pourront arriver en
même temps et peuvent perturber les serveurs et demande une maintenance à l’instant.
Après quelque semaine de test on a pu corriger les erreurs liées à notre application. Le web
service reçoit correctement les demandes, et aucune erreur ne s’est présentée lors des autres phases
de test. Cependant nous pouvons dire que l’application est opérationnelle actuellement.
Ce projet est un projet révolutionnaire dans la numérisation des données. C’est un projet à
long terme qui pourra contribuer comme moteur de développement économique (annexe 1) mais aussi
une base pour d’autre perspective dans la numérisation qui facilitera la vie quotidienne des êtres
humains
IV.2 Perspectives du projet
Le but de ce projet est d’être fonctionnel partout dans Madagascar. Si Madagascar compte 25
millions d’habitants, et selon le taux de croissance démographique actuel, il sera dur pour l’état
Malagasy de gérer sa population d’ici 20 ans. Le recensement de la population coûte des dizaines de
milliards tous les cinq ans alors qu’avec l’usage de la numérisation des données, l’état pourra procéder
à un recensement à n’importe quel instant et faire des suivis dans n’importe quelle commune existant
à Madagascar. Les données sont indispensables pour la vie sociale, on pourra recenser avec des
valeurs exactes et précis de n’importe quel recensement par exemple le taux de mortalité infantile,
dans quelle région ou district est-ce le plus élevé etc.
L’usage de l’USSD pour les demandes de papiers administratifs n’est qu’un début, mais notre
but c’est qu’on pourra aussi demander n’importe quelle information qu’on a envie de savoir auprès
de la commune, comme les documents à fournir pour un permis de construire ou propriétés fonciers.
On envisage aussi une application USSD pour chaque organisme vivant à Madagascar, selon
éliminera les pertes de temps dans les déplacements
La numérisation des données peut être aussi un outil pour la lutte contre la corruption. Car
cela réduira la perte de temps et les contacts entre êtres humains mais pourra accélérer aussi les
procédures dans chaque demande. Cependant si l’état arrive à numériser les données de chaque
individu c'est-à-dire vers la numérisation des CIN, on aura plus besoin de plusieurs papiers à chaque
34
fois qu’on voudrait faire quelque chose au niveau de l’état. Durant les élections par exemple, avec un
serveur dans chaque bureau de vote, ils pourront suivre ceux qui ont déjà voté avec un scan de leurs
CIN.
C'est-à-dire la numérisation ne reste pas seulement dans la numérisation des données
manuscrite mais aussi de vidéo, son audio et image. On peut catégoriser plusieurs formes de
numérisation.
Mais la numérisation pourra être un inconvénient dans la vie privée de chaque personne.
IV.3 Avantage de la numérisation des données dans plusieurs domaines.
La numérisation peut apporter plusieurs avantages dans les activités des bureaux administratifs, des
entreprises ou n’importe quelles institutions. Nous pouvons les voir ci-dessous avec le tableau 7
Tableau 7 Avantages de la numérisation
Avantages Type d’activité et secteurs
• Reconnaissance et extraction
automatique des informations présentes
sur les cartes d’identité, passeports,
permis de conduire et attestations
d’assurance de véhicule.
• Pas de saisie manuelle pour l’opérateur.
• Pas de formulaire à compléter pour le
client.
• Activité avec guichet d’accueil
• Opérateur de
télécommunications
• Agence de location de voitures
• Banque
• Hôpital
• Agence immobilière
• Secteur de l’hôtellerie
• Secteur public (mairie, etc.)
• Centralisation et sécurisation des
données personnelles extraites de cartes
d’identité, passeport, carte de crédit.
• Un meilleur accueil client : diminution
du délai d’attente.
• Secteur de l’hôtellerie
• Automatisation des processus de scan et
de tri liés aux attestations de soins
• Hôpital
• Services de santé
• Entreprises du secteur médical
35
Avantages Type d’activité et secteurs
donnés, attestations d’affiliation aux
assurances.
• Une meilleure gestion des informations
liées aux patients et à la politique de
confidentialité.
• Traitement des tâches administratives
accéléré.
• Ouverture et gestion des comptes clients
plus rapide.
• Augmentation de la satisfaction client et
fidélisation.
• Agences bancaires
• Gain de temps et de productivité.
• Un meilleur service et un meilleur
accompagnement client (le client
n’attend plus).
• En finir avec les photocopies.
• Boutique de téléphonie et
télécommunications
• Accélération des formalités
administratives.
• Partage des informations avec toutes les
agences du réseau.
• Réactivité accrue et service client
amélioré.
• Réseau d’agences de location de
voitures ou autres véhicules
• Capturer les réponses de formulaires
papier ou d’emails
• Importation automatisée des réponses
dans un logiciel dédié pour analyse.
• Réduction des coûts de traitement.
• Écoles
• Universités
• Organismes d’état
• Administrations locales
36
Avantages Type d’activité et secteurs
• Élimination des processus manuels et
des erreurs de saisie manuelle.
• Gestion centralisée des notes de
livraison et d’expédition.
• Extraction des données pour une édition
automatisée des factures.
• Facturation et encaissement plus
rapides.
• Trésorerie optimisée.
• Gain de temps grâce à l’élimination des
procédures manuelles.
• L’archivage dématérialisé permet de
retrouver instantanément un document.
• Secteur de la logistique (livraison
par camion, fret ferroviaire,
maritime ou aérien, etc.)
• Export, classification et exploitation des
données vers des applications métiers
telles que SharePoint, Microsoft, Oracle,
etc.
• Accès et exploitation des données
instantanément.
• Centralisation sécurisée des documents.
• Archivage et recherche rapide.
• Tout type d’entreprise utilisant
des logiciels de type ERP, CRM,
BPM, solution comptable en
ligne, etc.
37
Conclusion
En somme, le stage que nous avons effectué chez HABAKA nous a permis d’acquérir des
connaissances sur les techniques d’innovation et le monde des systèmes embarqués. On a pu aussi
acquérir des connaissances sur les nouvelles outils informatiques tels que Nodejs et Angularjs pour
la réalisation d’un site web de gestion de donnés et MongoDB pour la création d’une base de donné,
et aussi des connaissances sur une application révolutionnaire qui changera le quotidien des êtres
humaines, l’application USSD.
D’autre part, le fait d’avoir côtoyé des techniciens qui partagent la même passion que soi nous
a donné un bon développement personnel dans les travails d’équipe. Travailler en équipe est un
meilleur moyen de rêver grand, d’innover n’importe quel sujet et surtout apporter des solutions
efficaces dans chaque problème.
Ce projet reste encore un prototype mais déjà prêt à être opérationnelle. C’est le projet qui
innovera le monde de la statistique à Madagascar. Les négociations restent encore entre l’état
malgaches et les comités administratifs du CIDST. Mais les chances de la mise en opération de ces
projets sont immenses car vue que la CIDST est rattaché au Ministère de l’éducation supérieur et la
décision est entre les mains du Ministre de l’intérieur et de la décentralisation.
Les numérisations des données au sein d’un bureau administratifs est avantageux car elles
automatisent leurs tâches administratives et gagnent du temps, elles évitent les erreurs dues à la saisie
manuelle, elles peuvent continuer à travailler pendant que la solution travaille en arrière-plan (selon
le logiciel), elles exploitent les données dans leurs applications métiers, elles archivent et retrouvent
facilement leurs documents.
De nos jour l’évolution de la technologie est vraiment en vogue. Ces évolutions se motive
pour faciliter la vie des êtres humains dans leur vie quotidienne. L’application USSD est un grand
pas vers la numérisation de Madagascar. La numérisation facilitera la gestion des populations et
aidera l’état sur le suivi de n’importe quel statistique sans dépenser d’argent. Cependant l’avancement
vers la numérisation des données facilitera la vie de chacun d’une manière générale, allons des
institutions publiques jusqu’au domaine privés des entreprises locaux.
L’ambivalence de la numérisation a des effets que nous avons constatés et dont nous pouvons
souligner l’interdépendance : la professionnalisation des publics ; la visibilité des agences
d’archives ; la concurrence et la marchandisation.
En effet, les projets de numérisation et d’ouverture des données publiques sont vécus par nos
interlocuteurs comme des situations contraignantes associées à une vision techno-centrée plutôt
déterministe avec l’obligation de suivre un mouvement irréversible de rationalisation vers toujours
plus d’efficacité et d’accélération des temporalités. Pour certains, ils sont imposés par la loi ; pour
d’autres, ils relèvent de choix organisationnels ou institutionnels. Loin d’être neutre, la technique,
38
associée à un environnement social et politique de diffusion des données au plus grand nombre,
cristallise l’expression d’une tension forte entre un principe citoyen, une logique industrielle, et un
modèle marchand. Ce processus de démocratisation et d’ouverture reste, dans l’ensemble, partiel car
l’accès généralisé n’est pas atteint. Accéder à des contenus numérisés suppose, de fait, un prérequis
minimal de familiarisation avec les Technologies de l’Information et de la Communication.
39
Références
Bibliographiques
[1] Conception et mise en œuvre d'un serveur USSD sur la plateforme OpenSS7, Cedric Perez
DONFACK, mémoire de fin d'étude à Ecole Nationale Supérieure Polytechnique de Yaoundé I -
Ingénieur de Conception en Informatique 2008
[2] Ordonnancement Dans Systèmes Temps Réel, Maryline Chetto , 2014
[3] RAPPORT DE DIAGNOSTIC DES COMMUNES, FERT, Mars 2015
[4] Livre d’enregistrement de la commune d’Ambohijanaka
Webographies
[5] https://www.populationdata.net/pays/madagascar/ , Population datanet, Mars 2019
[6] https://openclassrooms.com/creation-dune-application-ussd, Création d’une application
USSD, Novembre 2018
[7] https://www.instat.mg/, Statistique sur Madagascar, Mars 2019
[8] https://fr.wikipedia.org/wiki/Ambohijanaka, commune Ambohijanaka, Mars 2019
40
ANNEXE 1
L’application USSD un facteur de développement économique
Jusqu’à 2010 environ, cette technologie n’était utilisée qu’en interne par les opérateurs pour
permettre aux clients d’effectuer des opérations. Constatant la source de revenus supplémentaires que
pouvait apporter l’USSD, certains opérateurs ont donné accès à leur technologie afin de permettre le
développement de nouveaux services.
L’avantage des gateways est triple :
• Un seul interlocuteur pour l’entreprise qui souhaite développer un menu USSD. Les services
clients des gateways sont spécialisés en B2B contrairement à ceux des opérateurs (concernant
l’USSD),
• L’entreprise de gateway négocie des tarifs de gros avec les opérateurs ce qui permet de réduire
les coûts d’utilisation de l’application,
• Les gateways développent des outils simples et intuitifs pour permettre un go-to-market très
court pour les entreprises,
Pour le Schématiser :
41
ANNEXE 2
- JavaScript n'est pas Java !
C'est une confusion courante, mais ces langages sont totalement différents. Le Java a été
développé par Sun Microsystems au début des années 90.
Pour plus d’ idée, le langage Java serait plus proche du C++ que du JavaScript.
• Le JavaScript est placé directement dans le code (x)HTML et fait partie intégrante du code
source. Le navigateur lit et interprète ce code source, et exécute alors vos scripts (ou les garde
en mémoire pour les lancer plus tard, lorsqu'un événement particulier se produit).
• Le Java, quant à lui, est compilé pour former un programme. Les langages compilés sont les
opposés des scripts.
Si "LiveScript" (en rappel, c'est là tout première appellation du JavaScript) a pris le nom qu'on
lui connaît aujourd'hui, c'est parce que Java et JavaScript ont un seul point commun : ce sont
des langages orientés objet (comme le C++, c'est pour cela qu'ils sont proches). A part cela, ces deux
langages sont strictement opposés
TITRE : CREATION D’UNE APPLICATION USSD POUR DEMANDE DE PAPIER
ADMINISTRATIF DANS LE COMMUNE D’AMBOHIJANAKA
Résumé
L'avancement de la technologie peut être utilisé comme moyens pour faciliter la vie
quotidienne des êtres humaines. Les demandes de papiers administratifs sont devenues comme
une tâche de longue durée à cause de la lenteur administrative.
Cependant, grâce à la vision de HABAKA, nous avons pu concevoir un moyen qui répond à
l’attente de la population à travers la création d'une application USSD destinée à la gestion des
demandes des différents types des papiers administratifs. A l'aide d'une coopération entre
l'opérateur local "Orange Madagascar" et la Commune rurale d’Ambohijanaka, nous avons réalisé
l’application USSD conçue avec des outils informatiques tels que les langages Javascript, Nodejs,
Angular et MongoDB. Le serveur régissant la gestion de l’ensemble de ces outils informatiques
est hébergé par le Centre National de Recherche CIDST sis à Tsimbazaza.
Mots clés : application, technologie, Javascript, USSD, demande papier administratif, commune.
Abstract
The advancement of technology can be used as a means to facilitate the daily life of
human beings. Requests for administrative papers have become a long-term task due to
administrative slowness.
However, thanks to the vision of HABAKA, we were able to design a means that meets
the expectations of the population through the creation of a USSD application intended to
manage requests for different types of administrative papers. Using cooperation between the
local operator "Orange Madagascar" and the Rural Municipality of Ambohijanaka, we
created the USSD application designed with computer tools such as the Javascript, Nodejs,
Angular and MongoDB languages. The server governing the management of all of these IT
tools is hosted by the National Research Center CIDST located in Tsimbazaza.
Keywords: application, technology, Javascript, USSD, administrative paper request,
municipality.
Rapporteurs
RANDRIAMANANTANY Zely Arivelo
Professeur Titulaire
RAZANAMANAMPISOA Harimalala
Maître de Conférences
Lieu de stage
HABAKA TSIMBAZAZA
Impétrant
ANDRIANANJANAVALONA
Niaina Vanona
Tel : +261 34 82 648 38
Email : [email protected]
Adresse : Lot IVA 19E
Ambohimanarina Antananarivo