... (index).
But, in contrast to an array, items can be added or removed from anywhere within
an array list. Also an array list grows and shrinks as necessary to accommodate the
required data. An array list holds ... accounts, and so on. Through classi-
fication, we are able to associate characteristics common to all members of a class. All
mammals are vertebrates (have backbones), are warm-blo...
... Whatever you do to an object in a
program, it always retains the features it had when it was created. An object can be
assigned to a variable of another class and passed around the program as a ... inheritance, you use an existing class as the basis for creating a modified class.
We again use as an example the cyberspace invaders program that displays graphical
images on the screen...
... test data for black box testing using equivalence
partitioning are:
1. partition the input data values
2. select representative data from each partition (equivalent data)
3. select data at the ... test
2. if a bug is revealed, fix it
BELL_C19.QXD 1/30/05 4 :25 PM Page 27 5
19.4 Black box (functional) testing 26 9
Boundary values are values of the data at or near critical values. For...
... are always
informal processes at work – both individual and group. A project manager needs an
awareness of these processes and needs to know what can be done to avoid weakening
a team and what ... what
blend of criteria is appropriate for the particular project. For example, the set of goals
for a particular project might be to optimize:
■ development effort,
■ reliability, and
■...
... Visual Basic started out as a toy and became a widely used tool for serious
Windows-based applications. Java emerged as a secure and portable language with net-
centric features.
Any language for ... influ-
enced by many factors not directly related to the programming language itself. For
example, many organizations have a substantial investment in a particular programming...
... 2/ 2/05 3 :20 PM Page ii
Software Engineering
for Students
BELL _A0 1.QXD 2/ 2/05 3 :20 PM Page i
Software Engineering
for Students
A Programming Approach
Fourth Edition
DOUGLAS BELL
BELL _A0 1.QXD 2/ 2/05 ... 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 mode...
... as appropriate within the text as a graphi-
cal design notation. Some other graphical notations – flowcharts, structure charts and
data flow diagrams are also used.
Java is used as an illustrative ... software is software that helps perform some directly useful or enjoyable
task. Examples are games, the software for automatic teller machines (ATMs), the
control software in an airp...
... Arguably, as hardware becomes
available to make previously impractical software projects feasible, software costs can only
continue to escalate.
In summary, what we see today is that software ... often as software. Although this is grounds for
friendly rivalry between software and hardware designers, it can be no grounds for com-
placency among software people.
There are partic...