Introduction. Fondements de l ingénierie des exigences



Documents pareils
Introduction. Fondements de l ingénierie des exigences. Objectifs :

Séance 1 Méthodologies du génie logiciel

Processus d Informatisation

Forum AMOA ADN Ouest. Présentation du BABOK. 31 Mars 2013 Nadia Nadah

Introduction aux systèmes temps réel. Iulian Ober IRIT

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

RAPPORT EXÉCUTIF DE LA FIRME DE CONSULTANTS GARTNER

Bertrand Cornanguer Sogeti

ISO/CEI Technologies de l information Gestion des actifs logiciels. Partie 1: Procédés et évaluation progressive de la conformité

1. Étude réalisée par l AFOPE en Hellriegel D., Slocum J. W., Woodman R. W., Management des organisations, Bruxelles, De Boeck, 1992.

Questions concernant le processus de planification du programme

Conférence sur les marchés publics informatiques

Eclipse Process Framework et Telelogic Harmony/ITSW

IFT2255 : Génie logiciel

RECONSTRUCTION D'UN MODÈLE 3D D'OBJET AVEC LA KINECT

Livre Blanc Oracle Mars Rationaliser, Automatiser et Accélérer vos Projets Industriels

Module 197 Développer et implanter un concept de gestion des versions et des configurations

IFT3913 Qualité du logiciel et métriques. Chapitre 2 Modèles de processus du développement du logiciel. Plan du cours

P s a sep e o p r o t S e S r e vi v ce c s Fabrice Dubost

CATALOGUE FORMATION. Product Lifecycle Management. Juin 2013

Le génie logiciel. maintenance de logiciels.

OSIATISBIZ UN SERVICE DESK HORS DU COMMUN EQUANT SOLUTIONBIZ PARTAGEONS NOS SAVOIRS EXTRAIT DU Nº9

Synergies entre Artisan Studio et outils PLM

ITIL V3. Objectifs et principes-clés de la conception des services

LE SUPPLY CHAIN MANAGEMENT

Le Product Backlog, qu est ce c est?

Résolvez vos problèmes d énergie dédiée à l informatique

en SCÈNE RATIONAL Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com

Gestion des Incidents (Incident Management)

Jean-François McNeil. Consultant en Analyse d Affaires Certification de l IIBA (CCBA) jf@solutionsmcn.com

Génie logiciel (Un aperçu)

Gérez vos coûts de projet intelligemment

La Tierce Maintenance Applicative ERP De quoi s agit-il? Est-ce le bon choix pour vous?

Chapitre 7 Ministère du Développement des ressources humaines / Andersen Consulting

Les systèmes de gestion des actifs immobiliers par Gilles Marchand, Ministère de l'éducation du Québec & Dino Gerbasi, GES Technologies

Gestion de la relation Client (CRM)

La Certification de la Sécurité des Automatismes de METEOR

Les bonnes pratiques d un PMO

Méthodes Agiles et gestion de projets

Faire simplement mieux

Gestion de Projet 11 - PMI. Contact: Yossi Gal, yossi.gal@galyotis.fr, Téléphone: Gestion de Projet Cours PMI

LEXIQUE. Extraits du document AFNOR (Association Française de Normalisation) NF EN ISO 9000 octobre 2005

Macroscope et l'analyse d'affaires. Dave Couture Architecte principal Solutions Macroscope

Introduction Les processus traditionnels extreme Programming Conclusion. extreme Programming. vers plus d agilité. F. Miller francois.miller@inpg.

Rendez-vous la liberté avec Rational Quality Manager

CRM et GRC, la gestion de la relation client R A LLER PL US L OI

L Analyse d Affaires, une discipline pour tous BABOK 2.0

ANALYSE DE LA CONVERSION DES EXIGENCES À LA PLANIFICATION DE PROJETS TECHNOLOGIQUES: ÉTUDES DE CAS

Améliorer la Performance des Fournisseurs

Assises Métallerie ERP GPAO en métallerie: quelle offres, comment bien choisir son outil de gestion?

Tout sur le processus CPQ Configure Price Quote

GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET

ITIL V2. La gestion des incidents

Mesurer le succès Service Desk Guide d évaluation pour les moyennes entreprises :

INDICATIONS DE CORRECTION

Université de Lausanne

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

Analyse,, Conception des Systèmes Informatiques

Introduction au génie logiciel

WEB15 IBM Software for Business Process Management. un offre complète et modulaire. Alain DARMON consultant avant-vente BPM

Rapport de certification

Préparation des données d entrée pour la définition d un plan de validation

Architecture pragmatique pour la gestion du cycle de vie des applications (ALM)

Analyse structurée de solutions pour BMC Remedy IT Service Management v 7

Service des stages et du placement - secteur placement ANNEE 2013 TITRES DE POSTES OFFERTS AUX DIPLOMES DE GENIE INFORMATIQUE

Sujet de thèse CIFRE RESULIS / LGI2P

Introduction à l ISO/IEC 17025:2005

CEG4566/CSI4541 Conception de systèmes temps réel

S engager pour gagner la confiance

Séminaire Lean Enterprise Mardi 20 Juin 2006

11 Février 2014 Paris nidays.fr. ni.com

Manuel d assurance qualité ISO 9001:2000. Copie originale

SYNERGIE Associés Confidentiel Reproduction interdite sans autorisation préalable Page 1 de 44

2. Technique d analyse de la demande

Le Processus Unifié. Une Démarche Orientée Modèle. IUP NTIE - Master 1 - Jérémie Guiochet - 4/11/09

GL Le Génie Logiciel

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet

GOUVERNANCE DES IDENTITES ET DES ACCES ORIENTEE METIER : IMPORTANCE DE CETTE NOUVELLE APPROCHE

Process 4D Catalogue de formations 2011

LES tests d'acceptation

Contact: Yossi Gal, Téléphone:

LOG2420 Analyse et conception d interfaces utilisateur

Logiciels de Gestion de Projet: Guide de sélection

Liste des Formations

CONSULTANTE EN GESTION DE PROJETS ET ARCHITECTURE D INFORMATION PIGISTE

DEMANDE D INFORMATION RFI (Request for information)

ITIL V2. La gestion des mises en production

AXIAD Conseil pour décider en toute intelligence

Kym Salameh, M.Sc. Février 2012

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Méthodes de développement

«Vous accompagner de l idée à la réalisation»

Présentation UBO 12/2008 Présentation des méthodes agiles

Méthodologie de conceptualisation BI

Critères de choix pour la

Identification du module

Génie logiciel. Systèmes et sous-systèmes. Modèliser des grands systèmes. Problématique. SS S-Syst1 SS S-Syst2 SS S-Syst3. Système.

Manufacturing Intelligence Séminaire Connected Entreprise ( 12 mars 2015)

MESURE DE L ÉNERGIE ET DES FLUIDES

Transcription:

Introduction Fondements de l ingénierie des exigences Objectifs: Présentation du plan de cours Quelques définitions L importance de spécifier les exigences Positionnement dans un processus de développement Les trois catégories d'exigences Quelques chiffres qui démontrent l importance des exigences Tester les exigences, ne pas tester le code 1

Que couvrira ce cours Ingénierie des exigences Techniques d élicitation Techniques de documentation des exigences Test des exigences Priorisation et raffinement des exigences Modélisation des buts (Goal Requirement Language) Représentation des exigences non fonctionnelles Spécification des interfaces utilisateurs La traçabilité des exigences et gestion du changement. 2

Introduction Qu'est-ce qu une exigence (et qu'est-ce qui n est pas une exigence)? Qu'est-ce que l ingénierie des exigences? Différence entre exigence et spécification? Parties prenantes(stakeholders)? Gestion des exigences? Types d exigences? Types de système à développer? 3

Définition du terme «exigence» (requis)? Les exigences(requis) décrivent la raison d être d un système. Les exigences expriment les idées qui doivent être incarnées dans un système ou une application en développement. La définition varie, mais reste généralement autour de ces lignes: A capability that the system must deliver or a condition that it must be satisfied in order to address a need of a stakeholder. [Larman, 2002] 4

Selon la norme IEEE 830-1993 Une exigenceest définie comme étant: (1) une condition ou capacité dont un utilisateur a besoin pour résoudre un problème ou atteindre un objectif; (2) une condition ou capacité qui doit être satisfaite ou possédée par un système [ ] pour satisfaire un contrat, une norme, une spécification, ou tout autre document formellement imposé [ ]. 5

Ingénierie des exigences (I.E.) Processus qui a pour objet d'établir et de maintenir un accord avec les parties prenantes sur les exigences du système à construire. Bonnes pratiques permettant de définir le contexte de travail au sein d'un projet, à la fois d'un point de vue contractuel et technique. But: Réaliser un système conforme au juste besoin 6

Qu est ce qu une partie prenante (Stakeholder) Clients / investisseur Acheteurs Utilisateur final Experts du domaine Les fournisseurs de contenu Développeurs, Ingénieurs logiciel, gestionnaires de projet, Inspecteurs (reviewer) Experts d un autre système en liaison avec le projet Tout autre personne qui apporte une valeur ajoutée au futur système 7

Exigence vs Design (Quelle est la différence entre exigence et design?) The requirements are the WHATof the system! The design of a system is the middle layer of HOW! Exemple: Exigence ou Design? Si le système d alarme sonne alors l ascenseur doit descendre au 1 er étage, ouvre les portes et suspend toutes autres opérations. Le projet doit être implémenté en C# Le système doit utiliser des listes chaînées. 8

Le processus de gestion des exigences entrées / Sorties Le système existant & processus d affaires Besoins des Stackholders Convention sur les exigences Organisation Règles de gestion et lois Processus de gestion des exigences Spécifications du système Modèles Informations sur le domaine A systematic approach to eliciting, organizing, and documentingthe requirements of the system, as well as a process that establishes and maintains agreement between the customer and the project team on the changing requirements of the system. [Leffingwell and Widrig, 2003] 9

Ingénierie des exigences Création Élicitation Ingénierie des exigences Développement des exigences Analyse Spécification Vérification Gestion des exigences Priorisation Traçabilité 10

Plus de détails sur le processus des exigences Phase de création Débute le processus (Vision, 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 Maintenir la cohérence entre les exigences et l'ensemble des produits de l'ingénierie. 11

Gestion des exigences Problème Besoins Domaine du problème Fonctionnalités Les exigences du système Domaine de la solution 12

Catégories des exigences (classification générale des exigences) Type des exigences Exigences Exigences Contraintes fonctionnelles non-fonctionnelles 13

Catégories d exigences Une exigence fonctionnelleest une exigence définissant une fonction du système à développer Décrit le quoi, c.-à-d. ce que le système doit faire Une exigence non fonctionnelleest une exigence qui caractérise une propriété ou une qualité désirée du système telle que sa performance, sa robustesse, sa convivialité, sa maintenabilité, etc. Une contrainte qui doit être prise en compte lors du développement Une contrainteest une restriction sur une ou plusieurs valeurs d une partie du système ou de tout le système. Un butest 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 (séance du GRL). 14

Exemples d exigences fonctionnelles L utilisateur doit être capable de chercher dans l ensemble des bases de données. Le système doit enregistrer la commande du client. Chaque commande doit avoir un identifiant unique (ORDER_ID). 15

Buts Les exigences non-fonctionnelles peuvent être difficiles à spécifier de manière précise, et ces exigences ambigües deviennent difficiles à vérifier. Un but offre une intentionou un objectifgénéral tel que la convivialité de l application. Les buts peuvent guiderla découverte d exigences non-fonctionnelles vérifiables, qui peuvent être testées objectivement. 16

Exigences: système vs logiciel Système? Ensemble de composants inter-reliés qui collaborent pour un objectif commun. Peut inclure des composants mécaniques, électriques, électroniques, logiciels, etc. Ingénierie des systèmes Approche multidisciplinaire pour le développement de systèmes Le logiciel n est souvent qu une partie du système Nous pouvons donc distinguer les exigences du systèmedes exigencesdes composants logiciels. 17

Test des exigences Les exigences doivent être testables sinon elles ne sont que des buts Tester les exigences, ne pas tester le code Test Requirements, Don't Test Code 18

Exemple de but Un but du système Ex. le système doit être facile à utiliser et devrait être organisé de façon à minimiser les erreurs d utilisation. Exigences non-fonctionnelles vérifiables, inférées de ce but (un utilisateur expérimenté a au moins 2 années d expérience sur le vieux système). Les utilisateurs expérimentés doivent être capables d utiliser les fonctions du système après une formation de 3 heures. Le nombre moyen d erreurs faites par les utilisateurs expérimentés ne doit pas excéder 2 par jour. 19

Exigences différentes pour des systèmes différents Systèmes interactifs Systèmes transformationnels Systèmes d information Systèmes temps réel Systèmes embarqués 20

Systèmes interactifs Caractéristiques: Système guidé par les événements qui permettent l interaction avec l environnement Les processus et l environnement sont synchronisés Exemples: Système d exploitation Applications Web Exigences: Accent sur les tâches de l utilisateur et de la performance L interface utilisateur joue un rôle important 21

Systèmes transformationnels Caractéristiques principales Transforme les entrées de début vers les sorties à la fin Exemples Compilateurs Exigences Ensemble de règles de transformation qui décrivent les différentes parties d entées et de sorties. 22

Systèmes d information Caractéristiques: Systèmes pour l acquisition, l accès et la manipulation des données. Exemples: Gestion des systèmes de base de données Exigences: Fournissent une description des caractéristiques des données et l ensemble des relations avec la BD Plus orientés vers l efficacité et l efficience du stockage et l accès aux données. 23

Systèmes temps réel Caractéristiques: Le fonctionnement correcte du système dépend des résultats produits et du temps consommé pendant le traitement Exemples: Control des senseurs Exigences: Plus orientées vers la planification et la performance Les exigences du temps décrivent le délai maximum pour répondre à un événement ou pour traiter une entrée. 24

Systèmes réactifs Caractéristiques: Systèmes temps réel composés de processus qui réagissent aux événements Systèmes qui dépendent de leurs propres réaction au différents stimulus de l environnement Exemples: Control des flux Contrôleurs de pilotage (avionique) Exigences: Synchronisation avec l environnement Synchronisation des réponses 25

Systèmes embarqués Caractéristiques: Composants spécialisés qui font partie d un système plus large. Exemples: Tout ce qui possède une interface numérique Électroménagers, voitures, etc. Exigences: Plus orientés vers les contraintes matériels 26

Plus d exigences pour les systèmes critiques Caractéristiques principales: Les conséquences des l erreurs sont catastrophiques pour la vie humaine Exemples: Systèmes avioniques Système pour les sites nucléaires Exigences: Utilisation des techniques formelles plus rigoureuses. Leur vérification doit être formelle 27

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

Pourquoi spécifier les exigences Ratés Défis Réussis 2000 23% 49% 28% 1998 28% 46% 26% 1995 40% 33% 27% 1994 31% 53% 16% Ces données ont été compilées à partir de 30 000 projets industriels (Grands, Moyens et Petits) Source: ExtremeChaos, The StandishGroup International, Inc., 2000 29

Symptômes des projets réalisés avec des défis Ca ne marche pas dans notre environnement Ca ne correspond pas à nos attentes Nous sommes mécontents Le projet fut en retard et hors budget C est trop difficile à utiliser Au final, ce n est pas ce dont nous avions besoin Ce truc est imprévisible On découvre chaque jour de nouveaux problèmes Nous ne pouvions obtenir les informations nécessaires au projet Nous n avons pas vraiment compris ce que nous devions faire. Nous ne savions pas si le travail des autres équipes impacteraient notre travail 30

Observations Les facteurs qui font que le projet soit en retard ou ne répond jamais aux exigences des Stakeholders (selon Standish Groupe 2006) Une mauvaise gestion des exigences est à l origine de la plus part des échecs!!! 31

Des chiffres empiriques Causes d échec Spécifications incomplètes Faible communication entre les parties prenantes Mauvaise gestion des changements Source : Forrester 2006 Source: Standish Group 2004 70 % des défectuosités sont introduites lors de la phase de spécification, et 30% plus tard lors de la solution technique Seulement 5% des problèmes de spécification sont corrigés dans la phase de spécification. 95% sont détectés plus tard dans le projet alors que le coût pour les résoudre est en moyenne 22 fois supérieur. 32

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. 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. Difficultés à trouver le profil psychologique adéquat. 33

Airbus A380 Trop d ordinateurs et trop de logiciels 34

La taille des logiciels Airbus 380: Environ 1 billion (1.000.000.000) de lignes de code Windows XP: ~40 million de lignes de code Ceci donne une idée de la taille du défis auquel font face les ingénieurs logiciel!!! 35

La sonde sur Mars En 1999 le «Mars ClimateOrbiter» 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étriquepour une fonction clé de l appareil 36

GIRES, Le plus grand projet du Québec Projet du gouvernement du Québec qui a commencé en 1998. GIRES( 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. 37

Impact prévu de GIRES GIRES touchera : 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» 38

Suite GIRS, le gouffre 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 dollarset les retards s'accumulaient.. Le projet a été abandonné en 2003, le gouvernement préférant investir dans les programmes sociaux. Sources: http://www.cric.ca/fr_html/focus/focus_archives/focus_v1n6.html http://radio-canada.ca/nouvelles/index/nouvelles/200303/04/012- GIRES.shtml 39

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 Autres frais obscurs... 40

Facteurs de succès Standish Group Inc., 2000 41

Causes des problèmes 42

Gestion des exigences en évolution Changing requirements is as certain as death and taxes Source: http://standishgroup.com/sample_research/pdfpages/extreme_chaos.pdf, 1999 43

Outils commerciaux Produits pour la gestion des exigences Libellé outil Vendeur URL vendeur DOORS Telelogic http://www.telelogic.com/ RequisitePro Rational Software http://www.rational.com/ RTM Integrated Chipware http://www.chipware.com Caliber-RM Starbase Corporation http://www.starbase.com/ CRADLE 3SL http://www.3sl.co.uk/ CORE Vitech Corporation http://www.vtcorp.com/ RDD Ascent Logic Corporation http://www.alc.com/ RDT Igatech http://www.igatech.com/ XTie-RT Teledyne Brown Engineering http://www.tbe.com/ SLATE EDS http://www.tdtech.com/ TOFS Tool for Systems http://www.toolforsystems.com Vital Link Compliance Automation Inc. http://www.complianceautomation.com/ 44

... Outils commerciaux Integrated Chipware (RTM) 20% Startbase (Caliber-RM ) 7% Autres 17% Rational (RequisitePro) 26% Telelogic (DOORS) 30% Source: Standish Group 1999 45

Annexe: Spécification des exigences système SRS Besoins du client Spécification des exigences du système Ingénieur système Formaliser les besoins Spécification des exigences non-fonctionnels SRS révisé Glossaire Liste de risques Réf: UPEDU Réviser Spécifications des exigences du système 46

Exigences (modélisation des besoins) Besoins du client Analyste Définir les cas d utilisation et les maquettes d interfaces CUI Modèles des cas d utilisation CUI révisé Modèles des Interfaces utilisateurs Cas d utilisation et interfaces Réf: UPEDU Réviser 47