mirror of
https://github.com/jackyzha0/quartz.git
synced 2025-12-24 21:34:06 -06:00
25 lines
1.2 KiB
Markdown
25 lines
1.2 KiB
Markdown
---
|
||
title: "requirements-engineering"
|
||
tags:
|
||
- info201
|
||
---
|
||
|
||
> “…to cover all of the activities involved in discovering, documenting, and maintaining a set of requirements for a computer-based system.<2E>? - Kotonya and Sommerville, 2001, p. 8
|
||
|
||
Requirements engineering is a robust methodology for the development of requirements. It is made up of three main steps.
|
||
|
||
|
||
# 1 Discovery
|
||
|
||
This is where you identify all the requirments of the system. [requirements-elicitation](notes/requirements-elicitation.md) is done here. Many techniques such as [interviewing](notes/interviewing.md), [participant-observation](notes/participant-observation.md), [prototyping](notes/prototyping.md), and more are used here.
|
||
|
||
This is also where you should learn about the domain of the system and the stakeholders
|
||
|
||
# 2 Documenting
|
||
This is where the requirements are specified and refined, and models and documents are created. All the requirements are compiled into a [requirements document](notes/requirements-document).
|
||
|
||
# 3 Maintenance
|
||
This occurs throughout development and is primarly focuses on managing changes in the environment of the system.
|
||
|
||
It important to manage what is being discovered and documented. This allows you to keep the client updated and manage scope creep.
|