Practice English vocabulary for service ownership, dependency management, and system relationships in developer portals: owners, consumers, dependencies, APIs, and lifecycle stages.
0 / 33 completed
1 / 33
In a software catalog (such as Backstage), what does the 'owner' field of a component represent?
In catalog-based portals, ownership is about accountability, not authorship. The owner field points to a team or person who is responsible for keeping the service running, handling incidents, communicating breaking changes to consumers, and eventually deprecating the service. Catalog tools use ownership to route alerts, automatically populate on-call rosters, and identify who to contact before making changes to a dependency.
2 / 33
What does it mean for a service to have 'upstream dependencies'?
Upstream and downstream are often confused. In the software supply chain model: upstream dependencies are the services your service relies on (they feed data or functionality into yours), and downstream dependencies are services that rely on yours. If an upstream service changes its API or has an outage, your service is affected. Developer portals visualise these dependency graphs to help teams understand blast radius and change impact.
3 / 33
A catalog entry shows a service with lifecycle: 'deprecated'. What should teams consuming this service do?
The deprecated lifecycle stage signals that a service is in its end-of-life phase. The owner is communicating: 'We have a replacement — please migrate.' Consuming teams should: (1) identify the replacement in the catalog, (2) plan and execute migration, and (3) stop creating new dependencies on the deprecated service. Portals typically allow owners to link to migration guides and set a sunset date alongside the deprecated status.
4 / 33
What is a 'dependency graph' in a developer portal context?
Dependency graphs in developer portals (like Backstage's relationship view) show the runtime and build-time relationships between components, APIs, systems, and teams. They help answer questions like: 'If I change this API, who will break?' and 'What is the blast radius of this outage?' They are typically derived from catalog-info.yaml files where components declare their dependsOn and providesApis / consumesApis relationships.
5 / 33
The platform team says a service is 'well-catalogued'. What does this mean?
A well-catalogued service has all its metadata kept current in the software catalog. This typically means: (1) the owner field points to an active team, (2) the lifecycle reflects reality (production, experimental, deprecated), (3) all consumed and provided APIs are declared, (4) links to documentation, runbooks, and dashboards are populated, and (5) the service passes the platform's catalog scorecard thresholds. Poorly catalogued services create operational risk because engineers can't find ownership or runbooks during incidents.
6 / 33
Sarah: "Hey team, just finished reviewing the PR for the new user authentication service. The documentation mentions that ServiceA is a key dependency. But I'm seeing ServiceB listed as well – it seems like there are conflicting indications about which one we should be relying on."
This scenario highlights the importance of understanding 'dependency ownership' in a code review context. While multiple services might interact, one service typically *owns* the primary dependency. The correct answer reflects that ServiceA is the main dependency, and ServiceB would likely be treated as a fallback or alternative if ServiceA were unavailable. The misconception here is assuming all dependencies are equally critical; proper ownership clarifies responsibility for managing and maintaining those relationships.
7 / 33
PR Description
Subject: Refactor User Profile Service - v2.0
Changes include updated API endpoints and improved error handling. Added a note that the 'ProfileService' is now considered a core dependency for all new user onboarding flows, and that its stability is paramount.
What does this PR description primarily communicate to other developers?
This PR description is demonstrating service ownership by explicitly stating the ProfileService's critical role and establishing responsibility. The phrasing 'core dependency' and 'stability is paramount' signals that someone (likely a team or individual) is accountable for its health and performance within the context of user onboarding. Option A is incorrect because it focuses only on internal changes; option C is too detailed for a PR description, and option D introduces unrelated issues.
8 / 33
Sarah: "Hey team, just finished reviewing the PR for the new user authentication service. The documentation mentions that ServiceA is a key dependency. But I'm seeing ServiceB listed as well – it seems like there are conflicting indications about which one we should be relying on."
This scenario highlights the importance of understanding 'dependency ownership' in a code review context. While multiple services might interact, one service typically *owns* the primary dependency. The correct answer reflects that ServiceA is the main dependency, and ServiceB would likely be treated as a fallback or alternative if ServiceA were unavailable. The misconception here is assuming all dependencies are equally critical; proper ownership clarifies responsibility for managing and maintaining those relationships.
9 / 33
PR Description
Subject: Refactor User Profile Service - v2.0
Changes include updated API endpoints and improved error handling. Added a note that the 'ProfileService' is now considered a core dependency for all new user onboarding flows, and that its stability is paramount.
What does this PR description primarily communicate to other developers?
This PR description is demonstrating service ownership by explicitly stating the ProfileService's critical role and establishing responsibility. The phrasing 'core dependency' and 'stability is paramount' signals that someone (likely a team or individual) is accountable for its health and performance within the context of user onboarding. Option A is incorrect because it focuses only on internal changes; option C is too detailed for a PR description, and option D introduces unrelated issues.
10 / 33
Sarah: "Hey team, just finished reviewing the PR for the new user authentication service. The documentation mentions that ServiceA is a key dependency. But I'm seeing ServiceB listed as well – it seems like there are conflicting indications about which one we should be relying on."
This scenario highlights the importance of understanding 'dependency ownership' in a code review context. While multiple services might interact, one service typically *owns* the primary dependency. The correct answer reflects that ServiceA is the main dependency, and ServiceB would likely be treated as a fallback or alternative if ServiceA were unavailable. The misconception here is assuming all dependencies are equally critical; proper ownership clarifies responsibility for managing and maintaining those relationships.
11 / 33
PR Description
Subject: Refactor User Profile Service - v2.0
Changes include updated API endpoints and improved error handling. Added a note that the 'ProfileService' is now considered a core dependency for all new user onboarding flows, and that its stability is paramount.
What does this PR description primarily communicate to other developers?
This PR description is demonstrating service ownership by explicitly stating the ProfileService's critical role and establishing responsibility. The phrasing 'core dependency' and 'stability is paramount' signals that someone (likely a team or individual) is accountable for its health and performance within the context of user onboarding. Option A is incorrect because it focuses only on internal changes; option C is too detailed for a PR description, and option D introduces unrelated issues.
12 / 33
Sarah: "Hey team, just finished reviewing the PR for the new user authentication service. The documentation mentions that ServiceA is a key dependency. But I'm seeing ServiceB listed as well – it seems like there are conflicting indications about which one we should be relying on."
This scenario highlights the importance of understanding 'dependency ownership' in a code review context. While multiple services might interact, one service typically *owns* the primary dependency. The correct answer reflects that ServiceA is the main dependency, and ServiceB would likely be treated as a fallback or alternative if ServiceA were unavailable. The misconception here is assuming all dependencies are equally critical; proper ownership clarifies responsibility for managing and maintaining those relationships.
13 / 33
PR Description
Subject: Refactor User Profile Service - v2.0
Changes include updated API endpoints and improved error handling. Added a note that the 'ProfileService' is now considered a core dependency for all new user onboarding flows, and that its stability is paramount.
What does this PR description primarily communicate to other developers?
This PR description is demonstrating service ownership by explicitly stating the ProfileService's critical role and establishing responsibility. The phrasing 'core dependency' and 'stability is paramount' signals that someone (likely a team or individual) is accountable for its health and performance within the context of user onboarding. Option A is incorrect because it focuses only on internal changes; option C is too detailed for a PR description, and option D introduces unrelated issues.
14 / 33
Mark: "Just noticed the `OrderService` documentation says it's 'managed by the Payments team'. What does that typically imply regarding my responsibility when working with order processing?"
The term 'managed by' in this context denotes operational ownership. This means the Payments team is accountable for the service's stability, updates, and any associated incidents. Mark should always coordinate changes through them to avoid disrupting the service or conflicting with their operations; simply stating that they 'manage' it doesn't grant him direct access.
15 / 33
During a code review for the `InventoryService`, Lead Developer Anya comments: "I see you're calling the `ShippingService` directly in this function. While it works, are we sure this isn't creating an unnecessary dependency?"
Anya's comment highlights a key principle: minimizing dependencies. Direct calls create tight coupling, making the services interdependent. This can lead to problems if one service changes without considering its impact on the other. Anya is suggesting a layered approach for better maintainability and resilience.
16 / 33
In the PR description for updating the `UserSessionService`, the developer includes this sentence: "This change ensures compatibility with the upcoming v3.0 release of the Authentication Service."
This sentence clearly establishes a dependency. The `UserSessionService` relies on the `AuthenticationService`'s v3.0 release to function correctly. This means any changes or updates to the Authentication Service will directly impact and potentially break the UserSessionService, necessitating careful testing and coordination.
17 / 33
"During today's standup, David mentions he's 'working on integrating with the Reporting Service'. What does this primarily mean in terms of his responsibilities and potential dependencies?"
When a developer mentions integrating with another service, it immediately implies understanding its API, data structures, and potential limitations. David's integration requires him to analyze how the Reporting Service functions to ensure compatibility and avoid issues like rate limits or unexpected behavior – this is core dependency management.
18 / 33
"The team lead explains that 'ServiceX has high cardinality dependencies' on other services. What does this likely indicate?"
High cardinality dependencies mean ServiceX relies heavily on numerous other services. This creates a complex web of interactions, making it more difficult to understand, maintain, and troubleshoot – any change in one dependent service could have ripple effects throughout the entire system.
19 / 33
Mark: "Just noticed the `OrderService` documentation says it's 'managed by the Payments team'. What does that typically imply regarding my responsibility when working with order processing?"
The term 'managed by' in this context denotes operational ownership. This means the Payments team is accountable for the service's stability, updates, and any associated incidents. Mark should always coordinate changes through them to avoid disrupting the service or conflicting with their operations; simply stating that they 'manage' it doesn't grant him direct access.
20 / 33
During a code review for the `InventoryService`, Lead Developer Anya comments: "I see you're calling the `ShippingService` directly in this function. While it works, are we sure this isn't creating an unnecessary dependency?"
Anya's comment highlights a key principle: minimizing dependencies. Direct calls create tight coupling, making the services interdependent. This can lead to problems if one service changes without considering its impact on the other. Anya is suggesting a layered approach for better maintainability and resilience.
21 / 33
In the PR description for updating the `UserSessionService`, the developer includes this sentence: "This change ensures compatibility with the upcoming v3.0 release of the Authentication Service."
This sentence clearly establishes a dependency. The `UserSessionService` relies on the `AuthenticationService`'s v3.0 release to function correctly. This means any changes or updates to the Authentication Service will directly impact and potentially break the UserSessionService, necessitating careful testing and coordination.
22 / 33
"During today's standup, David mentions he's 'working on integrating with the Reporting Service'. What does this primarily mean in terms of his responsibilities and potential dependencies?"
When a developer mentions integrating with another service, it immediately implies understanding its API, data structures, and potential limitations. David's integration requires him to analyze how the Reporting Service functions to ensure compatibility and avoid issues like rate limits or unexpected behavior – this is core dependency management.
23 / 33
"The team lead explains that 'ServiceX has high cardinality dependencies' on other services. What does this likely indicate?"
High cardinality dependencies mean ServiceX relies heavily on numerous other services. This creates a complex web of interactions, making it more difficult to understand, maintain, and troubleshoot – any change in one dependent service could have ripple effects throughout the entire system.
24 / 33
Mark: "Just noticed the `OrderService` documentation says it's 'managed by the Payments team'. What does that typically imply regarding my responsibility when working with order processing?"
The term 'managed by' in this context denotes operational ownership. This means the Payments team is accountable for the service's stability, updates, and any associated incidents. Mark should always coordinate changes through them to avoid disrupting the service or conflicting with their operations; simply stating that they 'manage' it doesn't grant him direct access.
25 / 33
During a code review for the `InventoryService`, Lead Developer Anya comments: "I see you're calling the `ShippingService` directly in this function. While it works, are we sure this isn't creating an unnecessary dependency?"
Anya's comment highlights a key principle: minimizing dependencies. Direct calls create tight coupling, making the services interdependent. This can lead to problems if one service changes without considering its impact on the other. Anya is suggesting a layered approach for better maintainability and resilience.
26 / 33
In the PR description for updating the `UserSessionService`, the developer includes this sentence: "This change ensures compatibility with the upcoming v3.0 release of the Authentication Service."
This sentence clearly establishes a dependency. The `UserSessionService` relies on the `AuthenticationService`'s v3.0 release to function correctly. This means any changes or updates to the Authentication Service will directly impact and potentially break the UserSessionService, necessitating careful testing and coordination.
27 / 33
"During today's standup, David mentions he's 'working on integrating with the Reporting Service'. What does this primarily mean in terms of his responsibilities and potential dependencies?"
When a developer mentions integrating with another service, it immediately implies understanding its API, data structures, and potential limitations. David's integration requires him to analyze how the Reporting Service functions to ensure compatibility and avoid issues like rate limits or unexpected behavior – this is core dependency management.
28 / 33
"The team lead explains that 'ServiceX has high cardinality dependencies' on other services. What does this likely indicate?"
High cardinality dependencies mean ServiceX relies heavily on numerous other services. This creates a complex web of interactions, making it more difficult to understand, maintain, and troubleshoot – any change in one dependent service could have ripple effects throughout the entire system.
29 / 33
Mark: "Just noticed the `OrderService` documentation says it's 'managed by the Payments team'. What does that typically imply regarding my responsibility when working with order processing?"
The term 'managed by' in this context denotes operational ownership. This means the Payments team is accountable for the service's stability, updates, and any associated incidents. Mark should always coordinate changes through them to avoid disrupting the service or conflicting with their operations; simply stating that they 'manage' it doesn't grant him direct access.
30 / 33
During a code review for the `InventoryService`, Lead Developer Anya comments: "I see you're calling the `ShippingService` directly in this function. While it works, are we sure this isn't creating an unnecessary dependency?"
Anya's comment highlights a key principle: minimizing dependencies. Direct calls create tight coupling, making the services interdependent. This can lead to problems if one service changes without considering its impact on the other. Anya is suggesting a layered approach for better maintainability and resilience.
31 / 33
In the PR description for updating the `UserSessionService`, the developer includes this sentence: "This change ensures compatibility with the upcoming v3.0 release of the Authentication Service."
This sentence clearly establishes a dependency. The `UserSessionService` relies on the `AuthenticationService`'s v3.0 release to function correctly. This means any changes or updates to the Authentication Service will directly impact and potentially break the UserSessionService, necessitating careful testing and coordination.
32 / 33
"During today's standup, David mentions he's 'working on integrating with the Reporting Service'. What does this primarily mean in terms of his responsibilities and potential dependencies?"
When a developer mentions integrating with another service, it immediately implies understanding its API, data structures, and potential limitations. David's integration requires him to analyze how the Reporting Service functions to ensure compatibility and avoid issues like rate limits or unexpected behavior – this is core dependency management.
33 / 33
"The team lead explains that 'ServiceX has high cardinality dependencies' on other services. What does this likely indicate?"
High cardinality dependencies mean ServiceX relies heavily on numerous other services. This creates a complex web of interactions, making it more difficult to understand, maintain, and troubleshoot – any change in one dependent service could have ripple effects throughout the entire system.
What does the "Service Ownership & Dependency Vocabulary" exercise cover?
Practice English vocabulary for service ownership, dependency management, and system relationships in developer portals: owners, consumers, dependencies, APIs, and lifecycle stages.
Is this exercise free to use?
Yes. Every exercise on CoderSlingo, including this one, is free to use with no account, sign-up, or paywall.
How many questions are in "Service Ownership & Dependency Vocabulary"?
This exercise has 33 questions. Each one gives instant feedback with an explanation, so you can see exactly why an answer is right or wrong.
Do I need to create an account to save my progress?
No account is required. The progress bar and score are tracked in your browser for the current session -- the exercise is designed to be a quick, repeatable drill rather than something you resume later.
What happens if I get an answer wrong?
You'll see the correct answer highlighted immediately, along with a short explanation of why it's correct. Wrong answers aren't penalized beyond your score, and you can keep going through every question.
How is this exercise different from reading an article?
Articles explain vocabulary and concepts through prose, while exercises like this one are interactive drills -- multiple-choice questions -- that test and reinforce your recall of specific terms and phrasing.
Can I retry this exercise?
Yes -- use the "Try again" button on the results screen to reset your score and go through all the questions again from the start.
Where can I find more Developer Portal Vocabulary exercises?
Browse the full Developer Portal Vocabulary hub for related drills, or check the site-wide exercises index for other IT English topics.
Is this exercise suitable for beginners?
This exercise assumes basic familiarity with IT terminology. If a term feels unfamiliar, check the site Glossary for a plain-English definition before attempting the questions.
How often is new content like this published?
New exercises are added regularly across all categories, alongside new vocabulary sets and articles. Check back on the exercises hub to see what's new.