Académique Documents
Professionnel Documents
Culture Documents
Département : Informatique
Gestion de Parking
Présenté le :
Par :Zaoui Farid Jury Nom et Prénom : Grade Université
-
Examinateur
2019/2020
1
Dédicaces
Je dédie ce travail :
2
Remerciements
A tous les personnes qui par leurs paroles , leurs conseils m’ont aidé
pour l’aboutissement de ce projet
3
4
Table des Matières
Introduction Générale 8
1.1 Introduction 9
1.2 Application mobile 9
1.3 Systèmes d’exploitation Mobile 9
1.3.1Android
1.3.2 iOs
1.3.3 Windows
1.3.4 Blackberry
1.3.5 Analyse et statistique
1.4 Classification des applications Mobiles 12
1.4.1 Introduction 12
1.4.2 Classification des applications selon leurs fonctionnements 13
1.4.2.1 Applications fonctionnant sans internet
1.4.2.2 Applications exigeant une connexion
1.4.2.3 Applications connectées
1.4.2.4 Applications interagissant avec d’autres équipements
Smartphone
1.4.2.5 Applications interagissant avec d’autres mobinautes
1.4.3 Types d’applications Mobiles 14
1.4.3.1 Applications Natives
1.4.3.2 Applications Web
1.4.3.3 Applications Hybrides
1.5 Système d’exploitation ANDROID 14
1.5.1 Architecture Android 15
1.5.1.1 Couche Applications
1.5.1.2 Couche Applications Framework
1.5.1.3 Couche Librairie
1.5.1.4 Couche Android RunTime
1.5.1.5 Couche Linux Kernel
1.5.2 Avantages et Inconvénients d’Android 17
1.5.2.1 Avantages
1.5.2.2 Inconvénients
1.6 Conclusion 17
5
Chapitre II : Conception d’une application de gestion d’un Parking
2.1 Introduction 18
2.2 Contexte 18
2.2.1 Problématique 18
2.2.2 Présentation du projet 18
2.3 Conception 19
2.3.1 Introduction 19
2.3.2 Présentation de la méthodologie UML 19
2.3.3 Etude Conceptuelle 20
2.3.3.1 Modèle Statique 20
A. Diagramme de cas d’utilisation global
B. Diagramme de classes
2.3.3.2 Modèle Dynamique 21
A. Diagramme de séquences
2.4 Conclusion 22
Conclusion Générale 29
Bibliographie 30
6
Liste des Figures
7
Introduction générale
8
Chapitre 1 : Technologie Mobile
I.1 Introduction :
Ce chapitre définit et parle des "Smartphone", il évoque ainsi les différentes notions de
l’environnement Android en détaillant la description du sujet, les objectifs et le travail que
nous allons réaliser.
Cette partie présente brièvement chaque système, ses avantages et ses inconvénients
afin de déterminer le système qui pourra répondre le plus aux besoins de notre application.
I.3.1 Android :
Android est un système d'exploitation mobile développé par Google et fondé sur le
noyau Linux. Ce système avait d’abord était conçu pour les Smartphones et tablettes tactiles
puis s’est diversifié dans les objets connectés et ordinateurs comme les télévisions (Android
tv), les voitures (Android auto), et les smart Watch.
9
I.3.2 iOS :
IOS est un système d'exploitation mobile développé et utilisé par Apple pour ses
terminaux mobiles (iPhone, iPod touch,iPAD, etc. ). Il est dérivé de MacOs dont il partage
les fondations (le noyau hybride XNU basé sur le micronoyau Mach, les services Unix et
Cocoa, etc.).
I.3.3 Windows :
Windows mobile est le nom donné aux différentes versions de Microsoft Windows
conçues pour des appareils mobiles tels que les Smartphones ou les Pocket PC. Windows
mobile est remplacé par Windows phone en 2010 puis par Windows 10 mobile en 2015.
Windows propose une interface simple et épurée ainsi que de multiples possibilités de
personnalisation, il permet d’arriver rapidement à l’exécution d’une tâche ce qui a
particulièrement séduit les utilisateurs.
I.3.4 Blackberry:
BlackBerry est une ligne de téléphones intelligents créées et développée par Mike
Lazaridis, d’abord sous le nom de RIM (Research In Motion) puis sous le nom du produit
dénommé BlackBerry, utilisant le système d’exploitation propriétaire BalckBerry Os.
10
Figure I-4 : BlackBerry
Figure I-5 : Nombre de téléchargements d’applications mobiles dans le monde entre 2017 et 2022 (En milliards)
On note aussi que selon une étude, les utilisateurs mobiles passent 87% de leur temps dans
les applications contre seulement 13% sur le web.
11
Figure I-6 : la différence entre le temps passé sur les applications mobiles et sur le web
13
Figure I.8 : Application interagissant avec autres mobinautes
14
I.5 Système d’exploitation ANDROID :
Depuis maintenant de nombreuses années, Android, développé par les ingénieurs de
Google, s’impose comme l’OS de référence du marché, loin devant ses concurrents. Il
atteint ainsi en 2014 le milliard de Smartphones équipés, on peut dire qu’il est le système
d’exploitation le plus populaire au niveau international. Il rencontre toujours autant de
succès auprès des utilisateurs. En 2017, il équipait près de 85% des mobiles sur le marché.
15
I.5.1.2 Couche applications Framework :
La couche Framework d’application fournit de nombreux services de niveau
supérieur aux applications sous la forme de classes Java ainsi la gestion des views (IHM),
des content providers (fournisseurs de contenus), des ressources, des notifications, des
activités, etc.
16
I.5.1.5 Couche Linux Kernel : (Le cœur du système)
Android est basé sur Linux. Au plus bas niveau de ce système se trouve un noyau
Linux 2.6 destiné à la gestion du matériel comme la gestion de la mémoire, la gestion des
processus, l’accès au réseau, drivers de ces terminaux.
Le choix d’un noyau linux a été réalisé pour sa stabilité et sa performance, pour son modèle
de sécurité, pour ses capacités d’abstraction avec le matériel et enfin pour son aspect open
source et communautaire fort.
I.5.2.2 Inconvénients :
Cependant malgré les différents avantages que présente Android, il existe quelques
inconvénients tels que : le bug de certaines applications, les téléphones Android possèdent
une autonomie assez faible à cause de la connexion.
I.6 Conclusion :
Dans ce chapitre, nous avons présenté les applications mobiles, leurs types et
classification ainsi que les différents systèmes d’exploitation utilisés. On s’est intéressé plus
spécifiquement à la plateforme Android en la définissant et en présentant ses fonctionnalités,
son architecture, ses avantages et inconvénients.
17
Chapitre 2 : Conception d’une
application de gestion d’un parking
II.1 Introduction :
Le processus de conception est une étape très importante, elle nous permet de définir la vue
qui décrit tous les aspects d'un système avec le concept objet. En d'autre terme cette étape
nous permet de spécifier les fonctionnalités du futur système d'information.
Nous entamons ce chapitre par une présentation générale du sujet à réaliser en définissant le
contexte de ce travail et présentons les outils qu’on utilisera pour développer notre
Application. On utilisera la méthode UML pour présenter la conception
II.2 Contexte
II.2.1 Problématique :
Le problème de stationnement est complexe car il est le reflet d'un conflit de différents
usagers d'un même espace public .Cet espace est rare car il est souvent dans des zones denses
tels que les zones d’aéroport, des grands supermarchés et les centres commerciaux. Deux
solutions sont en général mises à la disposition des clients pour réserver un espace dans un
parking :
- soit à travers un site web où le client peut réserver un espace et préciser la durée de
stationnement
- soit à travers l’achat de cartes de stationnement par lesquelles le client peut acheter un
espace pour une durée bien déterminée.
Bien que la première soit une solution informatisée, elle nécessite d’avoir un ordinateur à
portée de main , ce qui n’est pas toujours le cas.
D’autres problèmes viennent se greffer à ceci : l’augmentation du nombre de voitures qui
entraine des difficultés à trouver des places de stationnement, les embouteillages qui
rallongent le temps d’attente
Ajouter à ceci la difficulté d’accéder à l’information, l’indisponibilité de l’information en
temps réel et la perte de temps dans la sa recherche
-pouvoir faire via l’application une réservation à distance en utilisant le téléphone mobile
II.3 Conception :
II.3.1 Introduction :
Le processus de conception est une étape très importante, elle nous permet de définir la
vue qui décrite tous les aspects d'un système avec le concept objet. En d'autre terme cette
étape nous permet de spécifier les fonctionnalités du futur système d'information.
Nous allons, ainsi aborder dans cette partie les outils qu’on va utiliser pour développer
notre Application.
UML (Unified Modeling Language) est un langage semi-formel qui permet d'exprimer
et d'élaborer des modèles objet. Il est indépendant de tout langage de programmation. La
présence de la modélisation dans le langage UML met en œuvre le terme méta modèle qui
permet de représenter l'ensemble des éléments et leurs liens respectifs. Ces éléments sont
représentés par un ensemble des diagrammes classés suivant deux vues :
19
Nous avons opté pour le choix du formalisme UML pour les raisons suivantes :
- Il permet d'exprimer et d'élaborer des modèles objet, indépendamment de
tout langage de Programmation.
- Sa présentation graphique permet d'exprimer visuellement une solution
objet, ce qui facilite la comparaison et l'évaluation des solutions.
- UML propose le concept de composants permettant la réalisation des
fonctionnalités du système par simple interaction entre eux, ce qui
facilite la manipulation de l'application.
20
Figure II-1 : Diagramme de cas d’utilisation
21
B/ Diagramme de classes
Le diagramme de classes est un schéma utilisé en génie logiciel pour
présenter les classes et les interfaces d'un système ainsi que les différentes
relations entre celles-ci. Ce diagramme fait partie de la partie statique
d'UML car il fait abstraction des aspects temporels et dynamiques
A/ diagramme de séquence :
22
Figure II-3 : Diagramme de séquence
III.4 Conclusion :
Dans ce chapitre on a vu la conception d’une application mobile à l’aide de la
méthodologie UML ainsi que différents diagrammes et on a aussi vu la
problématique du stationnement et on a eu une idée générale sur notre application.
23
Chapitre 3 : Réalisation et mise en
œuvre
III.1.1 Présentation :
Pour bien réaliser notre application, c’est nécessaire de bien choisir la bonne
technologie qui nous permet de facilité la tache qui est le logiciel Android Studio.
24
avec les outils de développement d’Android (ADT) mais depuis 2015, Google
officialisa Android Studio, qui devient alors l’IDE officiel pour ce kit de
développement d’Android. Les développeurs peuvent utiliser n’importe quel éditeur de
texte pour modifier les fichiers Java et XML, puis utiliser les outils en ligne de
commande (Java Development Kit et Apache Ant sont obligatoires) pour créer,
construire et déboguer les applications Android ainsi que contrôler des périphériques
Android (pour déclencher un redémarrage, installer un logiciel à distance ou autre).
Nous avons aussi le bouton « Confirm » qui permet de confirmer les données
saisies et passer la vérification.
25
Figure III-1 : Capture d’écran de l’application
Une fois que l’utilisateur introduit toutes ses données ,elles sont confirmées et il a accés
au parking pour se garer
26
Figure III-2 : Capture d’écran de l’application après la saisie et la disponibilité
27
Dans le cas où l’utilisateur veut prendre une place qui a déjà été prise après
confirmation, un message apparait l’informant qu’il n’a pas accès à cette place et qu’il
ne peut pas se garer dans cette place
Figure III-3 : Capture d’écran de l’application quand la place est déjà prise
28
Figure III-4 : Capture d’écran de l’application quand on remplit pas tout
III.3 Conclusion :
Dans ce chapitre nous avons vu les phases de réalisations ainsi que les interfaces de
notre application et ses fonctionnalités et l’environnement de développement ainsi que
les choix techniques.
29
Conclusion générale
Nous avons effectué ce projet dans le cadre de notre licence Informatique. Le projet
consistait à développer une application mobile de gestion de parking.
A l’issue de la réalisation de ce travail, nous pouvons affirmer que notre projet nous a
été d’une grande utilité dans la mesure où il nous a permis de nous familiariser avec le
travail sur une nouvelle plate-forme à savoir la plate-forme Android et de mettre en
pratique nos connaissances acquises au cours de notre cursus.
30
Bibliographie
31