WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Mise en place d’une application client-serveur pour la gestion des projets.


par JEANCY DIASOLUA
Université de Kinshasa - Gradue en mathématiques-informatique 2013
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

1.2 Architecture logicielle

1.2.1 Description d'une architecture logicielle

Les concepts d'architecture logicielle et de programmation structurée sont difficiles à mettre en oeuvre pour des applications complexes. La première étape dans la construction d'une application complexe consiste à ne pas la concevoir comme un tout, mais comme une multitude de composants qui sont liées dans un environnement donné, il s'agit de l'approche modulaire .Notons que la conception d'une architecture logicielle, bien que d'une importance capitale pour la réussite d'un projet informatique, est encore trop souvent liée au savoir-faire d'une personne (ou d'un groupe de personnes) spécialiste(s) d'un domaine précis. L'architecture est donc étudiée selon un point de vue particulier (aussi, appelée une facette)

Le rôle principal d'une architecture est d'entraîner une démarche de conception, à la fois formelle (permettant par le calcul mathématique de valider ses propriétés) et opérationnelle (lors de sa conception, de sa mise au point et de sa maintenance). La définition d'une architecture logicielle passe donc par la réponse à la question suivante : Quelles règles doit-on suivre pour réussir à développer des systèmes qui répondent à toutes les exigences fonctionnelles (les services à rendre) et non fonctionnelles (performance et extensibilité du système par exemple) ?

1.2.2 Le client-serveur et l'architecture logicielle

Originellement, le terme client-serveur décrivait les interactions entre deux programmes d'une architecture logicielle, les programmes résidaient alors sur la même machine hôte. La signification du terme client-serveur a complètement changé lors de l'apparition d'outils de distribution des traitements en fonction des ressources Logicielles et matérielles. Désormais, une architecture client-serveur s'appuie sur des architectures matérielles et logicielles qui interagissent.

L'architecture client-serveur est un modèle de fonctionnement logiciel qui peut se réaliser sur tout type d'architecture matérielle (petites ou grosses machines) à partir du moment où ces architectures peuvent être interconnectées.

Les architectures logicielles de type client-serveur actuelles nécessitent la recherche du meilleur découpage d'une application en composants logiciels, ainsi que la répartition efficace de ces composants.

1.2.3 Utilisation d'une application basée sur l'architecture client-serveur

L'architecture client-serveur peut être utilisée dans beaucoup d'applications, son utilisation dépend des besoins ainsi que du savoir-faire de la part du programmeur.

Prenons un exemple clair et précis :

Un vendeur possédant plusieurs boutiques, on souhaite mettre en place un système informatique composé des éléments suivants :

- Un serveur central situé dans une zone non accessible au public ;

- Des postes clients répartis dans chacune des boutiques.

Les postes clients doivent permettre, grâce à une interface homme-machine appropriée (qui sera simulée ici sous forme d'une zone de saisie en mode caractères), de réaliser les différentes opérations prévues.

Figure 1.3 : Application basée sur l'architecture client serveur

Le fonctionnement sera le suivant :

1. Selon la saisie de l'utilisateur, le client préparera une requête à envoyer au serveur.

2. La requête sera envoyée au serveur et le client se mettra en attente de la réponse.

3. Le serveur réceptionnera la requête et la traitera pour comprendre la demande du client.

4. Il effectuera ensuite le traitement associé,

5. et enverra le résultat de ce traitement au client.

6. Le client réceptionnera le résultat et pourra enchaîner sur une nouvelle requête.

La gestion des données au niveau du serveur

Le serveur central a la charge de l'ensemble des données de la boutique (stock et facturation). Les données manipulées par le serveur sont de nature persistante, c'est-à-dire qu'elles doivent survivre à l'exécution de l'application. Pour assurer la persistance de ces données, nous les stockerons dans un fichier. Le principe consiste alors à charger ce fichier en mémoire pour traiter chaque requête client, puis de sauvegarder ce fichier après chaque mise à jour. Un mécanisme de synchronisation devra donc être utilisé pour gérer la concurrence d'accès au fichier.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Ceux qui vivent sont ceux qui luttent"   Victor Hugo