Académique Documents
Professionnel Documents
Culture Documents
Rapport Pour Un Projet de Fin D'étude EST
Rapport Pour Un Projet de Fin D'étude EST
Rapport Pour Un Projet de Fin D'étude EST
D U T: G E N I E I N F O R M A T I Q U E
Réalisation de l’application
mobile Club Sportif
invocations.
l’école.
1
Remerciement :
Tout d'abord, nous voulons remercier le Dieu " "هللاTout Puissant qui
travail.
Nous remercions les membres du jury pour cet honneur qu'ils nous
Enfin, nous n'oublions pas nos enseignants qui ont supervisé notre
à l'aboutissement de ce travail.
2
Table des matiè res
Dédicace ................................................................................................... 1
Remerciement ............................................................................................ 2
Table des matières....................................................................................... 3
Liste des figures .......................................................................................... 5
Introduction générale ................................................................................... 7
Chapitre 1 :Contexte générale ........................................................................ 8
1. Problématique ...................................................................................................................... 8
2. Présentation de projet............................................................................................................8
3. Objectifs ................................................................................................................................9
Chapitre 2 :Analyse & Conception ..................................................................10
I. Introduction ............................................................................................................................10
1. Besoins fonctionnels ........................................................................................................................... 10
2. Besoins non fonctionnels .................................................................................................................... 11
3. Choix de la démarche .......................................................................................................................... 11
4. La conception...................................................................................................................................... 12
5. Modélisation de notre système ........................................................................................................... 12
a. Diagramme de cas d’utilisation ........................................................................................... 13
b. Diagramme de classe .......................................................................................................... 15
c. Diagramme de séquence……………………………………………………………………………………………………………………………16
Chapitre 3 :Réalisation ................................................................................17
I. Outil de travail ......................................................................................... 17
1. StartUML ............................................................................................................................................ 17
2. Android Studio .................................................................................................................................... 17
3. Le SDK ................................................................................................................................................. 18
4. Firebase .............................................................................................................................................. 18
5. Flutter ................................................................................................................................................. 19
6. Langage Dart ....................................................................................................................................... 20
4
Table des figures
Figure 1: Logo du UML.................................................................................................................................. 11
5
Introduction générale
Lors de la conception d'une application pour un club sportif, plusieurs éléments clés doivent être
pris en compte pour garantir une expérience utilisateur optimale et répondre aux besoins
spécifiques de la communauté sportive ciblée. Cette introduction se concentrera sur les
différentes étapes impliquéesdans la création d'une telle application, allant de l'analyse des
besoins des utilisateurs à la conception de fonctionnalités personnalisées, en passant par le
développement et les tests. Nous explorerons également l'importance de l'accessibilité, de la
convivialité et de la sécurité dans la conception de l'application, ainsi que l'intégration de
technologies innovantes pour améliorer l'engagement des membres du club et optimiser la gestion
des activités sportives. En combinant une approche centrée sur l'utilisateur avec dessolutions
technologiques de pointe, l'objectif ultime est de créer une application qui enrichit l'expérience
sportive, favorise la communication et renforce le sentiment d'appartenance au club.
application mobile. Nous abordons les différentes étapes, des premières phasesde conception à
la réalisation pratique en passant par la présentation des interfaces graphiques. Nous mettons
l'accent sur les langages de programmation, les outils et les techniques utilisés pour créer une
6
Chapitre 1: Contexte générale
1. Problématique:
Face à la demande croissante d'utilisation des installations sportives dans la Province Orientale,
le défi se pose d'améliorer les processus de réservation, d'assurer un accès équitable pour tous et
d'éviter les problèmes suivants :
Manque de superviseur disponible pour validation
Conflits entre équipes pour réserver le stade
Réservations multiples par semaine par certains étudiants
Difficulté à former des équipes pour les tournois
Organisation traditionnelle de tournois
Alors Comment garantir la gestion efficace des réservations de terrains pour éviter les doubles
réservations et assurer que le terrain est disponible au moment où l’étudiant souhaite l’utiliser ?
2. Solution:
entre les groupes d'élèves ou les équipes. Ce système garantit que tous les groupes ont des
chances égales d'utiliser les installations et le matériel sportifs, évitant les conflits et promouvant
7
3.Objectifs :
L'objectif principal dans le développement d'une application mobile pour un club sportif est
de fournir une plateforme centralisée qui facilite la communication et la coordination entre les
membres du club, les entraîneurs et les responsables. Cette application propose des
fonctionnalités telles que la gestion des horaires, les inscriptions et les paiements en ligne, le
suivides performances, la communication en temps réel, le contenu personnalisé et la gestion
des installations. L'objectif est d'améliorer l'expérience des membres en simplifiant les processus
administratifs, en favorisant l'engagement et en renforçant le sentiment d'appartenance à la
communauté sportive.
8
Chapitre 2: Analyse & conception
1. Introduction:
Le but principal de l'application est d'être utile à ses utilisateurs. Par conséquent il est important de
comprendre leurs désirs et leurs besoins. Donc, une étape essentielle pour tout programme ou cycle de
L'objectif principal de cette étape est de comprendre le contexte du système, de mieux illustrer les
besoins fonctionnels et non fonctionnels, de montrer les acteurs et de définir des cas d'utilisation. Dans
ce chapitre, nous choisissons l'approche UML pour la modélisation des différents diagrammes d’une
2. Besoins fonctionnels:
Cette partie est réservée à la description des exigences fonctionnelles des différents acteursde
9
3. Besoins non fonctionnels:
Ce sont les besoins qui caractérisent le système, les spécifications supplémentaires c’est-à-dire tout ce
4. Choix de la démarche:
Pour représenter graphiquement les modèles, il existe plusieurs langages de modélisation. Parmi lesquels,
on va utiliser le langage UML. En effet, le choix d’UML n’est pas aléatoire ; il s’agit d’un standard très
répandu et qui a fait ses preuves dans le domaine de la modélisation. UML n’est, toutefois, qu’un langage
permettant de modéliser un problème d’une façon standard (contrairement à MERISE qui est un langage
assorti d’une méthode). Donc, Il doitêtre accompagné d’un processus ou d’une méthode qui devra
10
5. La conception:
□ Présentation du langage UML:
UML est l’acronyme anglais pour « Unified Modeling Language ». On le traduit par «
Langage de modélisation unifié ». La notation UML est un langage visuel constitué d’un
ensemble de schémas, appelés des diagrammes, qui donnent chacun une vision différente du
classe pour modéliser l’aspect statique et les diagrammes de cas d’utilisation pour modéliser
Ce diagramme est destiné à représenter les besoins des utilisateurs par rapport ausystème.
Il constitue un des diagrammes les plus structurants dans l’analyse d’un système. Lareprésentation
11
Acteur : Représente un rôle joué par une entité externe (utilisateur humain, dispositifmatériel ou autre
système) qui interagit directement avec le système étudié.
Cas d’utilisation (use case) : Représente un ensemble de séquences d’actions qui sont réalisées
par le système et qui produisent un résultat observable intéressant pour un acteur particulier.
Les relations entre les acteurs : La seule relation entre les acteurs est la relation de
généralisation. Quand un acteur fils hérite d’un acteur père, il hérite en réalitéde toutes les
associations du père.
Les relations entre cas d’utilisation : on peut distinguer les trois types de relationsentre cas
d’utilisation.
12
Figure 2: Diagramme de cas d’utilisation
13
b. Diagramme de classe :
Le diagramme de classes est considéré comme le plus important de la modélisation orientée objet, il
Alors que le diagramme de cas d’utilisation montre un système du point de vue des acteurs, le
diagramme de classes en montre la structure interne. Il permet de fournir une représentation abstraite
des objets du système qui vont interagir ensemble pour réaliser les cas d’utilisation. Il est important de
noter qu’un même objet peut très bien intervenir dans la réalisation de plusieurs cas d’utilisation. Les
cas d’utilisation ne réalisent donc pas une partition des classes du diagramme de classes. Un diagramme
de classes n’est donc pas adapté (sauf cas particulier) pour détailler, décomposer, ou illustrer la
Il s’agit d’une vue statique car on ne tient pas compte du facteur temporel dans le comportement du
système. Le diagramme de classes modélise les concepts du domaine d’application ainsi que les concepts
internes créés de toutes pièces dans le cadre de l’implémentation d’une application. Chaque langage de
(pointeurs ou pas, héritage multiple ou pas, etc.), mais le diagramme de classes permet de
particulier.
Les principaux éléments de cette vue statique sont les classes et leurs relations :
Association.
Généralisation.
14
Figure 3 : Diagramme de classe
15
C. Diagramme de séquence :
le cadre d'un scénario d'un diagramme des cas d'utilisation. Dans un souci de
simplification, on représente l'acteur principal à gauche du diagramme, et les acteurs
secondaires éventuels à droite du système. Le but est de décrire comment se déroulent les
interactions entre les acteurs ou objets.
La dimension verticale du diagramme représente le temps, permettant de visualiser l'enchaînement
des actions dans le temps, et de spécifier la naissance et la mort d'objets. Les périodes d'activité
des objets sont symbolisées par des rectangles, et cesobjets dialoguent à l'aide de messages.
Plusieurs types de messages (actions) peuvent transiter entre les acteurs et objets.
message simple : le message n'a pas de spécificité particulière d'envoi et de réception.
•
message avec durée de vie : l'expéditeur attend une réponse du récepteur pendant uncertain
•
temps et reprend ses activités si aucune réponse n'a lieu dans un délai prévu.
message synchrone : l'expéditeur est bloqué jusqu'au signal de prise en compte par le
•
destinataire. Les messages synchrones sont symbolisés par des flèches barrées.
message asynchrone : le message est envoyé, l'expéditeur continue son activité que le
•
message soit parvenu ou pris en compte ou non. Les messages asynchrones sont
Symbolisés par des demi-flèches.
message dérobant : le message est mis en attente dans une liste d'attente de
•
traitement chez le récepteur.
Le langage permet de décaler l'envoi et la réception des messages, pour montrerles
délais de communication non négligeables. La plupart des ateliers UML ne prennent
cependant pas en compte cette spécificité.
16
17
Figure 4 : Diagramme de séquence
18
Chapitre 3: Réalisation
I. Outils de travail:
1. StartUML :
Est un logiciel de modélisation UML, qui a été « cédé comme open source » parson
éditeur, à la fin de son exploitation commerciale (qui visiblement continue ...), sous une
2.Android Studio :
Est un environnement de développement pour développer des applications mobiles
Android. Il est basé sur IntelliJ IDEA et utilise le moteur de production Gradle. Il peut être
téléchargé sous les systèmes d'exploitation Windows, MacOset Linux. Android Studio est
annoncé le 15 mai 2013 lors du Google I/O et une version Early Access Preview est
disponible le jour même. Le 8 décembre 2014, Android Studio passe de version bêta à
version stable 1.0. L'environnement devient alors conseillé par Google, et Eclipse est
délaissé. Il permet principalement d'éditer les fichiers Java/Kotlin et Dart et les fichiers
19
Figure 6: Logo d’Android Studio
□ AVD : Android Virtual Device, un émulateur de tablettes pour tester les applications
3. Firebase :
Est un ensemble de services d'hébergement pour n'importe quel type d'application
(Android, iOS, JavaScript, Node.js, Java, Unity, PHP, C++ ...). Il propose d'héberger en
(Google, Facebook, Twitter et GitHub), etdes notifications, ou encore des services, tel
que par exemple un serveur decommunication temps réel. Firebase a été lancé en 2011
20
Figure 7: Logo de Firebase.
4. Flutter:
Est un ui (user interface) Framework de développement d'applications mobiles open
source créée par Google. Il est utilisé pour développer des applicationspour Android
système d'exploitation Android. Il a été dévoilé lors du sommet des développeurs de Dart
2015, avec l'intention déclarée de pouvoir restituer régulièrement à 120 images par
seconde. Lors du discours des Google Développer Days à Shanghai, Google a annoncé la
sortie de Flutter Release Preview 2, la dernière version la plus importante avant Flutter
1.0. Le 4 décembre 2018, Flutter 1.0 a été publié lors de l'événement Flutter Live,
21
5. Dart:
Est un langage de programmation web développé par Google. Son but initial estde
remplacer JavaScript, la priorité actuelle des développeurs est que le codeDart puisse
être converti en code JavaScript compatible avec tous les navigateurs modernes. Dart
peut aussi être utilisé pour la programmation côtéserveur, ainsi que le développement
d'applications mobiles (via l'API Flutter). Dart est un langage orienté objet, il est
développeurs existants, grâce àses aspects orientés objet et sa syntaxe qui (selon ses
quelques jours.
Dans cette partie du mémoire, nous allons présenter les principales fonctionnalités de notreapplication
1.Interface d’authentification:
22
Figure 10: Interface 1 Figure 11: Interface 2
sélectionner un bouton :
Figure 11 : cette interface est pour la connexion si l’étudiant a déjà un compte ,sinon l’étudiant
23
A besoin d’une inscreption(figure13).
Figure 12 : Représente l’interface d’inscription, qui contient trois champs Email ,Mot de passe et
confirmation du mot de passe . Dans cette interface, l’utilisateur doit spécifier est ce qu’il est un admin,
25
Figure 15: Interface 6 Figure 16: Interface 7
Figure 16 :l’interface des paramètres , l’ étudiant modifier ses informations et aussi changer
26
Figure 17: Interface 8 Figure 18: Interface 9
Figure 17 : c’est l’interface calendrier permet a l’étudiant de voir les dates des terrains
Réservées .
27
Figure 18 :l’interface des notifications, l’ étudiant recevoir des messages qui contient la réponse
matches …etc.
28
Figure 19 : : l’interface de connexion de l’admin qui as un comptes uniques , ce comptes donné par
l’administration .
Figure 23 : cette interface permet a l’admin d’effectues l’inscription des équipes qui ont déjà payé
Tarifs du tournoi , sur une limite des équipes (16 équipes au max ) .
30
4.La base de données (firebase):
On a la base de données contient deux parties principales dans notre projet , une partie
d’authentification (les comptes des étudiants et le compte de l’admin ) . Une partie sur le stockages
1.partrie authentification :
31
2.partie stockages :
Les données sont stockées comme des collections , la 1ere collection (réservations) :
Pour pouvoir finaliser notre rapport, nous avons commencé notre travail, en
replaçant le projet dans son contexte général, où nous avons étudié et exposé le
notre travail dans les différentes étapes du projet. Dans la troisième partie, analyse
une bonne opportunité de mettre en œuvre les connaissances théoriques que nous
avons acquises tout au long du cursus universitaire, et aussi de les enrichir en utilisant
une stratégie de travail bien étudiée ; cette stratégie nous a permis d'appliquer les
34