INTRODUCTION
AUX ARCHITECTURES
DES SYSTÈMES
D’INFORMATION
heithem.abbes@gmail.com2015-2016
Système d’information
3
 Un système d’information est constitué d’un
ensemble d’outils destinés à gérer, stocker et
trait...
4
 1988 : Système AS/400 : système monolithique
(Mainframe)
 Outil simple et extrêmement complet d’un point de
vue fonct...
5
 Les applications composées d’un exécutable
ont progressivement laissé la place à des
applications accessibles par un n...
Architectures des SI
Trois niveaux d’abstraction
7
 Une application informatique peut être
découpée en trois niveaux d'abstraction
distincts :...
Présentation
8
 La couche de présentation, encore
appelée IHM (Interface Homme Machine),
permet l'interaction de l'applic...
Logique applicative
9
 La logique applicative décrit les
traitements à réaliser par l'application pour
répondre aux besoi...
Données
10
 L'accès aux données, regroupe l'ensemble
des mécanismes permettant la gestion des
informations stockées par l...
Différentes architectures
11
 Le découpage et la répartition des 3 niveaux
d’abstraction permettent de distinguer les
arc...
Architecture 1-tier12
Présentation
13
 les trois niveaux (présentation, traitement,
données) sont fortement liés et s'exécutent
sur la même mac...
Applications sur site central – Mainframe
(Années 1970-80)
14
 Les utilisateurs se connectent aux applications
exécutées ...
Mainframe
15
 IBM, AS/400, RS6000, HDS, SUN Microsystems et Hewlett-
Packard
RS6000
AS/400
Terminal
16
Terminal
Les applications 1-tier
déployées17
 Progrès technologiques
 1981 : IBM PC/XT, Intel 8088 4,57MHz, 64Ko de
RAM, disquett...
Les applications 1-tier
déployées18
☹Conflits lors de la consultation ou de la modification
simultanée
☹Difficulté d'assur...
Synthèse
19
Limites
 Mainframe : interface
utilisateur en mode
caractères est obsolète
 1 tiers déployé : gestion des
do...
Concept du Client/Serveur20
Définition & structure
21
 C’est une architecture permettant à un ensemble
de machines interconnectées de partager des
re...
Dialogue client-serveur
22
 Client
 Initialise le dialogue en envoyant de requêtes
 Serveur
 Renvoie les données corre...
Middleware
23
 Ensemble des couches logicielles qui permettent le dialogue
entre le client et le serveur
 Dialogue inter...
Types de middleware
24
 Middleware de base de données
 Middleware orienté messages (MoM)
 Middleware orienté objets
 M...
Classification du Gartner Group
25
Présentatio
n
Traitements
Données
Présentatio
n
Traitements
Données
Présentatio
n
Trait...
1. Présentation distribuée
26
 Habillage graphique de l'affichage en
mode caractères d'applications
fonctionnant sur Main...
2. Présentation distante
27
 Correspond au client/serveur de
présentation
 Principe
 Les traitements et la gestion des ...
2. Présentation distante
28
 X Window System ou X11 permet la présentation
distance
 interface utilisateur graphique qui...
3. Gestion distante des
données29
 Correspond au client-serveur de
données
 Type de client/serveur le plus répandu
 Pri...
4. Traitement distribué
30
 Correspond au client/serveur de
traitements
 Principe
 Distribuer les traitements entre le ...
5. Bases de données
distribuées31
 Variante du client/serveur de données
 Principe: une partie de données est
prise en c...
6. Données et traitements
distribués32
 Principe: répartir la charge des
données et des traitements entre le
client et le...
Remarques
33
 Les différents types du modèle C/S proposés
par Gartner Group sont indépendants et
combinables.
 Le modèle...
Architecture 2-tiers
Présentation de l’arch. 2-tiers
(1/2)35
 Architecture 2-tiers ou C/S de première génération
ou C/S de données
 Le client...
Dialogue client-serveur de
données36
Présentatio
n
Traitement
s
Données
1. Requête utilisateur
2. Envoie de requête
3. Ret...
37
Types de middleware de BD
Middleware propriétaire
 Toutes les données sont gérées par un même
SGBD
 L’application uti...
38
Types de middleware de BD
Middleware indépendant
 Indépendant du SGBD
 Avantages
 Indépendance par rapport au SGBD
...
Atelier
39
 Réaliser une application client/serveur de
données qui permet de gérer la liste des
clients d’une société
 D...
40
 https://fr.netbeans.org/edi/articles/concours/my
sql-client.html
 https://netbeans.org/competition/win-with-
netbean...
Prochain SlideShare
Chargement dans…5
×

Introduction aux architectures des SI

1 489 vues

Publié le

Une introduction aux architectures des systèmes d'information. Nous mettons l'accent sur l'architecture Client/Serveur (ou architecture 2-tiers)

Publié dans : Formation

Introduction aux architectures des SI

  1. 1. INTRODUCTION AUX ARCHITECTURES DES SYSTÈMES D’INFORMATION heithem.abbes@gmail.com2015-2016
  2. 2. Système d’information 3  Un système d’information est constitué d’un ensemble d’outils destinés à gérer, stocker et traiter des flux d’information.  L’informatique devient le principal outil d’un système d’information.  Les applications informatiques évoluent dans plusieurs domaines d’activité : comptabilité, administration, etc...  Objectif : obtenir une seule et même application qui gère l’ensemble du système d’informations dans l’ensemble des secteurs d’activité d’une entreprise
  3. 3. 4  1988 : Système AS/400 : système monolithique (Mainframe)  Outil simple et extrêmement complet d’un point de vue fonctionnel  Interface utilisateur: texte blanc sur fond noir avec des menus uniquement textuels Evolution des systèmes d’information
  4. 4. 5  Les applications composées d’un exécutable ont progressivement laissé la place à des applications accessibles par un navigateur Web.  Simplicité d’accès et de la mise à jour de l’application Evolution des systèmes d’information  Chaque utilisateur peut accéder à l’application à partir de n’importe quel PC connecté au réseau doté d’un navigateur Web  Mise à jour d’un seul serveur  Un poste de travail configuré avec l’application préalablement installée  Mise à jour : compiler et déployer l’application sur l’ensemble des postes Application avec exécutable Application web
  5. 5. Architectures des SI
  6. 6. Trois niveaux d’abstraction 7  Une application informatique peut être découpée en trois niveaux d'abstraction distincts :  Présentation  Logique applicative  Données Présentation Traitements Données Locaux Globaux
  7. 7. Présentation 8  La couche de présentation, encore appelée IHM (Interface Homme Machine), permet l'interaction de l'application avec l'utilisateur  Gère les saisies au clavier et à la souris et la présentation des informations à l'écran.  Doit être conviviale et ergonomique.
  8. 8. Logique applicative 9  La logique applicative décrit les traitements à réaliser par l'application pour répondre aux besoins des utilisateurs  2 types de traitements :  traitements locaux: les contrôles effectués au niveau du dialogue avec l'IHM (formulaires, champs, boutons radio…)  traitements globaux: les règles de l’application, appelées aussi logique métier (Business Logic)
  9. 9. Données 10  L'accès aux données, regroupe l'ensemble des mécanismes permettant la gestion des informations stockées par l'application.  Fonctions classiques d’un SGBD :  Définition de données  Manipulation de données  Sécurité de données  Gestion de transactions  etc. ..
  10. 10. Différentes architectures 11  Le découpage et la répartition des 3 niveaux d’abstraction permettent de distinguer les architectures suivantes  Architecture 1-tier,  Architecture 2-tiers,  Architecture 3-tiers,  Architecture n-tiers.
  11. 11. Architecture 1-tier12
  12. 12. Présentation 13  les trois niveaux (présentation, traitement, données) sont fortement liés et s'exécutent sur la même machine.  Deux types d'architectures mettant en œuvre des applications 1-tiers :  Les applications sur site central (Mainframe)  Les applications 1-tier déployées sur des machines indépendantes (Micro-Ordinateurs)
  13. 13. Applications sur site central – Mainframe (Années 1970-80) 14  Les utilisateurs se connectent aux applications exécutées par le serveur central (mainframe) à l'aide de terminaux passifs  le serveur central prend en charge la gestion des données et des traitements, y compris l'affichage qui est transmis sur des terminaux passifs. Présentatio n Traitements Données Mainframe Terminal Passif Modem Terminal passif Terminal passif
  14. 14. Mainframe 15  IBM, AS/400, RS6000, HDS, SUN Microsystems et Hewlett- Packard RS6000 AS/400
  15. 15. Terminal 16 Terminal
  16. 16. Les applications 1-tier déployées17  Progrès technologiques  1981 : IBM PC/XT, Intel 8088 4,57MHz, 64Ko de RAM, disquettes de 160Ko  Développement des réseaux locaux (LAN)  Développement des interfaces graphiques  Evolution vers une organisation moins centralisée  Déployer une application 1-tier sur plusieurs ordinateurs indépendants
  17. 17. Les applications 1-tier déployées18 ☹Conflits lors de la consultation ou de la modification simultanée ☹Difficulté d'assurer la confidentialité des données  Mise en œuvre :  Les utilisateurs se partagent des fichiers de données stockés sur un serveur commun  La gestion de données est exécutée indépendamment sur chaque client  La gestion des conflits d'accès aux données doit être prise en charge par chaque client de façon indépendante
  18. 18. Synthèse 19 Limites  Mainframe : interface utilisateur en mode caractères est obsolète  1 tiers déployé : gestion des données n’est pas fiable Avantages  Mainframe : fiabilité de l’application grâce à la gestion centralisée des données  1 tiers déployé : l'interface utilisateur moderne des applications Solution  Découper l’application en parties distinctes et coopérants :  gestion centralisée des données  gestion locale de l'interface utilisateur Naissance du concept du client/serveur
  19. 19. Concept du Client/Serveur20
  20. 20. Définition & structure 21  C’est une architecture permettant à un ensemble de machines interconnectées de partager des ressources  Un système client/serveur est animé par trois types d’acteurs :  Serveur(s) : machine qui dispose de ressources informationnelles et physiques qui les gère et accepte de les partager  Clients : machine demandant l’utilisation de ressources d’un serveur  Middleware(s) ou intergiciels : ensemble de mécanismes assurant la communication entre client et serveur
  21. 21. Dialogue client-serveur 22  Client  Initialise le dialogue en envoyant de requêtes  Serveur  Renvoie les données correspondant aux requêtes du client Client Serve ur Dialogue (Middleware) Initie et pilote le dialogue Répond au client et participe au dialogue
  22. 22. Middleware 23  Ensemble des couches logicielles qui permettent le dialogue entre le client et le serveur  Dialogue interprocessus : Inter Process Communication (IPC) qui s'appuie coté client et serveur sur API et FAP  API : Application Programming Interfaces  fonctions permettent à l'application de faire appel aux services proposés par le serveur  FAP : Format And Protocols pilote les échanges à travers le réseau :  synchronisation des échanges selon un protocole de communication Middleware = IPC = API + FAP
  23. 23. Types de middleware 24  Middleware de base de données  Middleware orienté messages (MoM)  Middleware orienté objets  Middleware orienté services
  24. 24. Classification du Gartner Group 25 Présentatio n Traitements Données Présentatio n Traitements Données Présentatio n Traitements Données Traitements Données Données Traitements Données Présentatio n Présentatio n Traitements Données Présentatio n Traitements Données Présentatio n Traitements ServeurRéseauClient Présentation distribuée Présentation distante Gestion distante des données Traitements distribués Données distribuées Données et trait. distribués Trafic réseau
  25. 25. 1. Présentation distribuée 26  Habillage graphique de l'affichage en mode caractères d'applications fonctionnant sur Mainframe  Revamping  L’intégralité des traitements est conservée sur mainframe ➡ La classification « client/serveur » du revamping est jugée abusive Présentatio n Traitements Données Présentatio n
  26. 26. 2. Présentation distante 27  Correspond au client/serveur de présentation  Principe  Les traitements et la gestion des données sont exécutés sur le serveur  le client prend en charge l'affichage  Inconvénients  Trafic réseau important  Pas de répartition de la charge entre client et serveur Présentatio n Traitements Données
  27. 27. 2. Présentation distante 28  X Window System ou X11 permet la présentation distance  interface utilisateur graphique qui gère l'interaction homme-machine par l'écran, la souris et le clavier des ordinateurs distants
  28. 28. 3. Gestion distante des données29  Correspond au client-serveur de données  Type de client/serveur le plus répandu  Principe  L'application fonctionne dans sa totalité sur le client  La gestion et le contrôle des données sont assurés par un SGBD centralisé.  Inconvénients  Trafic réseau important  Ne soulage pas le poste client, qui exécute les traitements Présentatio n Traitements Données
  29. 29. 4. Traitement distribué 30  Correspond au client/serveur de traitements  Principe  Distribuer les traitements entre le client et le serveur  Utiliser le mécanisme d'appel de procédure distante (RPC)  Avantages  Optimiser la répartition de charge de traitements entre machines  Limiter le trafic réseau  Inconvénients  Les traitements doivent être connus du serveur à l'avance Traitements Données Présentatio n Traitements
  30. 30. 5. Bases de données distribuées31  Variante du client/serveur de données  Principe: une partie de données est prise en charge par le client.  Modèle intéressant, si l'application doit  gérer des données volumineuses  accélérer l’accès sur certaines données  garantir une grande confidentialité  Inconvénients  Le client réalise la majorité des traitements  Mise en œuvre complexe Données Présentatio n Traitements Données
  31. 31. 6. Données et traitements distribués32  Principe: répartir la charge des données et des traitements entre le client et le serveur  Modèle très puissant et tire partie de la notion de composants réutilisables et distribuables  Architecture la plus complexe à mettre en œuvre Traitements Données Présentatio n Traitements Données
  32. 32. Remarques 33  Les différents types du modèle C/S proposés par Gartner Group sont indépendants et combinables.  Le modèle client-serveur de données, appelé aussi C/S de première génération, suit une architecture 2-tiers.
  33. 33. Architecture 2-tiers
  34. 34. Présentation de l’arch. 2-tiers (1/2)35  Architecture 2-tiers ou C/S de première génération ou C/S de données  Le client s’occupe de la présentation et la logique applicative  Le serveur s’occupe de la gestion des données  Exemple : Application de gestion de stock fonctionnant sur Windows et exploitant un SGBD (oracle) centralisé.  La gestion des données est prise en charge par un SGBD centralisé, s'exécutant le plus souvent sur un serveur dédié  serveur de données  Le serveur de données est interrogé en utilisant un
  35. 35. Dialogue client-serveur de données36 Présentatio n Traitement s Données 1. Requête utilisateur 2. Envoie de requête 3. Retour de la réponse Client Réseau Serveur Moteur SGBD  Echange de messages à travers le réseau reliant les deux machines Select nom, adresse from client where numclient = 254 Durand, 1 place de la république ➡ Mécanismes de communication complexes qui sont, en général, pris en charge par un middleware de base de données.
  36. 36. 37 Types de middleware de BD Middleware propriétaire  Toutes les données sont gérées par un même SGBD  L’application utilise une API propriétaire au SGBD  Avantages  Utilisation de toutes les fonctionnalités du SGBD  Meilleur temps de réponse  Inconvénients  Dépendance totale du SGBD : le changement du SGBD entraîne la réécriture de la couche traitement  Exemples:  SQL*Net d’Oracle  Open Client de Sybase
  37. 37. 38 Types de middleware de BD Middleware indépendant  Indépendant du SGBD  Avantages  Indépendance par rapport au SGBD  Possibilité de connexions avec différentes BD  Inconvénients  Besoin d’un pilote pour chaque SGBD  Utilisation partielle des fonctionnalités des SGBD  Perte de performance  Exemples:  ODBC de Microsoft  JDBC  IDAPI de Borland, IBM, Novell et Wordperfect
  38. 38. Atelier 39  Réaliser une application client/serveur de données qui permet de gérer la liste des clients d’une société  Dans le serveur de données, créer une table client avec les champs suivants : nom, prénom, cin(clé primaire), téléphone.  Créer une application cliente Java (en utilisant Swing ou AWT) qui permet d’ajouter, supprimer, chercher et modifier des clients.  Utiliser MySQL comme SGBD et Netbeans comme Environnement de Développement Intégré (EDI).
  39. 39. 40  https://fr.netbeans.org/edi/articles/concours/my sql-client.html  https://netbeans.org/competition/win-with- netbeans/mysql-client.html

×