Requirements Engineering · Software Engineering

Enduring Requirements

Watch lectures

Enduring Requirements

Definition

Enduring requirements are those requirements that are stable and unlikely to change over the life of the system — they represent the core, fundamental purpose of the software and remain relatively constant even as technology and business processes evolve.

Characteristics

  • Rooted in the core business/domain need, not tied to a specific technology or implementation
  • Remain valid across multiple versions/releases of the system
  • Form the stable backbone of the SRS
  • Changes to enduring requirements usually indicate a fundamental shift in the business itself

Examples

  • "The system shall allow customers to place an order" (an e-commerce site will always need this, regardless of UI/tech changes)
  • "The banking system shall maintain accurate account balances"
  • "The library system shall track which books are checked out"

Why They Matter

  • Provide a stable foundation for architecture and design decisions
  • Help prioritize what must be protected/preserved during redesign or technology migration
  • Reduce risk — building around enduring requirements means the core system won't need major rework due to changing trends

Enduring vs. Volatile Requirements (contrast)

Enduring Requirements Volatile Requirements
Stable over time Change frequently
Tied to core business purpose Tied to specific implementation, market trends, or short-term needs
Rarely need rework Require ongoing tracking/management
Example: "track inventory levels" Example: "support the latest payment gateway API"

Exam tip: This topic is almost always asked together with Volatile Requirements as a compare/contrast question — memorize the table above.

Official AppAndroid App

PYQDeck for Android

Solve BEU previous-year exam papers anywhere, anytime. Fast search, offline paper viewing, and step-by-step solutions designed specifically for your phone.

← All Software Engineering modules