FIRST PUBLISH OCTOBER 2024
AP Computer Science Principles Exam
Study Guide Solutions
Agile software development - ANSWER✔✔-An approach to software development that emphasizes a
flexible and ready response to meet a shifting target.
Benchmarking - ANSWER✔✔-Running 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 - ANSWER✔✔-A collection of thoroughly tested object code for various useful tasks.
Coding - ANSWER✔✔-The process of translating the detailed designs into computer code.
Divide-and-conquer - ANSWER✔✔-A 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 - ANSWER✔✔-Designing a special set of test cases and running the program using
these test data.
Executable module - ANSWER✔✔-The resulting object code after a linker inserts requested code from
code libraries.
Page 1/25
, ©EMILLECT 2024/2025 ACADEMIC YEAR. ALL RIGHTS RESERVED
FIRST PUBLISH OCTOBER 2024
External documentation - ANSWER✔✔-Any materials assembled to clarify the program's design and
implementation.
Feasibility study - ANSWER✔✔-A 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) - ANSWER✔✔-A 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 - ANSWER✔✔-After 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 - ANSWER✔✔-Documentation that is part of the program code itself.
Logic error - ANSWER✔✔-An error in the algorithm used to solve a problem.
Object code - ANSWER✔✔-Machine language instructions.
Pair programming - ANSWER✔✔-Involves 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.
Page 2/25
, ©EMILLECT 2024/2025 ACADEMIC YEAR. ALL RIGHTS RESERVED
FIRST PUBLISH OCTOBER 2024
Problem specification - ANSWER✔✔-A 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 - ANSWER✔✔-A program written in a procedural language consists of sequences of
statements that manipulate data items.
Program design phase - ANSWER✔✔-A step in the software development life cycle that plans the
structure of the software to be written.
Program maintenance - ANSWER✔✔-The process of adapting an existing software product due to errors,
new system requirements, or changing user needs.
Program verification - ANSWER✔✔-Used 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 - ANSWER✔✔-If 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 - ANSWER✔✔-An error that occurs when the program is run using certain sets of data
that result in some illegal operation, such as dividing by zero.
Page 3/25