Cours de Génie Logiciel: Chapitre 2
31 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Quelle est la définition de l'ingénierie des besoins/exigences ?

L'Ingénierie des besoins/exigences vise à apporter des solutions pour maîtriser l'ensemble des problèmes de découverte et d'analyse des exigences de toutes les parties prenantes d'un projet SI et de spécification, négociation, documentation des exigences à l'égard du SI qui en résultent.

Que signifie le terme "exigence" ?

Les exigences (parfois appelés requis) décrivent la raison d'être d'un système.

Que représente un "ensemble d'exigences" ?

Un ensemble d'exigences est un cahier des charges ou une spécification des exigences (requirements document).

Quelles sont les deux catégories d'exigences ?

<p>Les exigences fonctionnelles et les exigences non-fonctionnelles.</p> Signup and view all the answers

Un "but" représente une exigence.

<p>False (B)</p> Signup and view all the answers

Quelle est la caractéristique d'une exigence fonctionnelle ?

<p>Décrit le &quot;quoi&quot;, c.-à-d. ce que le système doit faire. (C)</p> Signup and view all the answers

Nommez au moins trois exemples d'exigences non-fonctionnelles.

<p>Performances, fiabilité, convivialité, maintenabilité, robustesse, sécurité, portabilité, interopérabilité, éthique.</p> Signup and view all the answers

Quel est le rôle du "maître d'ouvrage" dans un projet logiciel ?

<p>Le client qui demande la réalisation. (B)</p> Signup and view all the answers

Citez au moins trois parties prenantes d'un projet logiciel.

<p>Les utilisateurs, le client (maître d'ouvrage), le demandeur (donneur d'ordre), le directeur ou chef de projet, les développeurs, ceux qui maintiennent.</p> Signup and view all the answers

Quelle est la première étape dans l'ingénierie des exigences ?

<p>Création de l'idée.</p> Signup and view all the answers

Quel est le but principal de l'étape "Définition des objectifs" ?

<p>Préciser les enjeux, la vision, le périmètre et le contexte. (B)</p> Signup and view all the answers

Quelle est la principale question à laquelle il faut répondre lors du processus de "Recueil des exigences" ?

<p>Qu'est-ce que doit faire le système ?</p> Signup and view all the answers

Quel est l'objectif de l'étape "Analyse des besoins" ?

<p>Raffinier les besoins en éliminant les ambiguïtés et les incohérences. (B)</p> Signup and view all the answers

Quel est le document central qui rassemble toutes les exigences du système ?

<p>Le cahier des charges.</p> Signup and view all the answers

Le cahier des charges doit uniquement contenir les exigences fonctionnelles du système.

<p>False (B)</p> Signup and view all the answers

Citez au moins deux méthodes utilisées pour valider les exigences d'un projet logiciel.

<p>Revues de documents, maquettes et prototypes, scénarios de test.</p> Signup and view all the answers

Pourquoi la gestion des changements est-elle nécessaire dans l'ingénierie des exigences ?

<p>Pour faire face aux changements dans les exigences causés par des facteurs comme les processus d'affaires, les technologies, le marché, les lois ou une meilleure compréhension du problème.</p> Signup and view all the answers

Les changements dans les exigences sont un phénomène rare dans les projets logiciels.

<p>False (B)</p> Signup and view all the answers

Quel est le principal objectif des techniques de gestion des changements ?

<p>Limiter les risques liés aux changements dans les exigences.</p> Signup and view all the answers

Quelle est la règle d'or pour l'écriture d'une exigence ?

<p>Écrire une phrase complète. (A)</p> Signup and view all the answers

Quels sont les deux éléments essentiels à inclure dans une exigence ?

<p>Un sujet et un prédicat.</p> Signup and view all the answers

Quelle est l'importance de l'utilisation d'un verbe adapté dans une exigence ?

<p>Le verbe doit être cohérent avec le type d'exigence, il doit être « doit » pour les exigences obligatoires et « peut » pour les exigences optionnelles.</p> Signup and view all the answers

Quelle est la règle d'or pour une bonne exigence ?

<p>L'exigence doit décrire ce qui doit être fait, et non comment le faire.</p> Signup and view all the answers

Quelle est l'erreur fréquente liée au "bruit" dans la spécification des exigences ?

<p>La présence de texte qui n'apporte aucune information pertinente.</p> Signup and view all the answers

En quoi consiste l'erreur de "silence" ?

<p>Une fonction qui n'est pas discutée par aucun document.</p> Signup and view all the answers

Quelle est la principale erreur liée à la "sur-spécification" ?

<p>Texte qui décrit une solution plutôt que le problème.</p> Signup and view all the answers

Que signifie une "contradiction" dans la spécification des exigences ?

<p>Texte qui décrit une fonction de plusieurs façons incompatibles.</p> Signup and view all the answers

Quel est le problème d'une "ambiguïté" dans la spécification des exigences ?

<p>Texte qui peut être interprété d'au moins deux façons.</p> Signup and view all the answers

Quelle est l'erreur liée à un "souhait irréaliste" dans la spécification des exigences ?

<p>Texte qui définit une fonction qui ne peut pas être vérifiable.</p> Signup and view all the answers

Que signifie un "casse-tête" dans la spécification des exigences ?

<p>Répartition d'exigences au sein de plusieurs documents, avec références croisées.</p> Signup and view all the answers

Quelle est l'erreur liée à une "terminologie incohérente" dans la spécification des exigences ?

<p>Inventer et puis changer la terminologie.</p> Signup and view all the answers

Flashcards

Qu'est-ce que l'ingénierie des besoins ?

L'ingénierie des besoins vise à gérer les défis liés à la découverte, à l'analyse et à la spécification des besoins de tous les acteurs d'un projet informatique. Elle met l'accent sur la documentation et la négociation des exigences pour le système final.

Qu'est-ce qu'une exigence ?

Les exigences (ou requis) définissent la raison d'être d'un système. Elles expriment les fonctionnalités ou les qualités attendues du système en développement.

Différence entre propriété et service ?

Une exigence est une propriété ou un service du système. Une propriété est satisfaite par l'ensemble des services. Un service est une fonction que l'utilisateur peut utiliser ou invoquer.

Qui sont les parties prenantes ?

Les parties prenantes d'un projet informatique sont toutes les personnes impliquées dans le développement et l'utilisation du système, incluant les utilisateurs, le client, le demandeur, le chef de projet, les développeurs et les mainteneurs.

Signup and view all the flashcards

Qu'est-ce qu'un objectif ?

Un objectif est un but ou une préoccupation qui sert à découvrir et à évaluer les exigences fonctionnelles et non-fonctionnelles. Un objectif n'est pas encore une exigence.

Signup and view all the flashcards

Définition d'une exigence fonctionnelle

Une exigence fonctionnelle décrit une fonction spécifique du système en développement. Elle répond à la question "Que doit faire le système ?"

Signup and view all the flashcards

Définition d'une exigence non-fonctionnelle

Une exigence non-fonctionnelle décrit une caractéristique ou une qualité du système, comme la performance, la fiabilité, la convivialité, la maintenabilité, etc. Elle répond à la question "Comment le système doit-il fonctionner ?"

Signup and view all the flashcards

Catégories d'exigences non-fonctionnelles

Les exigences non-fonctionnelles peuvent être classées en différentes catégories : exigences de produit, organisationnelles, externes, d'efficacité, de fiabilité, de portabilité, d'interopérabilité, éthiques, d'utilisabilité, de livraison, d'implémentation, de performance, d'espace, de sécurité, de confidentialité et légales.

Signup and view all the flashcards

Exigences mesurables

Pour mesurer les exigences, il est important de les rendre quantifiables et mesurables. Par exemple, la vitesse peut être mesurée en nombre de transactions par seconde, la taille en KiloBytes, la fiabilité en temps moyen entre pannes.

Signup and view all the flashcards

Exemple d'une bonne exigence utilisateur

Une bonne exigence utilisateur est une phrase complète, définissant un sujet, un verbe "doit" ou "peut" et un résultat positif avec un critère de qualité mesurable. Par exemple: "Le système doit permettre à l'utilisateur d'accéder au solde de son compte en moins de 5 secondes."

Signup and view all the flashcards

Exemple d'une mauvaise exigence utilisateur

Une mauvaise exigence utilisateur est vague, ne spécifie pas clairement le sujet ou l'action, utilise le mode indicatif, ou ne fournit pas de critère de qualité quantifiable. Par exemple: "L'utilisateur Internet voit rapidement le solde de son compte sur l'écran du portable."

Signup and view all the flashcards

Erreurs frequentes dans la spécification des exigences

Lors de la spécification des exigences, il est important de les exprimer de manière claire, précise et cohérente, en évitant les erreurs courantes telles que le bruit (texte non pertinent), le silence (fonctionnalité non mentionnée), la sur-spécification (description de la solution plutôt que du problème), les contradictions, les ambiguïtés et les souhaits irréalistes.

Signup and view all the flashcards

Création des exigences

La création des exigences marque le début du processus de développement d'un système. Elle peut être motivée par des besoins d'affaires, des nouvelles opportunités de marché, une nécessité ou une idée novatrice.

Signup and view all the flashcards

Définition des objectifs

La définition des objectifs permet de préciser les enjeux, la vision, le périmètre et le contexte du produit. Elle inclut la définition de l'importance du produit, des enjeux, la vision, le périmètre et le contexte d'utilisation.

Signup and view all the flashcards

Recueil des exigences

Le recueil des exigences est une étape importante pour comprendre les besoins des utilisateurs et des parties prenantes. Il existe plusieurs techniques pour collecter les exigences, telles que les interviews, les groupes de travail, l'observation, l'analyse de la concurrence, le remue-méninges et les matrices de priorité.

Signup and view all the flashcards

Rôle de l'ingénieur des besoins

Le rôle de l'ingénieur des besoins est de collecter, d'analyser et de formaliser les besoins exprimés. Il utilise différentes techniques de recueil, analyse et spécification pour obtenir une compréhension claire et documentée des exigences.

Signup and view all the flashcards

Gestion des exigences

Le processus de gestion des exigences comprend le suivi des changements et des évolutions des besoins. Il est important d'établir des liens de traçabilité entre les exigences, de mettre en place des processus rigoureux de gestion des changements, et d'analyser l'impact des modifications.

Signup and view all the flashcards

Validation des exigences

La validation des exigences est essentielle pour s'assurer que les besoins sont bien compris et répondent aux attentes des parties prenantes. Des techniques comme les revues de documents, les prototypes et les scénarios de test sont utiles pour valider les exigences.

Signup and view all the flashcards

Négociation des exigences

La négociation joue un rôle crucial dans l'ingénierie des besoins, car les besoins des utilisateurs peuvent différer. L'ingénieur des besoins doit faciliter la négociation entre les parties prenantes pour trouver un compromis acceptable et répondre aux exigences de tous.

Signup and view all the flashcards

Spécification des exigences

La spécification des exigences consiste à rassembler toutes les exigences dans un document unique, appelé le cahier des charges. Ce document doit rassembler les besoins, les objectifs, le contexte, les contraintes techniques et les exigences fonctionnelles et non-fonctionnelles.

Signup and view all the flashcards

Gestion des changements

La gestion des changements est importante pour s'adapter aux modifications des exigences causées par des changements dans les processus d'affaires, les technologies, le marché, les lois ou une meilleure compréhension du problème.

Signup and view all the flashcards

Conseils pour écrire des exigences

Les exigences doivent être écrites de manière claire, précise et mesurable. Chaque exigence doit être une phrase complète, avec un sujet et un verbe "doit" ou "peut" . Il faut également inclure un critère de qualité ou une mesure de succès.

Signup and view all the flashcards

Caractéristiques d'une bonne exigence

Une exigence doit être une phrase complète avec un sujet et un prédicat. Le sujet peut être le système ou l'utilisateur. Le prédicat décrit une condition, une action ou un résultat attendu. Il est important d'utiliser le verbe "doit" pour les exigences obligatoires et "peut" pour les exigences optionnelles.

Signup and view all the flashcards

Analyse des besoins

L'analyse des besoins consiste à examiner minutieusement les besoins bruts collectés, à identifier les ambiguïtés, les incohérences, les redondances et les incomplétudes, et à les clarifier pour obtenir une compréhension précise et cohérente des exigences.

Signup and view all the flashcards

Le remue-méninges

Le remue-méninges, ou brainstorming, est une technique créative utilisée lors du recueil d'exigences pour générer des idées nouvelles et des solutions innovantes.

Signup and view all the flashcards

Matrices de priorité

Les matrices de priorité sont des outils utilisés pour négocier et prioriser les différentes exigences selon des critères prédéfinis. Elles permettent de trouver un compromis acceptable entre les différents besoins et les moyens de les satisfaire.

Signup and view all the flashcards

Prototype

Un prototype est un modèle simplifié et fonctionnel du système en développement. Utiliser un prototype permet de valider les exigences et de recueillir des commentaires des utilisateurs avant de développer la version finale du système.

Signup and view all the flashcards

Study Notes

Cours de Génie Logiciel: Introduction

  • Le cours couvre l'ingénierie des besoins et des exigences
  • Le nom du professeur est Bouassida Nadia
  • Ce document porte sur le génie logiciel, plus précisément sur les fondements de l'ingénierie des besoins

Chapitre 2 : Les Fondements de l'Ingénierie des Besoins

  • La définition de l'ingénierie des besoins/exigences : apporter des solutions pour maîtriser l'ensemble des problèmes de découverte et d'analyse des exigences de tous les acteurs d'un projet SI, en incluant la spécification, la négociation et la documentation des exigences pour ce système informatique
  • Différents types d'exigences sont abordés
  • Les processus et activités liés à l'identification et à la gestion des besoins sont étudiés

Définition du terme "exigence"

  • Une exigence décrit la raison d'être d'un système ou d'une application
  • Les exigences incarnent des idées pour un système en développement
  • Un ensemble d'exigences est un cahier des charges ou une spécification des exigences, un document
  • Une exigence peut être une propriété ou un service que le système doit satisfaire ou offrir

Distinction entre propriété et service

  • Un service est une fonction que l'utilisateur peut invoquer ou utiliser
  • Une propriété est satisfaite par l'ensemble des services du système et se rapporte généralement à plusieurs services

Les parties prenantes (stakeholders)

  • Les utilisateurs du logiciel
  • Le client (maître d'ouvrage)
  • Le demandeur (ou donneur d'ordre)
  • Le directeur ou chef de projet
  • Les développeurs
  • Ceux qui maintiennent le système
  • Le maître d'ouvrage demande la réalisation (le client)
  • Le maître d'œuvre réalise l'ouvrage (le fournisseur)
  • Ces rôles peuvent être remplis par la même personne

Plan du Cours

  • Définition(s) et importance
  • Types d'exigences
  • Aperçu des principales activités de l'ingénierie des besoins (IB)

Types d'exigences

  • Un but est un objectif ou une préoccupation utilisé pour découvrir et évaluer les exigences fonctionnelles et non-fonctionnelles
  • Une exigence fonctionnelle décrit la fonction d'un système
  • Décrit le quoi - ce que le système doit faire
  • Une exigence non-fonctionnelle caractérise une propriété ou une qualité (performance, robustesse, convivialité, maintenabilité, etc.)
  • Une contrainte doit être prise en considération lors du développement

Types d'exigences non-fonctionnelles

  • Liste de types d'exigences non-fonctionnelles catégorisés par Produit, Organisationnel et Externe
  • Les types d'exigences sont détaillés

Exigences mesurables

  • Tableau détaillant les propriétés (vitesse, taille, facilité d'utilisation, fiabilité, robustesse, portabilité) et les mesures correspondantes (transactions/seconde, taille mémoire, temps de formation, temps moyen avant panne, etc.)
  • Offre des mesures pour caractériser les exigences

Exemple d'exigence fonctionnelle mesurable

  • Exemple d'exigence fonctionnelle pour l'utilisation d'un système, facile à utiliser pour des utilisateurs expérimentés et minimiser les erreurs d'utilisation
  • Met en avant les exigences non-fonctionnelles dérivées de ce but

Exigences de l'IB

  • Création de l'idée
  • Définition des objectifs
  • Recueil des exigences
  • Analyse des exigences
  • Spécification des exigences
  • Gestion des exigences

Création des exigences

  • Début du processus : identifier les besoins d'affaires, les nouvelles opportunités de marché, la nécessité, une idée novatrice
  • Impliquer : créer un plan d'affaires, faire une étude de faisabilité préliminaire, définir la portée du projet

Définition des objectifs

  • Définir les enjeux, la vision, le périmètre et le contexte du produit/projet
  • Définir les activités suivantes : l'importance du produit/projet, clarifier les enjeux, tracer la vision du produit, définir le périmètre actuel et futur, définir le contexte d'utilisation (futurs utilisateurs, priorités, contraintes).

Le recueil des exigences

  • La majeure partie de l'effort dans le processus de développement des systèmes se concentre sur la découverte de ce que le système doit faire (plutôt que comment il le fera)
  • Les technologies existantes et les différents niveaux de complexité du système sont à étudier

Résumé du recueil des exigences

  • L'interview est une technique complexe demandant compétence
  • Les groupes de travail sont des méthodes d'expression des besoins avec des structures variables. L'organisation et l'animation sont essentiels
  • L'observation sur le terrain
  • L'analyse de la concurrence pour identifier les besoins propres à l'entreprise
  • Les remue-méninges (brainstorming)
  • L'utilisation de matrices (outil de négociation pour trouver des compromis et aligner les besoins des utilisateurs sur ceux du système)

Résumé : Spécification des exigences

  • Un document unique rassemble des exigences cohérentes et complètes
  • Ce document prend en compte les besoins, les objectifs et le contexte des utilisateurs et d'autres parties prenantes
  • Il incorpore des contraintes techniques, des exigences fonctionnelles (ce que le système doit faire) et non-fonctionnelles (fiabilité, ergonomie)

Résumé : Validation des exigences

  • Les exigences doivent être validées par toutes les parties prenantes
  • Différentes méthodes sont utilisées pour valider les exigences (examen des documents, des maquettes, des prototypes et la rédaction de scénarios de test)
  • La négociation est essentielle pour harmoniser les besoins entre différents utilisateurs et avec la maîtrise d'ouvrage

Gestion des changements

  • Importance de la gestion des changements dans les exigences dues au changement des processus, des technologies, du marché, des lois et d'une meilleure compréhension du problème.
  • Techniques pour limiter les risques : liens de traçabilité entre exigences à différents niveaux, établissement de processus et de procédures strictes de gestion des changements, comité de gestion des changements assurant l'étude de toute demande de modification en faisant des analyses d'impact avant toute modification de l'application.

Conseils pour l'écriture d'exigences

  • Chaque exigence doit être une phrase complète comprenant un sujet, un verbe (doit/peut), et un prédicat (résultat attendu)
  • Utilisation cohérente du verbe (utiliser "doit" pour les exigences obligatoires et "peut" pour les exigences optionnelles)
  • Inclure un critère de succès mesurable

Exemple d'une bonne exigence utilisateur

  • Exemple concret de description d'exigence utilisateur avec identification claire du sujet, du verbe et du prédicat
  • Intégration d'un critère de qualité mesurable

Exemple de mauvaise exigence utilisateur

  • Exemple d'exigence peu précise et sans critère de qualité claire

Spécification : Erreurs fréquentes

  • Identification des erreurs courantes lors de la spécification des exigences (texte répétitif, informations manquantes, fonctions non discutées, sur-spécification, contradiction, ambiguïté, souhait irréaliste, casse-tête, terminologie incohérente)

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

Cours de Génie Logiciel - PDF

Description

Ce quiz aborde les fondements de l'ingénierie des besoins, en se concentrant sur la définition et la gestion des exigences dans le développement de systèmes informatiques. Les différents types d'exigences et les processus nécessaires à leur identification sont également explorés. Idéal pour les étudiants en génie logiciel.

More Like This

Requirements Engineering
16 questions
Software Processes Lecture 4
5 questions
Software Requirements Analysis Chapter 2
47 questions
Use Quizgecko on...
Browser
Browser