Requirements engineeringRequirements engineering (RE) is the process of defining, documenting, and maintaining requirements in the engineering design process. It is a common role in systems engineering and software engineering. The first use of the term requirements engineering was probably in 1964 in the conference paper "Maintenance, Maintainability, and System Requirements Engineering", but it did not come into general use until the late 1990s with the publication of an IEEE Computer Society tutorial in March 1997 and the establishment of a conference series on requirements engineering that has evolved into the International Requirements Engineering Conference.
Exigence (ingénierie)Une est, dans le domaine de l'ingénierie, un besoin, une nécessité, une attente auquel un produit ou un service doit répondre ou une contrainte qu'il doit satisfaire. L'exigence peut être exprimée par une partie prenante (utilisateur, client, commercial, analyste de marchés, gestionnaire de produits, etc.) ou déterminée par les processus d'ingénierie et en particulier les activités d'études. L'approche commune à tous les domaines d'ingénierie est de définir les besoins, d'envisager des solutions, et de livrer la solution la plus appropriée.
Non-functional requirementIn systems engineering and requirements engineering, a non-functional requirement (NFR) is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviours. They are contrasted with functional requirements that define specific behavior or functions. The plan for implementing functional requirements is detailed in the system design. The plan for implementing non-functional requirements is detailed in the system architecture, because they are usually architecturally significant requirements.
Cas d'utilisationUn cas d'utilisation, bloc fonctionnel ou cas d'usage (« use-case » en anglais), définit en génie logiciel et en ingénierie des systèmes une manière d'utiliser un système qui a une valeur ou une utilité pour les acteurs impliqués. Le cas d'utilisation correspond à un ensemble d'actions réalisées par le système en interaction avec les acteurs en vue d'une finalité. L'ensemble des cas d'utilisation permet ainsi de décrire les exigences fonctionnelles d'un système en adoptant le point de vue et le langage de l'utilisateur final.
Analyse des exigencesEn ingénierie des systèmes et en ingénierie logicielle, l'analyse des exigences comprend les tâches qui ont pour but de déterminer les exigences d'un système nouveau ou à modifier, en prenant en compte le conflit possible entre les exigences de diverses parties prenantes, telles que les utilisateurs. L'analyse des exigences est critique pour le succès d'un projet. Les interviews de parties prenantes sont une méthode communément employée dans l'analyse des exigences.
Ingénierie des systèmesL'ingénierie des systèmes ou ingénierie système est une approche scientifique interdisciplinaire, dont le but est de formaliser et d'appréhender la conception et la validation de systèmes complexes. L'ingénierie des systèmes a pour objectif de maîtriser et de contrôler la conception de systèmes dont la complexité ne permet pas le pilotage simple. Par système, on entend un ensemble d'éléments humains ou matériels en interdépendance les uns les autres et qui inter-opèrent à l'intérieur de frontières ouvertes ou non sur l'environnement.
Conception de produitLa conception de produit est le processus permettant de matérialiser des concepts, de concrétiser des objets, des biens, des équipements, ou de créer des services, des techniques, voire des systèmes complexes, différents de ceux existants, et qui proposent des réponses en adéquation avec des besoins collectifs ou particuliers, afin d'apporter un bénéfice aux usagers.
Spécification (norme technique)vignette|Exemple de spécifications relatives à un appareil de sécurité. vignette|Plaque de tare d'un camion. Une spécification est un ensemble explicite d'exigences à satisfaire par un matériau, produit ou service. Si un matériau, produit ou service ne parviennent pas à satisfaire à une ou plusieurs des spécifications applicables, il peut être désigné comme étant hors spécification.
Architecture logicielleL’architecture logicielle décrit d’une manière symbolique et schématique les différents éléments d’un ou de plusieurs systèmes informatiques, leurs interrelations et leurs interactions. Contrairement aux spécifications produites par l’analyse fonctionnelle, le modèle d'architecture, produit lors de la phase de conception, ne décrit pas ce que doit réaliser un système informatique mais plutôt comment il doit être conçu de manière à répondre aux spécifications. L’analyse décrit le « quoi faire » alors que l’architecture décrit le « comment le faire ».
Spécification fonctionnelleLa spécification fonctionnelle est la description des fonctions d'un logiciel en vue de sa réalisation. La spécification fonctionnelle décrit dans le détail la façon dont les exigences seront prises en compte. Un exemple d'exigence est l'adaptation d'un progiciel à l'utilisateur en ce qui concerne la langue (le français dans les pays francophones). Une spécification fonctionnelle est indépendante de la façon dont sera réalisé le logiciel en question. Elle doit être exprimée en termes de fonctions et non pas en termes de solutions.