Chapitre 0
00-Introduction à l'Ingénierie des Systèmes d'Information
00-Introduction à l'Ingénierie des Systèmes d'Information
Cours 00 : Introduction à l'Ingénierie des Systèmes d'Information
1. Histoire des Systèmes d'Information (1950 → 2026)
1950-1960 : L'ère des machines comptables
Les premiers systèmes informatiques sont des machines comptables électroniques. L'UNIVAC I (1951) et l'IBM 650 (1954) automatisent la paie et la facturation. Pas de base de données, pas de réseau — des batchs de cartes perforées.
Diagramme en cours de génération...
1960-1970 : L'ère des fichiers
Apparition des bandes magnétiques et des disques. COBOL (1960) domine. Les données sont organisées en fichiers séquentiels ou indexés. Chaque application a ses propres fichiers — redondance massive, pas d'intégrité référentielle.
1970-1980 : La révolution des bases de données
Edgar Codd (IBM) publie en 1970 "A Relational Model of Data for Large Shared Data Banks". Naissance du modèle relationnel. Les SGBD relationnels émergent : System R (IBM), Ingres (UC Berkeley).
En France, la méthode Merise est développée par Hubert Tardieu, Arnold Rochfeld et René Colletti au sein du CETI. Merise apporte une approche systémique avec trois niveaux d'abstraction : conceptuel, logique, physique.
Diagramme en cours de génération...
1980-1990 : L'essor du client-serveur
L'architecture client-serveur révolutionne les SI. Le PC (IBM PC 1981) et les réseaux locaux permettent de décentraliser le traitement. Les SGBD comme Oracle, DB2 et SQL Server s'imposent. Merise devient la méthode de référence en France.
1990-2000 : L'ère Internet
Le web (Tim Berners-Lee, 1989) transforme radicalement les SI. Les architectures 3-tiers émergent : présentation, métier, données. Les ERP (SAP, Oracle) et CRM standardisent les processus. L'OMG publie UML 1.0 en 1997.
2000-2010 : Agile et SOA
Le Manifeste Agile (2001) remet en cause les lourdeurs méthodologiques. Les architectures orientées services (SOA) découpent les SI en services réutilisables. DevOps (2009) fusionne développement et opérations.
2010-2020 : Cloud et microservices
Le cloud computing (AWS 2006, Azure 2010) devient mainstream. Les microservices et les conteneurs (Docker 2013, Kubernetes 2014) fragmentent les monolithes. Simon Brown propose le C4 Model (2011) pour visualiser l'architecture logicielle.
2020-2026 : IA et Platform Engineering
L'IA générative (GPT-3 2020, GPT-4 2023) assiste la modélisation. Le low-code/no-code démocratise la création de SI. Le Platform Engineering standardise les infrastructures internes. L'event-driven architecture et le data mesh redéfinissent les architectures.
2. Les grands courants méthodologiques
Merise (France, 1978)
Méthode systémique française développée par T. Quang et al. au CETI. Basée sur trois niveaux d'abstraction (conceptuel, logique, physique) et la séparation données/traitements.
Concepts clés :
- MCD (Modèle Conceptuel de Données) : entités, associations, cardinalités
- MLD (Modèle Logique de Données) : tables, clés, normalisation
- MPD (Modèle Physique de Données) : implémentation SQL
- MOT (Modèle Opérationnel de Traitements) : flux, processus
Diagramme en cours de génération...
UML (OMG, 1997)
Unified Modeling Language, standardisé par l'OMG. Fusion des méthodes de Grady Booch (Booch), Ivar Jacobson (Objectory) et Jim Rumbaugh (OMT).
14 diagrammes UML 2.x :
- Structurels : Classes, Composants, Déploiement, Objets, Packages, Profils, Structure composite
- Comportementaux : Use Case, Séquence, Communication, État, Activité, Timing, Vue d'ensemble
Diagramme en cours de génération...
Agile (2001)
Le Manifeste Agile privilégie :
- Les individus et interactions > processus et outils
- Un logiciel fonctionnel > documentation exhaustive
- La collaboration client > négociation contractuelle
- L'adaptation au changement > suivi d'un plan
Scrum, XP, SAFe sont les frameworks les plus répandus.
Domain-Driven Design (Eric Evans, 2003)
Le DDD recentre la modélisation sur le domaine métier :
- Bounded Context : limites explicites d'un modèle
- Ubiquitous Language : langage partagé entre experts métier et développeurs
- Aggregate : grappe d'objets traitée comme une unité
- Entity : objet avec une identité pérenne
- Value Object : objet défini par ses attributs
- Domain Event : événement significatif du domaine
Diagramme en cours de génération...
3. Cartographie des méthodes
Diagramme en cours de génération...
4. Pourquoi modéliser ?
Objectifs de la modélisation
- Comprendre le système existant (AS-IS)
- Concevoir le système cible (TO-BE)
- Communiquer entre parties prenantes
- Documenter les décisions d'architecture
- Analyser les impacts des changements
- Automatiser la génération de code
Les 5 pourquoi de la modélisation
- Pourquoi modéliser ? → Pour maîtriser la complexité
- Pourquoi maîtriser la complexité ? → Pour livrer dans les délais
- Pourquoi livrer dans les délais ? → Pour satisfaire le client
- Pourquoi satisfaire le client ? → Pour pérenniser l'entreprise
- Pourquoi pérenniser l'entreprise ? → Pour créer de la valeur
Diagramme en cours de génération...
5. Niveaux d'abstraction
| Niveau | Abréviation | Description | Artefact |
|---|---|---|---|
| Conceptuel | C | Indépendant de toute technologie | MCD, Diagramme de Classes |
| Logique | L | Indépendant de l'implémentation | MLD, Schéma relationnel |
| Physique | P | Dépendant de la technologie | MPD, Scripts DDL |
| Opérationnel | O | Déploiement et exploitation | Topologie réseau, Config |
Diagramme en cours de génération...
6. Outils de modélisation
Comparatif
| Outil | Type | Prix | Formats | Collaboration |
|---|---|---|---|---|
| Draw.io | Web/Desktop | Gratuit | .drawio, PNG, SVG, PDF | Oui (cloud) |
| PlantUML | Code | Gratuit | .puml, images | Oui (Git) |
| Mermaid | Code (JS) | Gratuit | .mmd, Markdown | Oui (Git) |
| LucidChart | Web | Freemium | .lucid, images | Oui (temps réel) |
| Visual Paradigm | Desktop | Payant | .vp, XMI, images | Oui |
| Enterprise Architect | Desktop | Payant | .eap, XMI | Oui |
Exemple Mermaid (notre choix principal)
Diagramme en cours de génération...
Résumé
Diagramme en cours de génération...
Pour aller plus loin
- Histoire du génie logiciel
- Uml-distilled (Martin Fowler)
- Domain-Driven Design (Eric Evans)
- Site officiel de Merise : merise.info