République algérienne démocratique et populaire
Ministère de l’enseignement supérieur et de la recherche scientifique
Université d’Alger 1
Faculté des sciences - Département Informatique : L3 SI
Module : Génie Logiciel
Enseignant : Mme N.TAIBOUNI
Réalisé par : Derradji Aymen Kossai
Numéro du group : 1
Rapport d'étude d’une application mobile en vue de sa modélisation
UML
Introduction : Les applications mobiles, comme Uber, simplifient les tâches
quotidiennes et transforment des secteurs tels que le transport en mettant en relation
passagers et chauffeurs. Ce projet a pour objectif de permettre aux étudiants de maîtriser les
outils et techniques de modélisation UML en appliquant les acquis théoriques à l’analyse et la
modélisation d’une application réelle.
Les étudiants commenceront par comparer et choisir des outils UML en fonction de critères
tels que gratuité, fonctionnalités et facilité d’utilisation. Ces outils seront ensuite utilisés pour
modéliser différentes dimensions d’Uber, notamment les cas d’utilisation, les séquences, les
activités, et les classes. Ce rapport synthétise les étapes du travail, les apprentissages réalisés,
et les compétences pratiques acquises.
1. Outils sélectionnés :
Les outils suivants ont été choisis pour la modélisation UML :
StarUML Lucidchart Visual Paradigm
2. Comparaison des outils selon des critères :
Les outils ont été comparés en fonction de plusieurs critères :
Critere starUML Lucidchart Visual Paradigm
Version gratuite Gratuit avec un Version gratuite
Gratuité avec plan de base (Community
fonctionnalités (limités) Edition) et option
limitées. payantes
Compatibilité Oui , Compatible Oui , Compatible Oui , Compatible
UML 2.0 avec UML 2.0 avec UML 2.0 avec UML 2.0
L'interface peut Très facil grace à Interface simple ,
Facilité sembler un peu L’interface adapté aux
d’utilisation complexe pour les visuelle débutants avec
débutants en des tutoriels
raison du grand
nombre d'options
techniques.
Rapide pour créer Rapide pour des Rapide , avec des
Rapidité de modèles modèles simples outils intégrés
complexes et collaboratifs. pour automatiser
certaines taches
Nécesste une Accessible en Nécessite une
Accessibilité installation sur PC ligne (nécessite installation sur PC
Internet) ou peut être
utilisé en ligne
3. Justification du choix des outils :
StarUML : Idéal pour les projets complexes grâce à son interface intuitive et ses
fonctionnalités avancées.
Visual Paradigm : Parfait pour les étudiants et les professionnels grâce à sa richesse en
fonctionnalités UML et ses tutoriels intégrés. L’édition gratuite est suffisante pour des projets
académiques.
Lucidchart : Convient aux utilisateurs recherchant une solution simple et collaborative pour
créer des diagrammes UML en ligne.
4. Les Difficultés :
1. StarUML :
L'installation peut rencontrer des problèmes sur les systèmes d'exploitation anciens ou
incompatibles.
Certaines fonctionnalités payantes ne sont pas disponibles dans la version gratuite.
Difficulté de collaboration en équipe, sauf via l'exportation manuelle des fichiers.
2. Visual Paradigm :
La version gratuite est limitée en fonctionnalités, ce qui peut nécessiter l'achat de la
version payante.
Courbe d'apprentissage abrupte, surtout avec des outils avancés comme les
diagrammes de séquence et d'activité.
Les performances peuvent être lentes sur les appareils avec des spécifications faibles.
Options de personnalisation limitées par rapport à d'autres outils.
3. Lucidchart
Nécessité d'une connexion Internet stable et permanente pour utiliser l'outil.
Les fonctionnalités avancées et la collaboration en équipe nécessitent un abonnement
payant.
La version gratuite ajoute des filigranes aux fichiers exportés.
Difficulté à gérer des modèles de grande taille ou très complexes.
Analyse des fonctionnalités de l'application Uber
1. Présentation de l'application :
Uber est une application mobile qui
permet de réserver des trajets, suivre
son chauffeur en temps réel et payer
facilement. Lancée en 2010, elle est
disponible dans plus de 70 pays et
propose divers services adaptés aux
besoins des utilisateurs.
2. Les fonctionnalités principales :
Voici les 10 fonctionnalités essentielles de l'application Uber :
1. Création et gestion d’un compte utilisateur :
Description : Permet aux utilisateurs de
s’inscrire, de se connecter et de gérer leurs
informations personnelles (nom, e-mail,
téléphone, etc.).
Utilité : Essentielle pour identifier les
utilisateurs et personnaliser leur
expérience.
2. Réservation d’un trajet :
Description : Les utilisateurs peuvent
entrer une destination, choisir un type
de véhicule et réserver un trajet.
Utilité : Fonctionnalité principale pour
organiser des déplacements.
3. Calcul d’un tarif estimé :
Description : L’application fournit une estimation du coût du trajet avant la
confirmation de la réservation.
Utilité : Transparence pour les utilisateurs concernant les coûts.
4. Suivi en temps réel du chauffeur :
Description : Affiche la position du chauffeur
sur la carte et estime l’heure d’arrivée.
Utilité : Réduit l’incertitude et permet aux
utilisateurs de se préparer.
5. Paiements flexibles :
Description : Les utilisateurs peuvent choisir parmi plusieurs moyens de paiement (cartes bancaires,
portefeuilles électroniques, espèces dans certaines régions).
Utilité : Facilite les transactions et s’adapte aux préférences des utilisateurs.
6. Notation et commentaires :
Description : Les utilisateurs
peuvent noter leur chauffeur et
laisser des commentaires après un
trajet.
Utilité : Permet d’assurer la qualité
du service grâce aux retours des
utilisateurs.
7. Historique des trajets :
Description : Permet aux utilisateurs de consulter leurs trajets passés avec les détails (date, heure, coût,
chauffeur).
Utilité : Offre un suivi pour la gestion des dépenses ou des réclamations.
8. Support client :
Description : Accès à un centre d’aide pour résoudre les problèmes liés à un trajet ou à l’application.
Utilité : Renforce la confiance et la satisfaction des utilisateurs.
9. Mode partagé (Uber Pool) :
Description : Permet de partager un trajet avec d'autres passagers se rendant dans une direction similaire, à un
coût réduit.
Utilité : Réduit les frais de transport et favorise une utilisation plus efficace des ressources.
10. Notifications :
Description : Envoie des alertes sur l’état du trajet (confirmation de réservation, arrivée du chauffeur, fin du
trajet).
Utilité : Améliore la communication et l’expérience utilisateur.
2. Le Diagramme de cas d’utilisation :
1. Documentation textuelle :
Cas d’utilisation 1 : Créer un compte utilisateur
Acteur principal : Utilisateur.
Préconditions : L’utilisateur doit disposer d’un accès à Internet.
Description : L’utilisateur entre ses informations personnelles (nom, e-mail, mot de passe) pour créer
un compte.
Scénario principal :
1. L’utilisateur ouvre l’application.
2. Il clique sur "Créer un compte".
3. Il entre ses informations personnelles.
4. Le système vérifie les données.
5. Un compte est créé et l’utilisateur est connecté.
Extensions : Si une erreur survient (e-mail déjà utilisé, mot de passe non valide), un message d’erreur
s’affiche.
Cas d’utilisation 2 : Réserver un trajet
Acteur principal : Utilisateur.
Préconditions : L’utilisateur doit être connecté et géolocalisé.
Description : L’utilisateur entre une destination et confirme la réservation d’un trajet.
Scénario principal :
1. L’utilisateur ouvre l’application.
2. Il entre une destination.
3. Le système affiche les options de trajets et tarifs.
4. L’utilisateur sélectionne une option et confirme la réservation.
5. Le chauffeur accepte la demande.
Extensions : Si aucun chauffeur n’est disponible, un message informe l’utilisateur.
Cas d’utilisation 3 : Suivre un chauffeur en temps réel
Acteur principal : Utilisateur.
Préconditions : Un trajet doit être en cours.
Description : L’utilisateur peut voir la position du chauffeur sur une carte.
Scénario principal :
1. Le trajet est confirmé.
2. L’utilisateur accède à une carte où apparaît la position du chauffeur.
3. La position est mise à jour en temps réel.
Cas d’utilisation 4 : Noter un trajet
Acteur principal : Utilisateur.
Préconditions : Le trajet doit être terminé.
Description : L’utilisateur évalue le chauffeur en attribuant une note et un commentaire.
Scénario principal :
1. Après le trajet, l’application invite l’utilisateur à laisser une évaluation.
2. L’utilisateur attribue une note (1 à 5 étoiles) et peut ajouter un commentaire.
3. Le système enregistre l’évaluation.
Cas d’utilisation 5 : Consulter l’historique des trajets
Acteur principal : Utilisateur.
Préconditions : L’utilisateur doit être connecté.
Description : L’utilisateur accède à une liste de ses trajets passés.
Scénario principal :
1. L’utilisateur ouvre l’application.
2. Il clique sur "Historique des trajets".
3. Le système affiche une liste de trajets avec les détails (date, heure, coût, chauffeur).
2. Diagrammes UML
2.1 Trois cas d’utilisation avec des diagrammes de séquence
Les diagrammes suivants seront réalisés pour :
Réserver un trajet.
Créer un compte utilisateur.
Suivre un chauffeur en temps réel.
Cas1
Cas2
Cas3
2.2 Deux cas d’utilisation avec des diagrammes d’activité
Les diagrammes suivants seront réalisés pour :
Calcul d’un tarif estimé.
Noter un trajet.
Cas1 Cas2
4. Diagramme de classes complet :
4. Modèle relationnel
Le passage du diagramme de classes au modèle relationnel implique :
1. Tables :
o Utilisateur : id, nom, email, mot_de_passe.
o Chauffeur : id, nom, véhicule, note.
o Vegicule : id, type , immatriculation , capacite.
o Paiement : id, trajet id , montant, mode.
o Trajet :id ,statut , tarif , heure depart , heure arrivee.
2. Justification :
o Les relations entre les entités sont respectées grâce aux clés étrangères.
o Les attributs des classes deviennent des colonnes.