Database Management System (DBMS) / Advance ER Conceps

Requirement Engineering

✅ What is Requirement Engineering?

Requirement Engineering (RE) is the process of defining, documenting, and maintaining the requirements in the engineering design process of a software system.

It ensures the software meets the needs of its users and stakeholders before development begins, reducing costly changes later.


🔹 Why is Requirement Engineering Important?

  • Helps build the right product.

  • Reduces rework, cost, and project failure.

  • Improves communication among stakeholders.

  • Forms the foundation for design, development, and testing.



📄 Types of Requirements

Type

Description

Example

✅ Functional

What the system should do

“System should allow login”

✅ Non-functional

How the system should perform

“Should respond within 2 seconds”

✅ Domain

Specific to industry or field

“Banking rules for transactions”

✅ User Requirements

From the user’s point of view

“User should be able to reset password”

✅ System Requirements

Detailed behavior and interactions

“System shall encrypt all data”


🔍 Real-Life Example:

You’re building a food delivery app.

  • Functional: Allow users to place orders.

  • Non-functional: App must load in < 3 seconds.

  • User requirement: Easy-to-use interface.

  • Domain: Compliance with FSSAI standards.