Software Requirement Engineering (SE311)
Software Requirement Engineering (SE311)
(SE311)
Lecture 01
Today’s objective
Today we will discuss
Course Objective
Course Outline and Lesson Plan
Course Policies (Attendance/Mobile etc)
Assignment Guideline
My course rules
Attendance at lectures is mandatory.
A lot of course material, lecture notes and interpretation are
covered during lectures may not be present in textbooks or
lecture notes.
No mobile telephones ringing or texting during the class
Questions can be asked anytime during lecture
All lecture notes, articles, case studies and reference
material would be shared with students.
Attendance policy of university will be adhered strictly.
No alternative/make up test would be taken for any
missed test/exam
Marks Distribution
Assignments: 15%
Midterm: 25%
Final Exam: 60%
Architectural System
design integration
Requirements Sub-system
partitioning development
Software
requirements
engineering
Systems engineering process
System requirements engineering
The requirements for the system as a whole are established
and written to be understandable to all stakeholders
Architectural design
The system is decomposed into sub-systems
Requirements partitioning
Requirements are allocated to these sub-systems
Software requirements engineering
More detailed system requirements are derived for the
system software
Sub-system development
The hardware and software sub-systems are
designed and implemented in parallel.
System integration
The hardware and software sub-systems are put
together to make up the system.
System validation
The system is validated against its requirements.
RE: Some observations
RE is not necessarily a sequential process:
RE is a set of activities that continue throughout
the development process
The problem statement will be imperfect
RE models are approximations of the world
will contain inaccuracies and inconsistencies
will omit some information.
detailed analysis can reduce the risk that these will
cause serious problems…
" …but that risk can never be reduced to zero
Perfecting a specification may not be cost-
effective
Requirements analysis has a cost
For different projects, the cost-benefit balance will be
different
Problem statement should never be treated as
fixed
Change is inevitable, and therefore must be planned for
There should be a way of incorporating changes
periodically
Importance of Requirement Engineering: Problems