1. What do you expect from Me?
Muhammad Abdul Tawab Khalil
2. Get to know Me !
I get happy with
• Questions – lots of them
• Class participation
• If you come to class with previous and next lecture studied
• Honesty, Decency, Honorability
• Smiles
Muhammad Abdul Tawab Khalil
3. Get to know Me !
I am very sensitive about
• Punctuality
• Noise, cross talks
• If you are not attentive to me
• Cheating
• Comments that hurt your mates
• Habitual late-coming
• Dishonorable / inglorious requests
Muhammad Abdul Tawab Khalil
4. What do you know about SRS?
Muhammad Abdul Tawab Khalil
6. Repositioning Concepts
• What computers do? What is this hardware and software for?
“To model information processes”
Data
Information
Knowledge
Wisdom
• Hardware vs Software
• What is Software Engineering? Oh wait….
• What is Engineering? Nah…. Wait a little more
• Lets first decide…… What is Science?
Muhammad Abdul Tawab Khalil
7. Bootstrapping
• Why Software Engineering is “Engineering”?
• What is a Requirement?
• What is Specification?
• What is Requirement Specification?
• What is Requirement Engineering?
• What is Requirement Elicitation?
• What is SRS document?
• Why we create an SRS document?
• Look for SRS template and make me understand – Assignment 1
Muhammad Abdul Tawab Khalil
8. What will we do in this course?
Just Two Things
1. Learning Requirement Gathering Methods
So that we can specify (requirement specification)
2. Record those requirements in a formal way
That’s called SRS documents
Muhammad Abdul Tawab Khalil
9. Software Intensive Systems
• Software (on its own) is useless
• Software is an abstract description of a set of computations
• Software only becomes useful when run on some hardware
• we sometimes take the hardware for granted
• Software + Hardware = “Computer System”
• A Computer System (on its own) is useless
• Only useful in the context of some human activity that it can support
• we sometimes take the human context for granted
• A new computer system changes human activities in significant ways
• Software + Hardware + Human Activities = “Software Intensive System”
Muhammad Abdul Tawab Khalil
10. ‘Software’ makes many things possible
• It is sometimes complex but adaptable
• It can be rapidly changed on-the-fly
• It turns general-purpose hardware into a huge variety
of useful machines known as “Expert Systems”
Muhammad Abdul Tawab Khalil
11. Quality = Fitness for Purpose - 1
• Software technology is everywhere
• Affects nearly all aspects of our lives
• But our experience of software technology is often frustrating /disappointing
• Software is designed for a purpose
• If it doesn’t work well then either:
…the designer didn’t have an adequate understanding of the purpose
…or we are using the software for a purpose different from the intended one
• Requirements analysis is about identifying this purpose
• Inadequate understanding of the purpose leads to poor quality software
Muhammad Abdul Tawab Khalil
12. Quality = Fitness for Purpose - 2
• The purpose is found in human activities
• E.g. Purpose of a banking system comes from the business activities
of banks and the needs of their customers
• The purpose is often complex:
Many different kinds of people and activities
Conflicting interests among them
Muhammad Abdul Tawab Khalil
13. What are the Challenges?
Muhammad Abdul Tawab Khalil