Académique Documents
Professionnel Documents
Culture Documents
Élaboré par :
Rima Bouaziz
Période du stage : 10/01/2023 à 04/02/2023
Année universitaire 2022-2023
Remerciements
Ainsi ceux qui m’ont aidée durant cette période pour effectuer
remercier vivement tous ceux qui m'ont fait preuve d'un grand esprit
une aide précieuse par leur suggestion et leur conseil. Que tous ceux
Introduction générale
1
Ch.1
1. Présentation de la société
Étant une Entreprise de Services du Numérique (ESN), DKSoft est une structure souple,
réactive et qui propose des solutions sur mesure dans le domaine des nouvelles technologies
et du système d'information.
1
Ch.1
3 .Description de l’existant :
-La réception, la collecte, le tri, l’enregistrement et la distribution du courrier arrivé et départ
(lettres, fax, colis...).
-Assurer et veiller à la collecte du courrier par les moyens internes et externes mis à
disposition. -Trier et analyser le courrier.
4. Critique de l’existant :
Auparavant, la gestion de Bureau d’Ordre ainsi que celle des différentes interventions
informatiques étaient manuelles. Compte tenu des insuffisances du système manuel ; Les
défaillances persistent toujours par manque de suivi de différents types de Bureau d’Ordre
dans les entreprises et les établissements privés ainsi que ceux étatiques en Tunisie présente
actuellement une grande importance, notamment avec les évolutions des technologies qui
connaissent aujourd’hui une véritable révolution exponentielle ; D’où naisse l’idée de suivre
la traçabilité d'un simple papier concernant un sujet bien déterminé, à une application pour
tout suivre dans l’entreprise.
5. Solution Proposée :
Pour remédier à cette situation au sein des sociétés, on a pris sur notre responsabilité la tâche
qui consiste à réaliser une gestion de l’aspect organisationnel du service de Bureau d’Ordre,
ayant pour but de faciliter la tâche de gestion et de suivi de courriers, ... En effet, un courrier
doit être réceptionner, enregistrer, suivre son acheminement, … Il est ensuite affecté à un
destinataire interne ou externe à la société.
L'architecture Full Stack combine ces deux parties en une seule application cohérente. Elle
permet aux développeurs de créer des applications web complexes qui peuvent être utilisées
par des millions d'utilisateurs simultanément.
2
Ch.1
o Frontend :
La partie frontend ou "client-side" est la partie de l'application qui est exécutée sur le
navigateur de l'utilisateur, elle se compose principalement de HTML, CSS et JavaScript. La
partie frontend est responsable de l'interface utilisateur et de l'expérience utilisateur. Elle
permet à l'utilisateur de naviguer dans l'application, de saisir des données, de voir les résultats.
o Backend :
La partie backend ou "serveur" est la partie de l'application qui s'exécute sur le serveur. Elle
est responsable du stockage des données, de l'authentification des utilisateurs, de l'exécution
des calculs et de la logique métier. La partie backend est également responsable de la
communication avec la partie frontend, en envoyant et en recevant des données.
o Partie frontend :
- HTML, CSS et JavaScript pour l'interface utilisateur et l'expérience utilisateur.
- React, Angular, Vue.js pour le développement d'applications web interactives et
réactives.
- Bootstrap, Material UI pour la conception et la mise en forme des interfaces
utilisateur.
- Webpack, Gulp pour l'automatisation des tâches de développement.
o Partie backend :
- Node.js, Python, spring boot, Ruby on Rails pour le développement de l'application
serveur.
- Express, Flask, Django pour la gestion de la communication entre le frontend et le
backend.
- MySQL, MongoDB, Postgres pour la gestion de la base de données.
- JWT, OAuth2 pour l'authentification et la gestion des accès utilisateurs.
En résumé, l'architecture Full Stack est une architecture logicielle complète qui permet de
développer des applications web complètes, avec une partie frontend pour l'interface
utilisateur et une partie backend pour la gestion des données et de la logique métier. Elle
3
Ch.1
utilise une combinaison de technologies pour créer des applications web performantes et
interactives.
Spring Boot est un Framework qui facilite le développement d'applications fondées sur
Spring. Il propose une approche dogmatique de la configuration, qui permet d’éviter aux
développeurs de redéfinir la même configuration à plusieurs endroits du code.
Spring Data JPA [8], qui fait partie de la grande famille Spring Data, permet d'implémenter
facilement des référentiels basés sur JPA. Ce module traite du support amélioré des couches
d'accès aux données basées sur JPA. Il facilite la construction d'applications basées sur Spring
qui utilisent des technologies d'accès aux données.
4
Ch.1
Le langage de balisage hypertexte, ou HTML est le langage de balisage standard pour les
documents conçus pour être affichés dans un navigateur web. Il peut être assisté par des
technologies telles que les feuilles de style en cascade et les langages de script tels que
JavaScript.
Bootstrap est un cadre CSS gratuit et open-source destiné au développement Web frontal,
réactif et axé sur le mobile. Il contient des modèles de conception basés sur CSS et
Angular Material est une bibliothèque de composants d'interface utilisateur pour les
applications Web construites avec Angular. Elle fournit une collection de composants, de
5
Ch.1
directives et de services qui peuvent être utilisés pour créer des interfaces utilisateur modernes
et réactives.
Angular 14 est un Framework qui permet de créer des applications mono pages, web et
mobiles. Angular se repose sur les langages HTML5, CSS3 et TypeScript. Il utilise
l’architecture MVVM, proche du modèle MVC. Cela permet de structurer le code et de
séparer la vue et le modèle. Il est considéré comme un langage « côté client », ceux-ci
permettent de gérer l’interface utilisateur de chaque page (affichage, interactions...) de façon
dynamique.
Durant l’élaboration du projet, nous avons eu recours au Angular CLI qui est un outil en ligne
de commande permettant de générer un squelette d’application Angular, de générer
rapidement des bouts de code (composant, module, route...), de faire tourner un serveur de
développement, d’exécuter les tests, de déployer notre application.
6
Ch.1
Visual Studio Code [18] est un éditeur de code source gratuit créé par Microsoft pour
Windows, Linux et macOS. Ses fonctionnalités incluent la prise en charge du débogage, la
coloration syntaxique, la complétion de code intelligent, les snippets, le remaniement du code
et Git intégré.
Postman est un client API [19] populaire qui permet aux développeurs de créer, partager,
tester et documenter facilement les API. Pour ce faire, il permet aux utilisateurs de créer et
d'enregistrer des requêtes HTTP/s simples et complexes, ainsi que de lire leurs réponses.
XAMPP [20] est une pile de solutions de serveur web multiplateforme, gratuite et à code
source ouvert, développée par Apache Friends. Elle se compose principalement du serveur
HTTP Apache, de la base de données MariaDB et d'interpréteurs pour les scripts écrits dans
les langages de programmation PHP et Perl.
7
Ch.1
6.3.3. SGBD :
MySQL est un système de gestion de bases de données relationnelles (SGBDR). Il est
distribué sous une double licence GPL et propriétaire. Il fait partie des logiciels de gestion de
base de données les plus utilisés au monde, autant par le grand public(applications web
principalement) que par des professionnels .
Conclusion
Dans ce chapitre, nous avons commencé par la présentation du cadre général du projet où
nous avons présenté l’entreprise d’accueil. Ensuite, nous avons dégagé la problématique à
travers l’étude de l’existant. Par la suite, nous avons proposé la solution en suivant les outils
existants sur le marché. Enfin, nous avons choisi la méthodologie qui sera utilisée tout au long
du projet.
Le deuxième chapitre sera consacré à conception et réalisation de ce projet.
8
Ch.2
2. Gérer Document :
Dans cette partie on va détailler la fonctionnalité de gestion de document. Pour ce fait, on va
présenter un diagramme de séquence et diagramme de classe.
1.1.Diagramme De Classe :
9
Ch.2
10
Ch.2
11
Ch.2
2 . Réalisation
A l’ouverture de l’application en considère un tableau contient les documents stocker avec un
filtre de recherche.
L’utilisateur peut changer les données nécessaires pour le document en cliquant sur le bouton
“update”. Un formulaire s’affiche avec les anciens paramètres saisis.
L’utilisateur peut ajouter les données un nouveau document en cliquant sur “Add Document”.
Un formulaire s’affiche pour remplir.
12
Ch.2
L’utilisateur peut ajouter les données un nouveau Etat en cliquant sur “Add Etat”.
Un formulaire s’affiche pour remplir.
Tous les documents ont un reviwer, on considère dans cette figure les reviwer des documents.
13
Ch.2
L’utilisateur peut ajouter les données un nouveau reviwer en cliquant sur “Add Reviwer”. Un
formulaire s’affiche pour remplir.
Conclusion :
Au cours de ce chapitre, nous avons présenté les différentes étapes pour la réalisation de
gestion de bureau d’ordre commençant par la conception UML et finissant par la réalisation
de ce dernier.
14
Ch.2
Conclusion Générale
Le présent document est une présentation du travail réalisé durant mon stage de
perfectionnement au sein de la société DK Soft.
Ce projet est ouvert à des extensions ultérieures en y ajoutant un module de gestion des
ressources humaines, un module de gestion financière, un module de calcul d’IMC et BMR
pour chaque abonné et un module de gestion des équipements.
15