Modèles de processus de développement des SI
Faculté | Faculté d'économie et de management |
---|---|
Département | Services généraux GSEM |
Professeur(s) | Jolita Ralyte[1] |
Cours | Gestion de projet |
Lectures
Processus de Développement des SI
Ensemble structuré d'activités à réaliser pour atteindre l'objectif d'un projet SI, dont les activités varient en fonction de l'organisation, du projet, et du type de système à développer. Ce processus doit être explicitement décrit pour être adéquatement géré.
Le cycle de vie d'un SI décrit succintement les phases par lesquelles passe un système d'information depuis le besoin initial jusqu'au retrait du système, la documentation et les décisions qui jalonnent le cycle.
Activités de développement des SI
- Spécification des exigences et des contraintes du système, établissement du cahier des charges
- Conception de la solution, production d'un modèle du système à développer
- Implémentation du système
- Test du système, vérification de l'adéquation entre les propriétés implémentées du système et la spécification des besoins
- Installation du système chez le client et vérification de son fonctionnement
- Maintenance du système, réparation des fautes
Modèles standards de développement des SI
Code-and-fix
Modèle dirigé par la programmation.
Compréhension du problème -> Programmation -> Test contre spécification -> Fin si satisfait, sinon Mise au point du code et retour au Test contre spécification
Transformation automatique
Développement basé sur la possibilité de transformer automatiquement des spécifications validées en programmes.
Ce modèle nécessite un outil logiciel qui fait de telles transformations.
Spécification -> Validation -> Transformation si validé, sinon retour à Spécification.
Cascade / Waterfall
Processus de nature plutôt linéaire, centré activités avec un ordonnancement prédéfini des activités, dans lequel il est toujours possible de revenir en arrière.
Initiation - Étude de faisabilité
- Analyser le problème
- Définir les objectifs
- Définir les frontières du système
- Identifier les contraintes imposées (politiques, matériel, temps, technologies, etc.)
- Évaluer la faisabilité technique, économique, opérationnelle.
Spécification des exigences
- Définir le périmètre du SI
- Analyser le domaine d'application
- Identifier les exigences :
- fonctionnelles : les activités de l'organisation qui devraient être couvertes par le SI
- non fonctionnelles : les performances techniques, l'environnement d'utilisateur, système d'exploitation, matériel, etc.
- Conceptualiser les besoins (cas d'utilisation, scénarios, objectifs, etc.)
- Déterminer la priorité des besoins
- Valider les exigences avec les utilisateurs
- Élaborer un glossaire de termes
Analyse
Exploration des solutions possibles :
- Analyser les exigences
- Proposer une ou plusieurs solutions conceptuelles
- Vue structurelle du système (modèle objet)
- Vue dynamique du système (cycle de vie des objets, diagrammes d'activités, etc.)
- Proposer une architecture d'implémentation
- Valider toutes les propositions avec les utilisateurs
Conception
Spécification détaillée de la solution choisie :
- Définir le modèle physique de la base de données
- Définir les contraintes d'intégrité
- Choisir le SGBD
- Modéliser les interfaces utilisateur
- Définir les standards de sécurité du système
- Définir l'architecture du système
Construction
Développement du code :
- Créer les programmes
- Créer et remplir les bases de données
- Intégrer les sous-systèmes
- Écrire la documentation
Tests
- Tester les programmes
- Tester le système global
Mise en place
- S'assurer que tout le matériel et les réseaux nécessaires pour le nouveau SI sont mis en place
- Installer le système
- Former l'utilisateur
Modèle en V
Décomposition du système en composants qui peuvent être développés de manière indépendante.
Modèle en W
Ce modèle est une extension du modèle en V, qui améliore l'étape d'analyse des exigences.
Modèle en W : accent sur les tests
Ce modèle est toujours une extension du modèle en V, mais avec une focalisation sur les tests à toutes les phases de développement.
Développement évolutif
Développement de plusieurs versions d'un logiciel en l'améliorant à chaque fois.
Détermination des besoins -> Programmation -> Expérimentation -> Version N -> Détermination des besoins -> ...
Spirale
RAD - Rapid Application Development
Le RAD est un modèle linéaire en 5 phases et itératif pour la phase de construction. Chaque phase est composée d'une ou plusieurs étapes, et chaque étape est organisée en 3 temps :
- Travaux préparatoires
- Session participative
- Travaux de conclusion
Le logiciel est construit en plusieurs modules livrés successivement, et il privilégie aussi le travail d'équipe.
Initialisation
Préparation et organisation du projet
- Répertorier l'ensemble des intervenants
- Définir les objectifs stratégiques du projet
- Évaluer la faisabilité du projet
- Évaluer les moyens nécessaires
- Établir un accord entre le client et le fournisseur
- Lancement du projet
Cadrage
Analyse et spécification des exigences :
- Définir la hiérarchie des objectifs
- Définir la hiérarchie des fonctions
- Planifier les changements des processus "métier"
- Définir les ressources nécessaires et le cycle de développement
- Valider les objectifs et les contraintes
Conception
Conception de la solution :
- Modéliser :
- Établir une liste détaillée des fonctionnalités
- Créer le modèle de données exhaustif
- Préparer la documentation technique
- Valider la conception d'ensemble
- Choisir les technologies et les valider
- Valider les modèles et le prototype
- Valider les charges et le planning
Construction
Développement collaboratif et incrémental
- Détailler chaque module
- Réaliser (coder) les modules
- Intégrer les modules
- Tester les modules
- Tester l'intégration
- Documenter
Différents modules peuvent être développés en parallèle
Finalisation
Préparer la mise en oeuvre :
- Préparer le système à l'installation
- Rédiger les manuels utilisateurs
- Rédiger le manuel d'exploitation
- Préparer la formation
- Établir le plan de formation
- Établir le plan de démarrage (reprises de données, bascule technique,...)
Tester le système Démarrer le système :
- Établir l'environnement d'exploitation et l'infrastructure du support d'exploitation
- Mettre en oeuvre le plan de démarrage
- Audit du fonctionnement et évaluation des écarts
- Améliorer et optimiser le système
- Former les utilisateurs