ISE-Lecture 03
ISE-Lecture 03
Software Engineering
LECTURER: SYED HASNAIN ABBAS BUKHARI
So#ware
Engineering:
A
Problem
Solving
Ac9vity
q Techniques:
q Methodologies:
by a philosophical approach
q Tools:
S y e d
H a s n a i n
A b b a s
B u k h a r i
Industry
Progress
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software Size Matters ?
Ignorance of size
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software: Axis of variability
q Size
q Requirements stability
q Portability
q Cost
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software: Axis of variability (example)
q Microso# Word
q Size:
large
q Interac9veness:
high
q Requirements:
frequent
new
features
q Reliability:
moderate
q Security:
low
q Portability:
high
q Cost:
high
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software: Axis of variability (example)
q Space ShuGle
q Size:
large
q Interac9veness:
low
q Requirements: stable
q Security: low
q Cost:
high
S y e d
H a s n a i n
A b b a s
B u k h a r i
Sample Sizes
q 86 million
q Windows XP
q Eclipse
q 10 million
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software Engineering Myths
Software Engineering Myths: Management
q “We
have
books
with
rules.
Isn’t
that
everything
my
people
need?”
q Which
book
do
you
think
is
perfect
for
you?
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software Engineering Myths: Customer
q “The good thing about so#ware is that we can change it
later easily”
S y e d
H a s n a i n
A b b a s
B u k h a r i
Software Engineering Myths: Practitioner
S y e d
H a s n a i n
A b b a s
B u k h a r i
The Cost Of Software Engineering
The cost of software engineering
q Depends on:
q Roughly 60% of costs are development costs, 40% are tesTng costs.
costs.
S y e d
H a s n a i n
A b b a s
B u k h a r i
Challenges In Software Engineering
q Coping
with
increasing
diversity
q Demands
for
reduced
delivery
Tmes
q Developing
trustworthy
so#ware.
S y e d
H a s n a i n
A b b a s
B u k h a r i
What are the best software engineering techniques
and methods?
q You can’t, therefore, say that one method is beGer than another.
S y e d
H a s n a i n
A b b a s
B u k h a r i
Essential Attributes of
Software
EssenTal
AGributes
of
Good
So#ware
q Maintainability:
q SoCware
should
be
wri\en
in
such
a
way
so
that
it
can
evolve
to
meet
the
changing
needs
of
customers.
q This
is
a
cri9cal
a\ribute
because
soCware
change
is
an
inevitable
requirement
of
a
changing
business
environment
S y e d
H a s n a i n
A b b a s
B u k h a r i
EssenTal
AGributes
of
Good
So#ware
q Acceptably:
q SoCware
must
be
acceptable
to
the
type
of
users
for
which
it
is
designed.
q This
means
that
it
must
be
understandable,
usable
and
compa9ble
with
other
systems
that
they
use.
q Efficiency:
q SoCware
should
not
make
wasteful
use
of
system
resources
such
as
memory
and
processor
cycles.
q Efficiency
therefore
includes
responsiveness,
processing
9me,
memory
u9liza9on,
etc.
S y e d
H a s n a i n
A b b a s
B u k h a r i
Quiz # 1
q Quiz will be from Lecture 01, Lecture 02 & Lecture 03
S y e d H a s n a i n A b b a s B u k h a r i