Practice vocabulary for complexity-based software estimation including story points, t-shirt sizing, velocity, spikes, and the distinction between complexity and effort.
0 / 25 completed
1 / 25
In agile estimation, 'story complexity' refers to _____.
Story complexity captures the inherent difficulty, risk, and unknowns of a piece of work — deliberately separated from effort so estimates are not tied to an individual's pace.
2 / 25
When a team uses labels like XS, S, M, L, and XL to size stories instead of numeric points, they are using _____.
T-shirt sizing uses clothing size labels as an intuitive, low-precision scale for quickly categorizing the relative size of stories or epics.
3 / 25
A team that uses 'complexity points not time estimates' is avoiding _____.
Using complexity points (story points) decouples estimation from individual productivity differences, making the estimates team-relative rather than individual-time-based.
4 / 25
'Team velocity normalizes across people' means that over time, the team's velocity _____.
Velocity — measured as points completed per sprint — naturally accounts for the team's actual throughput, averaging across different individuals and their varying capacities.
5 / 25
When a story has too many unknowns to estimate reliably, the team should schedule a _____ first.
A spike is a time-boxed research or investigation task that reduces uncertainty so the team can then estimate the actual story with more confidence.
6 / 25
During a code review of a new feature for user authentication, Sarah comments to David: 'This integration with the legacy system is incredibly complex; it involves multiple API calls, custom data transformations, and handling several edge cases. I'm estimating around 8 complexity points.' David replies, 'That's good context, but can you elaborate on *why* you think it's 8 complexity points? Are there specific technical challenges we should be aware of?' Which of the following best describes what David is asking Sarah to explain?
David is probing Sarah for a deeper understanding of *why* she assigned 8 complexity points. The question isn't simply about the quantity of code; it's about the technical challenges—the potential risks and uncertainties—associated with the integration. Complexity estimation isn't just about effort; it's about assessing the inherent difficulty, which includes factors like external dependencies and the likelihood of unexpected issues. Option A focuses on a purely quantitative measure, while option C directly addresses the core concept of complexity – risk and uncertainty – that David is questioning.
7 / 25
During a PR review for a new microservice, Mark asks the team: 'I'm seeing a lot of nested loops and conditional logic in this service. It seems like we're dealing with potentially complex data structures and algorithms. Can you walk me through your reasoning on assigning these complexity points?' Which of the following best describes what Mark is asking the developer to clarify?
Mark isn't concerned with *what* complexity points are assigned; he's focused on *why*. The correct answer highlights that Mark wants to understand the developer's reasoning—specifically, how technical complexities (like complex data structures and algorithms) influenced the assignment of those points.
Options A and C are irrelevant to the core question – it's not about code lines or Big O notation, but rather understanding the *reasoning* behind the estimation. Option D is related to dependency analysis, but not directly tied to the developer's explanation of complexity.
8 / 25
During a Slack discussion about estimating the complexity of a new API endpoint, Alex writes: 'I'm putting 3 points on this because it needs to handle rate limiting and retry logic. Seems straightforward enough.' Ben replies: 'Just out of curiosity, what specifically makes you think about rate limiting and retries when assigning those 3 points? Is there something we should be considering that might increase the effort?' Which of the following best describes what Ben is asking Alex to clarify?
Ben is probing Alex's justification for the complexity points. The core concept of complexity-based estimation isn't just about *quantity* (like lines of code), but about the *effort* required to address potential technical challenges. Rate limiting and retry logic are prime examples – they introduce additional considerations like error handling, monitoring, and potentially complex algorithms that contribute significantly to overall effort. Choosing option 2 demonstrates an understanding that complexity isn't just a raw measure; it's tied to risk and resilience.
9 / 25
A team is discussing the complexity of a new data migration task. Liam says: 'I'm estimating this at 5 points because it involves parsing a legacy CSV file, transforming the data into a modern format, and loading it into our new database.' Maria responds: 'That sounds reasonable, but can you explain what aspects of that process you considered when determining those 5 points? Specifically, are there any potential performance bottlenecks or data integrity concerns we should be aware of?' Which of the following best describes what Maria is asking Liam to explain?
Maria is asking Liam to delve deeper into *why* he assigned 5 complexity points. The question isn't about the raw technical tasks themselves (CSV parsing, schema changes), but rather the potential complexities that arise from those tasks – things like performance issues during data loading or the risk of errors during transformation. This highlights a key element of complexity-based estimation: considering not just *what* is being done, but *how* it's being done and the potential pitfalls.
10 / 25
During a standup update, Emily states: 'I'm estimating this user profile API endpoint at 6 complexity points. It's a fairly standard CRUD operation, but it needs to handle image uploads and validation against several business rules.' John asks, 'Okay, can you tell me more about *why* you chose 6? What specifically about the image upload or business rule validation makes it more complex than a simple GET request?' Which of the following best describes what John is asking Emily to explain?
John is asking Emily to provide a justification for her complexity estimate. The question isn't about the *quantity* of code or time, but rather the *reasons* behind the higher complexity score. Complexity points aren't solely based on size; they reflect the inherent difficulty and risk associated with a task. Focusing on specific technical challenges – like image uploads and business rule validation – is key to accurately assessing complexity and planning accordingly. Selecting option 2 is crucial for understanding how complexity points relate to development effort.
11 / 25
During a code review of a new feature for user authentication, Sarah comments to David: 'This integration with the legacy system is incredibly complex; it involves multiple API calls, custom data transformations, and handling several edge cases. I'm estimating around 8 complexity points.' David replies, 'That's good context, but can you elaborate on *why* you think it's 8 complexity points? Are there specific technical challenges we should be aware of?' Which of the following best describes what David is asking Sarah to explain?
David is probing Sarah for a deeper understanding of *why* she assigned 8 complexity points. The question isn't simply about the quantity of code; it's about the technical challenges—the potential risks and uncertainties—associated with the integration. Complexity estimation isn't just about effort; it's about assessing the inherent difficulty, which includes factors like external dependencies and the likelihood of unexpected issues. Option A focuses on a purely quantitative measure, while option C directly addresses the core concept of complexity – risk and uncertainty – that David is questioning.
12 / 25
During a PR review for a new microservice, Mark asks the team: 'I'm seeing a lot of nested loops and conditional logic in this service. It seems like we're dealing with potentially complex data structures and algorithms. Can you walk me through your reasoning on assigning these complexity points?' Which of the following best describes what Mark is asking the developer to clarify?
Mark isn't concerned with *what* complexity points are assigned; he's focused on *why*. The correct answer highlights that Mark wants to understand the developer's reasoning—specifically, how technical complexities (like complex data structures and algorithms) influenced the assignment of those points.
Options A and C are irrelevant to the core question – it's not about code lines or Big O notation, but rather understanding the *reasoning* behind the estimation. Option D is related to dependency analysis, but not directly tied to the developer's explanation of complexity.
13 / 25
During a Slack discussion about estimating the complexity of a new API endpoint, Alex writes: 'I'm putting 3 points on this because it needs to handle rate limiting and retry logic. Seems straightforward enough.' Ben replies: 'Just out of curiosity, what specifically makes you think about rate limiting and retries when assigning those 3 points? Is there something we should be considering that might increase the effort?' Which of the following best describes what Ben is asking Alex to clarify?
Ben is probing Alex's justification for the complexity points. The core concept of complexity-based estimation isn't just about *quantity* (like lines of code), but about the *effort* required to address potential technical challenges. Rate limiting and retry logic are prime examples – they introduce additional considerations like error handling, monitoring, and potentially complex algorithms that contribute significantly to overall effort. Choosing option 2 demonstrates an understanding that complexity isn't just a raw measure; it's tied to risk and resilience.
14 / 25
A team is discussing the complexity of a new data migration task. Liam says: 'I'm estimating this at 5 points because it involves parsing a legacy CSV file, transforming the data into a modern format, and loading it into our new database.' Maria responds: 'That sounds reasonable, but can you explain what aspects of that process you considered when determining those 5 points? Specifically, are there any potential performance bottlenecks or data integrity concerns we should be aware of?' Which of the following best describes what Maria is asking Liam to explain?
Maria is asking Liam to delve deeper into *why* he assigned 5 complexity points. The question isn't about the raw technical tasks themselves (CSV parsing, schema changes), but rather the potential complexities that arise from those tasks – things like performance issues during data loading or the risk of errors during transformation. This highlights a key element of complexity-based estimation: considering not just *what* is being done, but *how* it's being done and the potential pitfalls.
15 / 25
During a standup update, Emily states: 'I'm estimating this user profile API endpoint at 6 complexity points. It's a fairly standard CRUD operation, but it needs to handle image uploads and validation against several business rules.' John asks, 'Okay, can you tell me more about *why* you chose 6? What specifically about the image upload or business rule validation makes it more complex than a simple GET request?' Which of the following best describes what John is asking Emily to explain?
John is asking Emily to provide a justification for her complexity estimate. The question isn't about the *quantity* of code or time, but rather the *reasons* behind the higher complexity score. Complexity points aren't solely based on size; they reflect the inherent difficulty and risk associated with a task. Focusing on specific technical challenges – like image uploads and business rule validation – is key to accurately assessing complexity and planning accordingly. Selecting option 2 is crucial for understanding how complexity points relate to development effort.
16 / 25
During a code review of a new feature for user authentication, Sarah comments to David: 'This integration with the legacy system is incredibly complex; it involves multiple API calls, custom data transformations, and handling several edge cases. I'm estimating around 8 complexity points.' David replies, 'That's good context, but can you elaborate on *why* you think it's 8 complexity points? Are there specific technical challenges we should be aware of?' Which of the following best describes what David is asking Sarah to explain?
David is probing Sarah for a deeper understanding of *why* she assigned 8 complexity points. The question isn't simply about the quantity of code; it's about the technical challenges—the potential risks and uncertainties—associated with the integration. Complexity estimation isn't just about effort; it's about assessing the inherent difficulty, which includes factors like external dependencies and the likelihood of unexpected issues. Option A focuses on a purely quantitative measure, while option C directly addresses the core concept of complexity – risk and uncertainty – that David is questioning.
17 / 25
During a PR review for a new microservice, Mark asks the team: 'I'm seeing a lot of nested loops and conditional logic in this service. It seems like we're dealing with potentially complex data structures and algorithms. Can you walk me through your reasoning on assigning these complexity points?' Which of the following best describes what Mark is asking the developer to clarify?
Mark isn't concerned with *what* complexity points are assigned; he's focused on *why*. The correct answer highlights that Mark wants to understand the developer's reasoning—specifically, how technical complexities (like complex data structures and algorithms) influenced the assignment of those points.
Options A and C are irrelevant to the core question – it's not about code lines or Big O notation, but rather understanding the *reasoning* behind the estimation. Option D is related to dependency analysis, but not directly tied to the developer's explanation of complexity.
18 / 25
During a Slack discussion about estimating the complexity of a new API endpoint, Alex writes: 'I'm putting 3 points on this because it needs to handle rate limiting and retry logic. Seems straightforward enough.' Ben replies: 'Just out of curiosity, what specifically makes you think about rate limiting and retries when assigning those 3 points? Is there something we should be considering that might increase the effort?' Which of the following best describes what Ben is asking Alex to clarify?
Ben is probing Alex's justification for the complexity points. The core concept of complexity-based estimation isn't just about *quantity* (like lines of code), but about the *effort* required to address potential technical challenges. Rate limiting and retry logic are prime examples – they introduce additional considerations like error handling, monitoring, and potentially complex algorithms that contribute significantly to overall effort. Choosing option 2 demonstrates an understanding that complexity isn't just a raw measure; it's tied to risk and resilience.
19 / 25
A team is discussing the complexity of a new data migration task. Liam says: 'I'm estimating this at 5 points because it involves parsing a legacy CSV file, transforming the data into a modern format, and loading it into our new database.' Maria responds: 'That sounds reasonable, but can you explain what aspects of that process you considered when determining those 5 points? Specifically, are there any potential performance bottlenecks or data integrity concerns we should be aware of?' Which of the following best describes what Maria is asking Liam to explain?
Maria is asking Liam to delve deeper into *why* he assigned 5 complexity points. The question isn't about the raw technical tasks themselves (CSV parsing, schema changes), but rather the potential complexities that arise from those tasks – things like performance issues during data loading or the risk of errors during transformation. This highlights a key element of complexity-based estimation: considering not just *what* is being done, but *how* it's being done and the potential pitfalls.
20 / 25
During a standup update, Emily states: 'I'm estimating this user profile API endpoint at 6 complexity points. It's a fairly standard CRUD operation, but it needs to handle image uploads and validation against several business rules.' John asks, 'Okay, can you tell me more about *why* you chose 6? What specifically about the image upload or business rule validation makes it more complex than a simple GET request?' Which of the following best describes what John is asking Emily to explain?
John is asking Emily to provide a justification for her complexity estimate. The question isn't about the *quantity* of code or time, but rather the *reasons* behind the higher complexity score. Complexity points aren't solely based on size; they reflect the inherent difficulty and risk associated with a task. Focusing on specific technical challenges – like image uploads and business rule validation – is key to accurately assessing complexity and planning accordingly. Selecting option 2 is crucial for understanding how complexity points relate to development effort.
21 / 25
During a code review of a new feature for user authentication, Sarah comments to David: 'This integration with the legacy system is incredibly complex; it involves multiple API calls, custom data transformations, and handling several edge cases. I'm estimating around 8 complexity points.' David replies, 'That's good context, but can you elaborate on *why* you think it's 8 complexity points? Are there specific technical challenges we should be aware of?' Which of the following best describes what David is asking Sarah to explain?
David is probing Sarah for a deeper understanding of *why* she assigned 8 complexity points. The question isn't simply about the quantity of code; it's about the technical challenges—the potential risks and uncertainties—associated with the integration. Complexity estimation isn't just about effort; it's about assessing the inherent difficulty, which includes factors like external dependencies and the likelihood of unexpected issues. Option A focuses on a purely quantitative measure, while option C directly addresses the core concept of complexity – risk and uncertainty – that David is questioning.
22 / 25
During a PR review for a new microservice, Mark asks the team: 'I'm seeing a lot of nested loops and conditional logic in this service. It seems like we're dealing with potentially complex data structures and algorithms. Can you walk me through your reasoning on assigning these complexity points?' Which of the following best describes what Mark is asking the developer to clarify?
Mark isn't concerned with *what* complexity points are assigned; he's focused on *why*. The correct answer highlights that Mark wants to understand the developer's reasoning—specifically, how technical complexities (like complex data structures and algorithms) influenced the assignment of those points.
Options A and C are irrelevant to the core question – it's not about code lines or Big O notation, but rather understanding the *reasoning* behind the estimation. Option D is related to dependency analysis, but not directly tied to the developer's explanation of complexity.
23 / 25
During a Slack discussion about estimating the complexity of a new API endpoint, Alex writes: 'I'm putting 3 points on this because it needs to handle rate limiting and retry logic. Seems straightforward enough.' Ben replies: 'Just out of curiosity, what specifically makes you think about rate limiting and retries when assigning those 3 points? Is there something we should be considering that might increase the effort?' Which of the following best describes what Ben is asking Alex to clarify?
Ben is probing Alex's justification for the complexity points. The core concept of complexity-based estimation isn't just about *quantity* (like lines of code), but about the *effort* required to address potential technical challenges. Rate limiting and retry logic are prime examples – they introduce additional considerations like error handling, monitoring, and potentially complex algorithms that contribute significantly to overall effort. Choosing option 2 demonstrates an understanding that complexity isn't just a raw measure; it's tied to risk and resilience.
24 / 25
A team is discussing the complexity of a new data migration task. Liam says: 'I'm estimating this at 5 points because it involves parsing a legacy CSV file, transforming the data into a modern format, and loading it into our new database.' Maria responds: 'That sounds reasonable, but can you explain what aspects of that process you considered when determining those 5 points? Specifically, are there any potential performance bottlenecks or data integrity concerns we should be aware of?' Which of the following best describes what Maria is asking Liam to explain?
Maria is asking Liam to delve deeper into *why* he assigned 5 complexity points. The question isn't about the raw technical tasks themselves (CSV parsing, schema changes), but rather the potential complexities that arise from those tasks – things like performance issues during data loading or the risk of errors during transformation. This highlights a key element of complexity-based estimation: considering not just *what* is being done, but *how* it's being done and the potential pitfalls.
25 / 25
During a standup update, Emily states: 'I'm estimating this user profile API endpoint at 6 complexity points. It's a fairly standard CRUD operation, but it needs to handle image uploads and validation against several business rules.' John asks, 'Okay, can you tell me more about *why* you chose 6? What specifically about the image upload or business rule validation makes it more complex than a simple GET request?' Which of the following best describes what John is asking Emily to explain?
John is asking Emily to provide a justification for her complexity estimate. The question isn't about the *quantity* of code or time, but rather the *reasons* behind the higher complexity score. Complexity points aren't solely based on size; they reflect the inherent difficulty and risk associated with a task. Focusing on specific technical challenges – like image uploads and business rule validation – is key to accurately assessing complexity and planning accordingly. Selecting option 2 is crucial for understanding how complexity points relate to development effort.
What does the "Complexity-Based Estimation Vocabulary" exercise cover?
Practice vocabulary for complexity-based software estimation including story points, t-shirt sizing, velocity, spikes, and the distinction between complexity and effort.
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 "Complexity-Based Estimation Vocabulary"?
This exercise has 25 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 Estimation Language exercises?
Browse the full Estimation Language 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.