Introduction aux architectures des SI

1 077 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
1 commentaire
7 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
1 077
Sur SlideShare
0
Issues des intégrations
0
Intégrations
7
Actions
Partages
0
Téléchargements
0
Commentaires
1
J’aime
7
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • Un « Post-it » laissé par une secrétaire sur le bureau de son directeur pour lui transmettre un message est un système d’information.
    L’informatique est un outil permettant de compléter et améliorer le système d’information déjà en place.

    Cette démarche qui consiste à faciliter la diffusion de l’information au sein d’une organisation ne repose pas uniquement sur un système informatique.
  • - Avec l’évolution des technologies, les applications ont progressivement évolué, les attentes des utilisateurs et des clients également.

    The IBM System i is IBM's previous generation of midrange computer systems for IBM i users, and was subsequently replaced by the IBM Power Systems in April 2008.
    The platform was first introduced as AS/400 on June 21, 1988 and later renamed as the eServer iSeries in 2000. As part of IBM's Systems branding initiative in 2006, it was again renamed to System i.
    In April 2008, IBM announced its integration with the System p platform. The unified product line is called IBM Power Systems and features support for the IBM i (previously known as i5/OS or OS/400), AIX and Linux operating systems. Power4 or older hardware ran OS/400 exclusively.
  • Les applications de type « client lourd » composées d’un exécutable à lancer ont progressivement laissé la place à des applications dites « client léger » accessibles à partir d’un réseau par l’intermédiaire d’un navigateur Web.
  • Evolution des architectures distribuées vers les architectures orientées services
  • Ajouter des figures pour IHM
  • Logique applicative (Business Logic)
    Ensemble de traitements nécessaires pour répondre aux besoins des utilisateurs :
    Traitements applicatifs
    Traitements sur les données
  • Dans un contexte multiutilisateurs, on distingue deux types d'architectures mettant en œuvre des applications 1-tiers :

    Les applications réparties (appelées aussi applications 1-tier déployées) sur des machines indépendantes (Micro-Ordinateurs) communiquent par partage de fichiers
  • Historiquement,
    Les applications sur site central étaient les premières à proposer un accès multiutilisateurs.
    Les utilisateurs se connectent aux applications exécutées par le serveur central (le mainframe) à l'aide de terminaux passifs se comportant comme esclaves.
  • - Coût des technologies en baisse
  • - Avec l'arrivée des premiers PC en réseau, il est devenu possible de déployer une application 1-tier sur plusieurs ordinateurs indépendants.

    Ce type de programme est simple à concevoir et à mettre en œuvre.
    Il existe de nombreux environnements de développement (dBase, Ms Access, Lotus Approach, Paradox... ) qui sont souvent intégrés aux principales suites bureautiques.
    L'ergonomie des applications mises en œuvre, basée sur celle des outils bureautiques, est très riche.

    La gestion des conflits d'accès aux données doit être prise en charge par chaque programme de façon indépendante, ce qui n'est pas toujours évident.
    Environnements de développement : (dbase, MsAccess, Lotus Approach…)

    Solution à réserver à des applications non critiques exploitées par de petits groupes de travail

  • 1 tiers déployé : gestion des données n’est pas fiable au delà d'un certain nombre d'utilisateurs.
  • C’est une architecture de systèmes informatiques dans laquelle un ensemble de machines interconnectées partagent des ressources

    constitué de trois composantes :
    Présentation
    Logique applicative
    Gestion des données
  • Une conversation maître-esclave:
    Client :maître, Serveur: escalve
    L’opposé des applications sur site central (mainframe)).
  • API : Application Programming Interfaces (interface de programmation au niveau applicatif)
    - fonctions encapsulées dans l'API permettent à l'application de faire appel aux services proposés par le serveur
    - Point d’entrée unique pour les applications  accès et manipulation unifiés


    Ce dialogue se base sur un protocole applicatif commun, défini par l'API du middleware.
    Gartner Group définit le middleware comme une interface de communication universelle entre processus.
    Représente l’élément le plus important de toute application client-serveur.

  • Middleware de base de données
    Moniteurs transactionnels
    Middleware orienté messages (MoM)
    Middleware orienté objets
    Middleware orienté services
  • Le poste client conserve une position d'esclave par rapport au serveur
  • Xwindow : environnement graphique fenetré (xclock, xeyes, xlogo…)
  • Essaye de détailler le point inconvénient
    N'offre pas la même souplesse que le client-serveur de données puisque les traitements doivent être connus du serveur à l'avance.
  • Modèle très puissant et tire partie de la notion de composants réutilisables et distribuables pour répartir au mieux la charge entre client et serveur
  • Les deux premiers types (présentation distribuée et présentation distance) ne correspondent pas, vraiment, à des applications C/S.

    La première solution qui met en œuvre un modèle client-serveur correspond au C/S de données


    Les deux premiers types (présentation distribuée et présentation distance) ne correspondent pas, vraiment, à des applications client-serveur.
    Les traitements et la gestion des données sont réalisées par le serveur

  • Changer l’exemple
  • A. Abdellatif
  • A. Abdellatif
  • 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

    ×