University of Management and Technology
Course Outline
Course code: SE2102 Course title: Software Requirement Engineering
BSSE
Program
3
Credit Hours
16 Weeks
Duration
Software Engineering
Prerequisites
Mamoona Mumtaz
Resource Person
Counseling Timing
(Room# 18 )
[Link]@[Link]
Contact
Chairman/Director signature………………………………….
Dean’s signature…………………………… Date………………………………………….
Learning Objective:
Course Outline Page 1
Knowledge and understanding: after completion of the course the student
must to be able to
Explain why requirements engineering is a key to successful software
engineering,
Describe the challenges involved in requirements engineering,
Explain the importance of identifying stakeholders and their knowledge,
context and goals,
Explain the difference between functional and quality requirements,
Describe how to conduct bespoke (in-project/single-customer)
requirements engineering in terms of common processes and
techniques,
Explain how market-driven differs from bespoke (in-project/single-
customer) requirements engineering,
Describe how requirements engineering in agile projects differ from
traditional requirements engineering.
Skills and abilities: after completion of the course the student must to be
able to
Skillfully elicit software requirements,
Clearly document software requirements according to industry
standards and state-of-the-art,
Priorities requirements,
Assure the quality of requirements and requirements specifications,
Be able to assess current requirements engineering practices in a
software project or a software Development company.
Judgment and approach: after completion of the course the student must to
be able to
Suggest relevant improvements on requirements engineering processes
in a convincing way
Trade-off the choice of requirements engineering methods and
processes given a certain project context.
Learning Methodology:
Lecturing, Written Assignments, Project, Report Writing.
Moreover, learning objectives will be accomplished through theoretical and
practical tasks during the class. However, students are encouraged for
maximum class participation.
Grade Evaluation Criteria
Course Outline Page 2
Following is the criteria for the distribution of marks to evaluate final grade in
a semester.
Marks Evaluation Marks in percentage
Quizzes 10
Assignments 5
Mid Term 25
Term Project 15
Term Project Presentation 5
Final exam 40
Total 100
Recommended Text Books:
1) Software Requirements, Wiegers K. &Beatty J., 3rd Ed. Microsoft Press,
2013
2) Requirements Engineering, Elizabeth Hull, Ken Jackson and Jeremy Dick.
3rd Ed, Springer-Verlag London Limited, 2011.
Reference Books:
1) Requirements Engineering and Management for Software Development
Projects, Chemuturi M., Springer New York, 2013.
2) Gerald Kotonya, Ian Sommerville, Requirements Engineering Processes
and Techniques.
Calendar of Course contents to be covered during semester
Course Outline Page 3
Course code: SE2102 Course title: Software Requirement Engineering
Week Course Contents Reference Chapter(s)
Introduction to software requirements engineering: Discussion
What are requirements, Lecture Handouts
What is requirements engineering ([Link]: Ch.1)
1 What is requirements engineering process
What is requirements document ([Link]: Ch.1)
What are stakeholders
What is requirements management
What is systems engineering
2
Requirements engineering process activities: (Pressman: Ch.10 )
Inception
Elicitation
Elaboration
3 Negotiation
Specification
Validation
Requirement management
Requirements elicitation: ([Link]:
Elicitation and analysis process Ch.3,[Link]:Ch 8 )
Elicitation barriers
Role of stakeholder in requirements elicitation process
4
Elicitation techniques ([Link]:
Prototyping Ch.3,[Link]:Ch 8 )
Requirements analysis and negotiation.
Course Outline Page 4
Writing functional requirements: Chapter 5, 6
Use case modeling
Deriving functional requirement
Characteristic of good requirements Chapter 7
Software requirement specification template Lecture Handouts
Non-functional requirements: ([Link]:
Classification of non-functional requirements Ch.8,[Link]: Ch 6 )
Deriving non-functional requirements
Requirements for critical systems
8 Requirements engineering for safety critical systems
Mid Term
Requirements Management: ([Link]:
Stable and volatile requirements Ch.5,[Link]: Ch 9)
Requirements identification and storage
10
Course Outline Page 5
Change management, ([Link]:
Traceability Ch.5,[Link]: Ch 9)
11
Methods for requirements engineering: ([Link]: Ch.6)
Data-flow modeling
Semantic data models
Object-oriented approaches,
12 Formal methods
Requirements validation: ([Link]: Ch.4)
Requirements reviews
Prototyping
Model validation
13 Requirements testing
Requirements engineering for agile methods: ([Link]: Ch.14)
Traditional and agile requirement engineering
Agile approaches to requirements engineering
Role and responsibility of customers, developers, and
14 managers
Tools for requirements management in agile methods
Revision & Project Presentations
15
Course Outline Page 6