---
{
  "aliases": [
    "软件需求"
  ],
  "availableLangs": [
    "zh",
    "en"
  ],
  "categories": [
    "category-science-technology"
  ],
  "conceptKind": "theme",
  "createdAt": "2026-11-02T01:19:48+08:00",
  "id": "concept_software_requirements",
  "lang": "en",
  "revision": 2,
  "scopeNote": "One knowledge area of SWEBOK Guide v4.0a.",
  "slug": "software-requirements",
  "sources": [
    {
      "author": "Hironori Washizaki (ed.), IEEE Computer Society",
      "date": "2026-08",
      "id": "s1",
      "locator": "Chapter 1; Appendix B",
      "title": "Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) v4.0a",
      "url": "https://ieeecs-media.computer.org/media/education/swebok/swebok-v4.pdf"
    }
  ],
  "status": "published",
  "summary": "Software requirements are both a statement of the needs and constraints on a software product or project and the activities that develop and maintain those requirements.",
  "tags": [],
  "title": "Software Requirements",
  "type": "concept",
  "updatedAt": "2026-11-02T01:19:48+08:00",
  "updatedBy": "user:admin"
}
---

# Software Requirements

Software requirements are both a statement of the needs and constraints on a software product or project and the activities that develop and maintain those requirements.

Software requirements have two perspectives. One expresses the needs and constraints on a software product or project that contribute to solving a real-world problem. The other is the set of activities that develop and maintain the requirements for the product and for the project that builds it. Missing, misinterpreted, or incorrect requirements that are not found early cascade into rework through design, code, and test decisions. The Guide names two common problems: stakeholder requirements and necessary detail are not communicated to the software engineers, and a requirement is worded so that more than one interpretation is possible when only one is correct.[^s1]

The Guide organizes requirements activities as elicitation, analysis, specification, validation, and management. Forms of specification include unstructured natural language, structured natural language, acceptance-criteria-based specification, and model-based specification.[^s1]


The Guide's top-level topics for this knowledge area are:

- Software Requirements Fundamentals
- Requirements Elicitation
- Requirements Analysis
- Requirements Specification
- Requirements Validation
- Requirements Management Activities
- Practical Considerations
- Software Requirements Tools

Standards listed in the Guide's appendix include [ISO/IEC/IEEE 29148:2018](/en/works/ieee-std-29148-2018-8559684.html) for requirements engineering and [ISO/IEC/IEEE 15289:2019](/en/works/ieee-std-15289-2019.html) for life-cycle information items.[^s1]

更新时间：2026-11-02

## 标签


## 关系

- Broader concepts：[Software Engineering](/en/concepts/software-engineering.html) 

第 1 / 1 页，共 1 条。

## 正文反向链接

- [Software Engineering](/en/concepts/software-engineering.html)

## 来源

- Guide to the Software Engineering Body of Knowledge (SWEBOK Guide) v4.0a：https://ieeecs-media.computer.org/media/education/swebok/swebok-v4.pdf Chapter 1; Appendix B
