III.6.5.2 Synchronisation des
données
La problématique de la synchronisation prend une part
importante dans la conception du système et notamment de la base de
données et des parties applicatives. Pour rappel ces synchronisations
interviennent lorsque l'administrateur veut faire coïncider les
données qu'il possède sur sa machine avec celles stockées
en base de données centrale (sur le serveur distant). Le cas
d'utilisation type se présente ainsi :
- Au démarrage du logiciel, l'application
administrative se synchronise avec la base MySQL pour avoir des données
à jour ;
- Lors de ses déplacements (vers une zone sans
connexion), il peut consulter, modifier, insérer ou supprimer (ou tout
autre opération possible) des données chargées dans la
base de données sans connexion réseau ;
- Et une fois la connexion retrouvée, l'application
administrative se chargera de synchroniser ses mises à jour et de
récupérer celles des autres
III.6.5.3 Architecture de l'application
cliente
Sur l'application cliente, la stratégie adoptée
est d'utiliser un modèle en couches similaire. Cependant, la taille de
l'application n'impose pas une séparation aussi fine que l'application
nationale. Nous appliquons donc un modèle à 3 couches
organisées comme suit :
Couche Présentation : cette couche
effectue la présentation des données à l'utilisateur par
l'intermédiaire de formulaires et de listes de données
interactives. L'utilisateur accède à l'application par cet unique
moyen ; elle est développée en HTML5-CSS3.
Couche Métier : de même que pour
l'application administrative, cette couche contient d'une part les objets
métier, correspondant aux données métier à
manipuler dans l'application, d'autre part, les services métiers
reliés à ces objets (création, recherche, suppression,
modification et autres services spécifiques). A l'image de l'application
administrative, cette couche s'occupe de garantir que le métier de
l'application est respecté, que les règles liées aux
données sont toujours suivies. Dans cette couche, on retrouve
également les méthodes d'accès à la base de
données (présentes dans la couche Données dans
l'application administrative).
Couche Données : cette couche contient
les données physiques stockées dans la base de données
MySQL. A ce niveau, tenant compte du fait qu'on aura deux bases de
données (une locale et l'autre distante) nous allons dans le cadre d'une
mise à jour des bases de données gérer la fonction de
réplication de bases de données pour résoudre les demandes
à satisfaire par ce service.
Figure11 :
Architecture application cliente
|