+ All Categories
Home > Documents > INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad...

INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad...

Date post: 18-Dec-2015
Category:
Upload: dulcie-casey
View: 215 times
Download: 1 times
Share this document with a friend
Popular Tags:
15
INSE - Lecture 2 What makes Software “good”?
Transcript
Page 1: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

INSE - Lecture 2

What makes Software “good”?

Page 2: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

INSE - Lecture 2

What makes Software “bad”?

unreliable, unusable, too slow, too fast;errors (i.e. bugs), un-maintainable;not what the customer needed;…

Page 3: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

What makes software “bad?” unreliable; unusable; too slow; too fast; … un-maintainable; errors (i.e. bugs); not what the customer needed; …

Page 4: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

Unreliable

Software should not do un-reasonable things… … when presented with bad input [not blow

up; not ignore the bad input] … when overloaded [not blow up, say it is

overloaded; “suffer graceful degradation”]; … when faced with emergencies, e.g. real-

time crises [not blow up: should do something adequate]

…not blow up

Page 5: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

Unusable Causes for dislike/irritation

by the user by the user’s manager

Inconvenient/error-prone input Illegible/incomprehensible output Documentation

unclear (for that reader) inappropriate length (for that user & document) hard to use/hard to look up in

Exceeds human limits (e.g. patience, speed, memory…) Not too fascinating!

Page 6: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

Too slow/too fast

[Both really forms of “unusable”] Too slow

wastes the users time; or bores the user; or so slow the user loses track

Too fast The user can’t keep up, in some sense

Page 7: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

Un-maintainable Design without considering the problems of

maintaining the software, and later you’ll find it’s very hard to maintain, very expensive to maintain, & the maintained software is very prone to bugs,

crashes, etc. [“Maintainability” is not something that can

be “added later” – it must be designed in & coded in.]

Page 8: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

Erorrs (i.e. bugs)

bug = minor error in design or coding

…sloppiness!

…waste of time!

… so get it right first time

Page 9: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.
Page 10: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.
Page 11: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.
Page 12: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

Not what the customer needed

build the right product!

build the product right!

Page 13: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

This was all about bad software

So by “opposites”, that lectures defined what it means for software to be “not bad” –

but “not bad” falls a long way short of “good”.

Page 14: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

After this lecture think about your past programming

efforts – in what ways were your products “good”? In what ways were they “bad”?

think about software you use – in what ways is it good/bad?

think about software you’ve stopped using – was it because it was “bad”? In what ways?

Page 15: INSE - Lecture 2 What makes Software “ good ” ?. INSE - Lecture 2 What makes Software “ bad ” ?  unreliable, unusable, too slow, too fast;  errors (i.e.

© C Lester 1997-2004


Recommended