FC0-U71 Software Development Concepts Practice Question
A team maintains a program that calculates employee payroll. A new tax rule takes effect next quarter, and the team expects more rule changes in the future. They want to isolate the tax calculation so it can be modified without rewriting the rest of the payroll code. Which software development principle best supports this goal?
⚠ Common exam trap
A common mix-up: candidates confuse code organization techniques such as constants with true separation of concerns, when the key benefit comes from placing volatile logic behind a stable interface.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Encapsulation of the tax logic in a separate module
Separating the tax calculation into its own encapsulated module creates a boundary between the rule that changes often and the payroll code that should remain stable. Callers interact with a defined interface, so internal changes stay contained. Duplication, hard-coded literals, and unnecessary language changes all increase coupling or maintenance cost rather than isolating change.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Writing the tax logic in a language the team does not normally use
Why it's wrong here
Introducing a different language adds build complexity, tooling, and maintenance burden without improving isolation. The team's ability to modify the rule would likely decrease, not increase. Language choice is unrelated to separating concerns, so this approach does not support the stated goal.
- ✗
Duplicating the tax calculation in every payroll function
Why it's wrong here
Duplicating logic means each copy must be updated when a rule changes, and any missed copy produces inconsistent results. This increases maintenance effort and the chance of errors. It is the opposite of isolation, so it does not help the team adapt to future tax rule changes.
- ✓
Encapsulation of the tax logic in a separate module
Why this is correct
Encapsulation groups related logic behind a well-defined interface, so the tax calculation can change internally without affecting callers. The payroll code depends only on the module's inputs and outputs. This isolation means future rule changes require edits in one place, which directly supports the team's goal of minimizing ripple effects.
- ✗
Hard-coding the current tax rate as a literal value throughout the program
Why it's wrong here
Hard-coded values are scattered across the code and must be located and edited individually when rates change. This tightly couples the payroll logic to a specific rate and invites mistakes. It does not isolate the calculation, so it fails to meet the requirement.
Go deeper
Related to this question
About these practice questions
One of 988 original FC0-U71 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official CompTIA exam blueprint
This FC0-U71 practice question is part of Courseiva's free CompTIA certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the FC0-U71 exam.