Software Engineering for Students A Programming Approach

Software Engineering for Students A Programming Approach Software Engineering for Students A Programming Approach

web.firat.edu.tr
from web.firat.edu.tr More from this publisher
21.08.2013 Views

Detailed contents Preface xix Part A ● Preliminaries 1 1 Software – problems and prospects 3 1.1 Introduction 3 1.2 Meeting users’ needs 4 1.3 The cost of software production 5 1.4 Meeting deadlines 10 1.5 Software performance 10 1.6 Portability 11 1.7 Maintenance 11 1.8 Reliability 13 1.9 Human–computer interaction 16 1.10 A software crisis? 16 1.11 A remedy – software engineering? 17 Summary 18 Exercises 19 Answers to self-test questions 20 Further reading 20 2 The tasks of software development 22 2.1 Introduction 22 2.2 The tasks 23 2.3 Process models 26 2.4 Methodology 27 2.5 Hacking 28 Summary 28 Exercises 28 Answer to self-test question 29 vii

viii Detailed contents 3 The feasibility study 30 3.1 Introduction 30 3.2 Technical feasibility 31 3.3 Cost-benefit analysis 31 3.4 Other criteria 32 3.5 Case study 32 3.6 Discussion 34 Summary 34 Exercises 34 Answers to self-test questions 35 Further reading 35 4 Requirements engineering 36 4.1 Introduction 36 4.2 The concept of a requirement 37 4.3 The qualities of a specification 38 4.4 How to elicit requirements 40 4.5 The requirements specification 41 4.6 The structure of a specification 42 4.7 Use cases 45 4.8 Use case diagrams 46 Summary 47 Exercises 47 Answers to self-test questions 48 Further reading 49 Part B ● Design 51 5 User interface design 53 5.1 Introduction 53 5.2 An inter-disciplinary field 54 5.3 Styles of human–computer interface 54 5.4 Different perspectives on user interface design 56 5.5 Design principles and guidelines 57 5.6 Interface design 60 5.7 Case study 62 5.8 Help systems 63 Summary 64 Exercises 64

Detailed contents<br />

Preface xix<br />

Part A ● Preliminaries 1<br />

1 <strong>Software</strong> – problems and prospects 3<br />

1.1 Introduction 3<br />

1.2 Meeting users’ needs 4<br />

1.3 The cost of software production 5<br />

1.4 Meeting deadlines 10<br />

1.5 <strong>Software</strong> per<strong>for</strong>mance 10<br />

1.6 Portability 11<br />

1.7 Maintenance 11<br />

1.8 Reliability 13<br />

1.9 Human–computer interaction 16<br />

1.10 A software crisis? 16<br />

1.11 A remedy – software engineering? 17<br />

Summary 18<br />

Exercises 19<br />

Answers to self-test questions 20<br />

Further reading 20<br />

2 The tasks of software development 22<br />

2.1 Introduction 22<br />

2.2 The tasks 23<br />

2.3 Process models 26<br />

2.4 Methodology 27<br />

2.5 Hacking 28<br />

Summary 28<br />

Exercises 28<br />

Answer to self-test question 29<br />

vii

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!