Information Technology Reference
In-Depth Information
occurs later. Overall, with complex problems, we can never be
completely confident that our specifications cover all possible
problematic occurrences, so in our subsequent problem solv
ing we cannot be certain we are trying to solve exactly the
right problem.
Design : People design algorithms, and all people make mis
takes—at least sometimes. Formulae may be wrong, either
through errors in logic, difficulties in analysis, or typographi
cal errors.
Coding : Instructions to a computer must be extremely de
tailed and precise. In writing large and complex programs,
the likelihood for error is very high—just as the chances are
good that a book will contain at least one error somewhere.
In writing programs, various tools can help identify common
problems, just as spelling checkers can help us determine if
any words we write in a paper are misspelled. However, tools
cannot check our intent or our logical thinking; symbols or
words may be valid according to a dictionary, but that does
not imply that they are what we meant to say.
Testing : Complex programs may encounter millions of differ
ent situations. Even in the context of word processing, just
think of all of the possible combinations of fonts, styles, type
sizes, and formatting. Because various parts of a program
may interact in subtle ways, complete testing would require
the checking of all possible interactions, for all possible com
binations of input. Such exhaustive testing is not feasible for
any but the simplest programs.
Maintenance : When system components interact in complex
ways, a change in one component may affect processing
somewhere else. Thus, the addition of a new feature or the
correction of an error in one place may generate an error
somewhere else.
Modeling : Models of processes and situations require the iden
tification of relevant variables and the formulation of relation
ships and equations, based on reasonable assumptions. Errors
may be made in the selection of what variables are relevant in
identifying needed equations or in stating assumptions.
Simulations : All simulations are based upon models, and all
models in turn depend upon assumptions (either stated or un
Search WWH ::




Custom Search