Académique Documents
Professionnel Documents
Culture Documents
A ma famille.
Remerciements
Mes remerciements vont tout d’abord à Allah le Tout Puissant, le Tout Miséricordieux, le
Très Miséricordieux qui m’a guidé tout au long de ce travail, et m’a donné la force et le
courage dans la réalisation de ce document.
Je remercie mes très chers parents, qui ont toujours été là pour moi. Mes remerciements les
plus chaleureux vont aux membres de ma famille, pour leurs encouragements durant tout mon
parcours.
Pour finir, je remercie toutes les personnes ayant contribué de près ou de loin à la réalisation
de ce travail.
Introduction générale
Les stations-services, acteurs indispensables de notre quotidien, assurent l'approvisionnement
en carburant et offrent une gamme de services essentiels tant pour les particuliers que pour les
entreprises. La gestion efficace de ces stations-services est cruciale, non seulement pour
garantir un fonctionnement fluide et une rentabilité optimale, mais également pour répondre
aux attentes élevées de la clientèle. À l'ère de la transformation numérique, l'informatique
émerge comme un catalyseur incontournable, remodelant notre monde en un réseau
interconnecté.
L'analyse approfondie des défis spécifiques auxquels sont confrontées les stations-services
met en lumière la nécessité impérieuse d'adopter des solutions innovantes. Dans ce contexte,
les entreprises intègrent de plus en plus des outils informatiques pour optimiser leurs
opérations, offrant des avantages significatifs en termes d'efficacité et de productivité. Il
devient évident que le secteur des stations-services ne peut faire l'impasse sur cette révolution
numérique.
C'est dans ce contexte que l'entreprise 2iSoft a entrepris de développer une application de
gestion et suivi des stations-services. Notre mémoire, intitulé « Conception et réalisation
d’une application de gestion et suivi des stations-services » explore en détail les aspects
théoriques, méthodologiques, organisationnels et conceptuels de ce projet ambitieux. Ce
document sera structuré en trois grandes parties, chacune détaillant les étapes cruciales de
notre démarche :
Cette approche structurée permettra une compréhension approfondie de notre démarche, des
défis rencontrés, et des solutions apportées tout au long du processus de conception et de
réalisation de l'application de gestion des stations-services.
Première partie :
Cadre théorique et méthodologique
Chapitre I : Cadre théorique
I.1 Problématique
La gestion efficiente des stations-services demeure un enjeu majeur pour garantir un
approvisionnement en carburant sans accroc, assurer la rentabilité de l’activité et répondre aux
attentes variées de la clientèle. L'application "2iStation", actuellement en production et
développée par l'entreprise 2iSoft, présente des insuffisances notables dans sa capacité à
répondre de manière optimale aux défis de gestion spécifiques à ces établissements. Des
insuffisances dans la modélisation lors de la conception, des faiblesses au niveau de
l'architecture logicielle, et des incohérences fréquentes lors du relevé d'index des pompes et
l’approvisionnement des cuves ont été identifiées, mettant en lumière la nécessité d'apporter
des ajustements significatifs pour garantir un fonctionnement optimal de l'application.
Face à cette situation, nous nous sommes posés les questions suivantes :
Objectifs de recherche
Objectif général
L'objectif fondamental de notre étude consiste à établir une solution complète de gestion et
suivi dédiée aux stations-services. Notre démarche vise ainsi à reconstruire intégralement le
système existant, tout en évitant les erreurs précédemment rencontrées, afin de garantir une
performance, une fiabilité améliorée et une meilleure satisfaction des utilisateurs.
Objectifs spécifiques
Pour concrétiser notre objectif général de mise en place d'une solution de gestion et suivi des
stations-services, nous avons défini les objectifs spécifiques suivants :
Hypothèses de recherche
Hypothèse générale
L’application future permettra de répondre à toutes les exigences de l’utilisateur. Elle
permettra ainsi d’apporter des meilleures solutions aux problèmes et insuffisances relatifs à
celle de l’application actuelle.
Hypothèses secondaires
Les hypothèses secondaires de notre recherche sont les suivantes :
L’application actuelle présente des lacunes, cela ne permet pas une meilleure
rentabilité.
Intérêt du sujet
Intérêts personnels
Techniques d’investigation
Nous allons rédiger notre document en nous focalisant sur la méthode qualitative afin de
mettre en place une solution qui fera face à toutes les difficultés rencontrées. Cette méthode se
base sur l’étude documentaire, l’observation, l’entretien et l’interview. Nous passerons par
des entretiens pour obtenir les informations qui nous faciliterons la compréhension de la
gestion actuelle des stations-services et les attentes de l’entreprise. Nous consulterons les
ouvrages, l’internet pour enrichir le travail que nous aurons à élaborer, et maîtriser l’ensemble
des concepts clés indispensable à l’aboutissement de ce travail.
Difficulté rencontrée
Une des principales difficultés que nous avons dû surmonter dans le cadre de ce projet est
étroitement liée au volet technique, notamment à la gestion du code. Ce défi s'est révélé
conséquent, nécessitant plusieurs semaines de recherches approfondies et de compréhension
minutieuse.
Deuxième partie :
Cadre organisationnel et conceptuel
Chapitre I Cadre organisationnel
Avant de nous lancer dans le vif du sujet, nous allons parler de 2iSoft et ensuite nous
détaillerons l’ensemble des problèmes qui feront l’objet de notre étude.
Présentation de 2iSoft
Historique
2iSoft (Ingénierie Informatique Soft) est une entreprise fournissant des solutions
technologiques.
Créée le 18 Mai 2012, 2iSoft est née de la volonté d'accompagner les grandes entreprises et
PME à intégrer les Technologies de l'Information et de la Communication afin de booster leur
compétitivité.
Forte d’une expertise variée, leurs équipes utilisent différentes technologies pour développer
rapidement des applications fort ergonomiques.
Les progiciels de gestion intégrés sur mesure permettent une gestion coordonnée de
l'ensemble des processus des entreprises, qu'ils soient liés à la direction des affaires ou à la
gestion des ressources humaines et matérielles. Elles regroupent, autour de l’application-
métier principale, les fonctions traditionnelles telles que la gestion financière et comptable, la
Gestion des Ressources Humaines (GRH), la gestion de production et la gestion de la relation
client.
L’objectif principal est de satisfaire sa clientèle à travers la conception de logiciels, mais aussi
dans l’étude et la mise en place de réseaux informatiques, puis dans la maintenance du parc
informatique.
1.2. Les missions
2iSoft offre les prestations suivantes :
1.3. Organigramme
2iSoft (Ingénierie Informatique Soft) est composé :
C’est l’ensemble des installations et des activités destinées à stocker et à transférer les
hydrocarbures liquides à la pression atmosphérique de réservoirs de stockage fixes
dans les réservoirs à carburant de véhicules routiers à moteur et, le cas échéant, dans
des réservoirs mobiles. Elle est composée généralement : d’une piste destinée aux
voies de circulation, - d’une aire de distribution étanche aux hydrocarbures
généralement bétonnée, constituée par des postes de distribution, des cuves, et
éventuellement de bâtiments constitués par un bureau du gérant et/ou une salle de
vente, un magasin de stockage, une toilette et des services annexes tels que : le
vidange, le graissage, le lavage, la vulcanisation, et les petits entretiens automobiles et
les installations pour la vente des bouteilles de gaz.
Une application, un applicatif ou encore une appli, une app est, dans le
domaine informatique, un programme (ou un ensemble logiciel) directement
utilisé pour réaliser une tâche, ou un ensemble de tâches élémentaires d'un
même domaine ou formant un tout.
En informatique, une application web (aussi appelée web application, de
l'anglais et français) est une application manipulable directement en ligne grâce
à un navigateur web et qui ne nécessite donc pas d'installation sur les
machines clientes.
Une base de données est une collection organisée d’informations structurées,
généralement stockées électroniquement dans un système informatique. Une
base de données est généralement contrôlée par un système de gestion de base
de données.
La conception est la phase créative d’un projet d’ingénierie. Le but premier de
la conception est de permettre de créer un système ou un processus répondant à
un besoin en tenant compte des contraintes. Le système doit être suffisamment
défini pour pouvoir être installé, fabriqué, construit et être fonctionnel, et pour
répondre aux besoins du client.
Littéralement, un Framework signifie “cadre de travail”. Véritable boîte à
outils des temps modernes, ce kit de composants logiciels structurels permet
aux développeurs d’être plus efficaces dans la conception d'applications web,
entre autres, en offrant une architecture et des composants logiciels prêts à
l’emploi et réutilisables.
Un langage de programmation est un langage informatique, permettant à un
être humain d'écrire un code source qui sera analysé par une machine,
généralement un ordinateur.
Le système d’information (SI) est un ensemble de ressources et de dispositifs
permettant de collecter, stocker, traiter et diffuser les informations nécessaires
au fonctionnement d’une organisation (administration, entreprise…).
Un système de gestion de base de données (SGBD) est un logiciel système
permettant aux utilisateurs et programmeurs de créer et de gérer des bases de
données.
Troisième partie :
Conception
D’une démarche : processus pour effectuer les travaux préconisés, étape par étape.
Méthodes systémiques
L’un des objectifs des méthodes systémiques est de corriger les failles des méthodes
cartésiennes en incorporant les données. Elles définissent différents niveaux de préoccupation
ou d'abstraction et proposent de nombreux modèles complémentaires. Les méthodes
systémiques sont souvent spécialisées pour la conception d'un certain type de systèmes tels
que les systèmes de conception de bases de données relationnelles (MERISE, AXIAL..).
Toutefois, ces méthodes juxtaposent les données et les traitements sans véritablement les
intégrer.
Méthodes orientée-objet
Les méthodes objets viennent intégrer véritablement les données aux fonctions dans le
concept objet. Pour un objet donné, les données et les fonctions sont traitées ensemble. Les
méthodes objets consistent à créer une représentation informatique des éléments du monde
réel auxquels on s'intéresse, sans se préoccuper de l'implémentation, ce qui signifie
indépendamment d'un langage de programmation. Il s'agit donc de déterminer les objets
présents et d'isoler leurs données et les fonctions qui les utilisent. Pour cela des méthodes ont
été mises au point. Entre 1970 et 1990, de nombreux analystes ont mis au point des approches
orientées objets, si bien qu'en 1994, il existait plus de 50 méthodes objets. Toutefois seules
trois (3) méthodes ont véritablement émergé :
La méthode OMT de Rumbaugh ;
Les promoteurs de ces trois (3) méthodes se sont fixés pour objectif de créer une méthode qui
fasse la synthèse des éléments indispensables pour faire du développement objet. Sur le plan
du langage, ils ont créé le langage UML pour la modélisation orientée objet. Pour les
processus, le consensus se fait sur les processus unifiés qui sont des méta-processus à partir
desquels le chef du projet doit décrire son véritable processus, en prenant en compte les
spécificités du problème posé, les outils et les personnes impliquées. Ce processus réel
construit sur le modèle qu’est le processus unifié, s’exprime en termes d’itérations.
Scrum
Scrum est conçue pour améliorer de manière significative la productivité des équipes
de développement. C’est une méthode qui s’adapte à tout type de contexte et de projet
dès lors qu’un groupe de personnes cherche à atteindre un but commun.
Le Scrum master qui est avant tout un coach de l’équipe et assure les tâches suivantes :
Product Backlog
Le Product backlog est une liste ordonnée de tout ce qui pourrait être requis dans le produit et
est l’unique source des besoins pour tous les changements à effectuer sur le produit.
Sprint Backlog
Le Sprint Backlog est la liste des tâches de l’équipe pour le sprint.Il comprend toutes les
stories que l’équipe s’est engagée à livrer dans le sprint et les tâches associées. Les stories
sont des livrables et peuvent être considérées comme des unités de valeur.
Elle est fonction du temps en abscisse et des points d’histoire en ordonné. Il permet
d’anticiper les dérives.
Cycle de sprint
Il se compose de plusieurs réunions :
Sprint Planning
Daily scrum meeting
Sprint Review
Retrospective (La rétrospective)
Sprint Planning
Planification du sprint (Sprint Planning) l’objectif est que l’équipe s’engage à un ensemble de
livrables pour le sprint et identifie également les tâches requises pour livrer les user stories
convenues. Avec l’équipe, le Product Owner présente les stories suggérées à prioriser et
l’équipe discute, parfois avec vigueur de leur position et de leur priorité.
Sprint Review
La revue du Sprint est également une réunion, d’une durée approximative de 1 heure par
semaine de Sprint. Elle permet d’inspecter et d’analyser le Sprint délivré.
Elle permet de faire aussi un point sur l’avancement de la ”Release” et d’adapter au besoin le
plan et le product Backlog.
Retrospective
Le Rétrospectif est la dernière réunion que l’équipe doit réunir pour inspecter, adapter et
optimiser ses performances en constante amélioration en équipe. Contrairement à la revue
Sprint qui comprenait des parties prenantes externes en plus de l’équipe Scrum, cette réunion
est réservée à l’équipe elle-même.
Les avantages et les inconvénients de la méthode Scrum
Les avantages :
Les inconvénients :
Bref historique
UML (Unified Modeling Language) est né de la fusion des trois méthodes qui s’imposaient
dans le domaine de la modélisation objet au milieu des années 1990 : OMT, Booch et OOSE.
Les principaux auteurs de la notation UML sont Grady Booch, Ivar Jacobson et Jim
Rumbaugh.
Généralités
UML n’est pas une méthode (i.e. une description normative des étapes de la modélisation) :
ses auteurs ont en effet estimé qu’il n’était pas opportun de définir une méthode en raison de
la diversité des cas particuliers. Ils ont préféré définir un langage graphique qui permet de
représenter, de communiquer les divers aspects d’un système d’information (aux graphiques
sont bien sûr associés des textes qui expliquent leur contenu).
UML est un métalangage car il fournit les éléments permettant de construire le modèle qui,
lui, sera le langage du projet. Il est impossible de donner une représentation graphique
complète d’un logiciel ou de tout autre système complexe, de même qu’il est impossible de
représenter une statue (à trois dimensions) par des photographies (à deux dimensions). Mais il
est possible de donner sur un tel système des vues partielles, analogues chacune à une
photographie d’une statue, et dont la juxtaposition donnera une idée utilisable en pratique sans
risque d’erreur grave. UML depuis la version 2.0 comporte treize types de diagrammes
représentant autant de vues distinctes pour représenter des concepts particuliers du système
d’information.
Solution envisagée
Le tableau ci-dessous illustre les besoins et les fonctionnalités extraits du cahier des charges.
Besoins Fonctionnalités
Gérer les pompes Enregistrer, modifier, retirer, affecter une
pompe à une cuve
Gérer les cuves Ajouter, mise à jour, retirer, associer un
carburant à une cuve
Gérer les achats de carburants Enregistrer un achat, réceptionner un achat,
approvisionner un achat dans une cuve
Gérer les inventaires Générer un bon de carburant, relever un index,
effectuer un jaugeage, faire les recouvrements
Gérer les employés Ajouter un employé, affecter un employé à une
équipe, planifier une équipe, attribuer une
fonction à un employé
Gérer les tiers Ajouter un fournisseur, un client,
Mettre à jour les informations d’un fournisseur
et un client
Gérer les transactions financières Effectuer des virements de la caisse vers la
banque et inversement, générer une facture
Gérer les accès au système
Création et mise à jour des utilisateurs
Création et mise à jour des profils utilisateurs
Affecter des habilitations aux profils
utilisateurs
Permettre l’authentification pour accéder au
système
Spécifications fonctionnelles
En UML, les acteurs et les cas d’utilisation sont des concepts fondamentaux pour la
spécification des exigences. A partir des besoins initialement exprimés, nous avons identifié
les acteurs et les cas d’utilisation à mettre en place. Ensuite nous avons structuré, relié et
classé ces cas d’utilisation ainsi que les représentations graphiques UML associées.
Il s’agit dans cette partie de bien connaître les acteurs qui vont interagir avec notre système.
Ces acteurs ne font pas partie de la solution à mettre en place, mais participe au
fonctionnement général de la solution par une interaction avec le système.
Gérer station
Gérer pompe
Gérer cuve
Gérer carburant
Effectuer une commande
Réceptionner une commande
Approvisionner une commande
Vente carburant
Générer facture
Gérer caisse
Gérer compte bancaire
Gérer mouvement
Gérer chèque client
Gérer dépenses
Gérer fournisseurs
Gérer clients
Gérer employés
Gérer équipe
Gérer fonction
Générer bon carburant
Gérer remise en cuve
Relever index
Gérer jaugeage
Gérer utilisateur
Gérer profil
S’authentifier
Organisation des acteurs et cas d’utilisation en packages
Nous avons recensé huit packages notamment package Administration système, package
Inventaires, package Service, package Employé, package Tiers, package Finance, package facture, et
le package Station.
Les tableaux ci-dessous représentent les packages et les différents cas d’utilisation qui y sont
rattachés.
Acteur Administrateur
Package inventaires
Acteurs Pompiste
Package station
Acteurs Gérant
Package facture
Acteurs Gérant
Package finance
Acteurs Gérant
Package employé
Acteurs Gérant
Package tiers
Acteurs Gérant
Package service
Acteurs Service
Pour affiner le diagramme de cas d’utilisation, UML définit trois types de relations
standardisées entre cas d’utilisation :
Sprint 0
Dans le Sprint 0, nous allons retrouver les actions suivantes :
Product Backlog
Le Backlog du produit (Product Backlog en anglais) est l’artefact le plus important de Scrum.
En effet, c’est l’ensemble des epics qui compose le produit.
Chaque epic est une grande user story qu’elle peut être divisée en plus petites user stories.