Professional Documents
Culture Documents
Requirement Engineering
ICE 3201
Md Jaber Al Nahian
Lecturer
Department of ICE
Bangladesh University of Professionals
2
What is Software Engineering?
Engineering approach to develop software.
● Building Construction Analogy
3
IEEE Definition
“Software engineering is the application of a systematic, disciplined,
quantifiable approach to the development, operation, and maintenance of
software; that is, the application of engineering to software.”
4
Software Crisis
● Expensive.
5
Software Crisis
Laptop or Desktop =
BDT 45,000/-
Softimage Face Robot
BDT 8925250/-
Hw cost
Sw cost CryEngine 3=
BDT 11,274,000/-
7
28% Successful 49% Delayed or
cost overrun
49% Delayed or
23% Cancelled cost overrun
23% Cancelled
8
Which Factors are Contributing to the Software
Crisis?
• Larger problems
9
Issues that affect many different types of software
Heterogeneity: Increasingly, systems are required to operate as distributed
systems across networks that include different types of computer and mobile
devices.
Business and social change: Businesses and society are changing incredibly
quickly as emerging economies develop and new technologies become available.
They need to be able to change their existing software and to rapidly develop new
software.
Security and trust: As software is intertwined with all aspects of our lives, it is
essential that we can trust that software.
Scale: Software has to be developed across a very wide range of scales.
10
Programming: an Art
or Engineering?
Esoteric Past Engineering Technology
Experience
Development Pattern
Technology
Craft
Systematic Use of Past
Experience and Scientific Basis
Unorganized Use of
Past Experience
Art Time
11
Programming: an Art or Engineering?
12
What is Exploratory Software Development?
13
What is Exploratory Software Development?
Fix
Initial
Test
Coding Do Until
Done
● Does not work for nontrivial projects… Why?...
14
What is Wrong with the Exploratory Style?
Can successfully be used for developing only very small (toy) programs
Software
Exploratory Engineering
Machine
time, cost
Effort,
Program Size
15
What is Wrong with the Exploratory Style?
Besides the exponential growth of effort, cost, and time with problem size:
16
Textbook
● Software Engineering, 10th edition- Ian Sommerville
● Software Engineering: A Practitioner's Approach, 8th edition, Roger
Pressman, Bruce Maxim
17