SEN 570: Software Requirement Engineering

Offered Under: M.Sc. in Software Engineering (SEN)

This course is about the elicitation, analysis, modeling and specification of software engineering requirements. Topics include: role of requirements in system development and maintenance, goals of the requirements phase, essential difficulties of specifying requirements, effective methods, tools and techniques, techniques for formally modeling and specifying software requirements, process of identifying stakeholders, capturing, analyzing, reviewing and verifying their requirements for new or extended software products, optimization of software requirements and business benefits, the role of prototyping in validating requirements; process of requirements management, configuration management, change management, impact estimation due to requirements change.

Course Type Major
Credit Hour 3
Lecture Hour 45
Expected Outcome(s):
  • Understand the basics of Requirements Engineering.
  • Prepare for, and undertake the requirements elicitation tasks.
  • Analyze client needs.
  • Create models of requirements using a variety of notations and techniques.
  • Prepare software requirements specifications using an industry standard.
  • Prepare for, and undertake formal specification reviews.

Suggested Books:
  1. Software Requirements (3rd Edition) by Karl E Wiegers and Joy Beatty
  2. Software Requirements Engineering (2nd Edition) by Richard H. Thayer and Merlin Dorfman
  3. Requirements Engineering for Software and Systems (2nd Edition) by Phillip A. Laplante

Grading Policy: