Requirements engineering
![]() |
It has been suggested that Software requirements be merged into this article. (Discuss) Proposed since February 2015. |
Requirements engineering (RE)[1] refers to the process of defining, documenting and maintaining requirements[2][3] to the sub-fields of systems engineering and software engineering concerned with this process.
The first use of the term 'requirements engineering' was probably in 1979 in a TRW technical report[4] but did not come into general use until the 1990s with the publication of an IEEE Computer Society tutorial[5] and the establishment of a conference series on requirements engineering that has evolved into the current International Requirements Engineering Conference.
In the waterfall model,[6] requirements engineering is presented as the first phase of the development process. Later software development methods, including the Rational Unified Process (RUP), extreme programming (XP) and Scrum assume that requirements engineering continues through the lifetime of a system.
Alan M. Davis maintains an extensive bibliography of requirements engineering.[7]
Requirements management which is a sub-function of Systems Engineering practices are also indexed in the INCOSE (International Council on Systems Engineering) manuals.
Contents
Requirements engineering activities[edit]
The activities involved in requirements engineering vary widely, depending on the type of system being developed and the specific practices of the organization(s) involved.[8] These may include:
- Requirements inception or requirements elicitation -
- Requirements identification - identifying new requirements
- Requirements analysis and negotiation - checking requirements and resolving stakeholder conflicts
- Requirements specification (software requirements specification; SRS) - documenting the requirements in a requirements document
- System modeling - deriving models of the system, often using a notation such as the Unified Modeling Language (UML)
- Requirements validation - checking that the documented requirements and models are consistent and meet stakeholder needs
- Requirements management - managing changes to the requirements as the system is developed and put into use
These are sometimes presented as chronological stages although, in practice, there is considerable interleaving of these activities.
Requirements engineering tools[edit]
Some links to the tools[edit]
![]() |
This article's use of external links may not follow Wikipedia's policies or guidelines. (December 2013) |
Product | Link | Notes |
---|---|---|
3SL Cradle | https://www.threesl.com/cradle/index.php | On-site RE/SE solution with full lifecycle support, used in industry since 1987 |
Enovia TRM | http://www.3ds.com/products-services/enovia/capabilities/strategic-customer-relationship-management/requirements-manager/ | Cloud and on-site Requirement Engineering solution based on Dassault Systèmes' 3DEXPERIENCE Platform |
Innoslate | http://www.innoslate.com/requirements | Cloud and on-site requirements solution with full lifecycle support (free version available) |
Intland Software codeBeamer | http://www.intland.com/products/codebeamer/modules/ | Agile Software Development - Enterprise Requirements Engineering + Management |
Rational DOORS | http://www-01.ibm.com/software/awdtools/doors/ | ex. "Telelogic DOORS"; used for system engineering |
Rational DOORS Next Generation | http://www-03.ibm.com/software/products/en/ratidoorng | The followup to Rational RRC. |
Rational RequisitePro | http://www-01.ibm.com/software/awdtools/reqpro/ | Used for software engineering |
Rational Requirements Composer | http://www-01.ibm.com/software/awdtools/rrc/ | The followup to Rational RequisitePro |
TraceCloud | http://www.tracecloud.com/GloreeJava2/jsp/WebSite/TCHome.jsp | TraceCloud |
Kovair Requirements Management - ALM Studio | http://www.kovair.com/alm-studio/requirements-management/ | Used for Requirements elicitation, analysis, specification and validation |
Blueprint Requirements Definition & Management | http://www.blueprintsys.com/resources/product-brochures/ | Blueprint Requirements |
Visual Paradigm Requirements Capturing | http://www.visual-paradigm.com/product/vpuml/provides/reqmodeling.jsp | Visual Paradigm Requirements Capturing |
HP Requirements Management | http://www8.hp.com/us/en/software-solutions/software.html?compURI=1172907 | HP Requirements Management |
PTC Integrity | http://www.mks.com/solutions/discipline/rm/requirements-engineering | Formerly MKS Integrity for Requirements Management - optimized for system and software requirements |
Polarion REQUIREMENTS | http://www.polarion.com/products/requirements/index.php | Web Requirements Management solution for any product, process or service |
objectiF RM | http://www.microtool.de/en/objectif-rm-tool-for-requirements-engineering/ | Requirements Engineering with UML/SysML diagrams |
Reqtify | http://www.3ds.com/reqtify | Non intrusive requirement traceability management tool |
RQA Requirements Quality Analyzer for system engineering projects | http://www.reusecompany.com/requirements-quality-analyzer | The Requirements Quality Analyzer tool (RQA) allows you to define, measure, improve and manage the quality of the requirements specifications within the systems engineering process |
RQA Requirements Quality Analyzer for system engineering projects | http://www.reusecompany.com/requirements-quality-analyzer | The Requirements Quality Analyzer tool (RQA) allows you to define, measure, improve and manage the quality of the requirements specifications within the systems engineering process |
Visure Requirements | http://www.visuresolutions.com | Visure Requirements is a flexible and complete Requirements Engineering lifecycle solution capable of streamlining your requirements processes, allowing more effective collaboration and increasing quality. |
Vitech Core | http://www.vitechcorp.com/products/core.shtml | Product Requirements, Design and Development Success, Through Integrated Systems Engineering |
TestTrack | http://www.seapine.com/ttrm.html | Cloud and on-site requirements solution |
Criticism[edit]
Some recent research suggests that software requirements are often an illusion misrepresenting design decisions as requirements in situations where no real requirements are evident.[9]
See also[edit]
- Requirements Engineering Specialist Group (RESG)
- International Requirements Engineering Board (IREB)
- IEEE 12207
- Concept of operations
- Software requirements
- Software requirements specification
References[edit]
- ^ Nuseibeh, B.; Easterbrook, S. (2000). Requirements engineering: a roadmap (PDF). ICSE'00. Proceedings of the conference on the future of Software engineering: 35–46. doi:10.1145/336512.336523. ISBN 1-58113-253-0. CiteSeerX: 10
.1 .1 .131 .3116. - ^ Kotonya, Gerald; Sommerville, Ian (September 1998). Requirements Engineering: Processes and Techniques. John Wiley & Sons. ISBN 0-471-97208-8.
- ^ Chemuturi, M. (2013). Requirements Engineering and Management for Software Development Projects. doi:10.1007/978-1-4614-5377-2. ISBN 978-1-4614-5376-5.
- ^ Software Requirements Engineering Methodology (Development) Alford, M. W. and Lawson,J. T. TRW Defense and Space Systems Group. 1979.
- ^ Thayer, Richard H.; Dorfman, Merlin, eds. (March 1997). Software Requirements Engineering (2nd ed.). IEEE Computer Society Press. ISBN 0-8186-7738-4.
- ^ Royce, W. W. (1970). Managing the Development of Large Software Systems: Concepts and Techniques (PDF). ICSE'87. Proceedings of the 9th international conference on Software Engineering: 1–9.
- ^ Requirements bibliography Reviewed November 10th 2011
- ^ Sommerville, Ian (2009). Software Engineering (9th ed.). Addison-Wesley. ISBN 978-0-13-703515-1.
- ^ Ralph, P. (September 2013). "The illusion of requirements in software development". Requirements Engineering 18 (3): 293–296. doi:10.1007/s00766-012-0161-4.
External links[edit]
- 29148-2011 - Systems and software engineering — Life cycle processes — Requirements engineering. 2011. pp. 1–94. doi:10.1109/IEEESTD.2011.6146379. ISBN 978-0-7381-6591-2.("This standard replaces IEEE 830-1998, IEEE 1233-1998, IEEE 1362-1998 - http://standards.ieee.org/findstds/standard/29148-2011.html")
|
|
|
|