Application de Gestion de Comptabilité Pour Un ERP
Application de Gestion de Comptabilité Pour Un ERP
Application de Gestion de Comptabilité Pour Un ERP
MEMOIRE
Présenté à
En vue de l’obtention
Par
Moufida Salah
A mes parents Hsan et Fatma, merci pour votre support tout au long de mon parcours
universitaire et votre confiance infinie. Je vous dédie ce travail en signe d’amour, de
reconnaissance et de gratitude pour le dévouement et les sacrifices dont vous avez
fait toujours preuve à mon égard.
A mes adorables frères Ali, Hafed, Mohamed, Hedi, Lotfi, Habib, Sadek et ma belle-
sœur Halima, merci pour votre encouragement et soutien. En témoignage de l’amour
et de l’affection que je porte pour vous, je vous dédie ce travail en vous souhaitant
un avenir radieux, plein de bonheur.
A mon fiancé Mansour : Aucun mot ne saurait t’exprimer mon profond attachement
pour l’amour et la gentillesse dont tu m’as toujours entouré. J’aimerai bien que tu
trouves dans ce travail l’expression de mes sentiments de reconnaissance les plus
sincères.
À tous les membres de ma famille, qu’ils trouvent ici l’expression de mes sentiments
d’amour et de respect pour leurs encouragements et leur soutien moral. À tous mes
amis qu’ils trouvent ici l’expression de mon amitié la plus sincère.
iii
Remerciement
C’est avec un grand plaisir que je réserve ces lignes en signe de gratitude et de
reconnaissance à tous ceux qui ont voulu m’encadrer convenablement et nous
assurer les conditions favorables pour réaliser ce travail.
Je tiens à remercier aussi mes enseignants pour votre soutien moral et vos précieux
conseils durant les trois années d’études passées à l’école. Je voudrais notamment
remercier :
Tous les membres de l’équipe de société All Soft Multimedia pour l’ambiance amicale,
l’aide et l’extrême serviabilité qu’ils m’ont fourni.
Tous les membres du jury. Je suis très affecté par l’honneur que vous me faites en
acceptant de juger ce travail.
iv
Table des matières
Introduction générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
v
2.4 Diagrammes de cas d’utilisation . . . . . . . . . . . . . . . . . . . . . 16
2.4.1 Diagramme des cas d’utilisation global . . . . . . . . . . . . . 16
2.4.2 Analyse de quelques cas d’utilisation . . . . . . . . . . . . . . 18
2.4.2.1 Cas d’utilisation «S’authentifier» . . . . . . . . . . . 18
2.4.2.2 Cas d’utilisation «Gérer les journaux» . . . . . . . . . 19
2.4.2.3 Cas d’utilisation «Gérer les plans comptables» . . . . 23
2.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3 Conception 27
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.2 Architecture logicielle de l’application . . . . . . . . . . . . . . . . . 27
3.3 Diagramme de classes . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4 Diagrammes de séquence . . . . . . . . . . . . . . . . . . . . . . . . 30
3.4.1 Diagramme de séquence«S’authentifier» . . . . . . . . . . . . 30
3.4.2 Diagramme de séquence «Gérer les journaux» . . . . . . . . . 31
3.4.2.1 Diagramme de séquence«Ajouter journal» . . . . . . 31
3.4.2.2 Diagramme de séquence«Modifier journal» . . . . . 32
3.4.2.3 Diagramme de séquence«Supprimer journal» . . . . 33
3.4.2.4 Diagramme de séquence«Afficher journal» . . . . . . 34
3.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4 Réalisation 35
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2 Environnement de travail . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.1 Environnement matériel . . . . . . . . . . . . . . . . . . . . . 35
4.2.2 Environnement logiciel . . . . . . . . . . . . . . . . . . . . . . 35
4.2.2.1 Visual Paradigm for UML . . . . . . . . . . . . . . . 35
4.2.2.2 Visual Studio Code . . . . . . . . . . . . . . . . . . . 36
4.2.2.3 Postman . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.3 Technologies et Framework utilisés . . . . . . . . . . . . . . . . . . . 37
4.3.1 Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.3.2 TypeScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3.3 Laravel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3.4 PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
vi
4.4 Serveur et base de données . . . . . . . . . . . . . . . . . . . . . . . 42
4.4.1 Le serveur Rest . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.4.2 Base de données :SQLServer . . . . . . . . . . . . . . . . . . . 43
4.5 Les interfaces de l’application . . . . . . . . . . . . . . . . . . . . . . 43
4.5.1 Authentification . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.5.2 Gérer les journaux . . . . . . . . . . . . . . . . . . . . . . . . 44
4.5.2.1 Ajout journal . . . . . . . . . . . . . . . . . . . . . . 45
4.5.2.2 Lister les journaux . . . . . . . . . . . . . . . . . . . 46
4.5.2.3 Suppression journal . . . . . . . . . . . . . . . . . . 48
4.5.2.4 Modification journal . . . . . . . . . . . . . . . . . . 49
4.5.3 Gérer les écritures . . . . . . . . . . . . . . . . . . . . . . . . 50
4.5.3.1 Ajout d’écriture . . . . . . . . . . . . . . . . . . . . . 50
4.5.3.2 Afficher les écritures . . . . . . . . . . . . . . . . . . 51
4.5.3.3 Modification d’écriture . . . . . . . . . . . . . . . . . 51
4.5.3.4 Suppression d’écriture . . . . . . . . . . . . . . . . . 52
4.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Conclusion générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Netographie 55
vii
Table des figures
viii
4.10 Logo de Microsoft SQL Server [22] . . . . . . . . . . . . . . . . . . . . 43
4.11 Interface d’authentification . . . . . . . . . . . . . . . . . . . . . . . . 44
4.12 Contrôle de saisie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.13 Interface d’ajout journal . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.14 Interface des journaux . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.15 Suppression d’un journal . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.16 Confirmation de modification de journal . . . . . . . . . . . . . . . . . 49
4.17 Interface d’ajout écriture . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.18 Interface des écritures . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.19 Interface de modification écriture . . . . . . . . . . . . . . . . . . . . . 52
4.20 Interface de suppression d’écriture . . . . . . . . . . . . . . . . . . . . 53
ix
Liste des tableaux
x
Liste des acronymes
xi
Introduction générale
1
de comptabilité de la société. Le travail effectué est présenté à travers les quatre
chapitres du présent rapport qui sont organisés comme suit :
Le premier chapitre est consacré à la présentation de l’organisme d’accueil, mise
en contexte du projet et l’analyse de l’existant et de la solution proposée. C’est
également à ce niveau que nous présentons la méthodologie de travail pour ce
projet.
Dans le deuxième chapitre, nous faisons l’étude des besoins fonctionnels et non
fonctionnels ainsi que la modélisation des ces besoins par les recours aux diagrammes
de cas d’utilisation.
Le troisième chapitre détaille l’architecture logicielle de notre application. Aussi,
dans ce chapitre nous faisons la conception détaillée grâce à le diagramme de classes
et quelques diagrammes de séquences.
Enfin dans le dernier chapitre, nous étalerons la phase de réalisation de l’application,
en détaillant l’environnement matériel et logiciel mis en place pour l’implémentation
de notre projet. En second lieu, nous exposerons les technologies utilisées. Par la
suite, nous finissons par présenter certaines interfaces graphiques développées tout
en définissant leurs fonctionnalités. Finalement, nous clôturons ce rapport par une
conclusion générale et quelques perspectives de notre travail.
2
Cadre général du projet
1
1.1 Introduction
La constitution d’une idée à propos du projet, l’organisme et les choix méthodolo-
gique vise à clarifier les phases postérieures. Une étude complète de chaque partie est
considérée la première étape à établir. D’où le premier chapitre sera pour présenter
l’organisme d’accueil, identifier le projet et la méthodologie adoptée.
— Développement Web
— Plateformes mobiles
En effet, ASM analyse et spécifie les besoins et les exigences de ses clients. Par
ailleurs, elle cherche toujours à les accompagner dans la création et l’exploitation de
nouveaux services tel que le nouveau module ERP.
3
1.3 Présentation du ERP
L’ERP (Enterprise Ressource Planning) est un progiciel qui gère un ensemble des
processus opérationnels d’une entreprise en intégrant plusieurs fonctions de gestion
tel que la comptabilité, les ressources humaines, la distribution, l’achat et vente,
etc.
Pour être qualifiée de « Progiciel de Gestion Intégré », une solution logicielle ERP
doit couvrir au moins deux principes fondamentaux :
— L’usage d’un moteur de Workflow permet de définir l’ensemble des tâches d’un
processus et de gérer leur réalisation dans tous les modules du système qui ont
besoin.
En effet, notre organisme d’accueil a une application desktop d’ERP qui gère les
services suivants : achat, vente, gestion de stock, comptabilité, relation avec les
clients. Notre projet se focalise sur un module de l’ERP qui est la comptabilité.
Comme un ERP est modulaire dans le sens où il est possible de n’avoir qu’une ou
plusieurs applications en même temps qui fonctionnent entre elles. De même dans
notre cas, l’application de comptabilité doit fonctionner avec les autres services et
partageant la même base de données.
4
1.4 Présentation du projet
1.4.2 Problématique
Actuellement la gestion de comptabilité à la société ASM se fait à l’aide d’une
application desktop. Le but de ce projet est de migrer vers une application web
pour assurer cette gestion. En fait, le comptable passe beaucoup de temps pour
configurer l’application desktop avec la base de données. Certains moments, cette
application ne fonctionne pas à cause de quelques caractéristiques de la machine.
Afin de remédier les différents problèmes cités, la société ASM a besoin de migrer
vers une application web pour surmonter le défi et améliore son service.
5
Momenteo est un moyen simple pour créer et envoyer des factures. Il gère les diffé-
rentes tâches de comptable nécessaires.
L’amélioration de la performance est l’un des défis actuels majeurs pour les
entreprises. Pour cela toujours nous cherchons l’application la plus adéquate.
Cela nous mène à comparer les applications web existantes pour développer une
application web efficace et qui évite les problèmes que l’ont vu avec les autres
applications web.
6
Tab. 1.1: Avantages et inconvénients des
applications existantes
Après avoir présenté les différentes applications de comptabilité web existantes, nous
visons améliorer notre application desktop ERP par la migration vers une application
web ayant le même principe que ces applications de gestion de comptabilité.
7
comptables et les journaux. Notre objectif est de garantir l’efficacité des services et
donc gagner la satisfaction et la fidélité de client.
8
Tab. 1.2: Description des méthodologies
9
Fig. 1.6: Le processus du Scrum [7]
Comme c’est déjà montré dans la figure 1.6 Scrum a trois équipes importantes qui
sont :
10
Par conséquent, notre projet de fin d’études qui est un module du projet ERP
obit aussi à cette méthodologie. Pour ce module, notre méthodologie "Scrum" est
rythmée par des itérations de quelques semaines "sprints". Notre sprint englobe les
activités d’analyse et conception, de développement et de test. Chaque partie de ces
dernières va une durée de vie bien déterminée et celle-ci va être expliquer dans la
partie planification du projet.
Dans ce que suit, nous allons présenter l’arrangement des fonctionnalités qui nous
allons réaliser tout au long de ce projet.
11
façon standard. Il permet aussi d’obtenir un dessin qui est indépendant des langues
et des environnements. En plus, UML est un pont qui raccorde l’architecte et le client.
Grâce à cela, l’architecte a une vision claire de que le produit devrait fournir. En
même temps, le client peut exprimer qu’il pense sans devoir savoir toutes les notions
rattachées à cette langue [9].
12
planification de notre projet.
1.7 Conclusion
Dans ce chapitre introductif, nous avons présenté l’organisme d’accueil ainsi que
notre projet et sa méthodologie de travail. Cette étude nous permet de présenter
notre concept de base et nous aide à être sur le bon chemin dans les autres chapitres
d’analyse et conception.
13
Analyse et spécification des 2
besoins
2.1 Introduction
Dans ce chapitre nous allons détailler une analyse des besoins fonctionnels et non
fonctionnels avant le démarrage du développement. Puis nous allons définir les
acteurs de notre application et le diagramme général de cas d’utilisation.
14
Gérer les journaux :
• Créer un nouveau journal (journal des achats, journal des ventes, journal de
banque etc.)
15
2.3 Identification des acteurs
Dans cette partie, nous allons présenter les acteurs du système. Ces derniers sont les
responsables des tâches à réaliser par notre application. En effet, notre application a
deux acteurs qui sont :
Le comptable : C’est l’acteur qui va gérer les écritures, les journaux et les plans
comptables.
16
Fig. 2.1: Diagramme de cas d’utilisation global
17
2.4.2 Analyse de quelques cas d’utilisation
2.4.2.1 Cas d’utilisation «S’authentifier»
La description des scénarios du cas d’utilisation "S’authentifier" est décrite par le
tableau suivant :
Titre : S’authentifier
Acteur : Comptable
Sommaire
Résumé : L’utilisateur saisit ses identifiants afin que le
d’identification
système vérifie son identité et lui autorise l’accès.
Préconditions : L’utilisateur est déjà créé.
Description des
Postconditions : L’utilisateur est connecté.
scénarios
1. Le système affiche le formulaire d’authentification.
2. L’utilisateur saisit ses identifiants et demande l’accès au
Scénario système.
nominal 3. Le système vérifie les identifiants et autorise l’accès de
l’utilisateur.
1) Identifiant(s) non saisi(s).
L’enchaînement « 1 » démarre au point « 3 » du scénario
nominal.
3. Le système indique à l’utilisateur qu’il doit saisir ses deux
identifiants.
Le scénario nominal reprend au point « 2 ».
Scénario alterna-
2) Utilisateur inconnu.
tif :
L’enchaînement « 2 » démarre au point « 3 » du scénario
nominal.
3. Le système indique à l’utilisateur qu’il doit vérifier ses
identifiants.
Le scénario nominal reprend au point « 2 ».
18
2.4.2.2 Cas d’utilisation «Gérer les journaux»
Le cas d’utilisation gérer les journaux englobe quatre cas d’utilisation tel que l’ajout,
la modification, la suppression et la consultation.
Le tableau suivant va détailler le cas de «consultation les journaux».
Description du cas d'utilisation « consulter les journaux »
Scénario alterna- Si l’authentification est invalide alors la page de login est affichée.
tif :
19
Description du cas d'utilisation « Ajouter un journal »
20
Description du cas d'utilisation « Modifier un journal »
21
Description du cas d'utilisation « Supprimer un journal »
22
2.4.2.3 Cas d’utilisation «Gérer les plans comptables»
De même dans ce cas d’utilisation on va ajouter, modifier, supprimer ou bien
consulter les plans.
Le tableau suivant va détailler le cas de «consultation des plans».
Description du cas d'utilisation « consulter les plans »
23
Description du cas d'utilisation « Ajouter un plan »
24
Description du cas d'utilisation « Modifier un plan »
25
Description du cas d'utilisation « Supprimer un plan »
2.5 Conclusion
Dans ce chapitre, nous avons présenté les besoins fonctionnels et non fonctionnels
de notre système, les acteurs ainsi que le C.U global et la description de quelques
cas d’utilisation. Alors que dans le chapitre suivant nous passerons à la conception
pour élaborer le diagramme de classe et les diagrammes des séquences.
26
Conception 3
3.1 Introduction
Après avoir détaillé l’analyse et la spécification des besoins de notre application,
dans ce chapitre nous avons amené à la partie conception du projet. Pour cela, nous
allons présenter dans un premier lieu l’architecture de notre application. Par la suite,
nous détaillerons la conception de notre projet en spécifiant le diagramme de classe
et les diagrammes de séquences.
27
3.3 Diagramme de classes
Nous avons présenté dans le chapitre précédent l’interaction entre l’utilisateur et le
système à travers le diagramme de cas d’utilisation, nous présenterons dans ce qui
suit la structure de l’application à travers le diagramme de classe. Ce dernier est une
collection d’élément de modélisation statique(classes) qui montre la structure d’un
modèle. Un diagramme de classe est le point central dans un développement orienté
objet.
28
Fig. 3.2: Diagramme de classe
29
3.4 Diagrammes de séquence
Le diagramme de séquence décrit l’aspect dynamique du système. Il modélise les
interactions entre les objets ou entre l’utilisateur et l’objet, en mettant l’accent sur la
chronologie des messages échangés. Dans ce qui suit, nous allons dresser quelques
diagrammes des séquences.
30
3.4.2 Diagramme de séquence «Gérer les journaux»
Le cas d’utilisation gérer les journaux se décompose en quatre cas d’utilisation
’ajouter’, ’afficher’, ’supprimer’ et ’modifier’. Nous présentons toutes les étapes et les
séquences nécessaires pour ces cas d’utilisation.
3.4.2.1 Diagramme de séquence«Ajouter journal»
31
3.4.2.2 Diagramme de séquence«Modifier journal»
32
3.4.2.3 Diagramme de séquence«Supprimer journal»
33
3.4.2.4 Diagramme de séquence«Afficher journal»
3.5 Conclusion
Dans ce chapitre nous avons détaillé les différentes vues conceptuelles de notre
application à réaliser à travers les modèles UML nécessaires. Cette conception est
essentielle pour la phase de réalisation qui constitue l’objet du chapitre suivant.
34
Réalisation 4
4.1 Introduction
Dans ce chapitre, nous allons présenter l’environnement de travail (logiciel et maté-
riel), les technologies utilisées et quelques interfaces de notre application.
Marque HP
Processeur Intel core™i7-2620M CPU @2.70GHZ
Mémoire vive 8 GO
Système d’exploitation Windows 10 x64
Disque Dur 500 Go
35
4.2.2.2 Visual Studio Code
Visual Studio Code est un éditeur de code source léger mais puissant qui s’exécute
sur bureau et qui est disponible pour Windows, macOS et Linux. Il comprend un
support intégré pour :
ä JavaScript
ä TypeScript
ä Node.js
Il possède un riche écosystème d’extensions pour d’autres langages tels que C++,
Java, Python et des environnements d’exécution tels que .NET et Unity [12].
4.2.2.3 Postman
Une application moderne est construite sur des APIs. C’est sur cette phrase d’accroche
que nous découvrons le site de Postman, un outil qui permet de construire et de
tester rapidement des requêtes HTTP. Deux versions sont actuellement disponibles,
la première se présente sous forme d’application pour le navigateur google Chrome
et l’autre, en version Beta est disponible pour Mac [13].
36
4.3 Technologies et Framework utilisés
4.3.1 Angular
Lors de notre recherche nous trouvons qu’il y a plusieurs Framework similaires à
Angular, pour cela nous allons faire une comparaison avec une permis eux pour
savoir et illustrer notre choix de Framework Angular.
Le tableau 4.2 montre une comparaison entre React et Angular comme suit :
Angular React
3 Fourni par Google. 3 Fourni par Facebook .
3 C’est une Framework JavaScript. 3 C’est une open source libraire JS.
3 Utilise un DOM habitué. 3 Travaille avec un DOM virtuel.
3 Une liaison des données bi-directionnelle. 3Une liaison des données uni-
3 Utilise l’architecture MVC. directionnelle.
3 Utilise seulement le Controller View.
Après savoir cette comparaison, nous trouvons que Angular est le bon choix pour
notre application à cause de ces raisons :
^Une configuration de build et d’optimisation complète.
^Module d’animations
^Module de routing
^Module de formulaire
^Permet de mieux séparer les responsabilités avec une approche MVC et l’injection
de dépendances.
Nous avons utilisé Angular comme un Framework front-end. Il est basé sur le langage
TypeScript et repose sur la décomposition de l’application. Nous utilisons le Frame-
work Angular avec un serveur Node permettant de traduire TypeScript en JavaScript
compréhensible par un navigateur, et Angular CLI, un outil en ligne de commande
qui permet de générer la structure du projet, générer des composants Angular, etc et
d’autres utilitaires facilitant le développement des applications Angular [14].
37
Fig. 4.4: Logo Angular7 [15]
Dans ce qui suit, nous allons montrer une étude sur les faiblesses et les bienfaits de
framework Angular.
38
4.3.2 TypeScript
TypeScript est un langage de programmation libre développé par Microsoft pour
JavaScript à l’échelle de l’application. TypeScript ajoute des types facultatifs à
JavaScript qui prend en charge les outils pour les applications JavaScript à grande
échelle pour tous les navigateurs, tous les hôtes et tous les systèmes d’exploitation.
TypeScript compile en JavaScript lisible et basé sur des normes [16].
Nous avons choisi TypeScript parce que :
^Il a un typage fort.
^Il crée des classes, des interfaces et import des modules.
^Il fournit une solide option pour le typage du JavaScript.
4.3.3 Laravel
Nous menons dans un premier lieu à comparer le framework Laravel à celle de
CodeIgniter pour savoir le bon choix de notre travail.
39
Tab. 4.4: Comparaison entre Laravel et CodeIgniter
Laravel CodeIgniter
3 Les contrôleurs RESTful peuvent don- 3 CodeIgniter ne facilite pas le développement
ner aux développeurs les moyens de créer rationalisé des API REST.
un assortiment d’API REST sans perdre de 3Support des SGBD tel que MySQL, MongoDB,
temps. PostgreSQL.
3 Support des SGBD comme ORACLE, 3 CodeIgniter n’a aucune fonctionnalité d’au-
PostgreSQL, Microsoft SQL Server et thentification intégrée. Les développeurs doivent
MYSQL. autoriser et authentifier les utilisateurs avec les
3 Laravel possède une fonctionnalité de extensions personnalisées CodeIgniter.
classe d’authentification qui facilite la mise
en œuvre de règles d’authentification et
d’autorisation.
3 Il a une grande fonctionnalité de docu-
mentation
D’après cette comparaison, nous trouvons que la framework Laravel est le bon
choix pour notre travail. Nous permettons aussi illustrant notre choix par la figure
suivante qui présente l’intérêt des développeurs sur cette framework.
Laravel est un framework PHP open source, robuste et facile à comprendre. Elle
réutilise les composants existants de différents cadres, ce qui aide à créer une
application Web. Dans cet framework nous allons trouver les caractéristiques
40
suivantes :
ã un système de routage perfectionné (RESTFul et ressources).
ã un créateur de requêtes SQL et un ORM performants.
ã un moteur de template efficace.
ã un système d’authentification pour les connexions.
ã un système de validation.
ã un système de pagination.
ã un système de migration pour les bases de données.
4.3.4 PHP
Hypertext Préprocessor est un langage de programmation libre utilisé pour produire
des pages web dynamiques via un serveur HTTP. Il est considéré comme une des
bases de la création des sites dites dynamiques mais également des applications web.
Notre choix de ce langage est basé sur beaucoup des raisons tel que :
^Il est un langage facile à apprendre.
^Il est gratuit.
^Il est intégré dans de nombreux serveurs web (Apache, Rest).
^Il se combine très bien avec les différentes bases de données.
^Les scripts PHP sont très simples à comprendre.
41
4.4 Serveur et base de données
4.4.1 Le serveur Rest
Un service web est un mécanisme qui tend à donner plus d’interactions pour
permettre à deux entités hétérogènes de dialoguer à travers du réseau internet. Il
existe beaucoup de styles d’architecture sur lesquels sont basés les services web tel
que REST et SOAP.
REST SOAP
Type 3 C’est un style d’architecture. 3 C’est un protocole.
Cache 3 Les appels d’API peuvent être mis 3 Les appels d’API ne peuvent pas
en cache. être mis en cache.
Sécurité 3 Prend en charge HTTPS et SSL. 3 WS-Security avec support SSL.
Performance 3 Nécessite moins de ressources. 3 Nécessite plus de bande passante
et de puissance de calcul.
Avantages 3 Évolutivité, meilleures perfor- 3 standardisé, extensibilité.
mances, convivialité du navigateur,
flexibilité.
Alors, pour notre système nous avons choisi le service REST qui est un style d’ar-
chitecture qui repose sur le protocole HTTP. Ce protocole fournit les opérations
nécessaires à la manipulation des données suivants :
4 GET : accéder à une ressource existante.
4 POST : ajouter une nouvelle ressource.
4 DELETE : supprimer une ressource.
4 PUT : affecte une ressource (existante ou non).
42
Fig. 4.9: Architecture de web service Restful [21]
43
est erroné, un message d’erreur sera affiché. Une fois authentifié, selon la catégorie
de l’utilisateur, la page d’accueil appropriée s’affiche.
Le figure 4.12, nous montre un contrôle de saisie sur les champs d’authentification.
Il nous indique un message d’erreur parce que les champs sont vides.
44
4.5.2.1 Ajout journal
En appuyant sur le bouton d’ajout nous serons dirigés vers l’interface d’ajout, l’admi-
nistrateur peut ajouter un nouveau journal en saisissant les données nécessaires de
ce journal.
45
4.5.2.2 Lister les journaux
L’interface suivante nous montre une liste des journaux qui sont enregistrés dans la
base de données avec une description comme indiqué ci-dessous.
46
Fig. 4.14: Interface des journaux
47
4.5.2.3 Suppression journal
Afin de supprimer un journal, l’administrateur choisit le journal à supprimer puis
clique sur le bouton «supprimer», une boite de dialogue s’affiche pour confirmer la
suppression.
48
4.5.2.4 Modification journal
L’administrateur peut modifier un journal existant en saisissant les nouvelles coor-
données comme le montre l’interface suivante.
49
4.5.3 Gérer les écritures
4.5.3.1 Ajout d’écriture
La figure 4.17 montre l’interface pour ajouter une écriture, l’administrateur choisit
les coordonnées convenables puis il clique sur le bouton «enregistrer».
50
4.5.3.2 Afficher les écritures
La figure 4.18 montre une liste d’écritures avec leur description.
51
Fig. 4.19: Interface de modification écriture
52
Fig. 4.20: Interface de suppression d’écriture
4.6 Conclusion
Dans ce chapitre, nous avons décrit en premier lieu l’environnement du travail et
les technologies utilisées dans notre application. La deuxième partie a été dédiée à
la présentation de notre travail grâce à des captures d’écran et une description des
fonctionnalités offertes par les différentes interfaces de l’application développée.
53
Conclusion générale
Dans ce projet, nous avons réalisé une étude à la fois théorique et pratique dans le
cadre de développement d’une application de gestion de comptabilité.
Cette application web permet de gérer les tâches convenables d’un comptable pour
le faciliter tout accès, ajout, suppression ou bien modification des données stockés
dans la base de données SQLServer. Cette application est présentée au sein de la
société ASM. Elle est la solution qui intervient dans le cadre d’améliorer la solution
existante pour assurer une performance élevée. Notre application web reprend aux
besoins fonctionnels et non fonctionnels du notre client qui sont modélisés par des
diagrammes UML spécifiques.
Ce projet nous a permis de maîtriser le langage UML, évaluer nos capacités et nos
aptitudes à gérer un projet. Aussi elle nous a offert l’opportunité de développer nos
sens de collaboration, nos relations, notre autonomie et notre prise de décision.
D’un point de vue académique, cette expérience nous a permis de mettre en évidence
nos connaissances dans la conception et le développement en tant que nous arrivons
à réaliser les besoins nécessaires de notre client dans cette application et surtout
d’approcher une technologie qui ne cesse d’évoluer et d’innover et qui domine de
plus en plus le marché des technologies de l’information.
L’expérience au sein d’un cadre professionnel, nous a été bénéfique. Ce stage nous a
permis de nous familiariser à la vie professionnelle, d’exploiter des notions fonda-
mentales et d’approfondir nos connaissances théoriques acquises à l’école nationale
d’ingénieurs de Sfax. Nous souhaitons que la société adopte réellement notre appli-
cation et essayera de la commercialiser.
Comme perspective à notre travail, nous pourrons ajouter une version mobile pour
rendre l’application accessible même en dehors du travail via des tablettes, ce qui
est utile lorsqu’il y a un plan ou une écriture ou un journal comptable doit être livré
et qu’il nécessite une confirmation.
54
Netographie
[2] Qu’est ce qu’un ERP ? - Définition d’un logiciel ERP (ou PGI). URL : https://www.
choisirmonerp.com/erp/definition-d-un-erp (visité le 15 mai 2019) (cf. p. 4).
[3] Logiciel de gestion comptable, comptabilité, factures, projets, devis. URL : https://www.
kiwili.com/ (visité le 11 mai 2019) (cf. p. 5).
[6] Introduction aux méthodes agiles et Scrum. L’Agiliste. 3 juin 2013. URL : https :
//agiliste.fr/introduction-methodes-agiles/ (visité le 21 fév. 2019) (cf. p. 8,
9).
[7] André De S OUSA. Scrum : le process en 5 minutes ! URL : http : / / www . coffee -
meeting.com/scrum-process-en-5-minutes (visité le 19 fév. 2019) (cf. p. 10).
[11] Visual Paradigm. In : Wikipedia. Page Version ID : 896993014. 14 juin 2019 (cf. p. 35).
[13] Postman, un outil pour tester les API RESTful. URL : http://www.alain-dessi.com/
blog/post/postman-un-outil-pour-tester-les-api-restful (visité le 22 juin
2019) (cf. p. 36).
[16] TypeScript is a superset of JavaScript that compiles to clean JavaScript output. : micro-
soft/TypeScript. original-date : 2014-06-17T15 :28 :39Z. 26 juin 2019 (cf. p. 39).
55
[17] Learn TypeScript (Ditch JavaScript). Udemy. URL : https://www.udemy.com/course/
understanding-typescript/ (visité le 15 nov. 2019) (cf. p. 39).
[18] CodeIgniter vs Laravel 2019 | Which is Best ? Technostacks Infotech Pvt. Ltd. 8 mai
2019. URL : https://technostacks.com/blog/codeigniter-vs-laravel/ (visité
le 15 nov. 2019) (cf. p. 40).
[19] Laravel. In : Wikipédia. Page Version ID : 163203140. 3 oct. 2019 (cf. p. 41).
[20] PHP. In : Wikipédia. Page Version ID : 163587609. 16 oct. 2019 (cf. p. 41).
[21] Ahmet ÖZLÜ. Mastering REST Architecture — REST Architecture Details. Medium.
13 jan. 2019. URL : https : / / medium . com / @ahmetozlu93 / mastering - rest -
architecture - rest - architecture - details - e47ec659f6bc (visité le 15 nov.
2019) (cf. p. 43).
[22] Microsoft SQL Server - Plateforme de Business Intelligence. COSMO CONSULT. URL :
https://fr.cosmoconsult.com/produits/business-intelligence/microsoft-
sql-server/ (visité le 15 nov. 2019) (cf. p. 43).
56
Application de gestion de comptabilité pour un ERP
Moufida Salah
Résumé : Ce projet de fin d’études élaboré au sein de la société All Soft MultiMedia
vise à concevoir et à développer une application web de gestion de comptabilité.
Cette application permet à l’utilisateur de gérer les tâches nécessaires pour un
comptable en se basant sur des critères de performance afin d’assurer un produit
de bonne qualité et donc gagner la satisfaction et la fidélisation des clients.
Abstract: This graduation project developed within the company All Soft
Multimedia aims at designing and developing a web application for accounting
management. This application allows the user to manage the tasks required for an
accountant based on performance criteria to ensure a good quality product and
thus to gain the satisfaction and the customer loyalty.