Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Description du thme
Proprits Intitul long Formation concerne Matire Prsentation Description
Architecture technique des progiciels de gestion intgre (PGI) Toutes les formations dconomie-Gestion utilisatrices des Progiciels de gestion Intgrs. Systme dinformation, Informatique Cette production explore les architectures techniques des progiciels de gestion intgre (PGI) travers lexemple de deux solutions : Cegid Business Suite et OpenERP de la socit Tiny. Architecture technique des applications, modle client-serveur, composants logiciels, base de donnes relationnelle Avec le programme de GEOSI en BTS IG Notions dapplication, de base de donnes, SQL. Architecture technique, serveur, client, SQL, application logicielle Christian Draux avec lquipe SI du rseau CERTA. Merci Laurence Pitoiset pour ses questions pertinentes 1.0 Juin 2009
La gnralisation des rseaux informatiques a favoris le dveloppement de progiciels qui permettent aux utilisateurs dune organisation de travailler avec une mme application pour accder une base de donnes commune. Cette possibilit nouvelle offre de nombreux avantages : centralisation des informations en un mme lieu ; traabilit des informations ; support des processus de lorganisation. La mise en uvre des progiciels de gestion intgrs ( PGI) repose sur une architecture technique quil importe de comprendre afin de mesurer les potentialits offertes par ces nouveaux outils.
Architecture technique
Larchitecture technique reprsente la faon dont les lments matriels et logiciels sont organiss au sein du systme informatique dune organisation. Sur le plan matriel, elle comprend : des ordinateurs, postes de travail et serveurs, des composants rseau : commutateurs, routeurs, des mdias de communication : cbles, ondes. Sur le plan logiciel, pour communiquer en rseau il faut respecter des protocoles de communication et installer les composants logiciels capables dmettre et recevoir les messages changs par les applications mtiers. Les services offerts par les protocoles assurent les changes de donnes (IP), les communications vocales (voix sur IP) ou la diffusion dimages (visioconfrence). http://www.reseaucerta.org CERTA - juin 2009 v1.0 Page 1/20
La plupart des rseaux aujourdhui et le rseau Internet notamment, utilisent les protocoles TCP/IP pour assurer les changes entre les htes (machines) dun rseau. IP (Internet Protocol) fournit un systme dadressage qui permet toutes les machines appartenant un mme rseau de communiquer entre elles et, par un mcanisme de routage, aux diffrents rseaux de communiquer entre eux. TCP (Transmission Control Protocol) sappuie sur le protocole IP pour assurer le transport des donnes entre applications de manire fiable. Dautres protocoles applicatifs, HTTP pour le transmission des pages Web, SMTP/POP pour lacheminement des messages lectroniques, FTP pour le transfert de fichiers sappuient sur les protocoles TCP et IP pour rendre leurs services.
http://www.reseaucerta.org
Page 2/20
Modle client-serveur
Une application informatique permet dexcuter des tches sur un ordinateur pour rpondre aux besoins dune organisation. Elle assure gnralement trois fonctions : le dialogue avec lutilisateur, le traitement de linformation, laccs aux donnes. Ces trois fonctions peuvent tre prises en charge par diffrents composants situs sur un ou plusieurs ordinateurs relis en rseau. La rpartition de la charge de travail entre le serveur et les postes clients implique des architectures diffrentes que lon peut diffrencier en fonction des fonctionnalits prises en charge par la partie cliente de lapplication. On distingue : le client lourd : il sagit dune application installe sur le poste de travail qui prend en charge tous les traitements et ne sadresse au serveur que pour lchange des donnes. Il a lavantage de possder une IHM (Interface Homme Machine) trs sophistique mais il est passablement couteux en termes de dploiement et de maintenance. Exemple : pour Cegid, il faudra rinstaller lapplication chaque nouvelle version (une par an en moyenne) sur chaque poste. le client lger : on utilise un simple navigateur web (Internet explorer, Mozilla firefox) pour accder au logiciel. Le navigateur se charge du dialogue avec lutilisateur. Ce client ne ncessite aucun dploiement, il est utilisable partout avec une connexion internet un cot ngligeable. Pour enrichir lIHM standard du langage HTML, la technologie appele Ajax (utilise par exemple les applications de Google) est aujourdhui de plus en plus utilise. Exemple : dans le cas de OpenERP, une mise jour de lapplication serveur est immdiatement accessible depuis les navigateurs. le client riche est un compromis entre les approches ci-dessus. Il offre une IHM aussi labore que le client lourd et utilise une connexion Internet pour dialoguer avec le serveur. Il repose le plus souvent sur une couche applicative .Net ou Java qui doit tre prsente sur le poste client. Il offre lavantage dun dploiement et de mise jour simplifis par rapport au client lourd. Exemple : pour Cegid utilis en Web Access , lors de larrive dune nouvelle version, il suffira dinstaller lapplication sur le serveur. Pour le poste client un message saffichera pour demander lutilisateur sil accepte une nouvelle version, linstallation sera rapide. Dans le cas dOpenERP, moins abouti dans ce domaine, il faudra la sortie dune nouvelle version rinstaller le serveur et le client (priodicit variable) Cegid propose plusieurs versions de son PGI en fonction de la taille de lorganisation et du mtier de lentreprise. Nous retiendrons deux versions utilisables uniquement en environnement Windows : Cegid Business Suite, solution gnraliste pour les PME en mode client-serveur ; Cegid Business Suite Web Access, identique en termes de fonctionnalits la version prcdente mais base sur un client riche. OpenERP offre une seule version de son progiciel en mode client-serveur accessible depuis un poste utilisateur sous Windows ou Linux de deux faons diffrentes : laide dun client riche ; laide dun navigateur Web (Mozilla Firefox ou Internet Explorer). Le choix dun mode de fonctionnement pour chacun de ces deux PGI implique le choix dune architecture technique qui aura des consquences sur lergonomie offerte aux utilisateurs et leffort de maintenance pour ladministrateur responsable de linstallation et des mises jour.
http://www.reseaucerta.org
Page 3/20
Cegid utilise un serveur de bases de donnes (SQL Server priotairement) pour stocker les donnes de lentreprise (premier tiers). La partie application rside sur les postes clients sous la forme de programmes indpendants (second tiers) : ce sont les modules du PGI (comptabilit, gestion commerciale, immobilisation, etc.). Chaque application prend en charge : le traitement sur les donnes : contrle des valeurs saisies, interrogation de la base de donnes, rcupration des donnes utiles ; la mise en forme des donnes demandes par lutilisateur : formulaires et tableaux lcran, impression de documents, gnration de documents lectroniques (feuilles de calcul, documents PDF, documents au format traitement de texte) ; le dialogue avec lutilisateur : affichage lcran et rcupration des valeurs saisies au clavier ou des ordres donns avec la souris.
Pilote Odbc : SQLServer Architecture technique PGI CEGID
Requte SQL
Mdiateur : ODBC
Base de donnes commune tous les modules Poste client Modules du logiciel : comptabilit, gestion commerciale, etc Adresse IP Serveur de donnes Adresse IP
http://www.reseaucerta.org
Page 4/20
Pour accder au SGBD, lapplication utilise un mdiateur daccs aux donnes. Le mdiateur d'accs aux donnes est un composant logiciel qui sert d'interface entre une application cliente et un SGBD. Il est install sur le poste client. Son rle est de traduire les requtes SQL mises par le client dans le langage adapt au SGBD cible. Ainsi, une mme application cliente peut s'adresser indiffremment diffrents SGBD. Le dialogue entre le PGI et le SGBD se droule de la faon suivante : ds que le PGI a besoin daccder aux donnes gres par le SGBD, il construit une requte quil transmet au mdiateur ODBC (Open DataBase Connectivity), le mdiateur traduit la requte en fonction des caractristiques du SGBDR fournies par le pilote puis ladresse au serveur pour lexcuter. Les composants logiciels Ct serveur Le gestionnaire de base de donnes SQL Server Le programme Le serveur de base de donnes est un programme qui lors dune installation par dfaut se situe lemplacement suivant : C:\Program Files\Microsoft SQL Server\MSSQL\Binn
Serveur BDD
Les donnes Lors de linstallation sur le serveur, un rpertoire PGI0x est cr. Il comprend un sous rpertoire DAT qui contient un dossier modle appel MODELE_ENTP. Ce modle comprend toutes les tables ncessaires la cration dun nouveau dossier du PGI. Une base de donnes est compose de deux fichiers : un fichier portant lextension .mdf (Master Database File) qui contient les donnes et un fichier portant lextension ldf (Log Database File) fichier journal des transactions. SQL Server pratique la journalisation des oprations, ce qui permet de reconstituer des donnes manquantes en cas de sinistre.
Le fichier avec lextension .bak est une sauvegarde qui permet de crer de nouveaux dossiers. La cration dun nouveau dossier entrane la cration dun nouveau rpertoire prfix avec la lettre D. Exemple : le dossier LPP sappelle DLPP. Les fichiers .bak doivent tre sauvegards rgulirement pour tre restaurs en cas de sinistre. Contrle du service SQL Server Le service serveur de base de donnes manifeste sa prsence par lapparition dune icne dans la barre des tches du serveur qui donne accs une bote de dialogue :
http://www.reseaucerta.org
Page 5/20
Un service est une application excute sur un serveur qui attend les requtes dapplications clientes pour les traiter. Il doit donc normalement dmarrer en mme temps que le serveur. On peut, partir de ce gestionnaire des services de Windows ou de SQL Server, piloter la disponibilit du service SQL Server. Sagissant dun service, il doit fonctionner en permanence pour rpondre aux requtes des clients, loption Dmarrage automatique du service est donc coche. Les outils de gestion de CEGID Il nexiste pas de composant applicatif mtier du PGI install sur le serveur. Cependant, deux outils sont installs pour pouvoir grer les bases de lapplication : Ladministrateur de socits : un outil de gestion des dossiers de lapplication.
Cet outil permet de fixer les paramtres gnraux dun dossier de CEGID : droits des utilisateurs, activation de certaines fonctionnalits.
http://www.reseaucerta.org
Page 6/20
Ce programme permet dassurer la maintenance des bases de lapplication. Il ralise les sauvegardes, les copies et la restauration des bases utilises par le PGI. Ct client Les programmes Au moment de linstallation, on choisit pour chaque poste, les composants installer : Menu gnral de lapplication Rserv aux experts-comptables changes avec les partenaires Comptabilit Gestion commerciale Suivi des affaires commerciales Importation de donnes Suivi des oprations bancaires Prparation DADS Gestion des transactions financires Prparation de la paie Paie Gestion des immobilisations Remarques : il existe un certain recouvrement entre les modules installs notamment au niveau financier. linstallation dun module ne signifie pas sa pleine fonctionnalit, il faut activer chaque module laide dune cl dactivation pour pouvoir sen servir, on parle de srialisation.
http://www.reseaucerta.org
Page 7/20
Les rpertoires dinstallation Lensemble des programmes est runi dans le sous-dossier APP du rpertoire principal de linstallation PGI00. Les programmes renferment toute la logique mtier de lapplication. Ils permettent lutilisateur de saisir des donnes de gestion de lentreprise et de produire les documents (facture, grand livre, tableau de bord) ncessaires aux diffrents acteurs pour laccomplissement de leurs activits.
Les documents Les donnes sont stockes sur le serveur, elles napparaissent donc pas sur le poste client mais lapplication permet de gnrer des documents transmis aux partenaires de lentreprise (documents commerciaux) ou utiliss en interne. Ces documents sont situs dans le dossier STD. Dautres documents permettent la saisie des donnes laide dun logiciel bureautique, tableur par exemple, mais cette mise en uvre est plus complexe. Le dialogue entre le client et le serveur Sagissant dune application client-serveur, cest le client qui va initier la communication avec le serveur. Il utilise : le mdiateur daccs aux donnes Tous les SGBDR utilisent le langage SQL pour traiter les donnes quils prennent en charge mais le dialogue avec les applications clientes nest pas normalis. Il existe cependant des protocoles de communication respects par les acteurs du march. Cest le cas dODBC (Open DataBase Connectivity) qui ncessite : - un composant capable de dfinir les sources de donnes ODBC. Ce composant porte le nom d Administrateur de sources de donnes ODBC :
http://www.reseaucerta.org
Page 8/20
Il permet de dfinir les communications avec un grand nombre de SGBD. Ceci en mode client-serveur en communiquant avec un SGBD ou en mode accs un fichier comme Access ou mme Excel. un pilote pour le SGBDR utilis (SQL Server ici) :
les paramtres qui permettent daccder une base de donnes prcise. Il faudra fournir le nom ou ladresse IP du serveur, le nom de la base de donnes et les paramtres dun compte utilisateur autoris se connecter sur le serveur de base de donnes.
Dsignation du serveur
Lapplication CEGID est trs bien intgre dans lenvironnement Windows et elle est capable dutiliser les comptes utilisateurs de la base annuaire dun domaine Windows :
http://www.reseaucerta.org
Page 9/20
Nom dutilisateur et mot de passe dun compte autoris se connecter sur le SGBDR
Ainsi en cochant la premire option, tout changement sur un compte de lannuaire Windows ne ncessitera pas de rpter ce changement sur le SGBDR. Cette facult rpond au principe de lauthentification unique (Single Sign On) plus confortable pour les utilisateurs et les administrateurs.
dmarrage de lapplication Le lancement dun module depuis un poste client propose une fentre de connexion :
Il convient de choisir une socit dans la liste droulante. Do provient cette liste ? Cette liste est stocke dans un fichier situ sur le poste client dans le rpertoire C:\Windows et appel cegidpgi.ini.
http://www.reseaucerta.org
Page 10/20
Pour chaque socit les paramtres sont les suivants (extrait) : [STOCKPRO] Nom qui apparat dans la liste Share=\\ASUS\PGI00$ Chemin rseau de lemplacement de lapplication Dir=\\ASUS\PGI01$\Dstockpro Chemin rseau du dossier DataBase=stockpro Nom de la base de donnes User=4C12B1886A Nom crypt de ladministrateur Password=4C12B1886A Mot de passe crypt de ladministrateur LastUser= LAPOINTEM Nom du dernier utilisateur La modification de ce fichier est ralise par le logiciel sur le poste serveur chaque cration dune nouvelle socit et nest pas transmise aux postes clients. Le fichier doit donc tre rpliqu manuellement sur tous les postes, il faut disposer du privilge Administrateur du systme dexploitation pour le dupliquer. Dialogue entre un module et le SGBDR Les changes entre le module lanc sur le poste client et le serveur de base de donnes seffectuent laide de requtes SQL :
Rponse du serveur
http://www.reseaucerta.org
Page 11/20
Analyse de la requte (extrait) SELECT E_JOURNAL, E_DATECOMPTABLE, E_NUMEROPIECE, E_GENERAL, E_AUXILIAIRE, E_REFINTERNE, E_DEBIT, E_CREDIT, E_NUMLIGNE, E_DATEPAQUETMIN FROM ECRITURE WHERE (E_DATECOMPTABLE >= '01/01/2008' AND E_DATECOMPTABLE < '02/26/2008' AND E_NUMLIGNE >= 1 AND E_NUMLIGNE <= 9999 ORDER BY E_DATECOMPTABLE DESC
Tous les champs de la table sont prfixs par la premire lettre du nom de la table. On y retrouve aisment les noms qui figurent en tte de colonne. Exemple : len-tte Date correspond au champ E_DATECOMPTABLE.
Toutes les informations proviennent dune seule table ECRITURE Les conditions permettant de dlimiter lintervalle des dates et le nombre maximal dcritures affiches sont dfinies dans la clause WHERE Les lignes sont affiches en ordre dcroissant des dates denregistrement.
http://www.reseaucerta.org
Page 12/20
Rsultat : -----------------------------------------------------------------------------------------
Requte : URL
Reprage des composants Les composants sont facilement reprables car chacun est identifi par un dossier dans larborescence du logiciel. Lappellation All-In-One (Tout-en-un) matrialise le fait qu partir dun excutable on peut installer tous les composants de lapplication.
http://www.reseaucerta.org
Page 13/20
Ct serveur Le gestionnaire de base de donnes libre PostGreSQL Server Dans sa version pour Windows linstallateur du programme installe galement le serveur de base de donnes PostGreSQL Server. Le programme est install sur la mme partition que lapplication dans le dossier C:\Program files dans un environnement Windows : Le nom du dossier de linstallation montre quil a t install par lapplication OpenERP Server. Le programme qui gre le SGBD se nomme postgres.exe. Le logiciel est install avec un outil dadministration appel pgAdmin3. Les bases sont stockes dans le rpertoire \data\ base\. On observe quil y a actuellement 5 bases existantes.
Lapplication serveur OpenERP Server OpenERP Server est la partie de lapplication qui gre la logique mtier. Cest elle qui prend en charge la construction des rponses apportes aux requtes du client : recherche des factures dun client, affichage dun extrait de compte, saisie dune criture comptable. Elle est crite en langage Python et est installe, elle aussi, dans le dossier C:\Program files. la racine du dossier OpenERP Server se trouve les lments qui composent le serveur applicatif. Ces lments prennent en charge : les liens avec le systme dexploitation (Windows ou Linux) ; les requtes des clients ; les accs la base de donnes. Les diffrents dossiers prsents la racine de lapplication contiennent les parties de lapplication : addons renferme la logique mtier (achats, ventes, ressources humaines, etc.) ; doc est utilis pour migrer dune ancienne version vers une nouvelle ; i18n contient les fichiers des langues pour linternationalisation ; service permet lapplication de fonctionner comme un service gr par le systme dexploitation. Le programme dmarre alors automatiquement en mme temps que la machine serveur.
http://www.reseaucerta.org
Page 14/20
Lapplication peut tre lance par le programme openerp-server.exe qui utilise plusieurs bibliothques dont une sappelle python25.dll qui permet dexcuter les scripts crits dans le langage Python. Elle utilise des composants libres capables de dessiner un graphique, de construire un rapport, denvoyer un message, de grer les changes entre le serveur et les clients. Ces composants sont regroups dans une archive compresse appele library.zip. Les modules sont regroups dans le rpertoire addons. Le premier, account , gre le plan de comptes de lentreprise, le second le plan comptable analytique. Il y en a 140 dans la version de base complte du logiciel. Leur importance est variable, certains prennent en change la totalit dune fonction alors que dautres nen ralisent quune infime partie. Les modules les plus courants grs par le serveur sont visibles sur le poste client partir du menu gnral : Partenaires comprend les clients et fournisseurs Tableaux de bord fournit des indicateurs de gestion Produits gre lensemble des articles et tarifs Ressources humaines soccupe de la gestion du personnel Finance/comptabilit regroupe les oprations comptables Gestion des stocks enregistre les entres et sorties de stock Gestion des achats prend en charge les commandes fournisseurs Gestion de Production lance les ordres de fabrication Gestion des ventes gre la chane du devis la facture Gestion des documents est une GED intgre GRC et GRF correspondent la gestion de la relation client et fournisseur Administration paramtre le logiciel : menu, utilisateurs, traitements automatiss Le choix dun profil Un profil est un ensemble de modules installs en fonction de lactivit de lentreprise (entreprise de service, de production). Lors de la cration dun dossier, le logiciel demande le profil gnrer : Profil Contenu Pour paramtrer soi-mme le dossier. Seuls les Minimum (Minimal Profile) modules administration, partenaires et comptabilit sont installs. Comptabilit uniquement (Accounting only Installe le module comptable uniquement. profile) Installe les modules prsents dans le menu du Entreprise de production (Manufacturing industry tableau ci-dessus. Rserv aux entreprises de profile) production. Installe les modules relatifs la gestion de projet Socit de service (Service Company profile) et aux services. Utilisables par les entreprises du secteur tertiaire. http://www.reseaucerta.org CERTA - juin 2009 v1.0 Page 15/20
Le choix dun profil va dterminer le nombre de modules installs. Mais ce choix nest pas dfinitif car il sera possible par la suite dajouter des modules en fonction des besoins de gestion. Ces modules sont librement disponibles dans un site Web sur lequel les dveloppeurs dposent des programmes librement tlchargeables (on parle de forge) : http://doc.openerp.com/modindex.html Ils sont conus par la socit Tiny, par ses partenaires ou par des dveloppeurs indpendants. La gestion des modules seffectue directement depuis le logiciel o lon peut ajouter, mettre jour, supprimer les modules que lon souhaite utiliser ou non. Ct client Pour accder au serveur OpenERP Server, on peut installer un programme appel OpenERP Client sur les postes de travail. Il est possible de linstaller sur une cl USB. Le programme qui permet de lancer le client OpenERP sappelle OpenERP-client.exe. Larborescence du dossier OpenERP Client comprend les bibliothques ncessaires laffichage des formulaires, des graphiques et des rapports.
http://www.reseaucerta.org
Page 16/20
Cette solution porte le nom de client riche, elle repose sur une couche applicative et qui offre au niveau de linterface homme machine les mmes possibilits, ou presque, que le client lourd. Poste Client Cegid
Modules clients installs
Rsultat : -----------------------------------------------------------------------------------------
Requte : URL
Le service Web Access est prsent sous la forme du programme PGIService.exe. Les modules (eCGS3.exe dsigne le module comptable) sont stocks dans ce rpertoire pour tre prt tre dploys sur les postes clients Le dossier wwwroot comprend les pages HTML qui offrent les liens dinstallation du client riche.
http://www.reseaucerta.org
Page 17/20
Rsultat : -----------------------------------------------------------------------------------------
Requte : URL Service Requte : URL Service Application Application web OpenERP
Requte SQL
Service SGBD
Page HTML
Navigateur
Poste client
http://www.reseaucerta.org
Page 18/20
Larchitecture comprend alors 4 tiers : premier tiers : le navigateur sur le poste client.
deuxime tiers : un service Serveur Web crit en Python qui prend en charge les requtes des clients et les transmet au serveur dapplication Le service Web ncessite la prsence de tous les composants du langage Python ainsi que de composants spcialiss : accs la base de donnes, cration de composants graphiques, dialogue avec le serveur dapplication, gnration de documents au format PDF. Lapplication Client web sappuie sur ces diffrentes briques logicielles pour traiter les requtes des clients.
troisime tiers : le serveur OpenERP dont le rle est identique larchitecture 3 tiers dernier tiers : le SGBDR
http://www.reseaucerta.org
Page 19/20
Lexique
Rseau Poste de travail Hte dun rseau Serveur Ensemble des quipements matriels et logiciels permettant la communication entre ordinateurs. Ordinateur et priphriques au service dun utilisateur. Quand il est reli un rseau, on parle dun hte du rseau. Ordinateur capable de fournir un service dautres ordinateurs via le rseau. Exemple : on parle de serveur de donnes pour un ordinateur qui hberge un SGBD. Application capable de rpondre des requtes soumises par dautres applications. Fonction ou traitement accessible aux utilisateurs dun rseau. Unit de traitement au sein du systme dinformation dune organisation prenant en charge des besoins mtier. Dans lexpression Architecture n-tiers , le terme tiers signifie partie ou couche applicative ou lment composant dune application. Par exemple : application 3-tiers, applications qui ncessite les services de 3 composants logiciels pour fonctionner. Ensemble de rgles publiques dfinissant le fonctionnement dun service de communication. Adresse dun hte sur un rseau IP (Internet ou Intranet) Reprsentation graphique des quipements matriels et logiciels prsents sur un rseau. La reprsentation peut ne pas concerner tous les quipements mais seulement ceux qui correspondent un service particulier. Mise en place et paramtrage de lensemble des composants matriels et logiciels ncessaires au fonctionnement dune application. La normalisation consiste dfinir des normes dans un rfrentiel public destin harmoniser l'activit d'un secteur. La normalisation (ou standardisation) est ralise par des organismes spcialiss, qui sont le plus souvent des organismes gouvernementaux ou professionnels.
Service
Application
Tiers
http://www.reseaucerta.org
Page 20/20