Les Exigences.

Slides:



Advertisements
Présentations similaires
Spécification et qualité du logiciel
Advertisements

Quelles sont les composantes principales d ’une activité de formation?
Atelier sur l'électrification Rurale avril 2007 Yaoundé, Cameroun Session 5 Opération et Maintenance Obstacles potentiels et leur mitigation Pape,
Les Ateliers de Génie Logiciel
Introduction aux CMS.
La revue de projet.
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
BTS SIO SLAM 5 Introduction à la gestion de projet
. Importance des procédures administratives & financières et du contrôle interne.
MRP, MRP II, ERP : Finalités et particularités de chacun.
GED Masters: Gestion Électronique de Documents
Etude des Technologies du Web services
Algorithmique et Programmation
Stratégies dorientation du conseil dadministration « Outils et ressources pour aider votre conseil à passer rapidement à la vitesse supérieure » Document.
Initiation à la conception de systèmes d'information
[GPM-02] Approche processus de l'organisation
La voyage de Jean Pierre
Techniques de test Boulanger Jean-Louis.
IGL301 - Spécification et vérification des exgiences 1 Chapitre 1 Introduction (ref : Bray chapitre 1)
IGL301 - Spécification et vérification des exgiences 1 Chapitre 2 Le processus dingénierie des exigences (ref : Bray chapitre 2)
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
Conception des Réalisé par : Nassim TIGUENITINE.
Hiver 2011SEG Chapître 11 Chapître 1 (partie 1) Revision de cours précédants Sujet 1: Le processus de développement de logiciel.
SEMINAIRE DE CONTACT novembre 2008 Outils de gestion de projet.
Ingénierie Système en SysML appliquée à la rédaction du cahier des charges Y. Le Gallou Séminaire académique STI2D - Calais – 1er avril 2014.
Langage de modélisation graphique de systèmes
GESTION DE PROJET Ce que dit la norme ….
E5 - MANAGEMENT ET GESTION D’ACTIVITÉS TECHNICO-COMMERCIALES (Coef. 4)
Préinscription à LA VIRÉE DU MAIRE en ligne Document d’explications Vous avez de la difficulté avec l’inscription en ligne? Consultez ce document et vous.
Le Cycle de conception Processus à suivre pour toute production Documenter le processus dans le carnet de réalisation.
Bienvenue sur CAUTIONET l'outil On Line de gestion de caution
ECOLE DES HAUTES ETUDES COMMERCIALES
Fonction d’Inscription : - Consiste à créer un compte dans GI. Fonction (Optionnelle) de Modification du compte : - Permet de mettre à jour ses données.
Systèmes d’information d’entreprise
Biologie – Biochimie - Chimie
SEG Module 1 Écrire de meilleures exigences
Les 10 fonctions principales de votre Espace Membre Comment accéder rapidement aux fonctions importantes de votre compte ?
Chaînes de Résultats Conservation Coaches Network Formation des coachs Tester la logique de vos stratégies.
Les Systèmes d’information INTRODUCTION
Le Vérificateur Général. Plan 1.Rôle du vérificateur général 1.1.Mandat Gestion des fonds publics 2.Responsabilités du Vérificateur Général 2.1.Vérification.
Comptabilités Eléments de comptabilité
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Planification des opérations Se préparer à agir Conservation Coaches Network Nouvelle formation des coachs.
Définition des objectifs de changement
RESEAU.
Admission Post-Bac Comment ?. 1 ère étape - L'inscription par internet 1. Enregistrez-vous sur Internet afin de constituer votre dossier électronique.
Stratégie d’entreprise - Alstom Transport – Marco Férrogalini
Les principes de la modélisation de systèmes
Rencontre des écoles ciblées du secondaire 22 mars 2004
Le management de l'IVVQ Processus techniques IVVQ
Université de Sherbrooke
Hatainville Les Moitiers d’Allonne – Tel : Website : stratic.online.com La démarche projet Mars 2001.
I - Caractéristiques principales de GI
Développement d'application rapide GEF492A Automne 2014 [HvV § 3.2.3]
Institut Supérieur des Sciences Appliquées et de Technologie Sousse
Vérification dans le cycle de vie GEF492A 2014 Référence: [HvV §14.2, 14.9] Capt Vincent Roberge Collège Militaire Royal du Canada Génie électrique et.
2003 (revisé 2008)SEG Chapitre 11 Chapitre 1 “The Systems Engineering Context” Le contexte du génie de systèmes.
Introduction au Génie Logiciel
Réalisé par: BOUMSISS Hassnae OUED Zahra TABIT Youssef EZZIANI Hamza
Extrait du Referentiel BTS Systèmes numériques Options : Informatique et réseaux et Électronique et communication S1 à S9 Définition des savoirs et savoir-faire.
Initiation à la conception des systèmes d'informations
Management de la qualité
MODULE DE FORMATION À LA QUALITÉ
Introduction à la gestion de projet
Nouvelles Technologies Internet & Mobile
CONSEIL NATIONAL DE RECHERCHES CANADA PROGRAMME D’AIDE À LA RECHERCHE INDUSTRIELLE Accélérer la croissance des PME grâce à l'innovation et à la technologie.
développeur informatique
Document de spécification d’exigences Normes IEEE et 29148:2011
ISO 9001:2000 Interprétation Article 7 Réalisation du produit
Transcription de la présentation:

Les Exigences

Le début est la partie la plus importante du travail. Platon, 4 avant J.C.

Mars Climate Orbiter En 1999 le « Mars Climate Orbiter » disparait alors qu’il débute son orbite autour de Mars. Coût: environ 125 millions de dollars US. Problème causé par une erreur de transfert d’information entre une équipe au Colorado et une en Californie. Une équipe utilisait le système de mesure anglais (pouces, pieds, livres…) alors que l’autre utilisait le système métrique pour une fonction clé de l’appareil…

GIRES Projet de 8 ans du gouvernement du Québec, commencé en 1998. Module 1 : Fondements de l'ingénierie des exigences GIRES Projet de 8 ans du gouvernement du Québec, commencé en 1998. GIRES, ou Gestion intégrée des ressources, consiste à implanter dans l'administration publique les pratiques les plus efficaces de gestion en ressources humaines, matérielles et financières. Ces pratiques seront appuyées par le progiciel de gestion intégré (PGI) de la firme Oracle. Budget: 80 millions de dollars.

Impact prévu de GIRES GIRES touchera : GIRES remplacera : plus de 68 000 employés de l’État près de 140 ministères et organismes GIRES remplacera : les systèmes SAGIP et SYGBEC plus de 1000 systèmes ministériels GIRES sera installé dans toutes les régions du Québec GIRES sera « le plus important chantier informatique jamais entrepris au Québec »

Dérapage… Ce qui devait être une opération peu coûteuse et efficace est devenu un véritable fiasco financier. Projet d’une durée de 8 ans: Défi de maintenir le rythme et de gérer le changement. Après 5 ans, les coûts avoisinaient les 400 millions de dollars et les retards s'accumulaient.. Le projet est abandonné en 2003, le gouvernement préférant investir dans les programmes sociaux. Source (vidéo) http://radio-canada.ca/nouvelles/Index/nouvelles/200303/04/012-GIRES.shtml

Programme canadien de contrôle des armes à feux Ce fameux programme devait coûter 2 millions de dollars. (119M$ de coûts, 117M$ de revenus) C’est ce qu’on disait aux contribuables, lors de l’adoption de la loi en 1995. http://radio-canada.ca/actualite/zonelibre/04-02/registre_armes.asp

Progression des dépenses… Mais en 1995, les dépenses se chiffraient à 85 millions de dollars. En 2000 : 327 millions de dollars. En 2002 : 688 millions de dollars. Plusieurs imprévus non informatique: Frais de bataille juridique Scandales au niveau des achats de matériel Frais de voyage indécents Autres frais obscurs... Mais il y eût aussi plusieurs dérapages du côté informatique.

Vous avez dit « exigence »? Les exigences (parfois appelés requis) décrivent la raison d’être d’un système Les exigences expriment les idées à être incarnées dans un système ou une application en développement

Vous avez dit «ingénierie des exigences»? L’ingénierie des exigences est : L’activité de développement, élicitation, spécification, analyse, et gestion des exigences des parties prenantes (intervenants) qui devront être rencontrées par des systèmes. L’ingénierie des exigences cherche à identifier les buts et la portée d’un système logiciel et de connaître le contexte dans lequel il va être utilisé.

Ingénierie des exigences Création Développement des exigences Gestion des exigences Élicitation Analyse Vérification Spécification Larry Boldt, Trends in Requirements Engineering People-Process-Technology, Technology Builders, Inc., 2001

Plus de détails sur ces activités… Phase de création Débute le processus (besoin ou opportunité d’affaire, bonne idée…). Dossier commercial, étude de faisabilité, étendue du système, risques, etc. Élicitation des exigences Les exigences sont découvertes en consultant (et parfois même en provoquant) les diverses parties prenantes. Analyse des exigences et négociation Les exigences sont analysées et les conflits résolus, souvent par négociation. Spécification des exigences Un document précis décrivant les exigences est produit. Validation des exigences La spécification des exigences est vérifiée en termes de cohérence et de complétude. Gestion des exigences Les besoins évoluent, les exigences aussi!

Problèmes généraux de l’ingénierie des exigences Manque d’expertise (ingénieurs logiciels, experts de domaines, etc.) Idées initiales trop souvent incomplètes, trop optimistes, et fermement présentes dans têtes des personnes gérant le processus d’acquisition Les difficultés à utiliser les outils et méthodes complexes et variées associées à la cueillette d’exigences peuvent effacer les bénéfices escomptés d’une approche complète et détaillée

Tellement d’« exigences » … Une exigence fonctionnelle est une exigence définissant une fonction du système en développement Décrit le quoi, c.-à-d. ce que le système doit faire Une exigence non-fonctionnelle (ou extra-fonctionnelle) est une exigence qui caractérise une propriété ou une qualité désirée du système telle que sa performances, sa robustesse, sa convivialité, sa maintenabilité, etc. Une contrainte qui doit être prise en compte lors du développement Un but est un objectif ou une préoccupation utilisé pour découvrir et évaluer des exigences fonctionnelles et non- fonctionnelles Un but n’est pas encore une exigence.. Une exigence utilisateur est une fonctionnalité ou un but désiré par un utilisateur ou une autre partie prenante Elle ne devient pas nécessairement une exigence du système… Une exigence du domaine est une exigence dérivée du domaine d’application Elle peut être fonctionnelle ou non-fonctionnelle

Exigences fonctionnelles Quelles doivent être les entrées du système Quelles sorties le système doit-il produire Quelle sont les données qui devront être stockées pour usage par d’autres systèmes Quels sont les calculs à effectuer La mise en marche et la synchronisation de tous ces éléments

Exemples d’exigences fonctionnelles Le système doit offrir à l’utilisateur l’opportunité de chercher l’ensemble des bases de données. Le système doit offrir les visionneuses appropriées pour afficher les documents emmagasinés. Chaque commande doit avoir un identifiant unique (ORDER_ID).

Exigences et modélisation Le sandwich de l’ingénierie des systèmes! http://www.telelogic.com/download/paper/SystemsEngineeringSandwich.pdf

Vérification

Écrire de meilleures exigences

Martine ne peut pas écrire d’exigences parce que… Module 1: Fondements de l'ingénierie des exigences Martine ne peut pas écrire d’exigences parce que… Elle ne sait pas quoi faire! On ne lui a pas enseigné à l’école Elle ne sait pas écrire Elle ne comprend pas le processus Elle n’a pas les données nécessaires Elle ne sait pas ce qu’elle veut Source: Compliance Automation, Inc., 1998

Martine ne peut pas écrire d’exigences parce que… Module 1: Fondements de l'ingénierie des exigences Martine ne peut pas écrire d’exigences parce que… Elle ne comprend pas pourquoi! Elle ne comprend pas l’impact Elle ne comprend pas le changement Elle croit que c’est « juste un document » Source: Compliance Automation, Inc., 1998

Martine ne peut pas écrire d’exigences parce que… Module 1: Fondements de l'ingénierie des exigences Martine ne peut pas écrire d’exigences parce que… Elle préfèrerait faire autre chose! Elle préfèrerait concevoir Elle n’a pas assez de temps Elle croit que le processus de révision va découvrir les erreurs Elle ne voit aucune récompense Source: Compliance Automation, Inc., 1998

Normes pour l’écriture d’exigences Module 1: Fondements de l'ingénierie des exigences Normes pour l’écriture d’exigences Chaque exigence doit être une phrase complète (et non une liste de « buzzwords » ou une liste d’acronymes) Chaque exigence doit contenir un sujet et un prédicat Sujet: système discuté, ou utilisateur (attention…) Prédicat: condition, action, ou résultat attendu Utilisation cohérente du verbe: doit (« shall ») pour exigences obligatoires peut (« should ») pour exigences optionnelles L’exigence spécifie un but ou résultat désiré L’exigence contient un critère de succès ou une autre indication mesurable de la qualité. Note: certaines caractéristiques des exigences sont obligatoires (répond à un besoin, vérifiable, atteignable) alors que d’autres permettent d’améliorer la communication.

Exemple de bonne exigence utilisateur Définit le sujet Verbe doit ou peut “Le système doit permettre à l’utilisateur d’accéder au solde de son compte en moins de 5 secondes.” Définit un résultat positif Critère de qualité Cette exigence identifie un sujet spécifique ainsi qu’un résultat attendu dans un délai maximal donné et mesurable. Votre défi consiste à définir le sujet, le résultat attendu, et la mesure de succès pour chaque exigence!

Pièges à éviter Éviter les ambiguïtés Module 1: Fondements de l'ingénierie des exigences Éviter les ambiguïtés Les ambiguïtés peuvent être causées par: définition pauvre (seulement des exemples ou des cas spéciaux) le mot « ou » pour créer une exigence composée utilisation de « etc. », « ainsi de suite », etc.  N’écrivez pas d’exigences multiples Chaque exigence doit être exprimée par une phrase Les exigences qui contiennent des conjonctions sont dangereuses (peut-être à décomposer?) et, ou, avec, ainsi que

Pièges à éviter Ne laissez pas de clauses échappatoires Ne radotez pas Module 1: Fondements de l'ingénierie des exigences Pièges à éviter Ne laissez pas de clauses échappatoires Les exigences avec de telles clauses sont dangereuses peuvent mener à des problème de tests Si nécessaire: commencez avec quelques chose de plus spécifique permettez ensuite plus d’options Évitez si possible: si, mais, quand, sauf, excepté, à moins que/de, cependant. Note: ces mots peuvent être utiles quand la description d'un cas générique avec exceptions est beaucoup plus claire et complète qu'une énumération des cas spécifiques. Ne radotez pas Évitez les phrases longues, surtout avec des mots archaïques Évitez les références à des documents difficiles d’accès

Pièges à éviter Attention de ne pas concevoir prématurément le système Module 1: Fondements de l'ingénierie des exigences Pièges à éviter Attention de ne pas concevoir prématurément le système Si vous incluez trop de détails, vous risquez de faire de la conception (et de la sur-spécification) Signes de danger: nom des composants, matériaux, champs du système Mélanger différents types d’exigences Évitez de mélanger exigences utilisateur, système, et de processus Signe de danger: exigence de haut niveau avec termes très techniques

Pièges à éviter Ne pas spéculer Ne pas utiliser de termes vagues Module 1: Fondements de l'ingénierie des exigences Pièges à éviter Ne pas spéculer Il n’y a pas de place pour des « listes de souhaits » à propos de choses qu’une partie prenante pourrait vouloir Signes de danger: Vague à propos du type de sujet Généralisations: habituellement, généralement, souvent, normalement, typiquement Ne pas utiliser de termes vagues Certains termes représentent des buts ou des attributs de qualité difficilement mesurables. Par exemple: convivial, hautement versatile, flexible, autant que possible, approximativement, impact minimal

Pièges à éviter Éviter d’inclure des suggestions ou des possibilités. Module 1: Fondements de l'ingénierie des exigences Pièges à éviter Éviter d’inclure des suggestions ou des possibilités. Des suggestions qui ne sont pas explicitement émises comme exigences sont invariablement ignorées par les développeurs Indiquées par des termes tels que: peut, pourrait, devrait, peut-être, probablement Évitez d’être irréalistes Ne demandez pas l’impossible! Termes symptomatiques: fiable à 100%, sécuritaire, gère toutes les erreurs, fonctionne sur toutes les plateformes.

Évaluez ces exigences Module 1: Fondements de l'ingénierie des exigences Suggérez des améliorations lorsque nécessaire. Le système d’acquisition permet la saisie et le traitement rapide, convivial, et efficace des commandes. Factures et reçus doivent être faxés automatiquement la nuit, afin que les clients puissent les recevoir dès le matin. Le système doit pouvoir être mis à jour d’un seul coup.

Évaluez ces exigences Module 1: Fondements de l'ingénierie des exigences Suggérez des améliorations lorsque nécessaire. Le module d’Entrée des Commande doit être entièrement intégré au Système Intranet et les résultats doivent être emmagasinés dans l’enregistrement du client. L’interface utilisateur doit être simple à utiliser. Les données de l’utilisateur doivent autant que possible être obtenues automatiquement de l’estimé T&M. N’oubliez pas les questions clés - “Pourquoi?” ou “Quel est le but de ceci?”