From 226a1463859f5b915ef70c66c3dc0a26703df7c0 Mon Sep 17 00:00:00 2001 From: Gabriel Augendre Date: Mon, 17 Nov 2014 17:05:01 +0100 Subject: [PATCH] course => agile methods --- uml/Introduction.md | 76 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 75 insertions(+), 1 deletion(-) diff --git a/uml/Introduction.md b/uml/Introduction.md index cb01bc3..aeb8d7a 100644 --- a/uml/Introduction.md +++ b/uml/Introduction.md @@ -10,4 +10,78 @@ - Logiciel scientifique Calcul scientifique (stats, IA, calcul financier, prévision, météo, nucléaire, ...) - Logiciel Web - Création de sites/pages, blogs, moteurs de recherche \ No newline at end of file + Création de sites/pages, blogs, moteurs de recherche + +## Contexte général +Il faut traiter l'information nécessaire aux entreprises. +Le SI regroupe l'ensemble des ressources (personnel, matériel, logiciel). Il se construit autour de __processus métier__ et ses interactions. + +Les différents acteurs sont : + +- La DSI +- La MOA (donneur d'ordre) +- La MOE (exécutant, réalisateur) +- Les utilisateurs + +Il faut faire le lien entre la __vision métier__ (organisation et ses processus), la __vision fonctionnelle__ (le SI), et la __vision informatique__ (applications, technologie de l'information). + +## Modélisation +### Pourquoi modéliser +On modélise pour mieux comprendre le système, maîtriser sa complexité et assurer la cohérence, préciser le problème donné et son champ d'application. + +Un modèle est un __langage commun__, un outil de communication entre les acteurs. C'est une représentation simplifiée de la réalité. + +Un modèle permet de réduire la complexité d'un phénomène en éliminant les détails qui n'influencent pas sa compréhension. + +La réalisation d'un SI impose la création de modèles successifs + +- Chaque modèle représente le système à un certain niveau d'abstraction + + Les premiers modèles représentent le système dans sa globalité + + Les derniers permettent la réalisation technique + +## Modéliser avec UML +### UML, c'est quoi ? +C'est une notation, un formalisme permettant la modélisation. + +C'est un langage de modélisation graphique et textuel conçu pour + +- Visualiser +- Spécifier +- Construire +- Documenter + +Ce n'est __pas__ une méthodologie de développement. +Une méthode de dev définit une démarche reproductible pour obtenir des résultats fiables. Elle définit un cycle de dev et des techniques à utiliser. + +### Vers un langage unifié de modélisation orientée objet +- Fondements pour spécifier, construire et décrire les différentes vues d'un système logiciel, les différents niveaux d'abstraction +- Syntaxe et sémantique précises +- Limiter les ambiguïtés +- Faciliter communication, documenter +- Notation graphique +- ... + +### Cycle de vie en cascade +- Étude des besoins +- Analyse +- Conception +- Code +- Test +- Déploiement + +=> Vérification (tests) trop tardive + +### Processus en V +Mise en relation des phases en amont avec les phases de tests en aval. +Spécifications => Validation +Conception prélim => Intégration +Conception détaillée => Tests unitaires +Code + +### Méthodes agiles +- Adaptation au changement plus que suivi d'un plan +- Intégration du client au processus de développement : l'utilisateur final fait partie de l'équipe. +- Acceptation du changement dans les besoins +- Travail d'équipe + +Démarche incrémentale : Projet évolutif, on procède par incrément et prototypage.