PrepGo

AP Computer Science Principles Flashcards: Program Design and Development

Written by AP Content Team, Verified for 2026 AP Exams, Last updated: May 2026

Review key ideas with interactive flashcards. This set includes 36 cards to help you master important concepts.

A team builds and verifies the user login functionality before starting on any other part of the application. What type of process is this?
This is an example of an incremental development process, as a small piece is completed and confirmed to work before adding more.
Card 1 of 36

All Flashcards (36)

A team builds and verifies the user login functionality before starting on any other part of the application. What type of process is this?
This is an example of an incremental development process, as a small piece is completed and confirmed to work before adding more.
How do comments differ from other forms of program documentation?
Comments are a form of documentation written directly into the program's code, whereas other documentation may be in separate files.
What is the primary goal of the design phase?
The design phase outlines how to accomplish a given program specification.
A programmer observes potential users trying to use a competitor's app to understand their needs. What is this an example of?
This is an example of investigation through direct observations to understand the concerns and interests of users.
What are the two types of approaches to a development process mentioned in the text?
A development process can be ordered and intentional, or it can be exploratory in nature.
Program Specification
A document or description that defines the requirements for the program.
After testing, a team realizes their initial design is flawed and returns to the design phase to revise it. This is a characteristic of which development process?
This is a characteristic of an iterative development process, which requires refinement and revision that may involve revisiting earlier phases.
What is the purpose of investigation in program design?
Investigation is used to determine a program's requirements by understanding constraints and the concerns of the people who will use it.
Iterative Development Process
A process that requires refinement and revision based on feedback, testing, or reflection, which may involve revisiting earlier phases.
What is the relationship between a program's specification and its requirements?
A program’s specification defines the requirements for the program.
Why is program documentation particularly helpful in collaborative environments?
Documentation helps in developing and maintaining correct programs when working in collaborative programming environments.
Comments (in programming)
A form of program documentation written into the program to be read by people; they do not affect how a program runs.
List three methods for performing investigation during a development process.
Investigation can be performed by collecting data through surveys, user testing, interviews, or direct observations.
Incremental Development Process
A process that breaks a problem into smaller pieces and ensures each piece works before adding it to the whole.
Can a development process be both iterative and incremental?
Yes, a process can be both by breaking the problem into smaller pieces (incremental) and refining those pieces based on feedback (iterative).
What role does user feedback play in an iterative process?
In an iterative process, feedback is a key driver for refinement and revision, often causing the team to revisit earlier phases.
What are some activities that may occur during the design phase?
Activities include brainstorming, storyboarding, organizing the program into modules, creating UI diagrams, and developing a testing strategy.
What is the difference between the 'design' and 'prototyping' phases?
The design phase outlines how to accomplish the specification (the plan), while prototyping involves creating an early, functional version of the program.
What are the two main purposes of the 'investigating and reflecting' phase?
This phase is for understanding and identifying program constraints, and the concerns and interests of the people who will use the program.
What might happen if a programming environment does not support comments?
If comments are not supported, other methods of documentation may be required to describe the function of the code.
When should a programmer document their program?
Programmers should document a program throughout its development.
Why is it beneficial to document a program even when working individually?
Documentation helps in developing and maintaining correct programs, which is useful even for an individual developer returning to their own code later.
User Interface (UI) Design
A part of the design phase that involves creating diagrams representing the layouts of what the user will see and interact with.
A developer creates a storyboard to plan the flow of their application. Which development phase are they in?
This activity is part of the design phase, which can include planning and storyboarding.
What are the four common phases of a program development process?
The four common phases are investigating and reflecting, designing, prototyping, and testing.
Modular Program Design
An activity in the design phase that involves organizing the program into modules and functional components.
What is the importance of acknowledging code from other sources?
It is important to acknowledge any code segments that were developed collaboratively or by another source.
If you use a code segment written by someone else, where should you provide acknowledgement?
Acknowledgement of a code segment written by someone else can be included in the program documentation.
What information should be included when acknowledging code from another source?
The acknowledgement should include the origin or the original author's name.
How does program documentation aid in program maintenance?
Documentation helps developers (including future developers or oneself) understand the function of code, making it easier to maintain and update.
Program Documentation
A written description of the function of a code segment, event, procedure, or program and how it was developed.
How do program requirements relate to the investigation phase?
The investigation phase is used to determine the program requirements by understanding user needs and system constraints.
Why is a 'testing strategy' part of the design phase?
Developing a testing strategy early helps ensure that the program will be built in a way that meets its requirements and can be properly verified.
Program Requirements
Descriptions of how a program functions, which may include a description of user interactions that a program must provide.
Development Process
The process of creating a program, which can be ordered and intentional or exploratory in nature.
A programmer writes a comment above a function that says: `// This function calculates the total price. Developed by Jane Doe.` What two purposes does this comment serve?
This comment serves as program documentation by describing the function's purpose and as an acknowledgement of the original author.