Présentation de l’Analyse et Conception des Systèmes d’Information ACSI
Définition L’A.C.S.I. a pour objet l’analyse et la conception des systèmes d'information (SI) des organisations. Le SI regroupe l’ensemble des ressources permettant de gérer (saisir, stocker, traiter, restituer, transmettre) toutes les informations utiles aux décideurs et aux opérationnels. Système de pilotage Flux de décision Système d’ information Flux d’information Flux physique Système opérant
on s'intéresse en général à un domaine d'activité de l'entreprise : ventes, production, logistique, finances, RH, … on prend en compte les besoins des utilisateurs, on définit le problème à résoudre (fonctionnalités et qualités attendues). analyse
on définit une solution informatique : - structuration des données, - organisation des traitements, définition des postes de travail, choix techniques : matériels, langages de programmation, logiciels de gestion de données (SGBD), … conception Démarche globale d’informatisation : analyse du problème conception de la solution réalisation du système
En d’autres termes, il s’agit d’apprendre une manière professionnelle de travailler pour produire des applications informatiques complexes au sein des entreprises.
Au centre de la démarche d’ACSI on trouve la notion de modèle. Un modèle est une représentation simplifiée d’une réalité sur laquelle on veut être renseigné (ex: plan, carte, schéma, …). Un modèle s’exprime avec un ensemble de concepts, dotés de règles d’utilisation et de représentations (souvent graphiques). En ACSI les modèles servent à : communiquer : vérifier que l’analyste a bien compris les utilisateurs grâce à un modèle du problème (phase d’analyse), préparer la réalisation : grâce à un modèle de la solution (phase de conception).
Un exemple de modèle d’ACSI
(analyste, chef de projet, architecte SI, consultant, …). Qualités pour devenir un bon analyste-concepteur qualités relationnelles (dialogue avec les utilisateurs, travail en équipe), ténacité et rigueur (trouver ce qui est important, ne pas se noyer dans les détails, fuir l’à peu près, …), créativité (peu de recettes utilisables, inventer une solution adéquate, …). Métiers difficiles mais plus valorisant et mieux payés que les métiers du développement et de la technique (analyste, chef de projet, architecte SI, consultant, …).
L’ACSI recouvre l'ensemble des modèles, des langages, des démarches, des outils (intellectuels et logiciels) qui permettent d’analyser les SI, de définir des solutions informatiques et de gérer leur évolution. Une méthode d’analyse et conception propose une démarche, des modèles, des langages, des outils spécifiques. Les méthodes ont pour origine des Universités, des Sociétés de Service et d’Ingénierie en Informatique (SSII), des organismes de normalisation, des constructeurs. Merise est (en France) la méthode d’analyse et conception la plus connue et la plus utilisée (citée par 70% des entreprises).
Bref historique de l’informatique et de l’ACSI Étape 1 : les années 60 Automatisation d'un processus administratif ponctuel (édition des factures, édition des bulletins de paie). Technique informatique : programmes en temps différé sur des lots de données (traitement ‘batch’), lots de données sur bandes magnétiques (accès séquentiel uniquement). ACSI : résultats du programme -> fichiers de données, enchaînement de phases avec fichiers intermédiaires.
Exemple : chaîne de facturation batch Produits et stocks triés N° Client triés Commandes Saisie des commandes Valorisation des lignes Calcul factures Lignes de commande Lignes valorisées Tri par N° produit Anomalies Anomalies Tri par N° client Édition Lignes de commande triées Lignes valorisées triées Factures
Étape 2 : années 70 Intégration partielle des chaînes de traitement par partage de fichiers (ex: facturation + comptabilité, facturation + stocks, …) Technique informatique : disques magnétiques (possibilité d’accès direct), gros systèmes (multiprogrammation). ACSI : méthodes fonctionnelles SASD (Yourdon), SADT, … fonctions et flots de données (diagramme de flots de données) décomposition des fonctions, jusqu’à des fonctions élémentaires facilement programmables, … programmation : COBOL + fichiers (séquentiels et directs).
Exemple de décomposition fonctionnelle commandes factures Gestion des ventes commandes calcul livraisons commandes livrées stock factures calcul factures tarifs comptes poursuite de la décomposition intégration gestion stocks, tenue comptes clients, …
Technique informatique : Étape 3 : années 80 -> Intégration complète des applications autour d’une base de données, traitement immédiat des données (saisie interactive, consultation des données en temps réel), applications d'aide à la décision. Technique informatique : terminaux écran dans les services utilisateur, OS multitâches, minis et micro-ordinateurs, téléinformatique, systèmes de gestion de bases de données. ACSI : méthodes systémiques (Merise, NIAM, …) modéliser données et traitement d’un SI, utilisation des SGBDR (relationnel) et des L4G, ateliers de génie logiciel.
Modélisation globale du SI Modèle des traitements du SI Modèle des Données du SI Réel Base de données : clients, produits, stocks, fournisseurs, comptes, … SGBD Gestion commerciale Gestion comptable Gestion des achats Applications
Technique informatique : Étape 4: années 90 -> Répartition des traitements et des données sur plusieurs machines en réseau, architectures client/serveur, technologies du Web (intranets), systèmes intelligents d'aide à la décision, multimédia, … Technique informatique : généralisation des environnements graphiques/souris, réseaux locaux, étendus, mondial (Internet), numérisation documents, images et sons, programmation orientée objets. ACSI : méthodes orientées objets (OMT, Merise Objet, UML, …)
L’orientation objet en ACSI Unification modèle et langage unifié pour tous les aspects : . classes ‘métiers’ (client, compte, produit, …), . classes techniques (liste chaînée, requête JDBC, …) . classes d’interface utilisateur (fenêtre, combo box, …) - le concept d’objet regroupe données et traitements Conception pour et par la réutilisation bibliothèques de classes, architectures (squelettes d’applications), patrons de conception (‘design patterns’) : solutions en kit à des problèmes récurrents Développement incrémental analyse : classes de base (classes ‘métiers’), conception : ajout des classes techniques (persistance, distribution) et des classes d’interface utilisateur, - prototypes et enrichissements successifs.
L’ACSI c’est difficile …