3. Choix de l'architecture
Le développement d'une application
présente plusieurs types d'architectures telque l'architecture
client/serveur qui présente deux niveaux - (2-tiers) et
celle - 3-tiers.
En effet, vu les spécifications de notre
application qui exige le passage d'une base de donnée, le choix de
l'architecture à 3 niveaux - (3-tiers) s'impose. Cette
architecture se compose des niveaux suivants:
+ Les acteurs : C'est le niveau présentation.
Dans le cas de notre solution ce niveau se composed'un simple utilisateur, qui
est en principe l'agriculteur, et l'agent technique, qui joue le rôle
d'un administrateur
+ Le serveur web: C'est le niveau applicatif. Ce
serveur représente l'environnement d'exécution des applications
coté serveur. Il prend en charge l'ensemble des
fonctionnalités qui - per-
mettent à N clients d'utiliser une même application.
Application de gestion des informations
météorologiques Salhi Mohamed Khaled
+ Le serveur de base de données : Il
comporte les tables de données et les requêtes nécessaires
utilisée par l'application. Nous avons opté pour SQL Server pour
gérer notre base.
3.1 Architecture 3-tiers
Une application web possède souvent une architecture
3-tiers :
+ la couche dao (Data Access Object) s'occupe
de l'accès aux données, le plus souvent des données
persistantes au sein d'un SGBD.
+ la couche métier implémente
les algorithmes "métier" de l'application. Cette couche est
indépendante de toute forme d'interface avec l'utilisateur. Ainsi elle
doit être utilisable aussi bien avec une interface console, une interface
web, une interface de client riche. Elle doit ainsi pouvoir être
testée en dehors de l'interface web et notamment avec une interface
console. C'est généralement la couche la plus stable de
l'architecture. Elle ne change pas si on change l'interface utilisateur ou la
façon d'accéder aux données nécessaires au
fonctionnement de l'application.
+ la couche interface utilisateur qui est
l'interface (graphique souvent) qui permet à l'utilisateur de piloter
l'application et d'en recevoir des informations.
Les couches métier et dao sont normalement
utilisées via des interfaces. Ainsi la couche métier ne
connaît de la couche dao que son ou ses interfaces et ne connaît
pas les classes les implémentant. C'est ce qui assure
l'indépendance des couches entre-elles : changer l'implémentation
de la couche dao n'a aucune incidence sur la couche métier tant qu'on ne
touche pas à la définition de l'interface de la couche dao. Il en
est de même entre les couches interface utilisateur et métier.
|