Vous êtes sur la page 1sur 41

Institut Supérieur de Technologie République Gabonaise

Ministère de l'Enseignement Supérieur

PROJET TUTEURE : Conception et


réalisation d’une application de
messagerie instantanée sous Android.
Réalisé comme exigence partielle à l’obtention du
diplôme universitaire de technologie,
Spécialité :Informatique.

Réalisé par :
Encadrés par :
 ENGONE MVE Dafane Harley
 IBRAHIM GAZA Abdel M. MAWANDJI Brice
 ABDOUL MOMOUNI Harouna
 MVOUMBI Davy
Année académique 2018-2019
Remerciements

Ce mémoire n'aurait pas pu être confectionné si Dieu le tout puissant nous a


avait pas doté d'une santé physique et morale à chaque instant; c'est pourquoi,
nous le remercions à l'infini pour ce don inestimable dont il nous a gratifié.
Nous tenons bien entendre à remercier particulièrement, notre cher encadreur, en
l'occurrence M. MAWANDJI Brice qui, par son encadrement ses précieux
conseils et sa disponibilité ont fait que notre œuvre a été largement facilité :
nous ne saurions l'oublier.
Nos remerciements s’adressent également à tous les enseignants qui ont
participés à notre formation tout le long de notre cursus.
Nous ne pouvons pas oublier de remercier tous les membres de nos familles
pour leurs soutiens et leurs encouragements et particulièrement nos très chers
parents.
Merci à tous ceux qui ont contribué, de près ou de loin, à la réalisation de ce
travail.

Obs : Il faut justifier le texte

1|Page
Sommaire

Remerciements ……………………………………………………

Dédicaces ……………………………………………………

Liste des figures……………………………………

INTRODUCTION ...........................................................................................................

Chapitre 1 : Présentation du cadre du projet ....................................................................

1. Introduction ..................................................................................................................

2. Etat de l’art ...................................................................................................................

2.1. Les types d’applications Android ...............................................................................

2.2. Les réseaux sociaux, outils d’aide à l’information .........................................................

3. Etude de l’existant .........................................................................................................

3.1. Description de l’existant .............................................................................................

3.2. Critique et motivation ................................................................................................

3.3. Solution proposée .......................................................................................................

3.4. Applications similaires ...............................................................................................

4. Modèle de développement .............................................................................................

5. Planning prévisionnel ....................................................................................................

6. Conclusion .....................................................................................................................

Chapitre 2 : Spécification des besoins ...............................................................................

1. Introduction ...................................................................................................................

2. Les besoins fonctionnels ...............................................................................................

2.1. Application Android (Utilisateur) ..............................................................................

3. Les besoins non fonctionnels ........................................................................................

4. Diagramme de cas d’utilisation global (Use case) ........................................................

2|Page
4.1. Définition ...................................................................................................................

4.2. Acteurs .......................................................................................................................

4.3. UC global de l’utilisateur ...........................................................................................

5. Raffinement des UC ......................................................................................................

5.1. UC « s’inscrire » ........................................................................................................

5.2. UC « s’authentifier » .................................................................................................

5.3. UC « Ajouter un ami » .......................................................................................

5.4. UC «Envoyer des messages » .......................................................................................

6. Conclusion ....................................................................................................................

Chapitre 3 : Conception ....................................................................................................

1. Introduction ..................................................................................................................

2. Définition d’UML ........................................................................................................

3. Diagramme de classes ..................................................................................................

3.1. Les règles de gestion .................................................................................................

3.2. Diagramme de classes ...............................................................................................

4. Diagramme de séquence ..............................................................................................

4.1. Définition ..................................................................................................................

4.2. Diagrammes de séquence ..........................................................................................

4.2.1. Diagramme de séquence ‘Connexion’ .........................................................

4.2.2. Diagramme de séquence ‘Inscription’ ...................................................................

4.2.3. Diagramme de séquence ‘Ajout des amis’ ...........................................................

4.2.4. Diagramme de séquence ‘Envoyer des messages’ .......................................................

5. Conclusion .....................................................................................................................

Chapitre 4 : Réalisation .....................................................................................................

1. Introduction ...................................................................................................................

3|Page
2. Environnement du travail .............................................................................................

2.1. Environnement matériel ............................................................................................

2.2. Environnement logiciel .............................................................................................

2.2.1. Android Studio ......................................................................................................

2.2.2 Firebase ………………………………………………………………………….

2.2.3 JDK (Java Development kit)……………………………………………………

2.4. Langages de programmation ......................................................................................

2.4.1. JAVA .....................................................................................................................

2.4.2. XML ......................................................................................................................

2.4.3 JSON…………………………………………………………………….

3. Présentation des interfaces ...............................................................................................

3.1. Application Android ..................................................................................................

4. Conclusion ..........................................................................................................................

Conclusion Générale et perspectives ....................................................................................

Table de matières .......................................................................................................................

Lexique ...........................................................................................................................

Webographie ...........................................................................................................................

Bibliographie ...........................................................................................................................

4|Page
INTRODUCTION

Les applications mobiles sont, de nos jours, les outils indispensables du


Smartphone. Elles sont pour la plupart téléchargeables sur les plateformes
Android et IOS. Autrefois fonctionnelles, aujourd'hui elles se tournent vers les
professionnels et considérées comme l’une des précieuses sources de données
pour eux, mais aussi un moyen de communiquer et de garder le contact avec les
utilisateurs. Selon le journal Africa News, chaque année le nombre d’internautes
augmente de façon exponentielle en Afrique ; une hausse qui est reflétée aussi
par le nombre croissant d’utilisateurs de WhatsApp et de Facebook Messenger.
Avec une telle prévalence du mobile, il n’est pas surprenant que les échanges sur
les réseaux sociaux se fassent aussi en grande partie via téléphone mobile.
Utilisés non seulement pour communiquer entre amis et personnes partageant les
mêmes idées, les réseaux sociaux servent de plus en plus aussi de média
d’information.
Aujourd'hui, les étudiants ont besoin de se connecter avec leurs écoles. Les
applications mobiles, ont pris une grande place par rapport aux sites web, c’est
pour cette raison que les entreprises, les organisations, les associations et les
institutions éducatives, ont tous eu recourt à ces outils pour communiquer plus
avec leurs clients et recueillir les informations qu’ils (qu’elles) ont besoins pour
améliorer, commercialiser ou publier leurs produits ou services. En outre, une
application de « chat » fonctionne avec peu de données ; ce qui rend les
communications très économiques. C’est la raison pour laquelle WhatsApp
représente un moyen de communication très attractif surtout dans les pays
émergents. Donc pourquoi ne pas avoir sa propre application sociale permettant
d’avoir le contrôle total sur ces informations ?
Notre projet consiste (a consisté) à concevoir et développer une application de
messagerie instantanée baptisée SpeakAgo sous le système d'exploitation
Android. La réalisation de cette solution a été effectuée en utilisant plusieurs
outils et technologies parmi lesquels on cite : Android Studio, un EDI
(Environnement de développement Intégré) pour Android, le langage de
programmation Java, Firebase un backend en tant que service (Baas) de Google
très utile pour le développement d'applications mobiles et le langage de
modélisation UML pour la conception.

5|Page
Dans ce rapport, on va (nous allons) présenter les étapes de réalisation du projet
répartis sur cinq chapitres :
• La présentation du cadre du projet : dans ce chapitre, nous allons… où on va
présenter l’étude de l’existant, l’état de l’art et le planning prévisionnel du
travail.
• Les besoins fonctionnels et non fonctionnels.
• La conception détaillée, avec les différents diagrammes UML réalisés.
• La réalisation, où on présentera tous les outils matériels et logiciels utilisés
pour le développement de la solution.
• Le déploiement de la solution, ici on présentera le fonctionnement de
l'application et les retours des utilisateurs qui ont testé l'application

Obs : reprendre les chapitres tels qu’ils figurent sur le développement du travail en les
énumérant (ex : Chapitre 1 : Présentation…, etc..)

6|Page
Chapitre 1 : Présentation du cadre du projet
1. Introduction
Dans ce chapitre, nous allons présenter l’état de l’art de notre projet,
l’Institut Supérieur de Technologie (IST) et une étude de l’existant.

2. Etat de l’art

2.1 Les systèmes d’exploitation des Smartphones

Les systèmes d’exploitation mobiles sont les logiciels permettant à un


Smartphone de fonctionner. Ils permettent aux utilisateurs de passer un appel
téléphonique, naviguer parmi toutes les rubriques, télécharger des applications
ou encore changer les paramètres du Smartphone. On distingue plusieurs
plateformes mobiles sur le marché, nous citons les plus importants Android
(Google) et iOS (Apple Inc.)

2.2 Android (GOOGLE)

Figure 1 : (Logo du) Système Android

Depuis des années, Android, développé par Google, s’impose comme le


système de référence du (sur le) marché (lequel ?). Il a l’avantage d’être mis à
disposition de tous les fabricants des Smartphones, à condition qu’ils mettent en

7|Page
avant les services de Google. Il est personnalisable à souhait, par les
consommateurs et les fabricants. De nos jours, la plupart des Smartphones
vendus ayant ?? un système Android. Android est un système d'exploitation
open-source pour smartphones, PDA et autres terminaux mobiles. Il existe
d'autres types d'appareils possédant ce système d'exploitation tels que les
téléviseurs et les tablettes.
Afin de promouvoir ce nouveau système d'exploitation ouvert, Google a
su fédérer autour de lui un consortium d'une trentaine d'entreprises : l'Open
Handset Alliance (OHA) créée officiellement le 5 novembre 2007. Toutes ces
entreprises interviennent, plus ou moins directement, dans le marché de la
téléphonie mobile. Le but de cette alliance est de mettre en place des normes
ouvertes dans le domaine de la téléphonie mobile. Ce qui veut dire que les
développeurs d'application Android pourront accéder aux fonctionnalités du
cœur de téléphone via une API très fournie. Android aura comme principaux
concurrents Apple avec l'iPhone, Microsoft et son Windows Mobile et Nokia
avec Symbian mais également des solutions libres telles que LIMO ou
OpenMoko.

2.3 Les types d’applications Android

Il y a trois types d’applications mobiles : natives, web et hybrides.


Chacun à ses caractéristiques propres :
 Application native : installée sur un Smartphone ou une tablette, elle
est créé sur-mesure et adaptée à chaque OS, on en crée une version spécifique à
chaque type de téléphone,
 Web-application : site internet dont le design est adapté au mobile,
créé pour être consulté à partir d’un Smartphone. La connexion web est
nécessaire,
 Application hybride : codée en HTML, et est multiplateforme, mais
avec moins de fonctionnalités.

8|Page
2.4 Les réseaux sociaux, outils d’aide à l’information

En observant ce que les écoles disent d’elles sur les réseaux sociaux, les
écoles peuvent identifier les points d'amélioration dans leur relation avec leurs
étudiants. A condition de pouvoir transformer ces données en un outil d'aide à
l’information. Pour les étudiants, le réseau social représente alors une large
source d'information pour améliorer leur accès aux informations concernant leur
école (emploi du temps, notes d’information, bulletins, etc.) ou de faire
connaissance avec les étudiants qui sont d’un niveau supérieur à eux notamment
pour les nouveaux venus où le contact physique peut parfois s’avérer intimidant.
Si pour accéder à l’information, on se sert avant tout des réseaux sociaux, ils
deviennent la deuxième source d’information favorite derrière les notes
d’information officielles, etc. Selon un sondage récent, 40% des interrogés
accèdent régulièrement aux médias sociaux. 56% des étudiants obtiennent des
informations grâce aux réseaux sociaux tel que WhatsApp dans des groupes
dédiés à leur classe pour la majorité. Ces chiffres augmentent continuellement
avec l’omniprésence de ces outils dans notre quotidien scolaire.
De nos jours, les étudiants sont indissociables de leur smartphone. C'est
pourquoi une application est l'idéal pour qu'ils soient un peu plus "connectés"
avec l'université."

3. Etude de l’existant

3.1 Description de l’existant

L’Institut Supérieur de Technologie (IST) ne possède pas de site web qui


puisse permettre une interaction efficace entre l’école et les étudiants. Le seul
moyen de s’informer repose sur les groupes whatsApp des différentes classes et
autres groupes de travail ou par les notes de service et d’information.

3.2 Critique et motivation

9|Page
La technologie évolue progressivement et rapidement. Se faire une
place devient plus difficile. La plupart des gens aujourd’hui, en regardant
(regardent) la télévision, sont sur Facebook, LinkedIn, Twitter où (ou) ils
communiquent via leurs Smartphones ou tablettes. Les nouvelles générations de
consommateurs, grâce aux nouveaux outils numériques à leur disposition, sont
en train de prendre le pouvoir (ça veut dire quoi « prendre le pouvoir » ?). Les
sites web ne leur (leurs) intéressent plus. Cette veille digitale permet donc aux
établissements d’avoir une vision accélérée et en temps réel dans le but de
comprendre les besoins de leurs étudiants, d’améliorer la gestion de leurs
relations pour faire correspondre leurs attentes. C’est ce qui nous a motivé à
réfléchir sur l’évolution du monde informatique et des technologies, et a pensé
(à penser) à créer pour l’établissement une application de messagerie instantanée
où elle (« elle » qui ?) possèdera le contrôle total sur les informations qu’il
contiendra et en récupérer les informations (ça veut dire quoi « en récupérer les
informations » ?) et les statistiques qu’elles ((« elles » qui ?)) ont besoins
(besoin).

3.3 Solution proposée

Notre solution consiste à créer une application de messagerie Android.


Le (Ce) choix se justifie par les avantages des applications mobiles par rapport à
un site web et cela se traduit par :
- Une grande fréquentation des applications mobiles par rapport aux sites
web,
- L’utilisation des fonctionnalités du téléphone mobile,
- La réactivité des applications,
- L’utilisation des notifications push,
- La simplicité d’accès via une icône plutôt que via une adresse web,
l’application,
- Mobile (Vous voulez dire téléphone mobile !!??) est toujours à portée de
doigts ( ??) tandis qu’un site doit être sauvegardé ou recherché.

Notre solution va permettre de :


- Envoyer des messages et recevoir ;
10 | P a g e
- Faire des demandes d’amis et en recevoir ;
- Suivre et être suivi par d’autres utilisateurs.

3.4 Applications similaires

Figure 2 : logo de l’application whatsapp

WhatsApp Messenger est une application de messagerie disponible pour


Android et autres Smartphones. WhatsApp utilise la connexion d'internet de
votre téléphone (4G/3G/2G/EDGE ou WiFi, si disponible) pour envoyer le
message à ou appeler vos amis et votre famille.

Figure 3 : logo de l’application facebook

C'est une application développée essentiellement par Facebook


pour permettre aux membres du réseau social d'accéder et consultés leurs
comptes et de dialoguer avec leurs amis sans être forcément connectés au site
web.

11 | P a g e
4. Modèle de développement

Ce modèle est composé de 9 phases qui se répondent 2 à 2 : à chaque


étape de conception correspond une phase de test.

Figure 4 : cycle de vie en V

Les phases du cycle de vie en V se résument comme suit :


- Etude et analyse : l’analyse et la spécification des besoins,
- La conception architecturale et détaillées,
- Codage : développement de l’application,
- Tests et validations : les tests et la maintenance corrective.
Avantages : La structure en V permet d’espérer que le livrable final sera
parfait, puisque les phases de test sont aussi nombreuses que les autres étapes.
De plus, il est facile de prévoir les tests à effectuer au moment de la conception
des fonctionnalités et des interfaces.

12 | P a g e
5. Planning prévisionnel

Le diagramme ci-dessous décrit le planning prévisionnel à suivre pour la


réalisation du projet :

Figure 5: diagramme de Gantt

6. Conclusion

Dans ce chapitre, nous avons présenté l’état de l’art, puis nous avons
effectué une étude de l’existant en spécifiant les avantages des réseaux sociaux
et des applications mobiles par rapport aux sites web classiques.
Dans le chapitre suivant, nous allons présenter les différents besoins
fonctionnels et non fonctionnels du projet.

13 | P a g e
Chapitre 2 : Spécifications des besoins

1. Introduction

Dans ce chapitre, on va (nous allons) présenter les besoins fonctionnels


et non fonctionnels de la solution, enfin on va présenter le diagramme des cas
d’utilisations global.

2. Les besoins fonctionnels

2.1. Application Android (Utilisateur)

Les besoins fonctionnels de l’utilisateur sont :


- Inscription : l’utilisateur doit s’inscrire avant de se connecter à
l’application, en introduisant son email et mot de passe qui sont obligatoires
pour pouvoir se (la connexion) connecter, ainsi que ces (ses) informations
personnelles.
- Gestion du profil : il peut gérer son propre profil en changeant ses
informations personnelles, son mot de passe, son photo…
- Gestion de la messagerie : il peut envoyer et recevoir des
messages textes.
- Gestion d'amis : il peut ajouter des amis par nom d'utilisateur,
afficher la liste des amis avec leurs statuts (en ligne/hors ligne), accepter ou
refuser des invitations.
- Se déconnecter : quitter l'application.

3. Les besoins non fonctionnels


14 | P a g e
Notre système doit répondre aux critères de qualité suivants :
- Sécurité : Les comptes des utilisateurs doivent être protégés, donc
la connexion avec le login et le mot de passe (sont obligatoires et primordiaux)
est primordiale. La visibilité des contenus privés doit être gérée également (ça
veut dire quoi ??).
- Intégrité : L’intégrité et la cohérence des données doivent être
assurées à chaque mise à jour et insertion dans la base de données.
- Rapidité : La Rapidité d’exécution des traitements (code optimisé).
- Ergonomie : Les interfaces doivent être conviviales et
ergonomiques. Elles doivent être simples, lisibles, confortables à l’œil et faciles
à utiliser.
- Maintenabilité et scalabilité : Le code doit être compréhensible
afin d’assurer son évolution et son extensibilité pour répondre aux besoins du
marché.

4. Diagramme de cas d’utilisation global (Use cases)

4.1. Définition
Un diagramme de cas d'utilisation définit le comportement d'un système,
comme vu par un utilisateur extérieur. Il décompose la fonctionnalité du système
en unités cohérentes, à savoir les cas d'utilisation, ayant un sens pour les acteurs.
Ceux-ci permettent d'exprimer le besoin des utilisateurs d'un système.

4.2. Acteurs
Un acteur représente un rôle joué par un utilisateur humain ou un autre
système qui interagit directement avec le système étudié. Un acteur participe à
au moins un cas d'utilisation.
Un acteur peut consulter et/ou modifier directement l'état du système, en
émettant et/ou en recevant des messages susceptibles d'être porteurs de données.
Dans notre cas, nous avons un acteur qui est :
- Utilisateur : il a un accès au système via un contrôle d'accès (login
et mot de passe).

15 | P a g e
Les opérations qu'il peut effectuer sont :
• Envoyer des invitations par nom d'utilisateur.
• Afficher la liste des amis avec leurs statuts (en ligne / hors ligne).
• Envoyer et recevoir des messages texte.
• Accepter ou refuser des invitations.
• Se déconnecter.

4.3 UC global de l’utilisateur


Le diagramme de cas d'utilisation représente la structure des grandes
fonctionnalités nécessaires aux utilisateurs du système. C'est le premier
diagramme du modèle UML, celui où s'assure la relation entre l'utilisateur et les
objets que le système met en oeuvre.
Les tâches décrites plus haut sont présentés par l’UC de l’utilisateur
suivant :

Figure 6 : Diagramme global des cas d'utilisations associés aux acteurs.

5. Raffinement des UC

16 | P a g e
5.1. UC « s’inscrire »

- Description textuelle :

Figure 7 : Description du cas d'utilisation « Inscription / Enregistrement ».

- Diagramme du cas d'utilisation Inscription

Figure 8 : Diagramme du cas d'utilisation « Inscription ».

5.2. UC « s’authentifier »

17 | P a g e
- Description textuelle :

Figure 9 : Description du cas d'utilisation « Authentification ».

- Diagramme du cas d'utilisation Authentification

Figure 10 : Diagramme du cas d'utilisation « Authentification ».

5.3. UC « Ajouter un ami »

18 | P a g e
- Description textuelle :

Figure 11 : Description du cas d'utilisation « Ajouter un ami ».

- Diagramme du cas d'utilisation Ajouter un ami

Figure 12 : Diagramme du cas d'utilisation « Ajouter un ami ».

5.4. UC «Envoyer des messages »

19 | P a g e
- Description Textuelle

Figure 13 : Description du cas d'utilisation « Envoyer des messages »

- Diagramme du cas d'utilisation Envoyer des messages

Figure 14 : Diagramme du cas d'utilisation « Envoyer des messages ».

6. Conclusion

20 | P a g e
Dans ce chapitre, on a bien spécifié tous les besoins fonctionnels et non
fonctionnels de notre solution, et on a présenté également les diagrammes
globaux des cas d’utilisation ainsi que leurs raffinements.
Dans le chapitre suivant on va entamer l’étape suivante du projet, à
savoir la conception détaillée, en présentant les diagrammes UML nécessaires à
la phase du développement.

21 | P a g e
Chapitre 3 : Conception

1. Introduction

La conception permet de formaliser les étapes préliminaires du


développement afin de le rendre plus fidèle aux besoins. L’étape d'analyse
permet d’identifier les résultats attendus, en termes de fonctionnalités tandis que
l’étape de conception décrit, en utilisant un langage de modélisation, le
fonctionnement du système, dans le but d'en faciliter le développement.
Dans ce chapitre nous présentons les différents diagrammes UML
(Unified Modeling Language).

2. Définition d’UML

Unified Modeling Language (UML) n'est pas une méthode (i.e. une
description normative des étapes de la modélisation) : Ses auteurs, en raison de
la diversité des cas particuliers, ont préféré de définir un langage graphique
permettant de représenter et de communiquer les différents aspects d'un système
d'information, au lieu de définir une méthode. Des textes sont associés aux
schémas graphiques expliquant leur contenu. Il est donc un métalangage, car il
fournit les éléments permettant de construire le modèle qui sera le langage du
projet.

3. Diagramme de classes

Lors de la modélisation orientée objet, ce diagramme est obligatoire et le


plus important.
Il montre la structure interne du système en représentant d'une façon
abstraite les objets qui vont interagir pour réaliser les cas d'utilisation. Il
représente une vue statique, où le facteur temporel n'est pas prise en compte

22 | P a g e
dans le comportement du système. Ce diagramme permet de modéliser les
classes et les relations du système.

3.1. Les règles de gestion

 Un utilisateur peut suivre et être suivi par plusieurs autres


utilisateurs.
 Un utilisateur peut envoyer un ou plusieurs messages à un autre
utilisateur
 Un utilisateur peut voir quand le message a été envoyé
 Un utilisateur peut avoir un ou plusieurs amis

3.2. Diagramme de classes


(

Figure 15 : Diagramme de classe.

23 | P a g e
Dans ce diagramme, on trouve les différentes classes et les relations qui
représentent la structure de la base de données :
- Users : est la classe qui représente un utilisateur, elle contient toutes
ces informations personnelles, ainsi que son statut (En ligne / Hors ligne.).
- Invitations : c’est pour représenter la relation plusieurs à plusieurs
entre un utilisateur et un autre, donc elle porte l’identifiant de l’invitation
(id_inv), deux clés étrangères l’une représentant l’identifiant de celui qui veut
suivre (id_user1# = émetteur), l’autre l’identifiant celui du suivi
(id_user2#=récepteur) et le statut (Accepter /Refuser).
- Messages : est la classe représentant les messages, elle porte donc,
l’identifiant du message (id_message), les deux clés étrangères des deux Users
(id_user1#et id_user2#), le corps du commentaire (message_texte) et le statut
(lu / non lu).
- date : elle représente les évènements liés aux messages envoyés
par les utilisateurs. Elle contient les informations les décrivant comme la date.
( ???)

4. Diagramme de séquence

4.1. Définition

C’est un diagramme temporel qui montre les échanges séquentiels de


messages et le passage du temps. C’est un diagramme temporel. Les principaux
concepts sont les objets participants à la séquence, le temps, les messages. Les
diagrammes de séquences sont organisés en fonction du temps qui s'écoule au
fur et à mesure que nous parcourons la page. Les objets impliqués dans
l'opération sont répertoriés de gauche à droite en fonction du moment où ils
prennent part dans la séquence.

4.2. Diagrammes de séquence

24 | P a g e
On va représenter les diagrammes de séquence détaillés de
l’authentification, l’inscription, l’ajout des amis et l’envoie des messages.

4.2.1. Diagramme de séquence ‘Authentification’


Le diagramme de séquence suivant illustre les interactions nécessaires
pour l'authentification de l'utilisateur.

Figure 16 : Diagramme de séquence du cas d'utilisation « Authentification ».

4.2.2. Diagramme de séquence ‘Inscription’

25 | P a g e
Le diagramme de séquence suivant illustre les interactions nécessaires
pour l'inscription de l'utilisateur.

Figure 16 : Diagramme de séquence du cas d'utilisation « Inscription ».

4.2.3. Diagramme de séquence ‘Ajout des amis’

26 | P a g e
Le diagramme de séquence suivant illustre les interactions nécessaires
pour ajouter des amis.

Figure 17 : Diagramme de séquence du cas d'utilisation « Ajout des


amis ».

27 | P a g e
4.2.4. Diagramme de séquence ‘Envoyer des messages’

Le diagramme de séquence suivant illustre les interactions nécessaire


pour l'envoie des messages.

Figure 18 : Diagramme de séquence du cas d'utilisation « envoyer des


messages ».

5. Conclusion
Dans ce chapitre on a présenté les diagrammes UML nécessaires à la
réalisation de notre solution, ce qui nous permet de commencer le
développement en ayant une idée claire et détaillée sur l’aspect statique et
dynamique de la solution. Il reste à coder ce qu’on a conçu.
Le chapitre suivant présentera l’environnement de travail à savoir les
outils et les méthodes utilisés lors du développement.

28 | P a g e
Chapitre 4 : Réalisation

1. Introduction

Pour mener à bien notre projet, il est nécessaire de choisir les outils et
technologies adéquats qui permettent de simplifier le développement. Dans ce
chapitre, on présentera l’environnement matériel et logiciel et à la fin l’état de
réalisation.

2. Environnement du travail

Dans ce qui suit, les différents outils matériels et logiciels utilisés pour la
réalisation de notre solution.

2.1. Environnement matériel


Pour le développement de notre solution, on a utilisé un ordinateur
portable de la marque HP ayant les caractéristiques suivantes :
 Processeur : Intel core i5
 RAM : 8 GO
 Disque dur : 1 TO
 Type du système : 64 bits
 Système : Windows 10

2.2. Environnement logiciel


Les différents logiciels et technologies utilisés pour le développement de
notre solution sont :

2.2.1. Android Studio

29 | P a g e
Figure 19 : Android Studio

Android Studio est un environnement de développement intégré, créé par


Google pour les systèmes Android. Il permet de faciliter le développement en
offrant différents outils et fonctionnalités. Les détails de cet EDI sont expliqués
dans le premier chapitre. Pour l’installer il est nécessaire d’installer le kit de
développement Android SDK et le kit de développement JDK

2.2.2 Firebase

Figure 20 : Firebase

Firebase est un ensemble de services d'hébergement pour n'importe quel


type d'application. Il propose d'héberger en NoSQL et en temps réel des bases de
données, du contenu, de l'authentification sociale, et des notifications, ou encore
des services, tel que par exemple un serveur de communication temps réel.

30 | P a g e
2.2.3 JDK (Java Developpement Kit)

Figure 21: Java Developpement Kit (JDK)

Le JDK est un outil nécessaire pour la création des applications Android.


Il contient un ensemble de bibliothèques logicielles du langage Java, ainsi que
d’autres outils permettant la compilation et l’exécution du code Java.
2.4. Langages de programmation

2.4.1JAVA
Pour développer l’application Android, on a utilisé le langage Java.
C'est un langage de programmation orienté objet, développé par Sun
Microsystems. Il permet de créer des logiciels compatibles avec de nombreux
systèmes d'exploitation (Windows, Linux, Macintosh, Solaris). Java donne aussi
la possibilité de développer des programmes pour téléphones portables et
assistants personnels.

2.4.2XML
Dans l’application Android, XML est utilisé pour concevoir les
interfaces et les composants graphiques de l’application cliente. Il s'est imposé
comme un standard incontournable de l'informatique. Il est aussi bien utilisé
pour le stockage de documents que pour la transmission de données entre
applications. Sa simplicité, sa flexibilité et ses possibilités d'extension ont
permis de l'adapter à de multiples domaines allant des données géographiques au
dessin vectoriel en passant par les échanges commerciaux.

2.4.3JSON

31 | P a g e
JSON (JavaScript Object Notation) est un format léger d'échange de
données, basé sur un sous-ensemble du langage JavaScript. Il est facile à
comprendre par les humains et est aisément généré par des machines. Il est
facile à lire ou à écrire pour des humains. Il est aisément analysable ou
générable par des machines. Il est basé sur un sous-ensemble du langage de
programmation JavaScript. JSON est un format texte complètement indépendant
de tout langage, mais les conventions qu'il utilise seront familières à tout
programmeur habitué aux langages descendant du C, comme par exemple : C
lui-même, C++, C, Java, JavaScript, Perl, Python et bien d'autres. Ces propriétés
font de JSON un langage d'échange de données idéal.

3. Présentation des interfaces

32 | P a g e
Dans ce qui suit, nous allons présenter les interfaces de notre application.
Tout d’abord pour la version 1.0 baptisée « IST-chat » puis de la version finale
1.1, « Dut-App ».

3.1. Application Android

 La version 1.0 :

Figure 22: écran de connexion Figure 23: écran d'inscription

Ces interfaces offrent un aperçu de la page d'accueil de l'application et


celui de l’inscription. Elles offrent aux utilisateurs un service d'inscription et
d'identification. La seconde offre un aperçu de l'interface de création d'un
nouveau compte. Sur cette interface, l'utilisateur doit saisir un pseudo
(identifiant), sa filière, un email et un mot de passe, puis cliquer sur le bouton
« je m’inscris ».

33 | P a g e
Figure 24: page 'home/profil' Figure 25: page 'messages'

 La version 1.1 :

34 | P a g e
Figure 26: écran de connexion
Figure 27: écran d'inscription

35 | P a g e
Figure 28 : page 'home/profil' Figure 29 : page
'trouver des amis'

Figure 30 : page ‘accueil ' Figure 31 : page


‘paramètres '

36 | P a g e
Figure 32 : page ‘messages ' vide Figure 33 : page ‘messages '
Pleine

4. Conclusion

Dans ce chapitre, on a présenté l’environnement de développement de


notre solution tout en détaillant les différents outils et technologies utilisés.

37 | P a g e
CONCLUSION GENERALE ET PERSPECTIVES

Dans ce projet, nous avons réussi à réaliser une application mobile de


messagerie instantanée sous la plateforme Android qui est de nos jours le
système d’exploitation le plus utilisé par les utilisateurs des Smartphones, et
c’est ce qui nous a motivés pour réaliser ce projet sur cette plateforme.
La première phase était (celle de) l’analyse, où on a défini tous les
besoins de notre solution, représentés par des diagrammes de cas d’utilisateurs
raffinés par des diagrammes de séquences.
A la phase suivante, on a réalisé la conception de notre système par le
langage UML, où on a présenté quelques diagrammes permettant de bien
comprendre la structure statique (diagramme de classes) ainsi que celle
dynamique (diagramme de séquences) du système.
Enfin, nous avons réalisé l’application, en utilisant des outils et
technologies innovants et très répandus dans le domaine de développement web
et mobile.
Ce travail était une occasion pour enrichir de plus nos connaissances
théoriques et pratiques en développement mobile et web, et de pouvoir
apprendre et manipuler divers outils tels que Android Studio, Firebase ainsi que
divers langages de programmation tels que Java, XML…
Ce fut une occasion pour nous de compléter de manière transversale nos
compétences en informatique, d'élargir et d'approfondir nos connaissances et les
diverses réalités du terrain. Cependant des perspectives d'améliorations de notre
application restent envisageables pour être enrichie par des fonctionnalités
avancées telles que :
 La création des groupes de discussions.
 Le partage des fichiers.
 La Géolocalisation
 Le chat vidéo en direct
 La notification d’informations de l’école à tous les étudiants
 Le renforcement de la sécurité en limitant le nombre de tentatives
d'authentifications

38 | P a g e
Webographie

1. L'Usine Digitale. https://www.usine-digitale.fr/applications-


mobiles/.
2. RegionsJob.
https://www.blogdumoderateur.com/dossier/applications-mobiles/.
3. Monpetitmobile. https://www.monpetitmobile.com/choisir-
mobile/systemes-exploitation-smartphones.
4. BARROIS, Antoine.
https://www.supinfo.com/articles/single/6135-top-10-ide-developpeurs-java.
5. Yeeply. https://fr.yeeply.com/blog/langages-de-programmation-
creer-une-application-android/.
6. Kokou, Elisabeth. https://www.companeo.com/applications-
mobiles/guide/creation-application-mobile.
7. Monin,Paul. www.relationclientmag.fr/Thematique/customer-
marketing-1251/Breves/Utiliser-medias-sociaux-perfectionner-relation-client-
301796.html.
8. Pansier,Thomas.
https://www.journaldunet.com/ebusiness/expert/53211/comment-les-reseaux-
sociaux-ont-envahi-le-web-2-0.shtml.
9. Laurent, Audibert. https://laurent-audibert.developpez.com/Cours-
UML/?page=introduction-modelisation-objet#L1-4-3-f.
10. ECMA International. https://www.json.org/json-fr.html.

39 | P a g e
Bibliographie

1. RAISSI A. mémoire de MASTER, conception et développement


d'un site web de e-commerce pour le compte de LSAT NOKIA, 2012/2013,
Université virtuelle de TUNIS.2011
2. ROQUES P. les cahiers du programmeur UML2, 4eme Edition
EYROLLES, 2008.
3. SPIAU F. Créez des applications pour Android, Année 2013.
4. Agence Régional de Santé(ARS), messagerie instantanée, manuel
d'utilisation, ARS-IM- MANUTIL, Manuel Utilisateur.
5. AYADI H. et ASLI F. Conception et réalisation d'un système de
messagerie électronique, département d'informatique. Licence en informatique,
2010/2012.

40 | P a g e

Vous aimerez peut-être aussi