Upload
romain-peter
View
122
Download
2
Embed Size (px)
Citation preview
Express. du besoin 1
Processus d'expression du besoin
Express. du besoin 2
Réalisation de logiciel
– processus d'expression du besoin (1)– processus de développement du logiciel (2)– maintenance du logiciel (3)
B
Besoinréel
Besoinexprimé
Produit
1 2 3
Express. du besoin 3
Logiciel et Qualité
• Logiciel de qualité =>– besoin exprimé conforme aux besoins réels– produit conforme aux besoins exprimés
• Chaque processus (1 & 2) doivent– construire cette conformité– permettre la vérification de cette conformité
Express. du besoin 4
Importance de l'expression du besoin
– Erreur la plus lourde de conséquence: commencer la réalisation sans savoir ce que veut l'utilisateur !
– Influence sur le coût global – sa qualité augmente les 'chances' de réussite du
projet
Express. du besoin 5
Processus d'expression du besoin
– Il faut spécifier ce que l’on veut faire :• fonctionnalités
• contraintes à respecter
– des approches existent (!?)• peu d'approches systématiques
• peu d'outils d'aide
• du cas par cas
– doit minimiser la possibilité de commettre des erreurs
Express. du besoin 6
Phases essentielles
• Phase 1: Collecte d’informations– rôle que le système doit jouer dans l’environnement
– détails des exigences de l’utilisateur
• Actions :– recueil des besoins,
– détermination des objectifs,
– identification des contraintes
• Phase 2: caractériser le produit à livrer– utilisation de méthodes formelles
– détermination (sommaire) des essais que l’on envisage de faire pour la recette
Express. du besoin 7
Phases essentielles (suite)
• Résultats:– un recueil d ’expression des besoins (ou cahier des
charges) comprenant :
» la situation actuelle et des opportunités d’amélioration
» la situation à atteindre
» comment atteindre la cible
» performances attendues du système
» les interfaces
» ...
• Etape de validation du cahier des charges
Express. du besoin 8
Dossier de Spécification technique
• Exigé par le maître d’ouvrage
• Rédigé par le maître d’œuvre
• doit quantifier toutes les performances fonctionnelles
Express. du besoin 9
Les 2 aspects à ne pas négliger
– les fonctions à remplir par le logiciel– les caractéristiques liées à l'environnement
d'utilisation (un logiciel rapide, fiable, ergonomique, lisible, modulaire, structuré...)
• vision externe : facteurs– présence ou absence détectée par les utilisateurs
• vision interne : critères– perceptible par les informaticiens
• les critères sont déterminant pour l'obtention des facteurs
Express. du besoin 10
Critères
• Efficacité mémoire/ périphérique
• Efficacité temps d'exécution
• Facilité d'apprentissage
• Historique des accès
• Protection du code
• Protection des données
• Indépendance % l'environnement matériel/logiciel
• Modularité
• Lisibilité
• Standardisation des données/interfaces/...
• Précision
Express. du besoin 11
Etude d'un critère: la modularité
– rendre souple les architectures des systèmes pour atteindre les objectifs
• Déf1: construction de programme par assemblage d'éléments de plus petite taille
• il manque des aspects :– autonomie, cohérence, ... des modules– doit s'appliquer à la conception
Express. du besoin 12
La modularité
• Déf2: nouvelles précisions– aspects:
• décomposabilité, composabilité, compréhensibilité, continuité et protection modulaire
– principes: 1. tout module doit communiquer avec aussi peu
d'autres modules que possible
2. faible couplage
3. masquage d'information
Express. du besoin 13
La modularité
• Et si vous ne comprenez pas ...
=>fournir une vision abstraite du produit afin d'en améliorer la compréhension
• par exemple: un graphe de connexion des modules– si n est le nombre de modules alors le nombre NC de
connexions inter-module est dans l'intervalle : [n-1,n(n-1)/2]
– le principe 1 précise que NC doit être aussi faible que possible...
Express. du besoin 14
Exemple de graphe de connexion
AjoutNom Numéro
Principal
Recherche Modification Sauvegarde
Suppression Maj Info Config.
Express. du besoin 15
Exemple de graphe de connexion
Erreur
NomNuméro
Principal
Recherche
Reconnaitre
Initialise
SauterLigne IdentifEnreg
ListInstr.
Exp
Cherc.Term.
Fact.
Express. du besoin 16
Exemple de graphe de connexion
Erreur
Nom Numéro
Anal1
Trait_rec Adres_t
Initialise
Calcul IdentifEnreg
ListInstr.
Exp
Cherc.Term.
Fact.
Anal2
Trait
Express. du besoin 17
Notion de métrologie... 12 70
... 12 70
Nombre de comment. 12 70
...
Nombre d’instructions 12 70
Nombre de connexion 0 8
... 12 70
Modularité
Lisibilité
...
Extensib.
Robustesse.
Facteur Mesure min maxCritère
Express. du besoin 18
Lien entre facteurs et critères
– Exigences sous forme de facteurs– Structure du logiciel à partir des critères– Lien: un critère "concourt à l'obtention" d'un
facteur– Exemple: 'Historique des accès concourt à l'obtention de
la confidentialité'
– Des techniques permettant d'obtenir la qualité 'interne' , sont des moyens pour obtenir un logiciel satisfaisant des qualités externes
Express. du besoin 19
Critère 'concourt à l'obtention' d'un facteurCritère \ FacteurValidité Robustess
eCompatib.
Efficacité
Confidentialité
Intégrité ErgonomieExtensib.
Réutilisab.
Portab.
EfficacitémémoireEfficacitépériphériqueEfficacité temps
Facilitéd’apprentissageHistorique desaccèsProtection ducodeProtection desdonnéesIndépendance%l’environnemenModularité
Lisibilité
Précision
Standardisation
Express. du besoin 20
Intérêt de la démarche facteur-critère
– cadre d'expression systématique– mise en évidence de certaines incompatibilités
entre différentes exigences• Exemples:
– Intégrité-Confidentialité / Facilité d'utilisation-Compatibilité-Portabilité
– Efficacité / Portabilité-Extensibilité-Robustesse
• Solution pour concilier de tels facteurs apparemment contradictoires
• Compromis avec affectation d'un poids pour chaque facteur
Express. du besoin 21
Maquettage et prototypage
– avant toute phase de production– permet de valider les besoins exprimés
(maquette)– permet de valider les solutions retenues
(prototype)