4.2.2 Les pré-requis de la mise en oeuvre de
l'application « RingoDialer »
Les réflexions précédentes laissent
entrevoir la nécessité de mettre en place un certain nombre de
préalables à la mise en uvre et au fonctionnement du RingoDialer.
Afin de les mettre en exergue, nous présentons dans les lignes qui
suivent :
- l'architecture logicielle adoptée pour la mise en uvre
du dialeur;
- le composant de gestion de la communication dialeur/NAS-ISP
depuis le système d'exploitation hôte;
- le framework technique des principaux concepts utilisés
par le dialeur.
4.2.2.1 L'architecture logicielle
Inspirée du style architecturale Model-View-Controller
(MVC), l'organisation spatiale des composantes du RingoDialer a pour objectifs
de :
- permettre une maintenance corrective et évolutive
aisée;
- faciliter le développement d'une application polymorphe
et modulaire; - faciliter le transfert de l'application vers une plate-forme
différente.
Cette organisation est celle retenue et illustrée par la
figure 4.3.
FIGURE 4.3 Organisation des composantes logicielles du
RingoDialer
Au sommet de l'arborescence de l'architecture, nous avons le
paquetage software, qui regroupe tous les programmes et fichiers constitutifs
du logiciel. Ce paquetage est subdivisé en huit (8) sous-paquetages que
sont :
- le paquetage startup regroupe l'ensemble des
programmes ou codes nécessaires au lancement de l'application;
- le paquetage lib regroupe l'ensemble des librairies
externes nécessaires à la mise en oeuvre de l'application ;
- le paquetage resource représente l'ensemble des
ressources statiques et internes del'application. Notamment les images, les
fichiers de configuration et autres ressources utiles
au bon fonctionnement de l'application;
- le paquetage interface regroupe les
différents « fichiers colles » développées pour
adapter le comportement d'un composant externe à celui de l'application.
Nous faisons notamment référence d'une part aux fichiers
d'adaptation d'une implémentation du protocole PPPoE et d'autre part
à ceux permettant de manipuler aisément les composants autonomes
propres à l'application;
- le paquetage component regroupe un ensemble de
composants autonomes développés
pour des besoins fonctionnels spécifiques. Nous y
reviendrons ultérieurement;
- le paquetage util regroupe les différents bouts
de code ou programmes nécessaires à la
réalisation et à la manipulation de l'interface
homme-machine de l'application;
- le paquetage helper regroupe l'ensemble des
traitements utiles à la réalisation et à la
manipulation de certaines ressources de l'application à
mettre en oeuvre;
- le paquetage exception regroupe l'ensemble des
programmes de gestion des erreurs; - le paquetage test regroupe
l'ensemble des tests fonctionnels effectués.
Il est à noter que les composants sous le paquetage
component, sont des mini-applications, prenant eux-mêmes en
charge leurs ressources, leurs utilitaires, leurs entrées
(contrôleurs), leurs sorties (vues) et surtout leurs traitements
(modèles). En d'autres termes, chaque composant peut avoir la même
architecture que celle proposée pour l'application finale. C'est donc
ainsi, que le paquetage d'un composant, sous le paquetage component,
est-il fractionné de la sorte :
- le paquetage resource, regroupe l'ensemble des
ressources nécessaires au fonctionnement en « standalone » du
composant;
- le paquetage controller regroupe l'ensemble des
programmes de contrôle des entrées du composant;
- le paquetage view regroupe l'ensemble des interfaces
homme-machine mis à disposition par le composant;
- le paquetage model regroupe l'ensemble des
traitements du composant et est segmenté
en trois sous paquetages que sont :
- le paquetage base qui représente l'ensemble
des traitements de base du composant; - le paquetage event qui
représente les différents événements émis
par le composant; - le paquetage listener qui représente
l'ensemble des traitements des événements émis
par le composant.
- le paquetage helper regroupe tous les traitements
utiles à la réalisation du composant.
L'on reviendra ultérieurement sur les composants connexion
et webservice dans la partie portant sur l'application-client
d'authentification « RingoDialer ».
|