CS 617 - Requirements Engineering

Bulletin Description

The course will examine the requirements phase of the Systems Engineering and Software Engineering lifecycles in detail. Topics will include: requirements elicitation, requirements specification, and requirements analysis. Verification and validation techniques will be emphasized throughout the course. Students will work in small groups to research and present a related topic.

Prerequisites

9 graduate credits

Expected Preparation

Students should have had an undergraduate course in software engineering, CS 616, and/or software engineering experience.

Student Learning Outcomes

CO1: The student shall have a clear understanding of the definition of software requirements.

CO2: The student shall understand and be able to perform multiple requirements elicitation techniques.

CO3: The student shall understand and be able to perform multiple methods of requirement specification.

CO4: The student shall be familiar with requirement modeling.

CO5: The student shall be able to perform early lifecycle risk analysis based on requirements.

CO6: The student shall be able to identify requirement fault types.

CO7: The student shall be able to critically evaluate requirements engineering research carried out by others.

CO8: The student shall be familiar with ethical considerations in requirements and software engineering.

Syllabus Information

Required Textbook:

Axel van Lamsweerde
Requirements Engineering
Wiley Publishing
ISBN: 978-0-470-01270-3

Optional Textbook:

Karl Wiegers
Software Requirements
Microsoft Press
ISBN: 978-0-7356-0631-5