chapitre 1
DESCRIPTION
Chapitre 1. Introduction (ref : Bray chapitre 1). De l’importance de l’ingénierie des exigences (IE). augmente avec la taille du problème à résoudre fondation pour la suite du développement plus une erreur est introduite tît et détectée tard, plus elle coûte cher à corriger - PowerPoint PPT PresentationTRANSCRIPT
IGL301 - Spécification et vérification des exgiences
1
Chapitre 1
Introduction(ref : Bray chapitre 1)
IGL301 - Spécification et vérification des exgiences
2
De l’importance de l’ingénierie des exigences (IE)
• augmente avec la taille du problème à résoudre
• fondation pour la suite du développement– plus une erreur est introduite tît et détectée tard,
plus elle coûte cher à corriger• outil de communication
– entre développeur et utilisateur– entre développeur
• une des premières cause d’échec de projet logiciel
IGL301 - Spécification et vérification des exgiences
3
La nature de l’ingénierie des exigences
• Définir clairement le problème à résoudre
• Identifier la meilleure solution• Critères pour l’évaluation des solutions
résident dans la définition du problème
IGL301 - Spécification et vérification des exgiences
4
Diffilculté de réaliser l’ingénierie des exigences
• Acquérir la connaissance du domaine d’application– sources de connaissance
• utilisateur• documentation du domaine• système existant
• Structurer les exigences pour qu’elles soient– claires– vérifiables
IGL301 - Spécification et vérification des exgiences
5
2 étapes de l’IE• Analyse
– Identification et description du problème• Spécification
– Description d’une solution au problèmeConception
– Description de l’implémentation d’une solution– ne fait pas partie de l’ingénierie des exigences
Attention– les frontières entre ces étapes ne sont pas très bien
délimitées dans la plupart des projets et des méthodes
IGL301 - Spécification et vérification des exgiences
6
Classification des problèmes
• selon le domaine ou l’industrie– commercial, scientifique, ingénierie, etc
• selon le mode d’interaction– interactif, temps réel, embarqué, batch,
concurrents, distribués• complexité des traitements
– données– interaction avec l’environnement– algorithmes complexes et importants
IGL301 - Spécification et vérification des exgiences
7
Choix d’une méthode d’ingénierie des exigences
• dépend de la nature du problème• limité par les caractéristiques de
l’équipe de développement– formation– normes et uniformisation des projets
IGL301 - Spécification et vérification des exgiences
8
Définition du terme “exigence”
• Une propriété que le système doit satisfaire– ex: “Un ascenceur ne peut changer changer de
direction que lorsqu’il est stationné à un étage”– ex: “Un appel téléphonique doit pouvoir être servi
en moins de 12 ms”• Un service que le système doit offrir
– ex: “À chaque étage, le systeme doit afficher la position de chaque ascenseur”
IGL301 - Spécification et vérification des exgiences
9
Types d’exigences
• fonctionnelles• de performance• de conception• commerciale• d’opération et d’installation
IGL301 - Spécification et vérification des exgiences
10
Distinction entre propriété et service
• propriété– satisfaite par l’ensemble des services du
système– elle se rapport en général à plusieurs
services• service
– fonction que l’utilisateur peut invoquer ou utiliser
IGL301 - Spécification et vérification des exgiences
11
Exemples de propriété
• on ne peut supprimer un livre prêté• un membre ne peut avoir plus de 5
emprunts en même temps• un livre réservé ne peut être prêté, sauf
au premier membres de la liste des réservations
IGL301 - Spécification et vérification des exgiences
12
Exemples de services
• Un membre de la bibliothèque doit pouvoir– emprunter– renouveler– retourner
des livres
IGL301 - Spécification et vérification des exgiences
13
Distinction entre exigence et fait
• fait– caractéristique du problème que l’on ne
peut changer• ex: “le délai maximal entre la commande d’arrêt
et l’arrêt de l’ascenseur est de x secondes”
• exigence– choix qui est fait par l’utilisateur
• ex: “maximiser le service aux rez-de-chaussé le matin”
IGL301 - Spécification et vérification des exgiences
14
Exigences fonctionnelles
• Elles se rapportent aux fonctions offertes par le système
• Le niveau d’abstraction varie beaucoup– ex: le système doit pouvoir gérer les prêts et les
réservations– ex: un membre peut emprunter un livre si toutes
les conditions suivantes sont satisfaites• sa carte de membre est active• il n’a pas atteint sa limite de prêt• le livre n’est pas réservé• ...
IGL301 - Spécification et vérification des exgiences
15
Exigences de performance
• temps réponse du système• espace mémoire utilisé• nb de transactions par minute• fiabilité requise
– ex: système téléphonique : le taux de panne est spécifié par le CRTC
• utilisabilité– ex: le système doit pouvoir être utilisé par un
visiteur quelque soit sa langue
IGL301 - Spécification et vérification des exgiences
16
Exigences d’installation et d’opération
• se rapporte à l’installation et à l’opération du système– ex: le système doit pouvoir être installé à
distance sur le poste des utilisateurs– ex: le système doit pouvoir être contrôlé à
distance par un technicien
IGL301 - Spécification et vérification des exgiences
17
Exigences de conception
• se rapporte à la manière de construire le système– système d’exploitation– language de programme– base de données– normes
IGL301 - Spécification et vérification des exgiences
18
Exigence commerciale
• se rapporte au budget et au calendrier
IGL301 - Spécification et vérification des exgiences
19
Conscensus sur la nécessité d’effectuer IB
• certaines méthodes en vogue accordent peu d’importance à la description explicite des exigences– eXtreme Programming– méthodes agiles en général
• principes de base des méthodes agiles– adaptation plutôt que prévision– orienté vers les personnes plutôt que les
processus– emphase sur la programmation
IGL301 - Spécification et vérification des exgiences
20
Exercices
• Faire les exercices 1 et 2, page 20 et 21 de Bray
• Présentation des solutions par les équipes en classe le 11 février