Courseiva

CCNA Itf Software Development Questions

8 of 83 questions · Page 2/2 · Itf Software Development topic · Answers revealed

76
MCQeasy

In which phase of the Software Development Life Cycle (SDLC) are the system requirements gathered and analyzed?

A.Implementation
B.Analysis
C.Design
D.Planning
AnswerB

Requirements gathering and analysis occur during the Analysis phase, where stakeholder needs are elicited, documented and validated before design begins. This phase produces the functional and non-functional specifications that later phases depend on, satisfying the stem's constraint of identifying where requirements are gathered and analysed.

Why this answer

The Analysis phase (also called Requirements Analysis or Requirements Gathering) is specifically dedicated to eliciting, documenting, and validating stakeholder needs and system requirements. During this phase, business analysts and developers work with stakeholders to define functional and non-functional requirements, often producing artifacts like a Software Requirements Specification (SRS). This is distinct from planning, which focuses on feasibility and project scope, and design, which translates requirements into technical blueprints.

Exam trap

FC0-U71 often tests the distinction between the Planning and Analysis phases, as candidates may confuse high-level project planning (feasibility, scope) with the detailed requirements gathering and analysis that occurs in the Analysis phase.

How to eliminate wrong answers

Option A is wrong because Implementation (or Coding) is the phase where developers write and compile source code based on the design documents, not where requirements are gathered. Option C is wrong because Design takes the approved requirements from the Analysis phase and creates architectural and detailed design specifications (e.g., UML diagrams, database schemas) — it does not gather or analyze requirements. Option D is wrong because Planning (or Initiation) involves defining the project's scope, objectives, feasibility, and high-level schedule, but it does not perform the detailed elicitation and analysis of system requirements; that is the core of the Analysis phase.

77
MCQhard

During a Scrum sprint review, stakeholders request a new feature that was not in the product backlog. The product owner wants to add it to the next sprint. What is the correct action according to Scrum?

A.Ask the development team to work overtime to include it
B.Reject the request because the sprint is complete
C.Add the feature to the product backlog for future prioritization
D.Add the feature to the current sprint immediately
AnswerC

Scrum protects the sprint backlog from mid-sprint scope changes; only the product owner orders the product backlog. Adding the requested feature there allows it to be refined and prioritised against existing items, so the current sprint goal remains intact and the team is not disrupted.

Why this answer

In Scrum, the product backlog is the single source of requirements and is owned by the Product Owner. Any new feature request, regardless of when it arises, must first be added to the product backlog. The Product Owner then prioritizes it against other items, and it can be considered for a future sprint during Sprint Planning.

This maintains the integrity of the current sprint and ensures transparency and empirical process control.

Exam trap

FC0-U71 often tests the misconception that a Sprint Review is a change-control board where new features can be added directly to the current sprint or that the Product Owner can unilaterally expand scope mid-sprint.

How to eliminate wrong answers

Option A is wrong because Scrum prohibits adding scope to an active sprint; overtime is not a Scrum mechanism and undermines sustainable pace. Option B is wrong because the sprint review is not a gate for rejecting ideas; it is a collaborative inspect-and-adapt event, and the request can still be captured. Option D is wrong because the sprint backlog is frozen once the sprint begins; only the Development Team can change it, and only by renegotiating scope with the Product Owner, not by unilaterally adding new work.

78
MCQeasy

A junior developer is asked to write a program that reads a user's age and determines whether the user is eligible to vote. The program must compare the age to 18 and display one of two messages. Which programming construct is the most appropriate to use for this decision-making step?

A.An if-else statement
B.A for loop
C.A function definition
D.A variable declaration
AnswerA

An if-else statement evaluates a condition and executes one block of code when the condition is true and another block when it is false. Here, the condition is age >= 18, so the if branch displays the eligible message and the else branch displays the not eligible message. This directly matches the two possible outcomes the developer must handle.

Why this answer

The task requires selecting one of two outcomes based on whether the age meets a threshold, which is exactly what conditional branching provides. An if-else statement evaluates a Boolean expression and routes execution to the appropriate block. Loops, variable declarations, and function definitions support other concerns such as repetition, storage, and reuse, but none of them performs the required true-or-false decision.

Exam trap

The trap here is assuming that any control-flow structure, such as a loop, can handle a two-outcome decision when only conditional branching compares a value and chooses between alternative actions.

79
MCQeasy

A programmer is writing a function that must decide whether a customer qualifies for a discount. The function checks if the customer's total purchases are greater than 500. If true, it returns a discount rate; otherwise, it returns zero. Which programming construct is most appropriate for making this decision?

A.A conditional statement such as if-else.
B.A function call that returns the customer's total purchases.
C.A variable declaration that stores the discount rate.
D.A loop that repeats the check until the value changes.
AnswerA

An if-else statement evaluates a condition and executes one block when the condition is true and another when it is false. Here the condition is whether total purchases exceed 500. If true, the function returns a discount rate; otherwise, it returns zero. This directly implements the required one-time decision between two outcomes.

Why this answer

The requirement is a single decision with two possible outcomes based on whether total purchases exceed 500. A conditional statement such as if-else evaluates the condition and selects the appropriate result. Loops repeat actions, variable declarations store data, and function calls retrieve values, but none of those directly perform the branching decision needed here.

Exam trap

The trap here is overcomplicating a single decision by reaching for iteration or data storage when the scenario only calls for evaluating one condition and choosing between two results.

80
Multi-Selecthard

A developer is writing pseudocode for a program that calculates the average of a list of numbers. Which THREE of the following are valid components that would likely appear in the pseudocode? (Select THREE.)

Select 3 answers
A.Initialize sum to 0
B.For each number in list, add number to sum
C.Divide sum by count of numbers
D.Define a class named Calculator
E.Execute SQL query to retrieve numbers from database
AnswersA, B, C

Starting sum at 0 is a typical step.

Why this answer

Initializing a variable (like sum) to a starting value (0) is a fundamental step in accumulation algorithms. Without this initialization, the sum would contain an undefined or garbage value, leading to incorrect results. This is a standard practice in pseudocode and real programming languages alike.

Exam trap

CompTIA often tests the distinction between algorithmic steps (like initialization, iteration, and arithmetic) and extraneous programming constructs (like class definitions or database queries) to see if candidates understand the essence of pseudocode for simple computations.

81
Multi-Selecthard

A development team is choosing a version control workflow for a project with multiple contributors. They want to keep the main branch stable and allow each developer to work independently before changes are reviewed and integrated. Which THREE of the following are characteristics of a typical branch-based version control workflow? (Choose three.)

Select 3 answers
A.Developers create separate branches to isolate work on features or fixes.
B.Each developer maintains a completely separate copy of the repository that never syncs.
C.Branches allow parallel development without immediately affecting other developers.
D.All developers commit directly to the main branch without review.
E.Changes are merged back into the main branch after review.
AnswersA, C, E

In a branch-based workflow, each developer creates a branch from a shared baseline such as main. This isolates unfinished or experimental changes so they do not affect other contributors. When the work is ready, the branch can be reviewed and merged. This matches the team's goal of independent work while keeping the main branch stable and free from incomplete changes.

Why this answer

A branch-based workflow isolates work by letting developers create branches for features or fixes, supports parallel development without disturbing others, and integrates changes into main only after review. Direct commits to main and permanently unsynchronized repository copies do not fit this model because they either bypass review or prevent effective integration and collaboration.

Exam trap

The trap here is assuming that any use of version control automatically means branches are isolated repositories rather than lightweight lines of development that share history and merge back.

82
Multi-Selecthard

A development team is comparing compiled languages and interpreted languages as they choose a technology for a new project. Which TWO of the following statements accurately describe differences between these two categories? (Choose two.)

Select 2 answers
A.An interpreted language is executed line by line by an interpreter at runtime, without a separate ahead-of-time machine-code build step.
B.Compiled programs cannot use variables or functions because those features exist only in interpreted languages.
C.Only interpreted languages can produce errors during execution, while compiled languages never experience runtime errors.
D.Interpreted programs are always faster at runtime than compiled programs because no translation occurs.
E.A compiled language is translated into machine code ahead of time, producing an executable that the operating system can run directly.
AnswersA, E

An interpreter reads and executes source or intermediate code during runtime rather than translating the whole program to machine code in advance. This enables rapid edit-run cycles and platform independence when an interpreter exists for the target system. It accurately captures a core distinction between interpreted and compiled execution.

Why this answer

Compiled languages use a translation step that produces machine code ahead of time, while interpreted languages rely on an interpreter to execute code at runtime. Both statements describe real, observable differences in how source code becomes running behavior. The remaining claims are false because variables and functions exist in both categories, interpreted execution is not universally faster, and runtime errors are not exclusive to interpreted languages.

Exam trap

The trap here is assuming that compilation or interpretation changes which language features exist or guarantees freedom from runtime errors, when it mainly changes when translation occurs.

83
MCQhard

After deploying a new version of a web application, the QA team runs a set of test cases that were previously executed on the old version to ensure that existing functionality still works correctly. This testing is performed to detect any unintended side effects of the changes. What type of testing is this?

A.Integration testing
B.Smoke testing
C.Acceptance testing
D.Regression testing
AnswerD

Re-running previously passed test cases against the new build checks that existing functionality still works and no unintended side effects were introduced. That re-execution of an established suite to catch change-induced breakage is regression testing.

Why this answer

Regression testing verifies that new code changes do not break existing functionality.

← PreviousPage 2 of 2 · 83 questions total

Ready to test yourself?

Try a timed practice session using only Itf Software Development questions.