From the free course AP Computer Science A on Lykke
3.3 Anatomy of a Class
Key concepts: Visual relationship between the Learning Objective and Essential Knowledge points · Learning Objective 3.2.A · Explaining social and ethical implications · Essential Knowledge points 3.2.A.1, 3.2.A.2, and 3.2.A.3 · System reliability · Societal impacts · Intended impacts · Unintended impacts
A reliable computing system can affect people far beyond the code that runs it, so evaluating a program requires more than asking whether it produces the intended output.
3.3 Anatomy of a Class
A reliable computing system can affect people far beyond the code that runs it, so evaluating a program requires more than asking whether it produces the intended output.
The central relationship is:
Learning Objective 3.2.A: Explain social and ethical implications of computing systems.
To satisfy Learning Objective 3.2.A, it is not enough to identify that a program has an effect. A strong explanation connects that effect to the system’s reliability, its intended and unintended societal impacts, and the legal or intellectual-property responsibilities involved in creating the program.
The three essential-knowledge lenses
The objective is supported by three connected Essential Knowledge points: 3.2.A.1, 3.2.A.2, and 3.2.A.3. Each lens asks a different question about the same computing system.
| Essential Knowledge | Question it helps answer | What to examine |
|---|---|---|
| 3.2.A.1 | Can the system be trusted to behave correctly? | Reliability, testing, failures, and edge cases |
| 3.2.A.2 | How does the system affect people and society? | Intended benefits and unintended consequences |
| 3.2.A.3 | May the program legally use the materials it contains? | Open-source code, permission, licensing, and intellectual property |
3.2.A.1 — System reliability
System reliability is the likelihood that a computing system performs its required function consistently and correctly. Reliability matters ethically because people may make decisions, spend money, travel, receive medical care, or access services based on a system’s output.
For example, imagine a program that schedules emergency vehicles. Its intended impact is faster response time. If the program fails when two emergencies occur simultaneously, ignores an unusual address format, or assigns the same vehicle twice, the failure is not merely a technical inconvenience: it can create real risks for people.
A useful reliability investigation asks:
- What is the system supposed to do?
- What inputs or situations could cause it to fail?
- How serious would each failure be?
- What testing or safeguards could reduce the risk?
Misconception check — “It worked once, so it is reliable.” A single successful test demonstrates only one successful case. Reliability requires testing representative inputs, boundary conditions, invalid inputs, and situations where several events interact.
3.2.A.2 — Societal impacts
Societal impacts are the effects a computing system has on individuals, groups, institutions, the economy, or culture. These impacts include both intended impacts—the benefits or outcomes designers planned—and unintended impacts, which may appear after people use the system in ways designers did not anticipate.
Consider an automated application-screening system. Its intended impact may be to process many applications efficiently. An unintended impact could be that biased historical data causes qualified applicants from a particular group to be ranked lower. Explaining the ethical implication means identifying the affected groups, describing the mechanism producing the effect, and evaluating why the consequence matters.
A complete explanation should therefore move beyond “the program is helpful” or “the program is unfair.” It should name the stakeholders, distinguish intended from unintended effects, and connect those effects to reliability, access, privacy, fairness, safety, or other relevant concerns.
3.2.A.3 — Legal issues and intellectual property
Intellectual property is creative work that receives legal protection, including software code. Programmers often reuse code published as open source and made available under stated conditions. Code that is not published as open source generally requires the programmer to obtain permission and often purchase the right to use it before incorporating it into a program.
“Available online” does not mean “free to copy.” A responsible programmer checks the code’s license, follows its conditions, preserves required notices, and obtains permission when the code is proprietary. Ignoring those responsibilities can create legal, financial, and ethical consequences for both the programmer and the organization using the program.
Misconception check — “Open source means no rules.” Open-source software may be free to inspect or use, but its license can still require attribution, disclosure of modifications, or other conditions. The permission comes from the license, not from the mere fact that the code can be found online.
Explaining, not merely identifying
The suggested skill is 5.A: Explain how computing impacts society, economy, and culture. The verb explain requires a causal connection. A response should show how a system’s design or operation leads to a particular consequence and why that consequence has social or ethical significance.
Worked reasoning: A public-transit app is designed to predict arrival times. If its prediction system is unreliable in neighborhoods with sparse data, riders there may receive less accurate information. The intended impact is convenient travel planning; the unintended societal impact is unequal service quality. A strong evaluation would also ask whether the data collection and software components were obtained and used legally.
Retrieval check: A program uses legally licensed code and achieves its intended result, but its training data causes consistently poorer results for one community. Which Essential Knowledge point is most directly involved, and is the effect intended or unintended? Explain the causal link in one sentence.

Source Materials
- AP Computer Science A Course and Exam Description
- AP Computer Science A Course and Exam Description Clarifications and Corrections
- AP Computer Science A Course Overview
- AP Computer Science A Course at a Glance
- AP Computer Science A Course at a Glance Poster
- Adopt AP Computer Science A
- AP Computer Science A
- AP Computer Science A