Questions & Answers
Agile software development - ANSWERSAn approach to software development that
emphasizes a flexible and ready response to meet a shifting target.
Benchmarking - ANSWERSRunning a program on many data sets to be sure its
performance falls within required limits; timing the same algorithm on two different
machines.
Code library - ANSWERSA collection of thoroughly tested object code for various useful
tasks.
Coding - ANSWERSThe process of translating the detailed designs into computer code.
Divide-and-conquer - ANSWERSA program design strategy in which tasks are broken
down into subtasks, which are broken down into sub-subtasks, and so on, until each
piece is small enough to code comfortably. These pieces work together to accomplish
the total job.
Empirical testing - ANSWERSDesigning a special set of test cases and running the
program using these test data.
Executable module - ANSWERSThe resulting object code after a linker inserts
requested code from code libraries.
External documentation - ANSWERSAny materials assembled to clarify the program's
design and implementation.
Feasibility study - ANSWERSA step in the software development life cycle that
evaluates a proposed project and compares the costs and benefits of various solutions.
Integrated development environment (IDE) - ANSWERSA collection of programs that
support software development, such as debuggers, editors, toolkits, and libraries, that
lets programmers perform several tasks within the shell of a single application.
Integration testing - ANSWERSAfter unit testing, integration testing is done to see that
the modules communicate the necessary data between and among themselves and that
all modules work together smoothly.
Internal documentation - ANSWERSDocumentation that is part of the program code
itself.
, Logic error - ANSWERSAn error in the algorithm used to solve a problem.
Object code - ANSWERSMachine language instructions.
Pair programming - ANSWERSInvolves two programmers at a single workstation. At
any given point in time, one is writing code and the other is actively observing, watching
for possible errors
but also thinking about the overall approach.
Problem specification - ANSWERSA step in the software development life cycle that
involves
developing a clear, concise, and unambiguous statement of the exact problem the
software
is to solve.
Procedural language - ANSWERSA program written in a procedural language consists
of sequences of statements that manipulate data items.
Program design phase - ANSWERSA step in the software development life cycle that
plans the structure of the software to be written.
Program maintenance - ANSWERSThe process of adapting an existing software
product due to errors, new system requirements, or changing user needs.
Program verification - ANSWERSUsed to prove that if the input data to a program
satisfies certain conditions, then, after the program has been run on these data, the
output data satisfies certain other conditions.
Regression testing - ANSWERSIf anything is changed on an already-tested module,
regression testing is done to be sure that this change has not introduced a new error
into code that was previously correct.
Runtime error - ANSWERSAn error that occurs when the program is run using certain
sets of data that result in some illegal operation, such as dividing by zero.
Semantics - ANSWERSThe meaning of correctly written programming statements.
Source code - ANSWERSHigh-level language instructions.
Syntax error - ANSWERSAn error that occurs because a program statement fails to
follow the correct
rules of syntax.
Technical documentation - ANSWERSDocumentation that enables programmers who
later have to modify the program to understand the code.