Vous êtes sur la page 1sur 96

République Algérienne Démocratique et Populaire

Ministère de l’Enseignement Supérieur et de la recherche Scientifique

Université Mouloud Mammeri de Tizi-Ouzou


Faculté de Génie Electrique et d’informatique
Département d'informatique

MÉMOIRE De fin d’études


En vue de l’obtention du diplôme de Licence en informatique

Thème :
Conception et réalisation d’une application mobile sous
Android pour le suivi de la « Gestion de la
distribution » cas « TOYOTA -Algérie »

Proposé par : Réalisé par :


Mr TAMRALI Abed el moncef. M elle SADOUN Naima.

Dirigé par : M elle CHIKH Farida.


Mr HAMMACHE Arezki.

Promotion : 2014/2015.
Remerciement
Nous tenons à remercier notre promoteur Mr HAMMACHE.A pour la

qualité de son encadrement, et son suivi durant toute la durée de la

réalisation du projet. Nous tenons également à lui exprimer notre

reconnaissance pour le temps qu’il nous a consacré, ainsi que pour

ses encouragements.

Notre profonde gratitude et sincères remerciements vont à tous les

Membre de la société SAI qui nous ont suivis durant toute la durée de

la réalisation de notre projet.

En fin nous remerciement s’adressent aux membres du jury pour nous

avoir honoré par l’examinassions de notre travail


Dédicace
Je dédie ce Modeste travail à :

Mes parents, qui m’ont toujours soutenu dans la

tristesse et dans la joie, dans


dans mes succès et mes pertes et dans mes

rêves les plus fous.

A mon frère, ma sœur, Nawal, Assema et à ma chère grande mère

maternelle.

A mon oncle Mohamed Saddek,


S à son épouse et à leurs filles.

A mes tantes, cousins et cousines paternels.

A tous mes amies et amis qui ont Souhaité ma réussite.


réussite

Spécialement à LYES, NAWAL, ET FARIDA .

Naima
Naima.
Dédicace :

Nous voici au bout de notre cursus .A la fin d’un long parcours d’études
préliminaires à une spécialisation peut-
peut-être, au terme duquel j’élabore, avec
mon binôme NAIMA le présent mémoire de fin d’étude que je dédie
cordialement à :
- Mes adorables parents MOUHAMED ET MALIKA pour leur amour
leur aide matérielle et surtout leur soutien moral ainsi que pour leurs
précieux conseils ; encore mille merci à vous deux.
- Mes très chères
chères sœurs
sœurs :SADIA, TINHINANE,
TINHINANE, LOUIZA
ET SON MARI RACHID.
- Et les petits enfants : RAZANE, ABDOU et MOUH.
- A Toute la famille CHIKH.
- Mon binôme et chère amie NAIMA, pour les merveilleux
moments passés ensemble, et à sa fa
famille.
- Mes amis : NAWAL et sa famille, HASSINA, CYLYA
- Et tous
tous les autres, la liste est longue, je m’en excuse.
- Et à tous ceux qui prêtent attention à ma thèse.

Dédicace FARIDA
Sommaire

Introduction générale
Chapitre I : Généralités sur le système Android

I.1 Introduction ……………………………………………………………………...……………….…3


I.2 Les systèmes d’exploitation mobiles……………………………………………………….. ..…….4

I.2.1 Définition ………………………………………………………………………………..……...…4

I.2.2 Parts de marché des systèmes d’exploitation pour smartphone……….....................................4

I.3 Le Système Android……………………………………………………………………..…………..5

I.3.1 Définition………………………………………………………………...…………..…………….5

I.3.2Caractéristiques des systèmes Android……………………………………………………….....…5

I.3.3 Historique et versions d’Android…………………………………………………..…………...…5

I.3.4 Architecture d’Android……………………………...……………………………………….……7

I.3.4.1 Applications ………………………………………………………………………………..……7

I.3.4.2 Le framework…………………………………………………………………….………….…..8

I.3.4.3 Les bibliothèques………………………………………………………………………..……….9

I.3.4.4 Le moteur d’exécution Android………………………………………..………………...…...…9

I.3.4.5 Le noyau Linux…………………………………………………………………….……..…….11

I.4 Le Développement d’applications Android ………………………………..…………………...….11

I.4.1 Définition……………………………………………………………..…………..………………11

I.4.2 Les composants d’une application Android……………………….……..……..……………..…11

I.4.2.1 L’Activité……………………………………………………………………………………....11

I.4.2.2 Les Services………………………………………………………………..…………………...14

I.4.2.3 Le Broadcast Receivers……………………………………………………..…………...…..…14

I.4.2.4 Le Content providers………………………………………………………………….....……..14

I.4.3 Les Outils de développement d’applications Android……………………………………….…..14

I.4.3.1 IDE Eclipse-SDK-ADT………………………………………….………….…………….……14

I.4.3.2 Andriod Studio………………………………………………………………………….......….15

I.4.3.3 Windev Mobile………………..…………………………..… …………...………..……….…16


I.5 Exemple de quelque application Android………………………………………………….………19

I.6 Conclusion…………………………………………………………………………………..……...20

Chapitre II : Analyse et conception

II.1 Introduction……………………………………………………………………………..………....21

II.2 Présentation de système existant………………………………………………………..…………22

II.2.1 Présentation de l’organisme d’accueil……………………………………………….………….22

II. 2.2 Problématique ……………………………………………………………………….…………23

II .2.3 Solution retenue……………………………………………………………………..………….23

II.3 Présentation de l’UML………………………………………………………………….….……...24

I.3.1 Définition…………………………………………………………………………….…….…….24

II.3.2 Historique d’UML………………………………………………………………………..……...24

II.3.3 Les diagrammes UML…………………………………………………………………..………25

II.4 La démarche de modélisation UML adoptée………………………………………….………….25

II.5 L’analyse……………………………………………………………………………………..…....26

II.5.1 Identification des acteurs………………………………………………………………………...27

II .5.2 Identification des besoins…………………………………………………………………….....27

II.5.3 Diagramme de contexte…………………………………………………………………….…...28

II.5.4 Diagramme de cas d’utilisation… .……………………………………………………..……….28

II.5.4.1 Définition……………………………………………………………………………..……….28

II.5.4.2 Identification des cas d’utilisation ….……………………………………………………..…28

II.5.4.3 Représentation graphique des cas d’utilisation…………………………………………..……29

II.5.4.4 Description textuelle des cas d’utilisation………………………………………………..……31

II.6 Conception……………………………………………………………………………………..….43

II.6.1 Les diagramme de séquence……………………………………………………………..………44

II.6.1.1 Définition…………………………………………………………………………….………..44

II .6.1.2 Représentation des diagrammes de séquence……………………………………….………..44

II.6.2 Les diagramme d’activité………………………………………………………………..……...49

II.6.2.1 Définition………………………………………………………………………….………….49

II.6.2.2 Représentation des diagrammes d’activités ………………………………….………………49

II.6.3 Diagramme de classe globale……………………………………………………..……………..52


II.6.3.1 Définition…………………………………………………………………….………………..52

II.6.3.2 Représentation de diagramme de classe………………………………………..……………...52

II..3.3 Règles de gestion………………………………………………………………......…………..52

II.7 Conclusion…………………………………………..……………………………………………..53

Chapitre III : Réalisation

II.1 Introduction…………………………………………..……………………………………………54

III.2 Environnement de développement……………………….………………………………………54

III.2.1 Matériels……………………………………………….……………………………………….54

III.2.2 Logiciels……………………………………………….…………………………….………….54

III.2.2.1 Windev ……………………………………………….………………………….…… …….54

III.3 L’organisation de notre application…………………………………………………..…………..56

III.3.1 L’élément Analyse………………………………………….………………………….……….57

III.3.2 L’élément Fenêtre…………………………………………….……………………….………..57

III.4 Le schéma de la base de données………………………………………………………..………..58

III.5 Fonctionnement de l’application……………………………………………………….………...61

III.5.1 L’interface d’authentification ……………………………………………………….…………61

III.5.2 L’interface Menu……………………………………………………………………….……....62

III.5.3 L’interface Bon de chargement………………………………………………………..………..63

III.5.4 L’interface Bon de livraison ………………………………………………….……….……….66

III.5.4 L’interface Liste des articles ……………………………………………………………..…….69

III.5.5 L’interface Article en stock mobile……………………………………..………………...…...70

III.5.6 L’interface Journal des chargements…………………………………..………...…………….71

III.5.7 L’interface Journal des livraisons…………………………………....……..…………………..72

III.5.8 L’interface Changement mot de passe……………………………………..…………………...73

III.4 Conclusion…………………………………………………………………………...……74

Conclusion générale ………………………………………………………………………………….75


Liste des figures

FigI.1 : parts de marché des systèmes d’exploitation mobiles 2013…………………………………..04


FigI.2: L’Architecture de la plateforme Android………………………………………………………07
FigI.3 : Etapes d’exécution d’un programme Android ………………………………………………..10
Fig I.4 : Le cycle de vie d’une activité ………………………………………………………………..12
Fig I.5 : projets et analyse d’une application Windev Mobile…………………………………………17
Fig I.6 : Cycle de développement d’une application Windev Mobile…………………………………18
Fig I.5 : projets et analyse d’une application Windev Mobile…………………………………………18
Fig II.1 La hiérarchie des diagrammes UML.2.0 sous forme d’un diagramme de classe……………..25
Fig II.2 : La démarche de modélisation adoptée……………………………………………………….26
FigII.3 : diagramme de contexte……………………………………………………………………….28
Fig II.4 Diagramme de cas d’utilisation……………………………………………………………….30
Fig II.5 Diagramme de séquence de cas d’utilisation « S’authentifier ». …………………………..…45
FigII.6 Diagramme de séquence de cas d’utilisation « Changer le mot de passe »……………………46
FigII.7 Diagramme de séquence de cas d’utilisation « Ajouter un bon de chargement »……………..47
FigII.8 Diagramme de séquence de cas d’utilisation « Consulter le journal des chargements »……....48
FigII.9 Diagramme d’activité de cas d’utilisation « Changer le mot de passe »………………………50
Fig II.10 Diagramme d’activité de cas d’utilisation « Consulter le journal de chargements»…………51
Fig II.11 Digramme de classe globale…………………………………………………………………53
Fig III.1 : Interface principale de Windev Mobile 18. ………………………………………………...56
Fig III.2 : Explorateur de notre projet et les menus contextuel des éléments développés…………….57
Fig III.3 :L’interface d’authentification………………………………………………………………..61
Fig III.4 :L’interface Menu…………………………………………………………………………….62
Fig III.5 : L’interface bon de chargement……………………………………………………………...63
Fig III.6 Fenêtre articles à charger……………………………………………………………………..64
Fig III.7 : L’interface bon de livraison………………………………………………………………...66
Fig III.8 Fenêtre articles à livrer……………………………………………………………………….67
Fig III.9 Interface liste des articles……………………………………………………………………69
Fig III.10 : Interface articles en stock mobile………………………………………………………….70
Fig III.11 : Interface Journal des chargements………………………………………………………..71
Fig III.12 Interface journal des livraisons……………..………………………………………………72
Fig III.13 Interface changement mot de passe…………………………………………………………73
La liste des tableaux
Tab I.1 : Tableau comparatif des versions officielles d’Android…………………………………...…06
Tab II.2 Description textuelle de cas d’utilisation "Déconnecter"…………………………………….31
Tab II.3 Description textuelle de cas d’utilisation "Ajouter un bon de chargement"………………….32
Tab II.4 Description textuelle de cas d’utilisation "Modifie un bon de chargement…………………..33
Tab II.5 Description textuelle de cas d’utilisation "Supprimer un bon de chargement"………………34
Tab II.6 Description textuelle de cas d’utilisation "Ajouter un bon de livraison"…………………….35
Tab II.7 Description textuelle de cas d’utilisation "Ajouter un bon de livraison"……………………..36
Tab II.8 Description textuelle de cas d’utilisation "Supprimer un bon de livraison"………………….37
Tab II.9 Description textuelle de cas d’utilisation "Consulter la liste des articles"……………………38
Tab II.10 Description textuelle de cas d’utilisation "Consulter la liste des articles en stock"………...39
Tab II.11 Description textuelle de cas d’utilisation "Consulter le journal des chargements"…………40
Tab II.12 Description textuelle de cas d’utilisation "Consulter le journal des livraisons"…………….41
Tab II.13 Description textuelle de cas d’utilisation "Changer le mot de passe"……………………….42
Tab III.1 : Table bénéficiaire…………………………………………………………………………..58
Tab III.2 : Table fournisseur…………………………………………………………………………...58
Tab III.3 : Table magasin………………………………………………………………………………59
Tab III.4 : Table article………………………………………………………………………………...59
Tab III.5 : Table type mouvement………………………….………………………………………….59
Tab III.6 : Table Contenir_STOCKAFFECT……………………………………………………….....59
Tab III.7 : Table AFFECTART. ………………………………………………………………………60
Tab III.8 : Table Agent……………………………………………………………………….60
Tab III.9 : Table Référence…………………………………………………………………………….60
Introduction générale

Les technologies d’information et de communication (TIC) connaissent en ce moment


une des croissances les plus rapides dans le monde entier et en particulier dans les pays en
voie de développement.

En Algérie les réseaux internet mobile sont disponibles à large échelle après avoir réussi
le challenge de déployer la technologie de la 3G.

En effet, les appareils mobiles d'aujourd'hui sont allées au-delà de leur rôle primitif
d'outils de communication ils sont devenu comme des périphériques qu'ont le but de satisfaire
les besoins des clients qui peuvent être des utilisateurs simples ou des entreprises c’est le cas
de notre projet. D'ailleurs, les téléphones mobiles sont des systèmes embarqués, ce qui rend
les services intégrés des applications mobiles embarqués. Toutefois, les applications mobiles
ont permis de faciliter la vie avec beaucoup de simplicité par exemple localisé des services
(Hôtellerie, restauration, etc). C’est dans ce cadre que s'inscrit notre projet de fin d'étude qui
consiste en la mise au point d’une application mobile pour l’automatisation des tâches de la
gestion de distribution dans l’objectif principal est d’améliorer la situation actuelle de la
gestion de la distribution de l’entreprise « TOYOTA-Algérie ».

En effet, Actuellement la distribution des articles se fait par le livreur qui charge les
produits puis les transmet aux clients sans se préoccuper de la gestion de distribution ce qui
présente des inconvénients majeur comme l’impossibilité de la quantification des stocks en
temps réel.

Pour surmonter les aléas de la situation actuelle de la distribution nous avons comme
objectif le développement d’une application mobile qui sera installée sur des terminaux
mobiles des livreurs. Cette application permettra à ces derniers de réaliser certaines tâches de
la gestion de distribution à partir de n’importe quel endroit délocalisé.

Pour atteindre cet objectif, nous avons structuré ce mémoire en trois chapitres : Le premier
chapitre intitulé « Généralités sur le système Android » introduit des généralités sur le
système Andoid. Le second chapitre est consacré à l’analyse et à la conception de
l’application. Le troisième chapitre intitulé « Réalisation » présente les outils et le langage
utilisé pour la mise en œuvre de notre application, ainsi que le déroulement de cette dernière à
travers la présentation de quelques interfaces de l’application.
Généralités sur le système
Android
I.1 Introduction

En initiant le débat sur l'avenir de l'industrie du mobile, il apparaît que Google souhaite
élargir autant que possible l'accès des utilisateurs à une grande variété de services comme les
cartes géographiques, les réseaux sociaux et le partage de vidéo.

Android est un système d’exploitation pour Smartphone qu’est un projet né d’un


consortium de 34 entreprises, initié par la société Google le 5 novembre 2007 et appelé
l’Open Handset Alliance ou OHA. Son but consistait à trouver une solution fiable pour
concurrencer Apple, l’IPhone OS, Microsoft avec Windows Mobile, Nokia avec Symbian, et
Research In Motion avec Blackberry.
Android est distribué en open source sous licence Apache. La licence autorise les
constructeurs qui intègrent Android dans leurs appareils à y apporter des modifications leur
permettant de se distinguer de leurs concurrents et il a été adopté par de nombreux
constructeurs de produits concurrents de l'iPhone.

Ce chapitre a pour objectif la présentation de quelques notions sur la plateforme Android en


premier lieu. Notamment sa définition, ses caractéristiques, ses versions et son architecture.
Puis donnera un aperçu sur le développement d’application Android en particulier les
composants d’une application Android, les outils de développement utilisés pour la mise en
œuvre de ces applications. Enfin quelques exemples d’application Android sont présentés.
I.2 Les systèmes d’exploitation mobiles

I.2.1 Définition

Un système d'exploitation mobile est un système d'exploitation conçu pour fonctionner sur
un appareil mobile. Ce type de système d'exploitation se concentre entre autres sur la gestion
de la connectivité sans fil et celle des différents types d'interface [1].

I.2.2 Parts de marché des systèmes d’exploitation pour smartphone

Il existe une multitude de systèmes d’exploitation mobile, la figure suivante illustre les
parts de marché de ces différents systèmes d’exploitation.

FigI.1 : parts de marché des systèmes d’exploitation mobiles sur smartphone au


deuxième trimestre 2013[1]

A partir de cette figure nous pouvons remarquer que le système Android domine largement
les autres systèmes pour Smartphones. La section suivante est consacrée à la présentation de
ce système.
I.3 Le Système Android

I.3.1 Définition

Android est un système d'exploitation mobile pour smartphones, tablettes tactiles, PDA,
smartwatches et d’autres terminaux mobiles. C'est un système open source utilisant le noyau
Linux. Il a été lancé par une start-up du même nom rachetée par Google en 2005. D'autres
types d'appareils possédant ce système d'exploitation existent par exemple des téléviseurs, des
radio-réveils, des montres connectées, des autoradios et même des voitures [2].

I.3.2Caractéristiques de système Android

Le système Android a les caractéristiques suivantes :

• Open source : Le contrat de licence pour Android respecte les principes de l’open
source, c’est à-dire-que c’est possible de le télécharger à tout moment et le modifier
selon nos besoins. Android utilise des bibliothèques open source puissantes par
exemple SQLite pour les bases de données et OpenGL pour la gestion d’images 2D et
3D.
• Gratuit : autant pour les utilisateurs que pour les constructeurs. La publication
d’applications sur le Play Store (une plateforme de téléchargement d’applications
Android), permettent de publier autant d’applications que l’on souhaite gratuitement.
• Disponibilité via une licence Apache version 2 : le système d’exploitation inclut
tout les utilitaires requis par un constructeur ou par un opérateur pour mettre en œuvre
un téléphone portable.

I.3.3 Historique et versions d’Android

L’historique des versions d’Android a débuté avec la sortie de la version 1.0 en


septembre 2008. Depuis Android a connu plusieurs mises à jour. Ces mises à jour servent
généralement à corriger des bugs et à ajouter de nouvelles fonctionnalités. Dans l’ensemble,
chaque version est développée sous un nom de code basé sur des desserts. Ces noms de codes
suivant une logique alphabétique. Le tableau suivent fait la synthèse des versions d’Android.
Numéro Nom de la Date de caractéristiques majeurs ajoutées
de version version sortie
1.0 Apple pie 23-09-2008  Téléchargement et mise à jour des applications
via Android Market.
1.1 Banana bread 09-02-2009  Support pour sauvegarder les fichiers attachés
aux MMS
1.5 Cupcake 30-04-2009  Envoi de vidéos vers YouTube et Picasa,
rotation automatique.
1.6 Donut 15-09-2009  Interface de l’Android Market améliorée.
 Amélioration de la rapidité dans la recherche
Google Navigation.
2.0 Eclair 26-10-2009  Supporte plus de taille d’écran et de résolutions.
 Réorganisation de l'interface utilisateur.
 Amélioration du clavier virtuel.
2.2 Froyo 20-05-2010  Amélioration de la vitesse d’exécution.
 Partage de connexion USB.
 Supporte l’installation d'application sur support
externe.
 L'envoi de fichier est supporté par le navigateur.
2.3 Gingerbread 06-12-2010  Interface utilisateur est mise à jour.
 Supporte de grands écrans à résolution extra-
large.
 Ajout d’un gestionnaire de téléchargement.
 Amélioration de la gestion de l’alimentation et
du contrôle.
3.2 Honeycomb 15-07-2011  Compatibilité pour les applications non-
optimisées pour les résolutions d’écran des
tablettes tactiles.
 Possibilité d’accéder aux fichiers de la carte
SD.
4.0 IceCream 18-10-2011  Interface graphique plus ergonomique.
Sandwich
4.1 Jelly Bean 09-07-2012  Extension de l’amélioration de la vitesse
d’exécution et de gestion appareil photo.
 Accessibilité : mode gestuel, prise en charge
clavier externe "Braille".
4.4 KitKat 31-10-2013  Nouvelle interface translucide
 Enregistrement séquence vidéo de l'écran.
5.0 Lollipop 17-10-2014  Nouvelle interface / design ("Material design").
 Amélioration de la rapidité et la gestion de la
batterie.

Tab I.1 : Tableau comparatif des versions officielles d’Android [3].


I.3.4 Architecture d’Android

L’architecture de la plateforme Android se décline selon une démarche bottom up (bas


en haut) en quatre principaux niveaux qui sont le noyau linux, les librairies et la plateforme
d’exécution, le module de développement applicatif et enfin les différentes applications.

La figure suivante illustre l’architecture en couche de la plateforme Android

FigI.2: L’Architecture de la plateforme Android [4].

I.3.4.1 Applications

Android est fourni avec un ensemble de programmes de base permettant d'accéder à des
fonctionnalités comme les courriels, les SMS, le téléphone, le Web, etc. Ces applications sont
développées à l'aide du langage de programmation Java. Pour l'utilisateur final, c'est la seule
couche accessible et visible.
I.3.4.2 Le framework (Application Framework)

En fournissant une plateforme de développement ouverte, Android offre aux développeurs


la possibilité de créer des applications riches et innovantes. Les développeurs sont libres de
profiter du matériel périphérique, des informations de localisation d'accès, d’exécution des
services d'arrière-plan, de définir des alarmes, d’ajouter des notifications de la barre d'état,
etc. Les services qu’offre le framwork sont les suivants :

A) CorePlateform Service

Les services cœurs de la plateforme (CorePlateform Services) fournissent des services


essentiels au fonctionnement de la plateforme :

 Activity Manager : gère le cycle de vie des applications et maintient une "pile de
navigation" (navigation backstack) permettant d'aller d'une application à une autre et
de revenir à la précédente quand la dernière application ouverte est fermée.
 Package Manager : utilisé par l'Activity Manager pour charger les informations
provenant des fichiers. "apk".
 Window Manager : juste au-dessus du "Surface Flinger", il gère les fenêtres des
applications.
 Resource Manager : gère tous ce qui n'est pas du code, toutes les ressources images,
fichier audio, etc.
 Content Provider : gère le partage de données entre applications, comme par
exemple la base de données de contact, qui peut être consultée par d'autres
applications que l'application "Contact ". Les données peuvent être partagées à travers
une base de données (SQLite), des fichiers, le réseau, etc.
 View System : fournit tous les composants graphiques : listes, grille, text box, buttons
et même un navigateur web embarqué.

B) Hardwar Services

Les services matériels (Hardware Services) founissent un accès vers les API matérielles de
bas niveau :

 Telephony Service : permet d'accéder aux interfaces "téléphonique".


 Location Service : permet d'accéder au GPS.
 Bluetooth Service : permet d'accéder à l'interface bluetooth.
 WiFi Service : permet d'accéder à l'interface Wifi.
 USB Service : permet d'accéder aux interfaces USB.
 Sensor Service : permet d'accéder aux capteurs.

I.3.4.3 Les bibliothèques (Librairies)

Android inclut un ensemble de bibliothèques C et C++ utilisées par de nombreux


composants du système. Elles sont offertes aux développeurs par l'intermédiaire du
"framework Android ".

La liste ci-dessous énumère quelques-unes des bibliothèques disponibles dans Android :

 Bibliothèque système C : c’est une implémentation de la bibliothèque standard C,


optimisée pour les systèmes Linux embarqués.
 Bibliothèques multimédias : basées sur StageFright, elles permettent le support de
nombreux formats audio et vidéo.
 SurfaceFlinger : elle permet l'accès au sous-système d'affichage.
 LibWebCore : est un moteur de rendu de pages Internet basé sur Webkit. Cette
bibliothèque est principalement utilisée dans le navigateur et dans les vues web
embarquées (WebView).
 Skia : moteur graphique 2D.
 Bibliothèques 3D : est une implémentation basée sur OpenGL.
 FreeType : est un rendu des polices de caractères.
 SQLit : est une bibliothèque open source écrite en C permettant d’implémenter un
moteur de base de données relationnelle.

I.3.4.4 Le moteur d'exécution Android (Android Runtime)

Android inclut un ensemble de bibliothèques qui fournit la plupart des fonctionnalités


disponibles dans les bibliothèques de base du langage de programmation Java.

Chaque application Android s'exécute dans son propre processus, avec sa propre instance de
machine virtuelle Dalvik. Dalvik VM (Virtual machine) est une implémentation de machine
virtuelle ayant été conçue pour optimiser l'exécution multiple de machines virtuelles. Elle
exécute du bytecode qui lui est dédié : le bytecode dex. (Format qui est optimisé pour une
empreinte mémoire minimale).

La figure suivante montre les étapes nécessaires à la compilation et à l’exécution d'un


programme Android standard.

FigI.3 : Etapes d’exécution d’un programme Android [5].

Un code source est une suite d'instructions que l'on trouve dans un fichier ".java" qui est
traduit en une autre suite d'instructions dans un autre
autre langage que l'on appelle le " bytecode ".
Ce code est contenu dans un fichier ".class". Le bytecode est un langage
ngage spécial qu'une
machine virtuelle Java peut comprendre et interpréter.
interpréter Lee bytecode Java ne peut être lu que
par une machine virtuelle Java et Dalvik n'était pas une machine virtuelle Java. Il faut donc
procéder à une autre conversion à l'aide
l'aid d'un programme qui s'appelle "dx
dx" qui s'occupe de
traduire les applications de bytecode Java
Jav en bytecode Dalvik, qui est compréhensible par la
machine virtuelle Dalvik, le résultat est mis dans un ficher ".dex".

I.3.4.5 Le noyau
oyau Linux (Linux Kernel)

Android
id repose sur un noyau Linux (version 2.6) qui gère les services du système, comme
la sécurité, la gestion de la mémoire et des processus, la pile réseau et les pilotes. Il agit
également comme une couche d'abstraction entre le matériel et la pile logicielle.
logiciel
I.4 Le Développement d’applications Android

I.4.1 Définition

Les applications Android sont constituées d’un ensemble d’activités qui permettent
l’interaction avec l’utilisateur, et d’un ensemble de services qui fonctionnent en arrière-plan et
s’occupent d’effectuer certains traitements précis [6].

I.4.2 Les composants d’une application Android

Les composants d’une application Android sont les suivants :

I.4.2.1 L’Activité :

• Définition :

Une activité est la composante principale d’une application Android. Elle représente
l’implémentation et les interactions des interfaces [6].

• Cycle de vie d’une activité


Une activité possède un cycle de vie bien précis, qui permet de contrôler aisément
l’application de son lancement jusqu’à sa fermeture. L’application passe par plusieurs états
lors du développement on associe un comportement à chaque état, ou bien lors d’un
changement d’état.

La figure suivante présente le cycle de vie d’une activité.


Fig I.4 : Le cycle de vie d’une activité [6].
Le changement d’état d’une activité est provoqué par l’exécution d’une méthode particulière.
Ci-dessous nous présentons les différentes méthodes :

• OnCreate ()

Cette méthode est appelée à la création d’une activité. Elle sert à initialiser l’activité ainsi que
toutes les données nécessaires à cette dernière.

Quand la méthode OnCreate() est appelée, on lui passe un “Bundle“ en argument. Ce Bundle
contient l’état de sauvegarde enregistré lors de la dernière exécution de l’activité.
• OnStart()

Cette méthode est utilisée pour signifier le début d’exécution de l’activité (début du passage
au premier plan). Si l’activité ne peut pas aller en avant plan quelque soit la raison, l’activité
sera transférée à OnStop().

• OnResume()
Cette méthode est appelée après OnStart (au moment où l’application repasse en premier
plan). A la fin de l’appel à la méthode onResume() l’application se trouve au premier plan et
reçoit les interactions utilisateurs.
• OnPause()

Si une autre activité passe au premier plan, la méthode OnPause() est appelée sur l’activité.
Afin de sauvegarder l’état de l’activité et les différents traitements effectués par l’utilisateur.
A ce stade, l’activité n’a plus accès à l’écran, on doit arrêter de faire toute action en rapport
avec l’interaction utilisateur (désabonner les listeners). On doit par contre continuer à
exécuter des algorithmes nécessaires mais qui ne consomment pas trop de CPU.

• OnStop()
Est appelée quand l’activité n’est plus du tout visible quelque soit la raison. Dans cette
méthode on doit arrêter tous les traitements et les services exécutés par l’application.
• OnDestroy()

Est appelée quand l’application est totalement fermée (Processus terminé). Toutes les données
non sauvegardées sont perdues.

• OnRestart ()

Exécutée lorsque l’activité est arrêtée via un OnStop() (repasse en premier plan).
I.4.2.2 Les Services

Un service, à la différence d’une activité, ne possède pas de vue mais permet l’exécution
d’un algorithme sur un temps indéfini. Il ne s’arrêtera que lorsque la tâche est finie ou que son
exécution est arrêtée.

Il peut être lancé au :

 Démarrage du téléphone.
 Moment d’arrivée d’un événement (arrivée d’un appel, SMS, mail, etc).
 Lancement de l’application.
 Moment de réalisation d’une action particulière ou enté actions sur l’application.

I.4.2.3 Le Broadcast Receivers

Un Broadcast Receiver permet d’écouter ce qui se passe sur le système ou sur l’application
et de déclencher une action prédéfinie. C’est souvent par ce mécanisme que les services sont
lancés.

I.4.2.4 Le Content providers

Les content providers servent à accéder à des données depuis une application. Notamment
pour accéder aux:

 Contacts stockés sur le téléphone.


 Agendas.
 Photos.
 Autres données.

I.4.3 Les outils de développement d’applications Android

Pour développer sous Android et créer des applications, ajouter des packages, débogage
d’application plusieurs outils sont disponible, on présente ci-dessous trois outils :Eclipse-
SDK-ADT, Android Studio et Windev Mobile.

I.4.3.1 IDE Eclipse-SDK-ADT


L’IDE Eclipse est un environnement permettant d’écrire, compiler, déboguer des
programmes. Il est écrit en java. Par ailleurs il existe un grand nombre de modules pour
étendre l’IDE Eclipse [8].

Pour développer des applications Android deux outils lui sont associés le Kit SDK et le
plugin ADT.

A) SDK Android

Le kit de développement (SDK) d'Android est un ensemble complet d'outils de


développement qui permet de développer des applications spécifiques de la téléphonie mobile
à mettre en œuvre sur la plate-forme [7].

Le SDK fournit un ensemble d’utilitaires qui sont :

 Émulateur

Le SDK comprend un émulateur qui permet de simuler les déférentes versions d'Android,
permettant ainsi aux développeurs de tester leurs applications ou de tester les fonctionnalités
d’Android. Le SDK contient plusieurs images en fonction des différentes versions d'Android.

 Code source d'Android

Chaque version du SDK Android contient l'intégralité du code source d'Android, ce qui
permet aux développeurs de créer leurs propres versions d'Android.

 Android Debug Bridge

L'Android Debug Bridge (ADB) est un outil inclus dans le package Android SDK. Il se
compose d'un programme client et d'un programme serveur qui communique entre eux.

B) Le plugin ADT (Android DevelopementTool)

ADT est un plugin pour l’IDE Eclipse, il est conçu pour donner un puissant environnement
intégré pour la création d’application Android. Il étend les fonctionnalités d’Eclipse pour
mettre en place rapidement de nouveau projet Android [9].

I.4.3.2 Android Studio

Android Studio est un environnement de développement d’applications Android, il


permet principalement d'éditer les fichiers Java et les fichiers de configuration d'une
application Android, ainsi il proposes des outils pour gérer le développement d'applications
multilingues et permet de visualiser la mise en page des écrans sur des écrans de résolutions
variées simultanément [10].

I.4.3.3 Windev Mobile

WinDev est un atelier de génie logiciel(AGL) édité par la société française PC SOFT et
conçu pour développer des applications, principalement orientées données pour Windows8, 7,
Vista, XP, 2008, 2003, 2000, mais également pour Linux .NET et Java. Il propose son propre
langage, Apparenté « Wlangage ». Windev, WebDev et WinDev Mobile permettent d'utiliser
le même langage de programmation (WLangage), et les mêmes concepts (analyse, fenêtre,
états, composants, classes, etc) pour la génération des sites Web et d’applications [11].

Notre application est développé dans l’environnement WinDev Mobile qui est un
puissant outil de développement d’applications pour les systèmes Windows Mobile, Android,
Windows Phone, Windows 8 tablette, iPhone et iPad, qui fournit en standard tous les outils
nécessaires à la conception et à la réalisation d’application.

Le développement d’une application avec Windev Mobile repose sur deux éléments
principaux : projet et analyse.

A) Projet : Un projet Windev Mobile est un ensemble d’éléments : fenêtres, champs,


classes, composants, etc, dont l’assemblage permet de réaliser une application.
B) L’analyse : Une analyse Windev Mobile regroupe la description des fichiers de
données de l’application.
 Une application est construite à partir d’un projet.
 Un projet est généralement associé à une analyse.
 Une analyse peut être associée à un ou plusieurs projets.
La figure suivante illustre la relation existante ente le projet et l’analyse

Fig I.5 : projets et analyse d’une application Windev Mobile [11].


C) Cycle de développement
pement d’une application

La figure suivante illustre les différentes étapes de développement d’une application


Windev Mobile.

Fig I.6 : Cycle de développement d’une application Windev Mobile [11].


Phase de conception : il est possible de concevoir une application à partir d’un simple cahier
des charges, d’une modélisation UML des traitements ou même à partir de fichier de données
préexistantes. En ce qui nous concerne nous nous sommes basés sur une modélisation UML.

Phase de développement : la création du projet et de l’analyse est réalisée à l’aide


d’assistants très complets. Le développement peut être effectué en mode RAD (Rapid
Development Application) avec génération automatique du code et des IHM ou être le résultat
d’une création manuelle des différents éléments du projet.

Phase tests et génération : Windev Mobile offre toute une panoplie d’outils de tests
automatique pour garantir la fiabilité des applications et assurer la non-régression entre les
phases de développement.

Phase de déploiement : le déploiement d’une application Windev Mobile peut se faire de


nombreuses façons : directement sur le mobile, par téléchargement, via play Store,
Marketplace ou App Store. Dans tous les cas, les fichiers de données HyperFileSOL (s’ils
existent) seront automatiquement mis à jour en fonction des évolutions de l’application.

I.5 Présentation de quelque application Android :

Les applications Android ont une grande utilité dans tous les domaines et en voici quelques
applications parmi les plus connues :

• Domaine de transports
 Tube Maps : elle permet d’afficher des plans, de même elle permet la
recherche d'itinéraires et des horaires temps réel.
Nombre de téléchargement : plus de 5000000.
 Google Maps : est un service gratuit de cartographie en ligne, il permet de
zoomer et de fixer des prises de vue pour montrer les détails des itinéraires.
Nombre de téléchargement : 173554 et 12793 utilisations quotidiennement.
• Domaine se la sante
 Atlas d’anatomie humaine : c’est une application 3D utilisé dans les études
de l’anatomie humaine, construit sur une interface 3Dtactile.

Nombre de téléchargement : plus de 2842244.

 Aide infirmier : application permettant de faire rapidement des calculs de


doses, calcul du score d'escarre, etc.
Nombre de téléchargement : plus de 10000.
 Urgences 1 clic : évoque pratiquement toutes les pathologies pouvant être
rencontrées aux urgences et détaille leur prise en charge, cette application très
complète comprend des définitions, signes, traitements, photos et vidéos.
Nombre de téléchargement : plus de 250000.
• Domain de commerce
 MyGrocery : C’est une application simple et facile à utiliser, elle permet
d’acheter des produits dans peu de temps et sans déplacement.
Nombre de téléchargement : plus de 173554.
 Mata Trader4 : C’est la plate forme la plus populaire au monde pour le
commerce sur le marché on utilisant le Smartphone.
Nombre de téléchargement : plus de 3010780.
I.6 Conclusion

Dans ce premier chapitre nous avons introduit une présentation détaillée du système
Android et du développement d’application sous Android, puis nous avons cité quelques
outils de développement d’applications Android tel que Windev Mobile utilisé dans la
réalisation de notre projet. En fin nous avons cité quelques applications Android par domaine.

Dans le prochain chapitre nous allons cerner les objectifs de notre application puis nous
allons les modélisé en s’appuyant sur le langage UML.
Analyse et conception
II.1 Introduction

La conception de toute solution informatique est d’une grande importance et doit être
traitée avec rigueur et précision, car elle constitue la base du système à développer.

Avant de s’engager dans la conception, il est impératif de passer par la phase d’analyse qui
permet d’identifier les différents acteurs qui interagissent avec le système ainsi que leurs
besoins.

La phase de la conception est réalisée en s’appuyant sur les résultats de l’analyse qui
donneront la description détaillée du système cible et des objectifs à atteindre.

Pour ce faire, notre démarche s’appuiera sur le langage UML, qui est largement utilisé
dans le monde de développement orienté objet.

Dans ce chapitre nous présentons l’organisme d’accueil, la problématique qui a fait appel à
la réalisation de notre projet. Nous présentons l’UML, son historique, ses diagrammes puis
l’approche de modalisation UML adoptée. Nous consacrons une large partie pour l’analyse et
la conception. Dans la partie analyse nous identifions les acteurs de notre système ainsi que
leurs besoins, le diagramme de contexte et le diagramme de cas d’utilisation. Dans la partie
conception nous présentons les diagrammes de séquences, les diagrammes d’activité ainsi que
le diagramme de classe globale suivi par les règles de gestion.
II.2 Présentation de système existant

II.2.1 Présentation de l’organisme d’accueil

Nous avons effectué notre projet de fin d’étude au sein de SAI (Saftware Associates
International) qu’est une entreprise algérienne, de service et d’ingénierie des systèmes. Depuis
plus de 30 ans, SAI développe et intègre des logiciels de gestion basés sur les technologies les
plus avancées et les plus fiables du marché informatique.

Les applications de SAI sont conçues par des spécialistes experts en :

• Conception des systèmes d'information.


• Installation des réseaux informatiques.
• Développement de logiciels.
• Hébergement de site Web.
• Gestion des bases de données.
• Sécurité informatique.
• Produits Microsoft.
• Développement orienté objet.

SAI propose une offre globale, étroitement liée aux besoins des entreprises en matière de
traitement de l'information et aux nouveaux produits mis sur le marché et couvre les services
suivants :

• Le diagnostic de situation.
• L’analyse des besoins dans le domaine du traitement de l'information.
• La conception et la réalisation des systèmes d’informations.
• Le développement des logiciels liés à l'activité de transport et de logistique.
• L’installation de plates formes de développement sous ORACLE.
• L’étude, l’installation et la mise en marche de tous types de réseaux.
• L’installation et la mise en œuvre des sites Web dynamique.
• L’installation et la mise en œuvre des serveurs de base de données, des
serveurs d’application, serveur pour le partage des ressources sur Internet, etc.
• L’audit, l’analyse et l’installation des stratégies de sécurité des systèmes
d’informations
• L’installation de systèmes de géo-localisation par GPS/GPRS.

II.2.2 Problématique

La société SAI est chargée de développer une application mobile au profit de la société
TOYOTA-Algérie qui est une entreprise de commercialisation de matériels roulants et des
pièces détachées. L’acheminement de ces marchandises s’effectue à l’aide des unités mobiles.

Pratiquement l’unité mobile (livreur) se rapproche d’un magasin pour charger les produits à
distribuer.

La procédure de distribution des articles est la suivante :


• Le livreur charge les produits,
• Le livreur établit un bon de chargement,
• Le livreur transmet le bon de chargement au magasin central qui se charge de
la mise à jour de la base de données située au niveau serveur,
• Le livreur livre la marchandise aux clients,
• Le client procède à la vérification de la quantité et la qualité des produits
livrés.
• Eventuellement, le client refuse partiellement ou totalement la livraison s’il
juge qu’elle ne correspond pas à la commande.
• Le livreur établit un bon de livraison,
• Le livreur transmet le bon de livraison au magasin central

Ce système présente les inconvénients suivants :


• La possibilité de perdre des bons de chargement ou de livraison avant la mise à
jour de base de données (perte d’information).
• Les stocks Physiques ne sont pas connus en temps réel.
• La valorisation des stocks n’est pas connue en temps réel.

II.2.3 Solution retenue

Afin de remédier aux limites du système actuel nous avons comme objectif la mise au
point d’une application Mobile pour l’automatisation des tâches de la gestion de la
distribution des produits. L’application assurera un environnement interactif et permettra à
l’utilisateur (livreur) de gérer les mouvements d’entrées, les retours et les sorties à son niveau.

II.3 Présentation de l’UML

I.3.1 Définition
Le langage UML (Unified Modeling Language) est un langage graphique de modélisation
conçu pour représenter, spécifier, concevoir et documenter les artefacts de systèmes logiciels.
Adopté par l’Object Management Group (OMG) en tant que standard, il est devenu une
référence incontournable dans le domaine du génie logiciel. Sa richesse et sa puissance
d’expression le rendent également éligible pour la modélisation de concepts et de
processus « métier » ainsi que pour l’ingénierie de système non logiciels. UML résulte de
l’unification de techniques ayant fait leurs preuves dans l’analyse et conception de grands
logiciels et des systèmes complexes [12].

II.3.2 Historique d’UML


La fin des années quatre-vingt et le début de la nouvelle décennie ont vu fleurir une
pléthore de méthodes orientées objet. L’acceptabilité des langages de programmation orientée
objet de type c++ ou SmallTalk a gagné du terrain et les spécialistes en méthodes ont
commencé à adapter leurs méthodes aux concepts orientés objet. Parmi les méthodes
proposées, certaines étaient réellement nées des concepts orientés objet, tandis que d’autres
ont été étendues pour prendre en compte ces concepts.
En octobre 1994, G.Booch (père de la méthode Booch) et J.Rumbaugh (principal auteur de
la méthode OMT) ont décidés de travailler ensemble pour unifier leurs méthodes au sein de la
société Rational Software. Un an après, I.Jacobson (auteur de la méthode OOSE et des cas
d’utilisations) à rejoint Rational Software pour travailler sur l’unification. Unfied Modeling
Language ou UML est apparu. Les travaux sur ce langage ont continué avec son adoption par
de grands acteurs industriels dont Microsoft, Oracle et Unisys. Ce travail a abouti en janvier
1997 à UML 1.0. Le langage a été soumis par Rational Software et ses partenaires à l’OMG
(Object Management Group) comme réponse à un appel d’offres sur la standardisation des
langages de modélisation. En novembre 1997, UML a été adopté par l’OMG [13].
II. 3.3
.3 Les diagrammes UML
L’UML est composé de treize diagrammes destinés à laa caractérisation et à la
représentation du système modélisé.
modé Ces diagrammes permettent de définir une application
selon plusieurs points de vue (fonctionnel, statique, dynamique).
Cette figure représente les différents
ifférents diagrammes d’UML.

Fig II.1 La hiérarchie des diagrammes UML.2.0 sous forme d’un diagramme de
classe [14].

II.4 La démarche de modélisation UML adoptée

La modélisation consiste à créer une représentation simplifiée


simplifiée d’un problème dénommé
modèle. Grâce au modèle, on peut concevoir un concept et le simuler. La modélisation
modélisa
comporte deux composantes :

• L’analyse, c’est-à-dire
dire l’étude de la solution du problème.
problème
• La conception est la mise au point d’une solution au problème.
La démarche
arche choisie pour la modélisation
modéli de notre application est représentée
représenté par la figure
suivantee où les deux aspects d’un système sont couverts :

L’aspect comportemental via le diagramme de cas d’utilisation, les diagrammes de


séquences et les diagrammes
diagramme d’activité.

L’aspect structurel en utilisant le diagramme de classe. De plus cette démarche couvre


les deux étapes Analyse et conception.

Identification
des acteurs Diagramme de
contexte

Identification
des besoins
Diagrammes de
Diagramme
Séquence et
des cas
diagrammes
d’utilisation
d’activité

: Analyse
Diagramme de
Diagra
: Conception
classe

Fig II.2 : La démarche de modélisation adoptée.

II.5 L’analyse

L’objectif de l’analyse est


st d’identifier les limites de système ainsi que les fonctionnalités
offertes aux utilisateurs (Acteurs).
Nous procédons d’abord par l’identification des acteurs et leurs besoins, ensuite nous
établissons le diagramme de contexte et enfin le diagramme de cas d’utilisation.

II.5.1 L’identification des acteurs

Un acteur représente toute entité externe pouvant interagir avec le système. Autrement dit
c’est un objet actif qui utilise les fonctions du système. En réponse à l’action d’un acteur le
système fournit un service qui correspond à son besoin [16].

Nous avons identifié les acteurs suivants :

- Le gestionnaire de distribution (livreur) : C’est la personne qui est chargée de la


distribution des articles tout en établissant des bons de chargements ou de
livraisons et de la consultation de l’état de stock des articles.
- Le système informatique: grâce à lui les différentes opérations de mise à jour de
la basse de données tel que l’ajout d’un nouveau article, l’ajout d’un nouveau
bon,…etc ; sont effectuées.

II.5.2 Identification des besoins


L’identification des besoins décrit ce que le système doit accomplir. Notre application vise
les besoins suivants :
• Offrir des interfaces simples qui ne nécessitent pas de former les livreurs pour
pouvoir les utiliser.
• Permettre aux livreurs de gérer les mouvements d’entrées, les retours et les
sorties à leurs niveau.
• Permettre aux livreurs de consulter l’état de stock mobile.
• Permettre aux livreurs de consulter le journal des chargements et le journal des
livraisons.
• Permettre aux livreurs de consulter la liste des articles commercialisés par
l’entreprise.
• Permettre aux livreurs de changer leurs mots de passe.

II .5.3 Diagramme de contexte


Le diagramme de contexte permet de spécifier
spécifier le nombre d’instances d’acteurs connectés
à ce système à un moment donné [15]. La définition des besoins fonctionnels des acteurs nous
a permet de dégager le diagramme de contexte suivant:

1 Application mobile 1 « actor »

« Gestion de la Système

Gestionnaire de distribution » Informatique


distribution

FigII.3 : diagramme de contexte

II.5.4 Diagramme de cas


as d’utilisation

II.5.4.1 Définition

Les cas d’utilisation sont des outils ‘’formels’’ qui permettent de consigner et d’exprimer
les interactions et les dialogues entre le système et les utilisateurs (acteurs).
acteurs). L’ensemble
L’e des
cas d’utilisation donne une description détaillée du comportement du système aux
sollicitations de ces derniers. Un cas d’utilisation doit exprimer ce que le système doit
effectuer sans préjuger de la façon dont cela sera fait [15].

III.5.4.2 Identification des cas d’utilisation


d’utilisati

Les cas d’utilisation que nous avons recensé sont les suivants :

1 Consulter la liste des articles.


2 Consulter la liste des articles en stock.
3 Consulter le journal des chargements.
4 Consulter
onsulter le journal des livraisons.
5 Ajouter un bon de chargement.
6 Chercher
ercher un bon de chargement.
7 Modifier un bon de chargement.
8 Supprimer un bon de chargement.
9 Ajouter un bon de livraison.
10 Rechercher un bon de livraison.
11 Modifier un bon de livraison.
12 Supprimer un bon de livraison.
13 Changer le mot de passe.
14 Déconnecter.

II.5.4.3 Représentation graphique des cas d’utilisation


Après avoir identifié les différents cas d’utilisation, nous les présentons graphiquement dans
la figure suivante où nous nous montrons les relations existantes entre eux.
Fig II.4 Diagramme de cas d’utilisation
Les cas d’utilisations « Ajouter un bon de chargement », « Ajouter un bon de livraison »,
« Modifier un bon de chargement» et « modifier un bon de livraison » sont complexes nous
les décomposons en cas suivants:

• Ajouter des informations sur le bon (Chargement ou livraison).


• Ajouter un article.
• Modifier un article.
• Supprimer un article.

II.5.4.4 Description textuelle des cas d’utilisation

Nous décrivons dans ce qui suit la description textuelle des différents cas d’utilisation.

1) Description textuelle de cas d’utilisation "S’authentifier"

Identification

Titre : S’authentifier
Résumé : ce cas d’utilisation a le but de sécuriser le système, l’utilisateur doit s’authentifier
avant chaque utilisation de l’application.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 22/03/2015 Date de mise à jour 20/05/2015


Description des scénarios

Pré-conditions
• Le terminal mobile utilisé par le gestionnaire de distribution doit être connecté à un
réseau internet et le serveur doit être accessible.
• L’application doit être lancée.

Scénario nominal
1. l’utilisateur lance l’application après avoir cliqué sur l’icône de l’application.
2. Le système affiche la page d’authentification.
3. L’utilisateur saisie le nom de l’utilisateur.
4. L’utilisateur saisie le mot de passe.

5. L’utilisateur clique sur le bouton « Valider ».

Post-condition

Le système affiche la page « Menu ».

Tab II.1 Description textuelle de cas d’utilisation "S’authentifier"

2) Description textuelle de cas d’utilisation "Déconnecter"

Identification

Titre : Déconnecter.
Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de fermer l’application.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénarios

Pré-conditions
• Le terminal mobile utilisé par le gestionnaire de distribution doit être connecté à un
réseau internet et le serveur doit être accessible.
• L’application doit être lancée.
Scénario nominal
1. L’utilisateur lance l’application après avoir cliquer sur l’icône de l’application.
2. Le système affiche la page d’authentification.
3. L’utilisateur saisie le nom de l’utilisateur.
4. L’utilisateur saisie le mot de passe.
5. L’utilisateur clique sur le bouton valider.
6. Le système affiche le « Menu ».
7. L’utilisateur clique sur le bouton « Fermer ».
Post-condition
L’application est déconnectée.
Tab II.2 Description textuelle de cas d’utilisation "Déconnecter"

3) Description textuelle de cas d’utilisation "Ajouter un bon de chargement"

Identification

Titre : Ajouter un bon de chargement.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution d’enregistrer un bon de
chargement.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton « Bon de chargement ».
3. Le système affiche la fenêtre « Bon de chargement ».
4. L’utilisateur sélectionne un fournisseur.
5. L’utilisateur sélectionne un type mouvement.
6. L’utilisateur saisit le numéro du bon de chargement.
7. L’utilisateur saisit la référence du bon de chargement.
8. L’utilisateur saisit une observation sur le bon (l’observation est facultative).
9. L’utilisateur clique sur le bouton « Valider ».
10. Le système affecte le numéro du bon de chargement.
11. Le système enregistre les informations entrées.
12. Le système affiche la fenêtre « Articles ».
13. L’utilisateur sélectionne un article.
14. L’utilisateur sélectionne la référence d’article.
15. L’utilisateur saisit la quantité à charger.
16. L’utilisateur clique sur « Valider ».

17. Le système enregistre les informations.


8. L’utilisateur clique sur le bouton « Fermer ».
9. Le système remplit la zone répétée par les articles introduits.
10. Le système réaffiche la fenêtre bon de chargement.

Post-condition
Un bon de chargement est enregistre

Tab II.3 Description textuelle de cas d’utilisation "Ajouter un bon de chargement"

4) Description textuelle de cas d’utilisation "Modifier un bon de chargement"

Identification

Titre : Modifier un bon de chargement.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de modifier un bon de
chargement existant.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton « Bon de chargement ».
3. Le système affiche la fenêtre « Bon de chargement ».
4. L’utilisateur saisie le numéro de bon de chargement à modifier ;
5. L’utilisateur clique sur le bouton « Chercher ».
6. Le système affiche le bon relatif à la recherche.
7. L’utilisateur modifie le bon de chargement.
8. L’utilisateur clique sur le bouton « Modifier ».

9. Le système mit à jour les modifications et affiche un message de confirmation.


Post-condition
Un bon de chargement est modifié.

Tab II.4 Description textuelle de cas d’utilisation "Modifie un bon de chargement"

5) Description textuelle de cas d’utilisation "Supprimer un bon de chargement"

Identification

Titre : Supprimer un bon de chargement.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de supprimer un bon de
chargement existant.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton « Bon de chargement ».
3. Le système affiche la fenêtre « Bon de chargement ».
4. L’utilisateur saisie le numéro de bon de chargement à supprimer.
5. L’utilisateur clique sur le bouton « Chercher ».
6. Le système affiche le bon relatif à la recherche.
7. L’utilisateur clique sur le bouton « Supprimer ».
8. Le système valide la suppression et affiche un message de confirmation.

Post-condition
Un bon de chargement est supprimé.

Tab II.5 Description textuelle de cas d’utilisation "Supprimer un bon de chargement"

6) Description textuelle de cas d’utilisation "Ajouter un bon de livraison"

Identification

Titre : Ajouter un bon de livraison.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution d’enregistrer un bon de
livraison.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton « Bon de livraison ».
3. Le système affiche la fenêtre «Bon de livraison».
4. L’utilisateur sélectionne un bénéficiaire.
5. L’utilisateur sélectionne un type mouvement.
6. L’utilisateur saisit le numéro du bon de livraison.
7. L’utilisateur saisit la référence du bon de livraison.
8. L’utilisateur saisit une observation sur le bon (l’observation est facultative).
9. L’utilisateur clique sur le bouton « Valider ».
10. Le système affecte le numéro du bon de livraison.

11. Le système enregistre les informations entrées.


12. Le système affiche la fenêtre « Articles ».
13. Le système affiche le numéro du bon.
14. L’utilisateur sélectionne un article.
15. L’utilisateur sélectionne la référence d’article.
16. L’utilisateur saisit la quantité à livrée.
17. L’utilisateur clique sur « Valider ».
18. Le système enregistre les informations.
19. L’utilisateur clique sur le bouton « Fermer ».
20. Le système remplit la zone répétée par les articles introduits.
21. Le système réaffiche la fenêtre bon de livraison.
Post-condition

Un bon de chargement est ajouté.

Tab II.6 Description textuelle de cas d’utilisation "Ajouter un bon de livraison"

7) Description textuelle de cas d’utilisation "Modifier un bon de livraison"

Identification

Titre : Modifier un bon de livraison.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de modifier un bon de
livraison existant.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénarios


Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal

1. L’utilisateur accède à son espace.


2. L’utilisateur clique sur le bouton « Bon de livraison ».
3. Le système affiche la fenêtre « Bon de livraison».
4. L’utilisateur saisie le numéro de bon de livraison à modifier ;
5. L’utilisateur clique sur le bouton « Chercher ».
6. Le système affiche le bon relatif à la recherche.
7. L’utilisateur modifie le bon de livraison.
8. L’utilisateur clique sur le bouton « Modifier ».
9. Le système mit à jour les modifications et affiche un message de confirmation.

Post-conditon
Un bon de livraison est modifié.

Tab II.7 Description textuelle de cas d’utilisation "Ajouter un bon de livraison"

8) Description textuelle de cas d’utilisation "Supprimer un bon de livraison"

Identification

Titre : Supprimer un bon de livraison.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de supprimer un bon de
livraison existant.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 02/04/2015 Date de mise à jour 20/05/2015

Description des scénario


Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal
1. L’utilisateur accède à son espace.

2. L’utilisateur clique sur le bouton « Bon de livraison ».


1. Le système affiche la fenêtre « Bon de livraison ».
2. Le système affiche la page « Menu ».
3. L’utilisateur saisie le numéro de bon de livraison à supprimer.
4. L’utilisateur clique sur le bouton « Chercher ».
5. Le système affiche le bon relatif à la recherche.
6. L’utilisateur clique sur le bouton « Supprimer ».
7. Le système valide la suppression et affiche un message de confirmation.

Post-condition
Un bon de livraison est supprime.

Tab II.8 Description textuelle de cas d’utilisation "Supprimer un bon de livraison"

9) Description textuelle de cas d’utilisation "Consulter la liste des articles"

Identification

Titre : Consulter la liste des articles


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de consulter la liste qui
contient l’ensemble des articles commercialisés par l’entreprise.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 22/03/2015 Date de mise à jour 20/05/2015

Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié
Scénario nominal
6. L’utilisateur accède à son espace.
7. L’utilisateur clique sur le bouton «Bon de chargement ».
8. Le système affiche la page
post-condition
L’utilisateur consulte la liste affichée.

Tab II.9 Description textuelle de cas d’utilisation "Consulter la liste des articles"

10) Description textuelle de cas d’utilisation "Consulter la liste des articles en stock"

Identification
Titre : Consulter la liste des articles en stock.
Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de consulter une liste
qui contient l’ensemble des articles disponibles en stock mobile ainsi que leurs quantités
respectives.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 26/03/2015 Date de mise à jour 20/05/2015


Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton «Articles en stock ».
3. Le système affiche la liste d’articles en stock mobile.

Post-condition

4. L’utilisateur consulte la liste affichée.


Tab II.10 Description textuelle de cas d’utilisation "Consulter la liste des articles en
stock"

11) Description textuelle de cas d’utilisation "Consulter le journal des chargements"

Identification

Titre : Consulter le journal des chargements.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de consulter les
chargements effectués à une date donnée.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 26/03/2015 Date de mise à jour 20/05/2015


Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié.
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton «Journal des chargements ».
3. L’utilisateur entre la date pour laquelle il veut consulter les chargements.
4. L’utilisateur clique sur le bouton « Rechercher »
5. Le système affiche les bons de chargements relatifs à la date entrée.
Post-condition
L’utilisateur consulte le journal des chargements.

Tab II.11 Description textuelle de cas d’utilisation "Consulter le journal des


chargements"
12) Description textuelle de cas d’utilisation "Consulter le journal des livraisons"

Identification

Titre : Consulter le journal des livraisons.


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de consulter les
livraisons effectuées à une date donnée.

Acteurs : Gestionnaire de distribution (Principal), Système Informatique(Secondaire).

Date de création : 10/04/2015 Date de mise à jour 20/05/2015


Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié
Scénario nominal
1. L’utilisateur accède à son espace.
2. L’utilisateur clique sur le bouton «Journal des livraisons ».
3. L’utilisateur entre la date pour laquelle il veut consulter les livraisons.
4. L’utilisateur clique sur le bouton « Rechercher »
5. Le système affiche les bons de livraisons relatifs à la date entrée.

Post-condition

L’utilisateur consule le journal des livraisons.

Tab II.12 Description textuelle de cas d’utilisation "Consulter le journal des livraisons"
13) Description textuelle de cas d’utilisation "Changer le mot de passe"

Identification

Titre : Changer le mot de passe


Résumé : ce cas d’utilisation permet à un gestionnaire de distribution de changer son mot de
passe.

Acteurs : Gestionnaire de distribution. (Principal), Système Informatique(Secondaire).

Date de création : 12/04/2015 Date de mise à jour 20/05/2015


Description des scénarios

Pré-conditions
L’utilisateur doit être authentifié
Scénario nominal
3. L’utilisateur accède à son espace.
4. L’utilisateur clique sur le bouton « Changer le mot de passe ».
5. Le système affiche la page « changement de mot de passe ».
6. L’utilisateur entre le nouveau mot de passe et le confirme.
7. L’utilisateur clique sur le bouton « Valider ».
8. Le système compare le nouveau mot de passe avec sa confirmation.
9. Le système valide la modification ou affiche un message d’erreur en cas de non
identité.

Post-condition
Le mot de passe est changé.
Tab II.13 Description textuelle de cas d’utilisation "Changer le mot de passe"

II.6 Conception
La phase de conception suit immédiatement la phase d’analyse. La conception consiste à
traduire les besoin en spécifiant comment l’application peut les satisfaire avant de procéder à

sa réalisation. Afin de modéliser cette étape nous utilisons le digramme de séquence pour
représenter l’aspect dynamique et le diagramme de classe pour représenter l’aspect statique
[16].

II.6.1 Les diagrammes de séquence


II.6.1.1 Définition
Un diagramme de séquence représente les interactions entre les objets arrangés en
séquence dans le temps. En particulier, il montre les objets participants dans l’interaction par
leurs « lignes de vie » et les messages qu’ils échangent ordonnancés dans le temps. Il ne
montre pas les associations entre les objets. Un diagramme de séquence est en deux
dimensions : l’axe vertical correspondant au temps tandis que l’axe horizontal recense les
objets en interagissant dans la séquence en question. Une ligne vertical est attachée à chaque
objet de la collaboration et montre la «ligne de vie » de l’objet en question [15].

II.6.1.2 Représentation des diagrammes de séquence

Vue le nombre de cas d’utilisation nous représentons uniquement les diagrammes de


séquence de quelques cas d’utilisations.
 Cas d’utilisation S’authentifier

Alt
Si ok

Si non

Fig II.5 Diagramme de séquence de cas d’utilisation « S’authentifier ».


 Cas d’utilisation Changer le mot de passe.

Ref S’authentifier

Alt
FigII.6 Diagramme de séquence de cas d’utilisation « Changer le mot de passe ».

 Cas d’utilisation Ajouter un bon de chargement

Ref
S’authentifier

Loop
FigII.7 Diagramme de séquence de cas d’utilisation « Ajouter un bon de chargement ».

 Cas d’utilisation Consulter le journal des chargements.

Ref
S’authentifier

Alt
Sinon

FigII.8 Diagramme de séquence de cas d’utilisation « Consulter le journal des


chargements ».
II.6.2 les diagrammes d’activité

II.6.2.1 Définition

Le diagramme d’activité se focalise sur les transitions et les activités, et représente le


comportement d’une action ou d’un cas d’utilisation en termes d’action [18].

II.6.2.2 Représentation des diagrammes d’activités

Vue le nombre de cas d’utilisation nous représentons uniquement le diagramme d’activité


de quelques cas d’utilisations.
 Cas d’utilisation Changer le mot de passe
[Nouveau mot da [Nouveau mot de
passe et sa passe et
confirmation sont confirmation sont
identiques] différents]

FigII.9 Diagramme d’activité de cas d’utilisation « Changer le mot de passe »

 Cas d’utilisation Consulter le journal des chargements.


[Bon(s) trouvé(s)] [Bon(s) non trouvé(s)]

Fig II.10 Diagramme d’activité de cas d’utilisation « Consulter le journal des chargements»

II.6.3 Diagramme de classe globale


II.6.3.1 Définition

Le diagramme de classe est destiné à décrire les propriétés structurelles des objets du
monde réel, les concepts spécifiques du domaine considéré ou encore les notions abstraites
que le système doit appréhender. Ce sont les diagrammes les plus fréquemment utilisés en
modélisation orientée objet. En phase de conception du logiciel, ils sont exploités pour décrire
l’architecture statique du système et les interdépendances entres ses constituants [15].

II.6.3.2 Représentation de diagramme de classe


L’obtention de diagramme de classe est fait sur la base de deux éléments essentiels :
1) Les règles de gestion qui nous permettons d’identifier les concepts (classe) de
domaine, les relations existantes entre elles, ainsi que les cardinalités de ces dernières.
2) Les diagrammes de séquence pour identifier les méthodes (aspect dynamique) de ces
classes.
II.6.3.3 Règles de gestion
Les entretiens avec les futurs utilisateurs font ressortis les règles de gestion suivantes :
1. Un AFFECTART (Bon de chargement ou de livraison) peut contenir un ou plusieurs
articles avec un quantité donnée.
2. Un ARTICLE figue dans un ou plusieurs AFFECTART avec une quantité donnée.
3. Un AFFECTART possède un seul TYPE_MOUV
4. Un TYPE_MOUV contient un ou plusieurs AFFECTART.
5. Un AFFECTART doit avoir au plus un FOURNISSEUR.
6. Un FOURNISSEUR figure sur plusieurs AFFECTART, comme il peut ne pas
figurer.
7. Un AFFECTART doit avoir au plus un BENIFICIAIRE.
8. Un BENIFICIAIRE peut figurer sur plusieurs AFFECTART, comme il peut ne pas
figurer.
9. Un AGENT est employé dans un seul MAGASIN.
10. Un MAGASIN emploie un seul AGENT.
11. Un AFFECTART est établi par un seul MAGASIN.
12. Un MAGASIN doit établir au mois un AFFECTART.
13. Un FOURNISSEUR a un ou plusieurs ARTICLE avec une référence donnée.

14. Un ARTICLE dois avoir un ou plusieurs FOURNISSEUR avec une référence donnée.
La figure suivante représente le diagramme de classe qu’on a obtenu :

Fig II.11 Digramme de classe globale

II.7 Conclusion

La partie de la conception consiste à identifier les différents objets qui nous aident à
réaliser les fonctionnalités souhaitées. Tout en donnant une description complète de ces
diagrammes pour une meilleure compréhension du système.

Après cette phase de l’élaboration de notre application nous allons passer à la phase de
réalisation ou nous allons décrire les différents moyens logiciels et matériels pour la création
de notre application ce qui fera l’objet de chapitre suivant.
Réalisation
III .1 Introduction

Dans le chapitre précédent nous avons présenté la modélisation de notre application. A


présent, nous présentons les étapes d’implémentation ainsi que l’application obtenue.
Ainsi, nous structurons ce présent chapitre comme suit: dans la première section, nous
présentons l’environnement, langage et outils utilisés pour la mise en œuvre de notre
application, la seconde section est consacrée à la présentation de l’application réalisée
notamment les couches : données(B.D.D) et interfaces.

III.2 Environnement de développement


Pour la mise en œuvre de notre application nous avons utilisé les moyens matériels et
logiciels suivant :

III.2.1 Matériel
Pour la réalisation de notre projet nous avons utilisé :

Un Ordinateur portable sous Windows 7 pour le développement de l'application doté


des caractéristiques suivante :
• Une RAM avec une capacité de 4 GB.
• Un processeur Intel (R) Core(TM) i3 CPU M380 @2 ,53GHZ.

III.2.2 Logiciels : Pour la mise en œuvre de notre application nous avons utilisé :

III.2.2.1 Windev

Le WLangage est un langage de programmation de cinquième génération inclus dans les


outils de développement WinDev,WebDev et WinDev Mobile,il est propriétaire et ne peut
être manipulé qu'avec les outils PC SOFT.Il est né en 1992 avec la première version de
WinDev.Le Wlangage est un langage de programmation procédurale qui permet la
programmation impérative et orientée objet.

Windev est un atelier de génie logiciel conçu pour développer des applications,
principalement orientées données. A l'usage particulier du Windev la programmation orientée
objet est possible, quoique moins puissante que dans la plupart des langages tels que C++ et
Java ou une fonction virtuelle est une fonction destinée à être redéfinie dans des classes
héritant d'une classe de base, dans WinDev on appelle “virtuelles” les fonctions redéfinies.
Les applications développées avec WinDev bénéficient par défaut de fonctionnalités
automatiquement proposées à l'utilisateur final,
f qui sont néanmoins désactivables par le
concepteur. Ces fonctionnalités sont :
• Export des tables vers Word , Excel, OpenOffice et XML.
• Création de fichier PDF.
• Possibilité
ossibilité de saisir des macros en code WLangage.
• Possibilités
ossibilités de tri et recherche directe
direc dans les tables.
• Possibilité de mémoriser les valeurs saisies dans un champ de saisie et de les choisir à
nouveau.

WinDev comporte aussi son propre système de gestion de base de données appelé
HyperFileSQL (HFSQL) qui existe en version locale, client/serveur sous Windows, Linux et
mobile ces versions sont compatibles entre elles.
el

Pour le développement
pement de notre application nous avons choisi la version 18 de Windev
mobile, la figure suivante montre
ontre l’interface principale de Windev Mobile 18.
18
Fig III.1 : Interface principale de Windev Mobile 18.
18.

III.4 L’organisation de notre application

Tous les composants


ts du projet (Application) sont regroupés dans l'explorateur de projet.
proje
L’explorateur de projet liste
iste l'ensemble des éléments du projet ainsi que leurs menus
contextuels et contiennent les fonctionnalités disponibles sur chaque élément.

La figure suivant illustre


re les éléments composant notre application.

Le menu contextuel de l’élément « Fenêtres »

: explorateur de notre projet

Le menu contextuel de l’élément « Analyse »

Fig III.2 : Explorateur


xplorateur de notre projet et les menus contextuel des éléments développés.
développés

III.4.1 L’élément Analyse

Le volet "Analyse" affiche l'analyse (description des fichiers de données et des rubriques) en
cours d'édition et permet de manipuler la description des fichiers de données ou des rubriques.
L'analyse affichée correspond à la dernière analyse générée et utilisable dans l'application.
L’analyse utilisée dans notre application exploite plusieurs bases de données externes, ces
bases de données sont présentées en section III.5.

III.4.2 L’élément Fenêtre

L’élément fenêtre contient les différentes fenêtres de notre application, une fenêtre représente
une interface intermédiaire entre l’utilisateur et l’application. Ces interfaces sont présentées
en section III.6.

III.5 Le schéma de la base de données


La base de donné que nous avons utilisé contient les tables suivantes :
 Bénéficiaire
 Fournisseur
 Magasin
 Type mouvement
 Article
 Contenir_Stockaffect
 Affectart
 Agent
 Référence

Table Bénéficiaire : Cette table contient les informations sur les bénéficiaires.
Nom Cod Type de donnée
Code bénéficiaire BENCOD VA6
Désignation bénéficiaire BENRSO VA80
Adresse bénéficiaire BENADR VA80
Téléphone bénéficiaire BENTEL VA20
Fax bénéficiaire BENFAX VA20
Email bénéficiaire BENML VA20
Responsable BENNRS VA80
bénéficiaire
Tab III.1 : Table bénéficiaire
Table Fournisseur : Cette table contient les informations sur les fournisseurs.
Nom Cod Type de donnée
Code fournisseur FOUCOD VA6
Désignation fournisseur FOURSO VA80
Adresse fournisseur FOUADR VA80
Fax fournisseur FOUFAX VA20
Téléphone fournisseur FOUTEL VA20
Email fournisseur FOUML VA20

Tab III.2 : Table fournisseur

Table Magasin : Cette table contient les informations sur les magasins mobiles.
Nom Cod Type de donnée
Code magasin MGSCOD VA6
Numéro agent AGENUM N8
Désignation magasin MGSRSO VA80

Tab III.3 : Table magasin.


Table Article : Cette table contient les informations sur les articles.
Nom Cod Type de donnée
Code article ARTCOD VA12
Désignation Article ARTDES VA80
Prix pondéré ARTPRX DC10.2
Prix unitaire STAPUN N12.2

Tab III.4 : Table article.


Table Type mouvement : Cette table contient les informations sur les types mouvements.
Nom Cod Type de donnée
Type mouvement TMVCOD A6
Libelle type mouvement TMVLIB VA80

Tab III.5 : Table type mouvement


Table Contenir_STOCKAFFECT: Cette table contient les informations détail des articles
charger ou livrer.
Nom Cod Type de donnée
Numéro STANUM N8
Code article ARTCOD VA12
N° affectation AFHNUM N8
Quantité STAQTE N8

Tab III.6 : Table Contenir_STOCKAFFECT

Table AFFECTART : Cette table contient les informations sur les bons de chargements ou
de bon de livraisons.

Nom Cod Type de donnée


N° affectation AFHNUM N8
Code bénéficiaire BENCOD VA6
Code fournisseur FOUCOD VA6
Type mouvement TMVCOD A6
Code magasin MGSCOD VA6
Code article ARTCOD VA12
Date affect AFHDAT D
N bon chargement ou AFHABS N14
livraison
Référence Bon AFHREF VA80
Observation AFHOBS VA100

Tab III.7 : Table AFFECTART.

Table Agent : Cette table contient les informations sur les agents.
Nom Cod Type de donnée
Numéro agent AGENUM N8
Code magasin MGSCOD VA6
Nom agent AGENOM VA40
Prénom agent AGEPRENOM VA40
Téléphone agent AGETEL VA20
Fonction agent AGEFON VA40
Nom utilisateur AGEUSER VA20
Mot de passe AGPSW VA20
Tab III.8 : Table Agent.

Table Référence : Cette table contient les informations sur les référencess.

Nom Cod Type de donnée


Référence fournisseur REFFOU VA20
Code article ARTCOD VA12
Code
ode fournisseur FOUCOD VA6

Tab III.9 : Table Référence.

III.6 Fonctionnement de l’application


l’
Nous présentons dans cette section quelques interfaces de l’application développée.
III.6.1 L’interface d’authentification

Fig III.3 :L’interface d’authentification

Cette interface permet l’authentification d’un utilisateur et cela en saisissant


sais le nom et le
mot de passe, puis en cliquant sur le bouton « Valider ». Si les données insérées sont fausses
le système affichera un message d'erreur.
d'erreur Dans le cas contraire l’application
tion est lancée et le
menu s’affiche (Figure suivante).
suivante)

III.6.2 L’interface Menu


Fig III.4 :L’interface Menu.

Le Menu est affiché après authentification, Il est composé d’une barre de menu
horizontale de sept boutons, chaque bouton permet l’accès à une fonction de
l’application et un bouton « Fermer » pour quitter l’application.

III.5.3 L’interface Bon de chargement


Fig III.5 : L’interface bon de chargement

Une fenêtre de bon de chargement viérge s’affiche en cliquant sur le bouton « Bon de
chargement » dans la fenêtre Menu. Cette fenêtre permet :

1) D’enregistrer les éléments constitutifs du bon de chargement à savoir le


fournisseur, le type mouvement, le numéro de bon de chargement, la référence et
une observation.
La sauvegarde de l’enregistrement se fait en activant le bouton « Valider ».
Le système enregistre les informations entrées et affiche la fenêtre suivante :

Fig III.6 Fenêtre articles à charger.

Dans cette fenêtre l’utilisateur sélectionne l’article à charger et sa référence


puis entre
tre la quantité à charger.
charger Ainsi que,, en cliquant sur le bouton
« +Article » cette fenêtre s’affiche pour permettre à l’utilisateur d’ajouter des
articles aux bon de chargement.

2) De chercher un bon de chargement : Pour cela l’utilisateur


teur entre le numéro du
bon à chercher
cher puis active
act le bouton « Chercher » le système affichera le bon
relatif à cette recherche.

3) De procéder à une modification de bon de chargement : Pour cela il faut


insérer le numéro du bon de chargement à modifier et activer le bouton
« Chercher ».. Le bon de chargement recherché s’affiche. On procédera alors
aux modifications voulues. La validation des modifications se fera en activant
le bouton « Modifier ».

4) De supprimer un bon de chargement : pour supprimer un bon de chargement il


faut insérer le numéro du bon de chargement à supprimer
supprimer et activer le bouton
« Chercher ».. Le bon de chargement recherché s’affiche. On procédera alors à
sa suppression. La validation de la suppression se fera en activant le bouton
« Supprimer ».

5) De disposer d’une nouvelle grille par l’activation du bouton « Efface


écran ».

6) D’accéder au menu principal par l’activation du bouton fermer.

7) De modifier ou supprimer un article : Un double click sur un article dans la


liste des articles du bon de chargement permet d’accéder à une interface
ayant deux fonctionnalités : Modification et suppression. Ces deux
opérations s’exécutent directement sur l’interface. La validation se fait en
activant les boutons correspondants.
III.5.4 L’interface Bon de livraison

Fig III.7 : L’interface bon de livraison

Une fenêtre de bon de livraison viérge s’affiche en cliquant sur le bouton « Bon de
livraison » dans la fenêtre Menu. Cette fenêtre permet :

1) D’enregistrer les éléments constitutifs du bon de livraison à savoir le bénéficiaire,


bénéficiaire
le type mouvement, le numéro de bon de livraison,, la référence et une
observation.

La sauvegarde de l’enregistrement se fait en activant le bouton « Valider ».


Le système enregistre les informations entrées et affiche la fenêtre suivante

Fig III.8 Fenêtre articles à livrer.

Dans cette fenêtre l’utilisateur sélectionne l’article à livrer et sa référence puis


entre la quantité à livrer. Ainsi que, en cliquant sur le bouton « +Article » cette
fenêtre s’affiche pour permettre à l’utilisateur d’ajouter des articles aux bon de
livraison.

2) De chercher un bon de livraison : Pour cela l’utilisateur entre le numéro du bon à


chercher puis activer le bouton « Chercher » le système affichera le bon relatif à
cette recherche.

3) De procéder à une modification de bon de livraison:: Pour cela il faut insérer le


numéro du bon de livraison à modifier et activer le bouton « Chercher ». Le bon
de livraison recherché s’affiche. On procédera alors aux modifications voulues.
La validation des modifications se fera en activant le bouton
bouto « Modifier ».

4) De supprimer un bon de livraison : pour supprimer un bon de livraison il faut


insérer le numéro du bon de livraison à supprimer et activer le bouton
« Chercher ». Le bon de livraison recherché s’affiche. On procédera alors à sa
suppression. La validation de la suppression se fera en activant le bouton
« Supprimer ».

5) De disposer d’une nouvelle grille par l’activation du bouton « Efface écran ».

6) D’accéder au menu principal par l’activation du bouton fermer.

7) De modifier ou supprimer un article : Un double click sur un article dans la liste


des articles du bon de livraison permet d’accéder à une interface ayant deux
fonctionnalités : Modification et suppression. Ces deux opérations s’exécutent
directement sur l’interface. La validation se fait en activant les boutons
correspondants.
iste des articles (Nomoclature)
III.6.5 L’iterface liste

Fig III.9 Interface liste des articles.

La liste des articles s’affiche


s’affich en cliquant sur le bouton « listee des articles » du Menu. Elle
contient l’ensemble des articles commercialisés par l’entreprise. Où chaque article est décrit
par : un code, une désignation et une référence.
rticle en stock mobile
III.6.6 L’interface article

Fig III.10
III. : Interface articles en stock mobile.

La fenêtre « Articles en stock » s’affiche en cliquant sur le bouton : « Articles en


stock » dans le Menu. Elle affiche les articles disponibles en stock mobile et leurs quantités
respectives où chaque article est décrit par : un code, une désignation et une référence.
III.6.7 L’interface journal
ournal des chargements

Fig III.11 : Interface Journal des chargements.

La fenêtre « Journal des chargements » est affichée en cliquant sur le bouton : « Journal
des chargements » dans la fenêtre Menu. Elle contient
contie un champ de saisie dénommé « Date ».

Si l’utilisateur souhaite connaitre les chargements effectués à une date donnée, il doit saisir
une date dans ce champ.

En cliquant sur le bouton « Afficher » le système affiche les bons des chargements effectués
durant cette journée. Les bons affichés contiennent les informations suivantes :

1) Informations concernant le bon de chargement :


⋅ Numéro informatique : C’est le numéro d’ordre.
⋅ Numéro du bon : Il est donné par le gestionnaire de la distribution.
⋅ Référence du bon : utilisé pour la traçabilité des documents.

2) Informations concernant l’article


⋅ Code de l’article : établi selon une nomenclature
n préétablie.
⋅ Référence de l’article.
⋅ Désignation de l’article.
⋅ Quantité article chargé.

III.5.8 L’interface journal des livraisons

Fig III.12 Interface journal des livraisons.

La fenêtre «Journal des livraisons » est affichée en cliquant sur le bouton : « Journal des
livraisons » dans la fenêtre Menu. Elle contient
contie un champ de saisie dénommé « Date »

Si l’utilisateur souhaite
haite connaitre les livraisons effectuéess à une date donnée, il doit saisir une
date dans ce champ.

En cliquant sur le bouton « Afficher » le système affiche les bons de livraisons effectuées
durant cette journée. Les bons affichés contiennent les informations suivantes :

1) Informations concernant le bon de livraison :


⋅ Numéro informatique : C’est le numéro d’ordre.
⋅ Numéro du bon : Il est donné par gestionnaire de la distribution.
⋅ Référence du bon : utilisé pour la traçabilité des documents.
2) Informations concernant l’article
⋅ Code de l’article : établi selon une nomenclature préétablie.
⋅ Référence de l’article.
⋅ Désignation de l’article.
⋅ Quantité article chargé.

III.5.9
.9 L’interface changement mot de passe

Fig III.13 Interface changement mot de passe.


La fenêtre de changement mot de passe est affichée en cliquant sur le bouton
« Changement mot de passe » du l’interface Menu. Elle contient trois champs de saisies
• Mot de passe actuel : Ce champ aura automatiquement le mot de passe saisi lors de
l’authentification.
• Nouveau mot de passe : L’utilisateur introduit dans ce champ le nouveau mot de
passe.
• Confirmer le mot de passe : L’utilisateur introduit à nouveau le nouveau mot de passe
pour le confirmer.
L’utilisateur clique ensuite sur « Valider» pour mettre à jour le nouveau mot de passe. Si
le nouveau mot de passe et sa confirmation sont différents, le système affichera un
message d'erreur.

III.6 Conclusion
Dans ce chapitre nous avons au premier lieu, présenté l’environnement, le langage de
programmation et les outils que nous avons utilisé pour implémenter notre application. Par la
suite, nous avons présenté les tables de la base de données et les différentes interfaces de notre
application.
Conclusion générale

Ce projet a visais le développement d’une application Android pour l’automatisation des


taches de la gestion de distribution par l’offre d’un environnement interactif et la permission
aux l’utilisateur de gérer les mouvements de chargements, les retours et les livraisons à leurs
niveau.

Les perspectives envisagées pour faire évoluer ce projet sont nombreuses dont les plus
importantes sont :

 L’ajout des traitements de paiement des marchandises.


 L’ajout des cartes géographiques pour guider le livreur vers le point de vente.
 Tenir compte de plus court chemin vers le point de vente par l’introduction des
systèmes GPS et des guides par voix.
 L’élaboration des plans de livraison pour minimiser le déplacement des unités
mobiles.

Ce projet nous a enrichi par les connaissances qui nous a permis d’acquérir en UML,
Android, Windev Mobile, d’une part et d’autre part par l’expérience du travail dans une
société d’informatique et la fréquentation du domaine de travail durant toute la durée de la
réalisation de notre projet.
Références bibliographique

[1] http://fr.wikipedia.org/wiki/Syst%C3%A8me_d%27exploitation_mobile

[2] http://www.frandroid.com/quest-ce-que-android

[3] http://socialcompare.com/fr/comparison/android-versions-comparison

[4] https://search?q=architecture+android

[5] http://openclassrooms.com/courses/creez-des-applications-pour-android/l-architecture-d-
android

[6] http://mathias-seguy.developpez.com

[7] http://fr.wikipedia.org/wiki/Android_SDK

[8] http://fr.wikipedia.org/wiki/Eclipse_%28projet%29

[9] http://developer.android.com/tools/help/adt.html

[10] http://en.wikipedia.org/wiki/Android_Studio

[11] http://www.pcsoft-windev-webdev.com/conceptsWM18.pdf

[12] http://www.additeam.com/SSII/uml/

[13] https://www.projet-plume.org/ressource/uml

[14] http://fr.wikipedia.org/wiki/UML_%28informatique%29

[15] http://fr.wikipedia.org/wiki/Diagramme_des_cas_d%27utilisation

[16] UML 2 par la pratique étude de cas et exercices corrigés 5emme eddition EYROLLES,
Pascal Roques.

Vous aimerez peut-être aussi