SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
1
Ecole Nationale d’ingénieur de Tunis
&
Département de Technologie de l’information et de
la communication
Développement d’une application mobile
hybride présentant une bibliothèque
numérique sélective de livres
Elaboré par
Kais LABIEDH
Nadine BEN ALAYA
Au sein du
Département TIC
Année Universitaire
2015/2016
2
Sommaire
Introduction Générale
1. Chapitre 1 Spécification des besoins
1.1 Besoins fonctionnels
1.2 Besoins non fonctionnels
2. Chapitre 2 Conception du système
2.1 Architecture logicielle du système
2.2 Diagramme de classes
3. Chapitre 3 Réalisation de l’application
3.1 Environnement de travail
3.2 résultat de l’implémentation
Conclusion
3
Introduction Générale
Auparavant le livre représentait le véhicule par excellence du savoir et une source
indisponible de culture. Il est vrai que par la suite, l’apparition de l’internet a fait
exploser les puits des connaissances et de la cognition, mais il s’est avéré que pas
mal de personnes demeurent bouquineurs et accros à la lecture, traditionnelle soit
elle ou virtuelle. Ces personnes là représentent une tranche considérable de la
popularité. Cette dernière atteigne, en 2014, jusqu’à 30 % du peuple Tunisien et
aux alentours de 50% de celui de la France.
D’autre part, Internet a contribué à la véritable révolution dans l’univers des livres, du
traditionnel format papier on passe aux livres virtuels, où Il s’avère possible aux férus
de lecture d’en acheter une quantité phénoménale de toutes sortes, dont plusieurs
parmi eux sont disponibles gratuitement sur le web.
En outre, depuis la fin du dernier siècle, l’univers de la haute technologie a connu
une évolution spectaculaire qui a littéralement métamorphosé le quotidien des
millions de personnes à travers le monde.
Cet accroissement est perceptible à travers les applications mobiles qui ont pris le
dessus sur les applications de bureau. En plus d'être pratiques, accessibles à tout
moment et à portée de main, elles couvrent quasiment toutes les catégories des
applications informatiques. De plus, la simplicité d'utilisation des téléphones mobiles,
l'accès permanent à Internet grâce à l'évolution des technologies de
communication et la rapidité de téléchargement des applications depuis les
différents stores sont des facteurs essentiels de cette apogée. Par ailleurs, les
téléphones classiques disparaissaient petit à petit du marché et 82% des téléphones
mobiles seront des smartphones à la fin de l'année 2016.
Parmi les différentes catégories des applications mobiles existantes sur le marché les
bibliothèques numériques se définissent comme des outils permettant aux
passionnés de la lecture électronique des retrouvailles plus faciles et des choix
sélectifs plus rapides des e-books . Notons qu’un e-book est une version numérique
d’un livre traditionnel, qui pourrait être lu en utilisant un ordinateur personnel, un
smartphone, etc …
Le projet consiste à réaliser une application mobile hybride qui permet à l’utilisateur
de consulter une bibliothèque en ligne, filtrer les livres qu’il cherche par genre,
ajouter un livre et noter les livres déjà existants.
4
Le rapport de ce projet se divise en trois chapitres. Le premier consiste en une
spécification des besoins fonctionnels et non fonctionnels de l’application. Le
deuxième quant à lui détaille l’architecture logicielle du système conçu et
finalement le troisième chapitre contient les détails de l’implémentation et le résultat
obtenu du prototype développé.
5
Chapitre 1
Spécification des besoins
Introduction :
La spécification des besoins est une étape hyper importante pour s’assurer de la
conformité des résultats qu’on obtiendra par la suite avec les besoins établis dès le
début. Ce chapitre sera alors dédié à la spécification des besoins fonctionnels et
non fonctionnels de l’application.
1.1 Les besoins fonctionnels
L’application doit permettre à l’utilisateur de :
 Consulter une liste des livres cités par (titre, genre, description et note)
 Ajouter un nouveau livre
 Noter un livre
 Rechercher un livre par titre
 Filtrer l’affichage par genre
1.2 Les besoins non fonctionnels
Le système à concevoir doit être :
 Multiplateforme (compatible avec iOS, Android, etc ..)
6
 Rapide
 Robuste
 Utilisable même si l’utilisateur n’est pas connecté à Internet
 Ergonomique
Conclusion
Dans ce chapitre nous avons cité et restreint les caractéristiques et les exigences
que doit satisfaire le prototype auquel nous optons vers la fin du projet.
Dans le chapitre suivant, nous allons détailler les étapes de conception de
l’application.
7
Chapitre 2
Conception du système
Introduction
La conception est une étape cruciale dans le cycle de développement de tout
logiciel. En effet, il cette étape consiste à définir les réponses résolvant les comment-
faire techniques correspondants aux spécifications qu’on a dégagées auparavant.
2.1 Architecture logicielle du système
L’architecture REST (Representational State Transfer) est un style l’architecture
permettant de construire les applications web, Intranet, Webservice, etc ...
Il s’agit d’une multitude de conventions et de bonnes pratiques à respecter et
non pas d’une technologie à part entière. L’architecture REST utilise les
spécifications originelles du protocole HTTP, plutôt que de réinventer une
surcouche (comme le font SOAP ou XML-RPC par exemple).
Figure1 : Architecture REST adaptée à l’application EasyRead
8
Nous avons eu recours à cette architecture, démontrée dans la figure 1, pour
permettre à notre application de se connecter à une base de données distante
et en même temps synchroniser, au moment ou il y ait connexion d’un certain
utilisateur, les données de la base de données locale avec celles de la base
distante
2.2 Diagramme de classe
On montre dans la figure ci-dessous le diagramme de classes de l’application
qui décrit le comportement, et les responsabilités de ses objets.
Figure 2 : Diagramme de classes
Le diagramme comporte deux classes, une pour les livres et l’autre pour les notes de
ces derniers. Elles sont toutes le deux reliées par la relation « contient » (Chaque livre
possède une ou plusieurs notes)
Conclusion
Dans cette partie du rapport nous avons cité les étapes de la conception de la
solution pour pouvoir modéliser le diagramme de classes de l’application.
En outre, dans la section suivante nous allons entamer la phase de l’implémentation
de la solution et nous allons exposer les résultats de l’exécution obtenus.
9
Chapitre 3
Réalisation de l’application
Introduction
Après avoir spécifié les besoins du système et conceptualiser la solution requise,
nous allons, dans ce chapitre, citer les détails de l’implémentation, justifier nos choix
technologiques et exposer vers la fins les résultats de l’exécution de l’application.
3.1 Environnement de travail
 Quant au développement de l’API (Application Programming Interface) nous
avons opté à :
- Node js : Une plateforme logicielle OpenSource écrite en JavaScript et
convergente principalement vers les applications réseaux qui ont à
monter en charge. Cette plateforme se sert de la machine virtuelle V8 et
implémente, les spécifications CommonJS, sous licence MIT.
Figure 3 : Logo de la plateforme Node.js
Nous avons utilisé en particulier le mini-Framework Express.js qui prend en
charge la partie Routing.
- My SQL : Système de Gestion de base de données distante
Figure 4 : Logo de la plateforme Node.js
10
 Pour le développement de l’application et le traitement des données nous
avons utilisé :
- IONIC : Un Framework complet et Open source qui sert à développer des
applications mobiles Hybrides. IONIC nous offre des composants CSS prêts
à utiliser. La partie logique métier est offerte en Angular.js
Figure 5 : Logo du Framework Ionic
- Angular JS est un Framework libre principalement retenu par Google et
désigné au développement des applications web one page.
Figure 6 : Logo de la plateforme Angular.js
- SQLite : Un système de gestion de base de données relationnelle
contenue dans une bibliothèque de programmation C. Contrairement à
de nombreux autres SGBD, SQLite n’est pas un moteur de base de
données client-serveur, mais il est incorporé dans le programme final,
autrement dit, c’est une sorte de fichier de sauvegarde.
Figure 7 : Logo de SQLite
3.2 Résultat de l’implémentation
L’application comporte en tout cinq interfaces. Une pour l’accueil, deux pour
l’affichage de liste des livres et du menu principale, et finalement deux autres pour
11
l’ajout d’un livre et pour la visualisation de la description complète d’un livre qui
existe déjà.
 Interface D’accueil
Figure 8 : Page d’accueil de EasyRead
La figure ci-dessus montre la page d’accueil qui va apparaitre dès qu’un utilisateur
lance l’application. Cet interface comporte un boutons « Go », qui, en cliquant la
dessus, va nous rediriger vers l’interface de l’affichage des livres existant. Le bouton
contenant trois lignes parallèles nous permet de visualiser le Menu Principal.
 Menu principal
L’interface du menu principale va servir de guide à l’utilisateur, et ce en lui
présentant les services offerts par l’application et en lui permettant de retourner vers
l’interface précédente.
12
Figure 9 : Menu principale de EasyRead
Comme l’illustre la figure ci-dessus, le menu de notre application comporte quatre
options :
o « Accueil » : qui permet de revenir à la page d’accueil
o « Browse » : Permet de nous amener à l’interface de recherche des livres par
titres
o « Books » : L’option qui affiche la liste des livres existants sans aucune sélection
particulière
o « Add Book » : Nous permet d’accéder au menu d’ajout de livre à la
bibliothèque
Notons que le Bouton à trois tirets parallèles permet à l’utilisateur de faire disparaitre
la barre des menus
 Affichage de la liste des livres
La façon d’afficher des livres qu’offre EasyRead se fait en listant tous les œuvres
existants
Figure 10 : Interface de l’affichage Liste des livres
Les livres qui existent dans la base de données locale (fichier de sauvegarde) de
l’application sont affichés dans la liste par nom et revue de description. En cliquant
sur l’un des livres, on migre vers l’interface qui contient tous les détails de ce dernier.
L’interface contient aussi un bouton de mise à jour de la liste.
 Afficher les détails d’un livre
13
Figure 11 : Description détaillée d’un livre « X »
L’interface ci-dessus est celle qui apparait quand on clique sur l’un des livres de la
liste précédente. Elle contient le titre, sa description complète, son genre et sa note.
L’utilisateur aura tout de même le droit de noter un livre qu’il consulte. La note qui
apparait juste après la description est la moyenne de toutes les notes accordées par
les utilisateurs à ce livre là.
 Ajouter un livre
Figure 12 : Menu d’ajout de livre à la bibliothèque de EasyRead
Pour ajouter un livre, l’utilisateur ne doit qu’ajouter le titre, la description et le type de
l’œuvre en question. En cliquant sur le bouton « Add » le livre sera ajouté à la base et
il apparaitra, suite à une mise à jour, dans la liste des livres existants.
Conclusion
Dans cette section, nous avons détaillé nos choix technologiques et nous avons cité
les fonctionnalités desquels jouit notre application, tout en montrant les résultats de
l’exécution de cette dernière.
14
Conclusion Générale
L’application EasyRead, qu’on peut considérer comme une mini-bibliothèque
numérique est un produit qui peut toucher une marge non-négligeable de la
popularité. Elle peut servir, les accros à la lecture, les débutants cherchant un moyen
pour leur faciliter le choix et la retrouvaille des œuvres et ainsi de suite.
En outre, l’application peut être considérée comme une plateforme d’échange
d’avis ou de sondage d’avis au sujet des livres, et ce grâce au concept de note
attribuée par chaque utilisateur et de la note moyenne qui s’affiche à la fin.
Ce projet peut certainement subir des améliorations grâce à l’existence de plusieurs
pistes exploitables dans les technologies connexes à ce système. On pourrait rajouter
un module de reporting, qui a comme but d’afficher à l’utilisateur, les temps forts de
l’application. Ce sont les périodes au cours desquelles il y a accès dense à
l’application. L’ajout de ce module permettra à l’utilisateur de mieux choisir le temps
de sa publication pour maximiser la visibilité de l’œuvre qu’il publie.

Contenu connexe

Tendances

Développement d'une application mobile hybride présentant une bibliothèque n...
Développement d'une application mobile hybride  présentant une bibliothèque n...Développement d'une application mobile hybride  présentant une bibliothèque n...
Développement d'une application mobile hybride présentant une bibliothèque n...kaies Labiedh
 
Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Ayoub Mkharbach
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Ben Abdelwahed Slim
 
[PFE] Master - Génie logiciel
[PFE] Master - Génie logiciel  [PFE] Master - Génie logiciel
[PFE] Master - Génie logiciel Louati Aicha
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITLina Meddeb
 
Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Ahmed Makni
 
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Yasmine Lachheb
 
Rapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidRapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidBadrElattaoui
 
Rapport de stage d'été
Rapport de stage d'étéRapport de stage d'été
Rapport de stage d'étéJinenAbdelhak
 
Rapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelRapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelBelwafi Bilel
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRRapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRAHMEDAKHACHKHOUCH
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"étudesMohamed Boubaya
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATSiwar GUEMRI
 
Mémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborativeMémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborativeMessaoud Hatri
 
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux fehmi arbi
 

Tendances (20)

Développement d'une application mobile hybride présentant une bibliothèque n...
Développement d'une application mobile hybride  présentant une bibliothèque n...Développement d'une application mobile hybride  présentant une bibliothèque n...
Développement d'une application mobile hybride présentant une bibliothèque n...
 
Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...Présentation pfe - Etude, conception et réalisation d'une application web de ...
Présentation pfe - Etude, conception et réalisation d'une application web de ...
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...
 
Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2Rapport Pfe Application Web e-commerce Symfony2
Rapport Pfe Application Web e-commerce Symfony2
 
[PFE] Master - Génie logiciel
[PFE] Master - Génie logiciel  [PFE] Master - Génie logiciel
[PFE] Master - Génie logiciel
 
RapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRITRapportPFE_IngenieurInformatique_ESPRIT
RapportPFE_IngenieurInformatique_ESPRIT
 
Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...
 
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
Rapport PFE BIAT Conception et mise en place d’une plate-forme de gestion des...
 
Rapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidRapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application Android
 
Rapport de stage d'été
Rapport de stage d'étéRapport de stage d'été
Rapport de stage d'été
 
Rapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilelRapport PFE Application Web Mobiles belwafi bilel
Rapport PFE Application Web Mobiles belwafi bilel
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
Rapport de stage du fin d'étude
Rapport de stage du fin d'étudeRapport de stage du fin d'étude
Rapport de stage du fin d'étude
 
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIRRapport du Projet de Fin d'année Génie informatique ENSA AGADIR
Rapport du Projet de Fin d'année Génie informatique ENSA AGADIR
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Rapport de projet de fin d"études
Rapport de projet de fin d"étudesRapport de projet de fin d"études
Rapport de projet de fin d"études
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Mémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborativeMémoire PEF application client server gestion des projet collaborative
Mémoire PEF application client server gestion des projet collaborative
 
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux Rapport pfe 2017 Système de gestion des rendez-vous médicaux
Rapport pfe 2017 Système de gestion des rendez-vous médicaux
 

Similaire à Rapport d'une application mobile de recommendation de livres

Application Mobile "Livre des histoires " avec Corona sdk
Application Mobile "Livre des histoires " avec Corona sdkApplication Mobile "Livre des histoires " avec Corona sdk
Application Mobile "Livre des histoires " avec Corona sdkNazih Heni
 
Projet de fin d étude (1)
Projet de fin d étude (1)Projet de fin d étude (1)
Projet de fin d étude (1)Sanaa Guissar
 
Dodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi Mbuta
Dodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi MbutaDodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi Mbuta
Dodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi MbutaDaniella Mbuta
 
Projet veille Licence MATIC Nov'10
Projet veille Licence MATIC Nov'10Projet veille Licence MATIC Nov'10
Projet veille Licence MATIC Nov'10FredericJutant
 
Développement Windows 8 METRO App
Développement Windows 8 METRO AppDéveloppement Windows 8 METRO App
Développement Windows 8 METRO AppClément Hallet
 
Page blanchea lapplicationwindows8
Page blanchea lapplicationwindows8Page blanchea lapplicationwindows8
Page blanchea lapplicationwindows8SOAT
 
PowerPoint sur le Web 2.0
PowerPoint sur le Web 2.0PowerPoint sur le Web 2.0
PowerPoint sur le Web 2.0guest4ca1b
 
Slideshare - Web 2.0
Slideshare - Web 2.0Slideshare - Web 2.0
Slideshare - Web 2.0agirard003
 
Le Web 2.0
Le Web 2.0Le Web 2.0
Le Web 2.0clemdups
 
Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...
Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...
Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...Thomas Chaimbault-Petitjean
 
Drupal et les Systèmes de gestion de contenu
Drupal et les Systèmes de gestion de contenuDrupal et les Systèmes de gestion de contenu
Drupal et les Systèmes de gestion de contenuMario Marcello Verona
 

Similaire à Rapport d'une application mobile de recommendation de livres (20)

Application Mobile "Livre des histoires " avec Corona sdk
Application Mobile "Livre des histoires " avec Corona sdkApplication Mobile "Livre des histoires " avec Corona sdk
Application Mobile "Livre des histoires " avec Corona sdk
 
Projet de fin d étude (1)
Projet de fin d étude (1)Projet de fin d étude (1)
Projet de fin d étude (1)
 
Dodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi Mbuta
Dodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi MbutaDodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi Mbuta
Dodi_Mbuta_La création d'un web service : « Note Reminder » _ Dodi Mbuta
 
Projet veille Licence MATIC Nov'10
Projet veille Licence MATIC Nov'10Projet veille Licence MATIC Nov'10
Projet veille Licence MATIC Nov'10
 
Nveaux outils web
Nveaux outils webNveaux outils web
Nveaux outils web
 
Nveaux outils web
Nveaux outils webNveaux outils web
Nveaux outils web
 
Nveaux outils web
Nveaux outils webNveaux outils web
Nveaux outils web
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Développement Windows 8 METRO App
Développement Windows 8 METRO AppDéveloppement Windows 8 METRO App
Développement Windows 8 METRO App
 
Page blanchea lapplicationwindows8
Page blanchea lapplicationwindows8Page blanchea lapplicationwindows8
Page blanchea lapplicationwindows8
 
PowerPoint sur le Web 2.0
PowerPoint sur le Web 2.0PowerPoint sur le Web 2.0
PowerPoint sur le Web 2.0
 
Slideshare - Web 2.0
Slideshare - Web 2.0Slideshare - Web 2.0
Slideshare - Web 2.0
 
Le Web 2.0
Le Web 2.0Le Web 2.0
Le Web 2.0
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Design patterns
Design patternsDesign patterns
Design patterns
 
Design patterns
Design patternsDesign patterns
Design patterns
 
ShareBooks.pdf
ShareBooks.pdfShareBooks.pdf
ShareBooks.pdf
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...
Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...
Des bibliothèques 2.0 ? Quand les bibliothèques s'emparent des outils du web ...
 
Drupal et les Systèmes de gestion de contenu
Drupal et les Systèmes de gestion de contenuDrupal et les Systèmes de gestion de contenu
Drupal et les Systèmes de gestion de contenu
 

Rapport d'une application mobile de recommendation de livres

  • 1. 1 Ecole Nationale d’ingénieur de Tunis & Département de Technologie de l’information et de la communication Développement d’une application mobile hybride présentant une bibliothèque numérique sélective de livres Elaboré par Kais LABIEDH Nadine BEN ALAYA Au sein du Département TIC Année Universitaire 2015/2016
  • 2. 2 Sommaire Introduction Générale 1. Chapitre 1 Spécification des besoins 1.1 Besoins fonctionnels 1.2 Besoins non fonctionnels 2. Chapitre 2 Conception du système 2.1 Architecture logicielle du système 2.2 Diagramme de classes 3. Chapitre 3 Réalisation de l’application 3.1 Environnement de travail 3.2 résultat de l’implémentation Conclusion
  • 3. 3 Introduction Générale Auparavant le livre représentait le véhicule par excellence du savoir et une source indisponible de culture. Il est vrai que par la suite, l’apparition de l’internet a fait exploser les puits des connaissances et de la cognition, mais il s’est avéré que pas mal de personnes demeurent bouquineurs et accros à la lecture, traditionnelle soit elle ou virtuelle. Ces personnes là représentent une tranche considérable de la popularité. Cette dernière atteigne, en 2014, jusqu’à 30 % du peuple Tunisien et aux alentours de 50% de celui de la France. D’autre part, Internet a contribué à la véritable révolution dans l’univers des livres, du traditionnel format papier on passe aux livres virtuels, où Il s’avère possible aux férus de lecture d’en acheter une quantité phénoménale de toutes sortes, dont plusieurs parmi eux sont disponibles gratuitement sur le web. En outre, depuis la fin du dernier siècle, l’univers de la haute technologie a connu une évolution spectaculaire qui a littéralement métamorphosé le quotidien des millions de personnes à travers le monde. Cet accroissement est perceptible à travers les applications mobiles qui ont pris le dessus sur les applications de bureau. En plus d'être pratiques, accessibles à tout moment et à portée de main, elles couvrent quasiment toutes les catégories des applications informatiques. De plus, la simplicité d'utilisation des téléphones mobiles, l'accès permanent à Internet grâce à l'évolution des technologies de communication et la rapidité de téléchargement des applications depuis les différents stores sont des facteurs essentiels de cette apogée. Par ailleurs, les téléphones classiques disparaissaient petit à petit du marché et 82% des téléphones mobiles seront des smartphones à la fin de l'année 2016. Parmi les différentes catégories des applications mobiles existantes sur le marché les bibliothèques numériques se définissent comme des outils permettant aux passionnés de la lecture électronique des retrouvailles plus faciles et des choix sélectifs plus rapides des e-books . Notons qu’un e-book est une version numérique d’un livre traditionnel, qui pourrait être lu en utilisant un ordinateur personnel, un smartphone, etc … Le projet consiste à réaliser une application mobile hybride qui permet à l’utilisateur de consulter une bibliothèque en ligne, filtrer les livres qu’il cherche par genre, ajouter un livre et noter les livres déjà existants.
  • 4. 4 Le rapport de ce projet se divise en trois chapitres. Le premier consiste en une spécification des besoins fonctionnels et non fonctionnels de l’application. Le deuxième quant à lui détaille l’architecture logicielle du système conçu et finalement le troisième chapitre contient les détails de l’implémentation et le résultat obtenu du prototype développé.
  • 5. 5 Chapitre 1 Spécification des besoins Introduction : La spécification des besoins est une étape hyper importante pour s’assurer de la conformité des résultats qu’on obtiendra par la suite avec les besoins établis dès le début. Ce chapitre sera alors dédié à la spécification des besoins fonctionnels et non fonctionnels de l’application. 1.1 Les besoins fonctionnels L’application doit permettre à l’utilisateur de :  Consulter une liste des livres cités par (titre, genre, description et note)  Ajouter un nouveau livre  Noter un livre  Rechercher un livre par titre  Filtrer l’affichage par genre 1.2 Les besoins non fonctionnels Le système à concevoir doit être :  Multiplateforme (compatible avec iOS, Android, etc ..)
  • 6. 6  Rapide  Robuste  Utilisable même si l’utilisateur n’est pas connecté à Internet  Ergonomique Conclusion Dans ce chapitre nous avons cité et restreint les caractéristiques et les exigences que doit satisfaire le prototype auquel nous optons vers la fin du projet. Dans le chapitre suivant, nous allons détailler les étapes de conception de l’application.
  • 7. 7 Chapitre 2 Conception du système Introduction La conception est une étape cruciale dans le cycle de développement de tout logiciel. En effet, il cette étape consiste à définir les réponses résolvant les comment- faire techniques correspondants aux spécifications qu’on a dégagées auparavant. 2.1 Architecture logicielle du système L’architecture REST (Representational State Transfer) est un style l’architecture permettant de construire les applications web, Intranet, Webservice, etc ... Il s’agit d’une multitude de conventions et de bonnes pratiques à respecter et non pas d’une technologie à part entière. L’architecture REST utilise les spécifications originelles du protocole HTTP, plutôt que de réinventer une surcouche (comme le font SOAP ou XML-RPC par exemple). Figure1 : Architecture REST adaptée à l’application EasyRead
  • 8. 8 Nous avons eu recours à cette architecture, démontrée dans la figure 1, pour permettre à notre application de se connecter à une base de données distante et en même temps synchroniser, au moment ou il y ait connexion d’un certain utilisateur, les données de la base de données locale avec celles de la base distante 2.2 Diagramme de classe On montre dans la figure ci-dessous le diagramme de classes de l’application qui décrit le comportement, et les responsabilités de ses objets. Figure 2 : Diagramme de classes Le diagramme comporte deux classes, une pour les livres et l’autre pour les notes de ces derniers. Elles sont toutes le deux reliées par la relation « contient » (Chaque livre possède une ou plusieurs notes) Conclusion Dans cette partie du rapport nous avons cité les étapes de la conception de la solution pour pouvoir modéliser le diagramme de classes de l’application. En outre, dans la section suivante nous allons entamer la phase de l’implémentation de la solution et nous allons exposer les résultats de l’exécution obtenus.
  • 9. 9 Chapitre 3 Réalisation de l’application Introduction Après avoir spécifié les besoins du système et conceptualiser la solution requise, nous allons, dans ce chapitre, citer les détails de l’implémentation, justifier nos choix technologiques et exposer vers la fins les résultats de l’exécution de l’application. 3.1 Environnement de travail  Quant au développement de l’API (Application Programming Interface) nous avons opté à : - Node js : Une plateforme logicielle OpenSource écrite en JavaScript et convergente principalement vers les applications réseaux qui ont à monter en charge. Cette plateforme se sert de la machine virtuelle V8 et implémente, les spécifications CommonJS, sous licence MIT. Figure 3 : Logo de la plateforme Node.js Nous avons utilisé en particulier le mini-Framework Express.js qui prend en charge la partie Routing. - My SQL : Système de Gestion de base de données distante Figure 4 : Logo de la plateforme Node.js
  • 10. 10  Pour le développement de l’application et le traitement des données nous avons utilisé : - IONIC : Un Framework complet et Open source qui sert à développer des applications mobiles Hybrides. IONIC nous offre des composants CSS prêts à utiliser. La partie logique métier est offerte en Angular.js Figure 5 : Logo du Framework Ionic - Angular JS est un Framework libre principalement retenu par Google et désigné au développement des applications web one page. Figure 6 : Logo de la plateforme Angular.js - SQLite : Un système de gestion de base de données relationnelle contenue dans une bibliothèque de programmation C. Contrairement à de nombreux autres SGBD, SQLite n’est pas un moteur de base de données client-serveur, mais il est incorporé dans le programme final, autrement dit, c’est une sorte de fichier de sauvegarde. Figure 7 : Logo de SQLite 3.2 Résultat de l’implémentation L’application comporte en tout cinq interfaces. Une pour l’accueil, deux pour l’affichage de liste des livres et du menu principale, et finalement deux autres pour
  • 11. 11 l’ajout d’un livre et pour la visualisation de la description complète d’un livre qui existe déjà.  Interface D’accueil Figure 8 : Page d’accueil de EasyRead La figure ci-dessus montre la page d’accueil qui va apparaitre dès qu’un utilisateur lance l’application. Cet interface comporte un boutons « Go », qui, en cliquant la dessus, va nous rediriger vers l’interface de l’affichage des livres existant. Le bouton contenant trois lignes parallèles nous permet de visualiser le Menu Principal.  Menu principal L’interface du menu principale va servir de guide à l’utilisateur, et ce en lui présentant les services offerts par l’application et en lui permettant de retourner vers l’interface précédente.
  • 12. 12 Figure 9 : Menu principale de EasyRead Comme l’illustre la figure ci-dessus, le menu de notre application comporte quatre options : o « Accueil » : qui permet de revenir à la page d’accueil o « Browse » : Permet de nous amener à l’interface de recherche des livres par titres o « Books » : L’option qui affiche la liste des livres existants sans aucune sélection particulière o « Add Book » : Nous permet d’accéder au menu d’ajout de livre à la bibliothèque Notons que le Bouton à trois tirets parallèles permet à l’utilisateur de faire disparaitre la barre des menus  Affichage de la liste des livres La façon d’afficher des livres qu’offre EasyRead se fait en listant tous les œuvres existants Figure 10 : Interface de l’affichage Liste des livres Les livres qui existent dans la base de données locale (fichier de sauvegarde) de l’application sont affichés dans la liste par nom et revue de description. En cliquant sur l’un des livres, on migre vers l’interface qui contient tous les détails de ce dernier. L’interface contient aussi un bouton de mise à jour de la liste.  Afficher les détails d’un livre
  • 13. 13 Figure 11 : Description détaillée d’un livre « X » L’interface ci-dessus est celle qui apparait quand on clique sur l’un des livres de la liste précédente. Elle contient le titre, sa description complète, son genre et sa note. L’utilisateur aura tout de même le droit de noter un livre qu’il consulte. La note qui apparait juste après la description est la moyenne de toutes les notes accordées par les utilisateurs à ce livre là.  Ajouter un livre Figure 12 : Menu d’ajout de livre à la bibliothèque de EasyRead Pour ajouter un livre, l’utilisateur ne doit qu’ajouter le titre, la description et le type de l’œuvre en question. En cliquant sur le bouton « Add » le livre sera ajouté à la base et il apparaitra, suite à une mise à jour, dans la liste des livres existants. Conclusion Dans cette section, nous avons détaillé nos choix technologiques et nous avons cité les fonctionnalités desquels jouit notre application, tout en montrant les résultats de l’exécution de cette dernière.
  • 14. 14 Conclusion Générale L’application EasyRead, qu’on peut considérer comme une mini-bibliothèque numérique est un produit qui peut toucher une marge non-négligeable de la popularité. Elle peut servir, les accros à la lecture, les débutants cherchant un moyen pour leur faciliter le choix et la retrouvaille des œuvres et ainsi de suite. En outre, l’application peut être considérée comme une plateforme d’échange d’avis ou de sondage d’avis au sujet des livres, et ce grâce au concept de note attribuée par chaque utilisateur et de la note moyenne qui s’affiche à la fin. Ce projet peut certainement subir des améliorations grâce à l’existence de plusieurs pistes exploitables dans les technologies connexes à ce système. On pourrait rajouter un module de reporting, qui a comme but d’afficher à l’utilisateur, les temps forts de l’application. Ce sont les périodes au cours desquelles il y a accès dense à l’application. L’ajout de ce module permettra à l’utilisateur de mieux choisir le temps de sa publication pour maximiser la visibilité de l’œuvre qu’il publie.