AP Computer Science Principles Practice Quiz: Program Design and Development
Written by AP Content Team, Verified for 2026 AP Exams, Last updated: July 2026
Test your understanding with short quizzes. This quiz has 16 questions to check your progress.
Question 1 of 16
All Questions (16)
A) Incremental
B) Iterative
C) Exploratory
D) Ordered
Correct Answer: B
This scenario describes an iterative development process, which, according to the content, 'requires refinement and revision based on feedback, testing, or reflection throughout the process.' The cycle of building, getting feedback, and revising is the core of an iterative approach.
A) To make the program run faster and more efficiently.
B) To provide a written description of a program's function and development, aiding in maintenance and collaboration.
C) To automatically detect and fix errors in the code.
D) To satisfy legal requirements for software distribution.
Correct Answer: B
The content states that 'Program documentation is a written description of the function of a code segment... or program and how it was developed' and that it 'helps in developing and maintaining correct programs when working individually or in collaborative programming environments.'
A) Testing
B) Prototyping
C) Designing
D) Investigating and reflecting
Correct Answer: D
The content lists 'direct observations' as a way investigation can be performed. The purpose of investigation is 'understanding and identifying the program constraints, as well as the concerns and interests of the people who will use the program.'
A) Slightly modify the code to claim it as their own original work.
B) Use the code without any changes or acknowledgement, as it was publicly available.
C) Acknowledge the original author or source within the program documentation.
D) Delete the code and try to write a less effective version from scratch.
Correct Answer: C
The content explicitly states, 'It is important to acknowledge any code segments that were developed collaboratively or by another source.' It further clarifies that this acknowledgement can be in the program documentation and should include the origin or author's name.
A) Iterative
B) Reflective
C) Incremental
D) Exploratory
Correct Answer: C
This is an example of an incremental process, which 'breaks the problem into smaller pieces and makes sure each piece works before adding it to the whole.' The team is building and integrating one functional piece at a time.
A) Creating diagrams that represent the layouts of the user interface.
B) Organizing the program into modules and functional components.
C) Conducting interviews and surveys to identify user needs.
D) Developing a strategy for testing the program.
Correct Answer: C
Conducting interviews and surveys is part of the investigation phase, used to determine program requirements. The other options—UI diagrams, modular organization, and testing strategy—are all explicitly listed as activities within the design phase.
A) They are unrelated concepts in program development.
B) A program's specification defines the requirements for the program.
C) The requirements describe the hardware, while the specification describes the software.
D) A program's requirements are created after the specification is written.
Correct Answer: B
The content directly states, 'A program’s specification defines the requirements for the program.' This indicates that the specification is the formal document or plan that outlines the requirements.
A) A program requirement
B) A command that is executed when the program runs
C) A form of program documentation known as a comment
D) A part of the program's user interface
Correct Answer: C
The content defines comments as 'a form of program documentation written into the program to be read by people' that 'do not affect how a program runs.' This line serves as an explanation for human readers and is not executed by the computer.
A) Continue testing the rest of the program and fix the flaw later.
B) Immediately release the program and patch the flaw in a future update.
C) Discard the entire project and start over from scratch.
D) Revisit an earlier phase, such as design, to re-evaluate how to meet the user need.
Correct Answer: D
An iterative process 'requires refinement and revision based on feedback, testing, or reflection' and 'may require revisiting earlier phases of the process.' Discovering a major flaw that misinterprets user needs necessitates going back to an earlier phase like design or even investigation to correct the fundamental problem.
A) Investigation involves writing code, while design involves testing code.
B) Investigation focuses on what the program must do, while design focuses on how the program will do it.
C) Investigation is only performed in an incremental process, while design is only performed in an iterative process.
D) Investigation creates the final user interface, while design writes the program documentation.
Correct Answer: B
The investigation phase is used to determine program requirements (what the program must do). The content states that the design phase 'outlines how to accomplish a given program specification.' This shows the distinction between defining the problem (investigation) and planning the solution (design).
A) Investigating and reflecting
B) Designing
C) Marketing and sales
D) Testing
Correct Answer: C
The content explicitly lists 'investigating and reflecting, designing, prototyping, testing' as commonly used phases. Marketing and sales are business activities, not part of the technical program development process described.
A) Because not all programming environments support comments.
B) To help in developing and maintaining a correct program in a collaborative environment.
C) Because documentation is required to compile the program.
D) To ensure each programmer receives individual credit for their work.
Correct Answer: B
The content states that 'Program documentation helps in developing and maintaining correct programs when working individually or in collaborative programming environments.' In a team setting, documentation is crucial for members to understand each other's code.
A) Strictly ordered and intentional, never exploratory.
B) Only exploratory in nature, never ordered.
C) Either ordered and intentional or exploratory in nature.
D) A single, universally accepted standard procedure.
Correct Answer: C
The content directly states that 'A development process can be ordered and intentional, or exploratory in nature.' This indicates that there is flexibility and multiple approaches are possible.
A) Investigation
B) Testing
C) Design
D) Prototyping
Correct Answer: C
The content specifies that the design phase 'may include... creation of diagrams that represent the layouts of the user interface.' A storyboard or diagram of the login screen fits this description perfectly, as it outlines how to accomplish the login requirement.
A) The date the code was found and the URL.
B) A detailed explanation of why the code was used.
C) The name of the person who found the code.
D) The origin or original author's name.
Correct Answer: D
The content specifies that 'The acknowledgement should include the origin or original author’s name.' This is the key requirement for proper attribution.
A) To perform the final quality assurance check on a completed program.
B) To write the program's documentation.
C) To investigate and determine the program's requirements.
D) To brainstorm different ways to structure the program's code.
Correct Answer: C
The content lists 'collecting data through surveys, user testing, interviews, direct observations' as ways investigation is performed. The purpose of investigation is to determine the program's requirements by understanding user concerns and program constraints.