- Page 1 and 2: Software Engineering for Students D
- Page 3 and 4: We work with leading authors to dev
- Page 5 and 6: Pearson Education Limited Edinburgh
- Page 7 and 8: vi Contents Part D ● Verification
- Page 9 and 10: viii Detailed contents 3 The feasib
- Page 11 and 12: x Detailed contents 9 Data flow des
- Page 13 and 14: xii Detailed contents 14.7 Repetiti
- Page 15 and 16: xiv Detailed contents 19.7 Unit tes
- Page 17 and 18: xvi Detailed contents 26 Agile meth
- Page 19 and 20: xviii Detailed contents 32.4 Softwa
- Page 21 and 22: xx Preface Software Engineering and
- Page 23: xxii Preface are engaged on a proje
- Page 27 and 28: 4 Chapter 1 ■ Software - problems
- Page 29 and 30: 6 Chapter 1 ■ Software - problems
- Page 31 and 32: 8 Chapter 1 ■ Software - problems
- Page 33 and 34: 10 Chapter 1 ■ Software - problem
- Page 35 and 36: 12 Chapter 1 ■ Software - problem
- Page 37 and 38: 14 Chapter 1 ■ Software - problem
- Page 39 and 40: 16 Chapter 1 ■ Software - problem
- Page 41 and 42: 18 Chapter 1 ■ Software - problem
- Page 43 and 44: 20 Chapter 1 ■ Software - problem
- Page 45 and 46: CHAPTER 2 This chapter: In this cha
- Page 47 and 48: 24 Chapter 2 ■ The tasks of softw
- Page 49 and 50: 26 Chapter 2 ■ The tasks of softw
- Page 51 and 52: 28 Chapter 2 ■ The tasks of softw
- Page 53 and 54: CHAPTER 3 This chapter: ■ explain
- Page 55 and 56: 32 Chapter 3 ■ The feasibility st
- Page 57 and 58: 34 Chapter 3 ■ The feasibility st
- Page 59 and 60: CHAPTER 4 Requirements engineering
- Page 61 and 62: 38 Chapter 4 ■ Requirements engin
- Page 63 and 64: 40 Chapter 4 ■ Requirements engin
- Page 65 and 66: 42 Chapter 4 ■ Requirements engin
- Page 67 and 68: 44 Chapter 4 ■ Requirements engin
- Page 69 and 70: 46 Chapter 4 ■ Requirements engin
- Page 71 and 72: 48 Chapter 4 ■ Requirements engin
- Page 74:
PART B DESIGN
- Page 77 and 78:
54 Chapter 5 ■ User interface des
- Page 79 and 80:
56 Chapter 5 ■ User interface des
- Page 81 and 82:
58 Chapter 5 ■ User interface des
- Page 83 and 84:
60 Chapter 5 ■ User interface des
- Page 85 and 86:
62 Chapter 5 ■ User interface des
- Page 87 and 88:
64 Chapter 5 ■ User interface des
- Page 89 and 90:
66 Chapter 5 ■ User interface des
- Page 91 and 92:
68 Chapter 6 ■ Modularity Java is
- Page 93 and 94:
70 Chapter 6 ■ Modularity There a
- Page 95 and 96:
72 Chapter 6 ■ Modularity a progr
- Page 97 and 98:
74 Chapter 6 ■ Modularity Figure
- Page 99 and 100:
76 Chapter 6 ■ Modularity In obje
- Page 101 and 102:
78 Chapter 6 ■ Modularity 3. Modi
- Page 103 and 104:
80 Chapter 6 ■ Modularity 4. comm
- Page 105 and 106:
82 Chapter 6 ■ Modularity ■ inp
- Page 107 and 108:
84 Chapter 6 ■ Modularity 6.11
- Page 109 and 110:
86 Chapter 6 ■ Modularity • Fur
- Page 111 and 112:
88 Chapter 7 ■ Structured program
- Page 113 and 114:
90 Chapter 7 ■ Structured program
- Page 115 and 116:
92 Chapter 7 ■ Structured program
- Page 117 and 118:
94 Chapter 7 ■ Structured program
- Page 119 and 120:
96 Chapter 7 ■ Structured program
- Page 121 and 122:
98 Chapter 7 ■ Structured program
- Page 123 and 124:
100 Chapter 7 ■ Structured progra
- Page 125 and 126:
CHAPTER 8 Functional decomposition
- Page 127 and 128:
104 Chapter 8 ■ Functional decomp
- Page 129 and 130:
106 Chapter 8 ■ Functional decomp
- Page 131 and 132:
108 Chapter 8 ■ Functional decomp
- Page 133 and 134:
110 Chapter 8 ■ Functional decomp
- Page 135 and 136:
112 Chapter 9 ■ Data flow design
- Page 137 and 138:
114 Chapter 9 ■ Data flow design
- Page 139 and 140:
116 Chapter 9 ■ Data flow design
- Page 141 and 142:
118 Chapter 9 ■ Data flow design
- Page 143 and 144:
120 Chapter 9 ■ Data flow design
- Page 145 and 146:
122 Chapter 10 ■ Data structure d
- Page 147 and 148:
124 Chapter 10 ■ Data structure d
- Page 149 and 150:
126 Chapter 10 ■ Data structure d
- Page 151 and 152:
128 Chapter 10 ■ Data structure d
- Page 153 and 154:
130 Chapter 10 ■ Data structure d
- Page 155 and 156:
132 Chapter 10 ■ Data structure d
- Page 157 and 158:
134 Chapter 10 ■ Data structure d
- Page 159 and 160:
136 Chapter 10 ■ Data structure d
- Page 161 and 162:
138 Chapter 10 ■ Data structure d
- Page 163 and 164:
140 Chapter 11 ■ Object-oriented
- Page 165 and 166:
142 Chapter 11 ■ Object-oriented
- Page 167 and 168:
144 Chapter 11 ■ Object-oriented
- Page 169 and 170:
146 Chapter 11 ■ Object-oriented
- Page 171 and 172:
148 Chapter 11 ■ Object-oriented
- Page 173 and 174:
150 Chapter 11 ■ Object-oriented
- Page 175 and 176:
152 Chapter 12 ■ Design patterns
- Page 177 and 178:
154 Chapter 12 ■ Design patterns
- Page 179 and 180:
156 Chapter 12 ■ Design patterns
- Page 181 and 182:
158 Chapter 12 ■ Design patterns
- Page 183 and 184:
160 Chapter 12 ■ Design patterns
- Page 185 and 186:
162 Chapter 12 ■ Design patterns
- Page 187 and 188:
164 Chapter 12 ■ Design patterns
- Page 189 and 190:
166 Chapter 13 ■ Refactoring > An
- Page 191 and 192:
168 Chapter 13 ■ Refactoring One
- Page 193 and 194:
170 Chapter 13 ■ Refactoring We h
- Page 195 and 196:
172 Chapter 13 ■ Refactoring Exer
- Page 198 and 199:
CHAPTER 14 14.1 ● Introduction Th
- Page 200 and 201:
14.3 Design principles 177 Cobol an
- Page 202 and 203:
14.5 Control structures 179 In addi
- Page 204 and 205:
> > if (condition) if (condition) s
- Page 206 and 207:
> 14.7 Repetition 183 There is some
- Page 208 and 209:
> 14.7 Repetition 185 C, C++, C# an
- Page 210 and 211:
following list of requirements: ■
- Page 212 and 213:
14.9 Parameter-passing mechanisms 1
- Page 214 and 215:
14.12 Strong versus weak typing 191
- Page 216 and 217:
14.13 User-defined data types (enum
- Page 218 and 219:
14.15 Records (structures) 195 Indi
- Page 220 and 221:
The following issues are considered
- Page 222 and 223:
14.4 The benefits are program clari
- Page 224 and 225:
Figure 15.1 Cyberspace invaders 15.
- Page 226 and 227:
15.2 Encapsulation 203 Often (thoug
- Page 228 and 229:
15.2 Encapsulation 205 If, on the o
- Page 230 and 231:
SELF-TEST QUESTION 15.4 ● Inherit
- Page 232 and 233:
Figure 15.2 Class diagram showing i
- Page 234 and 235:
15.5 Polymorphism 211 which is clum
- Page 236 and 237:
15.8 Dynamic data structures and po
- Page 238 and 239:
15.9 Garbage collection 215 dangero
- Page 240 and 241:
Summary Exercises 217 Writing a cla
- Page 242 and 243:
15.5 class Bomb extends Sprite { }
- Page 244 and 245:
CHAPTER 16 Programming in the large
- Page 246 and 247:
16.2 Packages 223 for software engi
- Page 248 and 249:
without difficulty. For example: JB
- Page 250 and 251:
16.6 ● Interfaces 16.6 Interfaces
- Page 252 and 253:
SELF-TEST QUESTION 16.7 ● Interfa
- Page 254 and 255:
Figure 16.3 Single inheritance JFra
- Page 256 and 257:
Exercises 233 This has a number of
- Page 258 and 259:
16.3 A specification of this kind o
- Page 260 and 261:
CHAPTER 17 This chapter explains:
- Page 262 and 263:
SELF-TEST QUESTION 17.1 Categorize
- Page 264 and 265:
17.2 Fault detection by software 24
- Page 266 and 267:
SELF-TEST QUESTION 17.4 Sum up the
- Page 268 and 269:
SELF-TEST QUESTION 17.5 Exceptions
- Page 270 and 271:
Figure 17.2 Program showing excepti
- Page 272 and 273:
17.6 Recovery blocks 249 ■ throw
- Page 274 and 275:
17.6 Recovery blocks 251 Recovery b
- Page 276 and 277:
17.8 Assertions 253 as in fly-by-wi
- Page 278 and 279:
Summary Faults in computer systems
- Page 280 and 281:
Answers to self-test questions 257
- Page 282 and 283:
CHAPTER 18 Scripting This chapter:
- Page 284 and 285:
18.2 Unix 261 tells us how many lin
- Page 286:
Summary Answers to self-test questi
- Page 290 and 291:
CHAPTER 19 Testing This chapter:
- Page 292 and 293:
19.4 Black box (functional) testing
- Page 294 and 295:
second. So we devise two tests: Tes
- Page 296 and 297:
} else { result.setText("you cannot
- Page 298 and 299:
Testing the test data 19.6 Other te
- Page 300 and 301:
Figure 19.2 Unit testing Driver Com
- Page 302 and 303:
Exercises 279 In black box (or func
- Page 304 and 305:
Answers to self-test questions 19.1
- Page 306 and 307:
CHAPTER 20 Groups This chapter expl
- Page 308 and 309:
20.3 Structured walkthroughs 285 Al
- Page 310 and 311:
Summary 287 The strategic thinking
- Page 312:
PART E PROCESS MODELS
- Page 315 and 316:
292 Chapter 21 ■ The waterfall mo
- Page 317 and 318:
294 Chapter 21 ■ The waterfall mo
- Page 319 and 320:
296 Chapter 21 ■ The waterfall mo
- Page 321 and 322:
298 Chapter 22 ■ The spiral model
- Page 323 and 324:
300 Chapter 22 ■ The spiral model
- Page 325 and 326:
302 Chapter 22 ■ The spiral model
- Page 327 and 328:
304 Chapter 23 ■ Prototyping a cl
- Page 329 and 330:
306 Chapter 23 ■ Prototyping Draw
- Page 331 and 332:
308 Chapter 23 ■ Prototyping The
- Page 333 and 334:
310 Chapter 23 ■ Prototyping 23.7
- Page 335 and 336:
312 Chapter 23 ■ Prototyping SELF
- Page 337 and 338:
CHAPTER 24 Incremental development
- Page 339 and 340:
316 Chapter 24 ■ Incremental deve
- Page 341 and 342:
318 Chapter 24 ■ Incremental deve
- Page 343 and 344:
320 Chapter 24 ■ Incremental deve
- Page 345 and 346:
CHAPTER 25 This chapter explains: 2
- Page 347 and 348:
324 Chapter 25 ■ Open source soft
- Page 349 and 350:
326 Chapter 25 ■ Open source soft
- Page 351 and 352:
328 Chapter 25 ■ Open source soft
- Page 353 and 354:
CHAPTER 26 This chapter explains:
- Page 355 and 356:
332 Chapter 26 ■ Agile methods an
- Page 357 and 358:
334 Chapter 26 ■ Agile methods an
- Page 359 and 360:
336 Chapter 26 ■ Agile methods an
- Page 361 and 362:
338 Chapter 27 ■ The unified proc
- Page 363 and 364:
340 Chapter 27 ■ The unified proc
- Page 365 and 366:
342 Chapter 27 ■ The unified proc
- Page 367 and 368:
344 Chapter 27 ■ The unified proc
- Page 370 and 371:
CHAPTER 28 Teams This chapter expla
- Page 372 and 373:
Time taken Figure 28.2 Having a bab
- Page 374 and 375:
28.5 The chief programmer team 351
- Page 376 and 377:
28.6 The object-oriented team 353 T
- Page 378 and 379:
Summary Answer to self-test questio
- Page 380 and 381:
CHAPTER 29 This chapter: ■ explai
- Page 382 and 383:
29.3 Complexity metrics 359 that pr
- Page 384 and 385:
29.4 Faults and reliability - estim
- Page 386 and 387:
29.5 Software quality 363 encompass
- Page 388 and 389:
29.7 Process improvement 365 specif
- Page 390 and 391:
Summary Metrics support software en
- Page 392 and 393:
Further reading 369 The definitive
- Page 394 and 395:
■ it comprises a number of indivi
- Page 396 and 397:
30.3 Cost estimation 373 The most r
- Page 398 and 399:
30.4 ● Selecting tools and method
- Page 400 and 401:
30.6 In the heat of the project 377
- Page 402 and 403:
30.7 Managing people 379 productivi
- Page 404 and 405:
Further reading 381 30.5 You are th
- Page 406:
PART G REVIEW
- Page 409 and 410:
386 Chapter 31 ■ Assessing method
- Page 411 and 412:
388 Chapter 31 ■ Assessing method
- Page 413 and 414:
390 Chapter 31 ■ Assessing method
- Page 415 and 416:
CHAPTER 32 Conclusion This chapter:
- Page 417 and 418:
394 Chapter 32 ■ Conclusion Ada c
- Page 419 and 420:
396 Chapter 32 ■ Conclusion may h
- Page 421 and 422:
398 Chapter 32 ■ Conclusion Some
- Page 423 and 424:
400 Chapter 32 ■ Conclusion engin
- Page 425 and 426:
402 Chapter 32 ■ Conclusion • E
- Page 428:
APPENDICES
- Page 431 and 432:
408 Appendix A ■ Case studies The
- Page 433 and 434:
410 Appendix A ■ Case studies ■
- Page 435 and 436:
APPENDIX C The Unified Modeling Lan
- Page 437 and 438:
414 Appendix C ■ UML summary name
- Page 439 and 440:
416 Appendix C ■ UML summary This
- Page 441 and 442:
418 Bibliography Programmers - thei
- Page 443 and 444:
420 Index component types 70 compon
- Page 445 and 446:
422 Index Microsoft Project 376 mid
- Page 447:
424 Index Torvalds, L. 325-6 trust