CCNA Itf Software Development Questions

59 questions · Itf Software Development topic · All types, answers revealed

1
Multi-Selecteasy

During the SDLC, testing is performed at different levels. Which TWO of the following are recognized levels of testing? (Select TWO.)

Select 2 answers
A.Maintenance
B.Code review
C.Integration testing
D.Unit testing
E.Deployment
AnswersC, D

Integration testing checks interactions between components.

Why this answer

Unit and integration testing are standard testing levels. Code review is a quality activity, not a testing level. Deployment and maintenance are phases, not testing levels.

2
MCQmedium

A developer is trying to find why a program is producing incorrect output. The developer runs the program with a debugging tool, sets a breakpoint at a specific line, and examines the values of variables at that point. Which debugging technique is being used?

A.Code review
B.Step-through execution
C.Logging
D.Breakpoint inspection
AnswerD

Breakpoints halt execution for variable inspection.

Why this answer

Option D is correct because the developer is using breakpoint inspection, a debugging technique where execution is paused at a specific line of code (the breakpoint) to examine variable values at that exact moment. This allows the developer to inspect the program's state without stepping through each subsequent line, directly identifying why incorrect output occurs.

Exam trap

The trap here is that candidates confuse breakpoint inspection with step-through execution, but step-through involves actively moving through code line by line, whereas breakpoint inspection pauses at a single point for variable examination without stepping.

How to eliminate wrong answers

Option A is wrong because code review is a manual or automated analysis of source code without executing it, not a runtime debugging technique involving breakpoints or variable inspection. Option B is wrong because step-through execution involves executing code line by line, often using 'step into' or 'step over' commands, which is different from simply setting a breakpoint and examining variables without stepping. Option C is wrong because logging involves writing messages to a log file or console during execution, not pausing at a breakpoint to inspect variables interactively.

3
Multi-Selectmedium

A REST API is used by a mobile app to retrieve data. The API returns responses in a specific format. Which THREE of the following are typical characteristics of a REST API?

Select 3 answers
A.Uses SOAP for message exchange
B.Maintains server-side session state
C.Is stateless between requests
D.Returns data in JSON format
E.Uses HTTP methods like GET and POST
AnswersC, D, E

Statelessness is a key constraint of REST.

Why this answer

REST APIs are stateless by design, meaning each request from a client to the server must contain all the information needed to understand and process the request. The server does not store any client context between requests, which improves scalability and reliability. This statelessness is a core constraint of the REST architectural style, as defined by Roy Fielding in his doctoral dissertation.

Exam trap

Cisco often tests the misconception that REST APIs must use JSON exclusively, but while JSON is common, REST can return data in any format (e.g., XML, HTML, plain text) as long as it adheres to REST constraints.

4
MCQeasy

A developer wants to represent the logic of a program before writing code. The diagram should show decisions with diamond shapes and processes with rectangles. Which representation is the developer creating?

A.Algorithm
B.Data structure
C.Pseudocode
D.Flowchart
AnswerD

Flowcharts use shapes like diamonds for decisions and rectangles for processes.

Why this answer

A flowchart uses standard symbols to visually represent program logic, including decision diamonds and process rectangles.

5
MCQmedium

A developer needs to represent the logic of a program that decides whether a user is eligible for a discount. The process includes conditions (e.g., 'is member?') and actions (e.g., 'apply 10% discount'). Which tool would best visually represent this logic using standardized symbols like diamonds for decisions and rectangles for processes?

A.Pseudocode
B.Data flow diagram
C.Flowchart
D.UML class diagram
AnswerC

Flowcharts use symbols for decisions and processes.

Why this answer

Flowcharts use decision diamonds and process rectangles to visually represent logic.

6
MCQeasy

A mobile app needs to display weather data from an online service. The app sends HTTP requests and receives responses in JSON format. This communication is made possible by a set of rules and protocols that allow the app and the service to interact. This set of rules is called a(n):

A.Data structure
B.API
C.SDLC
D.Algorithm
AnswerB

An API allows software to communicate via defined protocols.

Why this answer

An API (Application Programming Interface) defines how software components should interact, often using HTTP and JSON.

7
MCQmedium

A software company uses a development model where work is divided into 2-week sprints. Each sprint begins with a planning meeting, includes daily standups, and ends with a review and retrospective. A product owner prioritizes features, and a scrum master facilitates the process. Which methodology is being used?

A.Kanban
B.Scrum
C.Waterfall
D.Extreme Programming (XP)
AnswerB

Scrum is characterized by sprints, daily standups, and defined roles.

Why this answer

Scrum is an agile framework that uses sprints, daily standups, sprint reviews, and specific roles (product owner, scrum master, development team).

8
MCQmedium

A mobile app developer wants to integrate weather data into an app. The developer uses an HTTP request to a web service that returns JSON data. The web service requires an API key in the request header for authentication. What is this web service an example of?

A.GraphQL API
B.WebSocket
D.SOAP API
AnswerC

REST APIs use HTTP and JSON, with API keys for auth.

Why this answer

This web service is a REST API because it uses HTTP requests to access and manipulate resources, returns data in JSON format, and requires an API key in the request header for authentication. REST APIs are stateless and rely on standard HTTP methods (GET, POST, etc.), making them ideal for integrating external data like weather information into mobile apps.

Exam trap

Cisco often tests the distinction between REST and SOAP by focusing on data format (JSON vs. XML) and authentication simplicity (API keys vs. WS-Security), leading candidates to confuse REST with GraphQL due to both using JSON, but GraphQL is a query language, not a service architecture.

How to eliminate wrong answers

Option A is wrong because GraphQL API is a query language that allows clients to request specific data fields, but it does not inherently require an API key in the header for authentication; authentication is an additional layer, not a defining characteristic. Option B is wrong because WebSocket is a full-duplex communication protocol over a single TCP connection, used for real-time bidirectional data streams, not for standard HTTP request-response interactions like fetching weather data. Option D is wrong because SOAP API uses XML-based messaging and often relies on WS-Security or other complex protocols for authentication, not simple API keys in HTTP headers, and it is not typically associated with lightweight JSON responses.

9
Multi-Selectmedium

A developer is debugging a program that unexpectedly crashes. Which TWO tools or techniques are commonly used to identify the cause of the crash? (Select the two correct answers.)

Select 2 answers
A.Code compilation
B.Refactoring
C.Breakpoints
D.Logging
E.Code review
AnswersC, D

Breakpoints pause execution at specific lines to inspect variables and flow.

Why this answer

Breakpoints allow pausing execution to inspect state, and logging records events to trace execution flow.

10
Multi-Selecthard

A software testing team is planning to verify a new e-commerce application. Which THREE testing types should be performed to ensure comprehensive quality? (Select the three correct answers.)

Select 3 answers
A.Smoke testing
B.Integration testing
C.Unit testing
D.Alpha testing
E.System testing
AnswersB, C, E

Integration testing checks how components work together.

Why this answer

Comprehensive testing includes unit (component level), integration (interactions), and system (end-to-end) testing. UAT is also important but not in the list; regression is also important but here three are needed.

11
Multi-Selectmedium

A software team is adopting agile practices. They want to ensure they incorporate feedback early and often. Which TWO of the following are key events in the Scrum framework that provide opportunities for feedback and inspection?

Select 2 answers
A.Sprint retrospective
B.Sprint review
C.Daily scrum
D.Product backlog grooming
E.Sprint planning
AnswersA, B

Sprint retrospective is for inspecting the team's process and making improvements.

Why this answer

Sprint review is where the team demonstrates work to stakeholders and gathers feedback. Sprint retrospective is where the team inspects its own process and plans improvements. Both are Scrum events.

12
MCQeasy

Which of the following best describes the purpose of a REST API?

A.To compile source code into executable programs
B.To allow software applications to communicate with each other
C.To create a graphical user interface
D.To define a database schema
AnswerB

REST APIs enable communication between software systems.

Why this answer

A REST API (Representational State Transfer Application Programming Interface) is a set of architectural constraints that enables software applications to communicate over HTTP using standard methods like GET, POST, PUT, and DELETE. It allows different systems, often written in different languages, to exchange data in formats such as JSON or XML, making it the correct choice for enabling inter-application communication.

Exam trap

Cisco often tests the misconception that REST APIs are used for building user interfaces or managing databases, when in fact they are purely a communication protocol between software systems.

How to eliminate wrong answers

Option A is wrong because compiling source code into executable programs is the function of a compiler (e.g., GCC, javac), not an API. Option C is wrong because creating a graphical user interface is the role of UI frameworks (e.g., JavaFX, React) or GUI builders, not a REST API which is a server-side interface. Option D is wrong because defining a database schema is the responsibility of a Data Definition Language (DDL) in SQL or an ORM mapping, not a REST API which focuses on resource manipulation via HTTP.

13
Multi-Selectmedium

A development team is adopting Scrum. Which TWO roles are defined in the Scrum framework? (Select the two correct answers.)

Select 2 answers
A.Scrum Master
B.Product Owner
C.Business Analyst
D.Quality Assurance Lead
E.Project Manager
AnswersA, B

The Scrum Master facilitates the Scrum process and removes impediments.

Why this answer

Scrum defines three roles: Product Owner, Scrum Master, and Development Team. The correct two are Product Owner and Scrum Master.

14
Multi-Selecthard

A software company is using version control for a project. A developer has completed work on a new feature in a separate branch and wants to merge it into the main branch. What TWO steps should typically occur before the merge is accepted?

Select 2 answers
A.Delete the feature branch immediately
B.Update the feature branch with the latest main branch changes
C.Run unit tests only on the main branch
D.Submit a pull request for code review
E.Commit changes directly to the main branch
AnswersB, D

Syncing the feature branch with main reduces merge conflicts.

Why this answer

Common version control best practices include code review via pull requests and ensuring the feature branch is up to date with the main branch to minimize conflicts.

15
Multi-Selectmedium

A software development team is adopting agile practices. Which TWO of the following are common characteristics of agile methodologies? (Select TWO.)

Select 2 answers
A.Sequential phases (requirements→design→implementation)
B.Iterative development with short cycles
C.Responding to change over following a plan
D.Fixed scope defined at the start
E.Comprehensive documentation at each phase
AnswersB, C

Agile uses iterative cycles (sprints) to deliver increments.

Why this answer

Agile methodologies are iterative and adaptive, welcoming changing requirements. Sequential phases and fixed scope are characteristics of waterfall.

16
MCQeasy

A developer is planning a new project that has very clear and fixed requirements. The project must be completed in a linear fashion with each phase finished before moving to the next. Which development methodology should be used?

A.Spiral
B.Scrum
C.Agile
D.Waterfall
AnswerD

Waterfall is linear and phase-based, suitable for fixed-scope projects.

Why this answer

The Waterfall methodology is correct because it follows a linear, sequential approach where each phase (e.g., requirements, design, implementation, testing) must be completed before the next begins. This aligns perfectly with the project's very clear and fixed requirements, as Waterfall assumes that all requirements are known upfront and changes are minimized.

Exam trap

The trap here is that candidates often confuse 'linear' with 'iterative' and pick Agile or Scrum because they are popular, but the question explicitly states 'fixed requirements' and 'each phase finished before moving to the next,' which directly points to Waterfall.

How to eliminate wrong answers

Option A is wrong because the Spiral model is iterative and risk-driven, combining prototyping with waterfall-like phases, which is not purely linear and does not require each phase to finish before moving to the next. Option B is wrong because Scrum is an Agile framework that uses time-boxed sprints and iterative development, allowing for changing requirements and overlapping phases, which contradicts the fixed, linear requirement. Option C is wrong because Agile is an umbrella term for iterative and incremental methodologies (like Scrum and Kanban) that embrace changing requirements and continuous feedback, not a linear, phase-complete approach.

17
Multi-Selecteasy

Which TWO of the following are core phases of the Software Development Life Cycle (SDLC)?

Select 2 answers
A.Algorithm design
B.Flowcharting
C.Testing
D.Debugging
E.Implementation
AnswersC, E

Testing is a key SDLC phase.

Why this answer

The SDLC includes phases like planning, analysis, design, implementation, testing, deployment, and maintenance. A flowchart is not an SDLC phase, and debugging is an activity within testing/implementation.

18
Multi-Selecthard

A quality assurance team is executing system testing on a new banking application. They need to verify that the entire application works correctly from start to finish. Which THREE of the following testing types would be included in system testing?

Select 3 answers
A.Security testing
B.Integration testing
C.Functional testing
D.Unit testing
E.Performance testing
AnswersA, C, E

Security testing identifies vulnerabilities in the system.

Why this answer

System testing is end-to-end and includes functional testing to verify features, performance testing to check responsiveness, and security testing to ensure data protection. Unit testing and integration testing are earlier phases.

19
MCQhard

During debugging, a developer sets a breakpoint and steps through the code line by line. Which debugging tool feature is being used to execute one line of code at a time?

A.Step execution
B.Breakpoint
C.Variable inspection
D.Logging
AnswerA

Step execution moves through code line by line.

Why this answer

Step-through execution (or step into/over) allows executing code one line at a time to observe behavior.

20
MCQeasy

A developer creates a new branch in a version control system to work on a new feature. After completing the feature, the developer wants to combine the changes from the feature branch back into the main branch. What is this process called?

A.Committing
B.Forking
C.Branching
D.Merging
AnswerD

Merging integrates changes from one branch into another.

Why this answer

Merging combines changes from one branch into another.

21
MCQeasy

A development team is building a new mobile app. The project has a fixed budget and scope, and the requirements are well-understood from the start. Which software development methodology would be most appropriate for this project?

A.Spiral
B.Scrum
C.Waterfall
D.Agile
AnswerC

Waterfall is sequential and suited for predictable, fixed-scope projects.

Why this answer

The waterfall methodology is best for projects with fixed scope and well-understood requirements because it follows sequential phases and is not designed to handle changes easily.

22
MCQmedium

A developer is working on a new feature and creates a copy of the main codebase to work in isolation. Later, this copy is merged back into the main branch. Which version control concept describes this copy?

A.Merge
B.Branch
C.Commit
D.Pull request
AnswerB

A branch is a separate copy of the codebase for parallel development.

Why this answer

Branching creates a separate line of development, allowing isolated work on a feature before merging.

23
Multi-Selectmedium

A development team is using an agile methodology. Which TWO of the following are typical practices in agile development?

Select 2 answers
A.Waterfall phase transitions
B.Fixed scope defined at project start
C.Iterative development with short cycles
D.Daily standup meetings
E.Detailed design phase before coding
AnswersC, D

Agile uses iterations (sprints) to deliver incremental value.

Why this answer

Agile emphasizes iterative development and daily standup meetings. Fixed scope and detailed up-front design are characteristic of waterfall.

24
MCQhard

A software development team is using Scrum. During a sprint, the product owner introduces a new high-priority requirement that was not in the sprint backlog. The team has already committed to the current sprint's goals. According to Scrum principles, what should the team do?

A.Include the new requirement in the next sprint planning
B.Ask the development team to work overtime to accommodate the new requirement
C.Hold an emergency sprint planning meeting to adjust the sprint backlog
D.Add the new requirement to the current sprint and remove a lower-priority item
AnswerA

New requirements are placed in the product backlog and addressed in future sprints.

Why this answer

In Scrum, the sprint backlog is frozen once the sprint starts; new requirements should be added to the product backlog for future sprints.

25
MCQhard

A team of developers is working on a large project with multiple features. They use a version control system. One developer creates a new branch to develop a feature, while other developers continue working on the main branch. After completing the feature, the developer wants to combine the changes from the feature branch back into the main branch. What version control operation should be performed?

A.Pull request
B.Fork
C.Commit
D.Merge
AnswerD

Merge integrates changes from one branch into another.

Why this answer

The correct operation is 'Merge' (D), which combines the changes from the feature branch into the main branch. In Git, merging integrates the commit history of two branches, preserving the feature's work while incorporating it into the target branch. This is the standard workflow for bringing a completed feature back into the main line of development.

Exam trap

Cisco often tests the distinction between a 'pull request' (a request to merge) and the actual 'merge' operation, leading candidates to confuse the collaborative workflow step with the underlying version control command.

How to eliminate wrong answers

Option A is wrong because a 'Pull request' is a code review and collaboration mechanism, not the actual operation that combines branches; it typically triggers a merge but is not the merge itself. Option B is wrong because a 'Fork' creates a personal copy of a repository on a server (e.g., GitHub), used for independent development or contributions, not for combining branches within the same repository. Option C is wrong because a 'Commit' saves changes to the local repository but does not combine branches; it is a prerequisite step before merging, not the operation that integrates branches.

26
MCQmedium

A programmer needs to store a collection of key-value pairs where each key is unique and maps to a value. Which data structure is best suited for this purpose?

A.Dictionary
B.Array
C.Stack
D.List
AnswerA

Dictionaries (hash maps) store key-value pairs with unique keys.

Why this answer

A dictionary (hash map) stores key-value pairs with unique keys for efficient lookup.

27
Multi-Selectmedium

A developer is debugging a program that crashes with an error. Which THREE of the following are common debugging techniques?

Select 3 answers
A.Stepping through code line by line
B.Ignoring the error and continuing
C.Recompiling the entire program without changes
D.Setting breakpoints to pause execution
E.Inspecting variable values during execution
AnswersA, D, E

Step-through execution helps trace the program flow.

Why this answer

Setting breakpoints, stepping through code, and inspecting variable values are standard debugging techniques. Rewriting the entire program is inefficient, and ignoring errors does not help.

28
MCQmedium

In a Scrum team, who is responsible for prioritizing the product backlog and ensuring that the team works on the most valuable features first?

A.Product Owner
B.Scrum Master
C.Development Team
D.Stakeholder
AnswerA

The product owner owns the backlog and prioritizes it.

Why this answer

The Product Owner is responsible for maximizing the value of the product resulting from the work of the Scrum Team. This includes owning the Product Backlog, ordering its items to best achieve goals and missions, and ensuring that the Development Team works on the most valuable features first. The Product Owner is the single point of contact for prioritization decisions, balancing stakeholder needs with business value.

Exam trap

Cisco often tests the misconception that the Scrum Master or Development Team shares responsibility for backlog prioritization, but the trap here is that only the Product Owner has the authority to order the Product Backlog, as defined in the Scrum Guide.

How to eliminate wrong answers

Option B is wrong because the Scrum Master is a servant-leader who facilitates Scrum events, removes impediments, and coaches the team, but does not have authority over backlog prioritization. Option C is wrong because the Development Team is self-organizing and decides how to deliver the work, but they do not own the Product Backlog or its ordering. Option D is wrong because Stakeholders provide input and feedback, but they do not have the final authority to prioritize the Product Backlog; that responsibility lies solely with the Product Owner.

29
MCQeasy

A software development team follows a methodology where work is divided into fixed sequential phases: requirements, design, implementation, testing, deployment, and maintenance. Changes to requirements are difficult once a phase is completed. Which development methodology is being used?

A.Spiral
B.Waterfall
C.Scrum
D.Agile
AnswerB

Waterfall follows sequential phases and is suited for predictable projects.

Why this answer

The Waterfall model is a linear sequential software development methodology where each phase (requirements, design, implementation, testing, deployment, maintenance) must be completed before the next begins. This rigidity makes it difficult to accommodate changes to requirements once a phase is finished, exactly as described in the question.

Exam trap

Cisco often tests the distinction between sequential (Waterfall) and iterative (Agile/Spiral) methodologies by emphasizing the inability to change requirements after a phase is completed, which directly points to Waterfall and not to the risk-driven cycles of Spiral or the adaptive nature of Agile frameworks.

How to eliminate wrong answers

Option A is wrong because the Spiral model is an iterative risk-driven methodology that combines prototyping with the waterfall phases, allowing for repeated cycles and requirement changes based on risk analysis. Option C is wrong because Scrum is an Agile framework that uses time-boxed sprints and welcomes changing requirements even late in development. Option D is wrong because Agile methodologies (including Scrum, Kanban, XP) are built on iterative development and continuous feedback, explicitly designed to handle evolving requirements.

30
MCQeasy

A developer needs to store a collection of student names and their corresponding grades. The data should be accessed quickly by student name. Which data structure is most appropriate?

A.Array
B.Queue
C.Stack
D.Dictionary
AnswerD

Dictionary stores key-value pairs for fast access by key.

Why this answer

A dictionary (also known as a hash map or associative array) stores key-value pairs, allowing O(1) average-time lookups by key. Since the developer needs to access grades quickly by student name, the dictionary's hashing mechanism directly maps each name to its corresponding grade, making it the most appropriate choice.

Exam trap

Cisco often tests the distinction between sequential data structures (arrays, queues, stacks) and associative data structures (dictionaries), trapping candidates who confuse 'ordered collection' with 'keyed access'.

How to eliminate wrong answers

Option A is wrong because an array stores elements by numeric index, not by a string key like a student name, requiring a linear search or manual mapping to find a grade. Option B is wrong because a queue is a FIFO (First-In, First-Out) data structure designed for ordered processing, not for key-based lookups. Option C is wrong because a stack is a LIFO (Last-In, First-Out) data structure used for undo operations or expression evaluation, not for associating names with grades.

31
MCQmedium

A software tester is verifying that individual functions within a module work correctly in isolation. Which type of testing is being performed?

A.Integration testing
B.Unit testing
C.System testing
D.User acceptance testing
AnswerB

Unit testing tests individual functions/components in isolation.

Why this answer

Unit testing focuses on testing individual components or functions in isolation to ensure they work correctly.

32
MCQmedium

A software development team is in the process of gathering requirements from stakeholders, identifying project scope, and creating a project plan. After this phase, they will move to analyzing requirements in detail. In which phase of the SDLC is the team currently working?

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

Planning is the first phase where requirements are gathered and scope defined.

Why this answer

The team is gathering requirements, identifying scope, and creating a project plan, which are all activities of the Planning phase in the SDLC. The Analysis phase follows Planning and involves detailed requirement analysis, not the initial gathering and scoping. Therefore, option D is correct.

Exam trap

The trap here is that candidates often confuse 'gathering requirements' with the Analysis phase, but in the SDLC, initial high-level requirements gathering is part of Planning, while detailed analysis happens in the subsequent Analysis phase.

How to eliminate wrong answers

Option A is wrong because the Analysis phase occurs after Planning and focuses on detailed requirement analysis, not initial gathering and scoping. Option B is wrong because the Design phase comes after Analysis and involves creating system architecture and design specifications. Option C is wrong because the Implementation phase is where coding and development happen, after design is complete.

33
MCQeasy

A developer needs to visually represent the logic of a program, including decisions (yes/no branches) and processes. Which tool should the developer use?

A.Data dictionary
B.Algorithm
C.Flowchart
D.Pseudocode
AnswerC

Flowcharts visually represent logic with standard symbols.

Why this answer

Flowcharts use shapes like diamonds for decisions and rectangles for processes, providing a visual representation of program logic.

34
MCQhard

A developer is creating a cloud-based application that needs to authenticate third-party services before allowing access to its API. The developer decides to use a method where each third-party service receives a unique key that must be included in each API request. This method is known as:

A.Session-based authentication
B.API key authentication
C.Basic authentication
D.OAuth
AnswerB

API keys are unique identifiers included in requests for authentication.

Why this answer

API key authentication is a common method where a unique key is passed with each request to identify and authenticate the caller.

35
MCQhard

During a sprint retrospective, the team identifies that too many bugs are being discovered late in the development cycle. They decide to introduce a practice where developers write tests for individual functions before coding the functions themselves. This approach is an example of:

A.User acceptance testing
B.Integration testing
C.System testing
D.Unit testing
AnswerD

Unit testing focuses on individual functions or components in isolation.

Why this answer

Unit testing involves testing individual components in isolation. Writing tests before code is a common practice in test-driven development, which relies on unit tests.

36
MCQeasy

A programmer writes a step-by-step description of a solution in plain English without using any specific programming language syntax. What is this description called?

A.Source code
B.Bug report
C.Flowchart
D.Pseudocode
AnswerD

Pseudocode is a language-agnostic textual description of an algorithm.

Why this answer

Pseudocode describes an algorithm using natural language and basic structures, independent of programming language.

37
MCQmedium

A team is testing a software application after a bug fix. They want to ensure that the fix did not introduce new bugs in previously working functionality. Which type of testing should they perform?

A.Regression testing
B.User acceptance testing
C.Integration testing
D.Unit testing
AnswerA

Regression testing is designed to catch new bugs in existing functionality after changes.

Why this answer

Regression testing verifies that recent changes have not adversely affected existing features.

38
MCQmedium

A developer writes the following pseudocode for a process that finds the largest number in a list: SET max = first element FOR each number in list IF number > max THEN SET max = number END IF ENDFOR OUTPUT max What programming concept does this pseudocode represent?

A.API
B.Algorithm
C.Data structure
D.Flowchart
AnswerB

This is a step-by-step procedure to solve a problem, which defines an algorithm.

Why this answer

An algorithm is a step-by-step procedure to solve a problem. This pseudocode describes a specific algorithm (finding the maximum).

39
MCQhard

A development team is using a stack data structure to manage function calls. Which of the following correctly describes the order in which items are removed from a stack?

A.Last-In-First-Out (LIFO)
B.Random order
C.First-In-First-Out (FIFO)
D.Based on priority
AnswerA

Stacks use LIFO order for removal.

Why this answer

A stack follows Last-In-First-Out (LIFO), meaning the most recently added item is removed first.

40
MCQmedium

A developer is writing a program that stores a collection of unique student IDs. The program needs to quickly look up a student by ID and does not require the IDs to be stored in any particular order. Which data structure is most appropriate for this task?

A.Dictionary
B.Queue
C.Array
D.Stack
AnswerA

Dictionaries map keys to values and provide O(1) average lookup.

Why this answer

A dictionary (hash map) provides fast key-based lookups and automatically handles uniqueness.

41
MCQmedium

A product manager creates a list of user stories for a new feature. The development team estimates effort for each story and selects a set to complete in a two-week iteration. Daily standup meetings are held to discuss progress. At the end of the iteration, the team demonstrates working software to stakeholders. Which development framework is being used?

A.Waterfall
B.Scrum
C.V-Model
D.Kanban
AnswerB

Scrum includes sprints, user stories, daily standups, and sprint reviews.

Why this answer

Scrum is an agile framework that uses fixed-length sprints (iterations), user stories, daily standups, and sprint reviews.

42
MCQmedium

A company's IT department is deploying a new payroll system. Before the system goes live, a group of employees from the accounting department test the system to ensure it meets their requirements and is usable. This type of testing is known as:

A.System testing
B.User acceptance testing
C.Unit testing
D.Integration testing
AnswerB

UAT involves users verifying the system meets requirements.

Why this answer

User acceptance testing (UAT) is performed by end users to validate that the system meets their needs and is ready for production.

43
MCQhard

A developer writes a set of instructions to sort an array of numbers in ascending order. The instructions include steps like 'compare first two numbers, swap if out of order, move to next pair, repeat until no swaps are needed.' This step-by-step procedure is known as a(n):

A.Pseudocode
B.Flowchart
C.Algorithm
D.Data structure
AnswerC

An algorithm is a set of steps to solve a problem.

Why this answer

An algorithm is a step-by-step procedure to solve a problem. The description matches the bubble sort algorithm.

44
MCQmedium

A company is developing a mobile app and wants to release a minimal set of features quickly, then add more features based on user feedback. Which methodology best supports this approach?

A.Agile
B.V-Model
C.Spiral
D.Waterfall
AnswerA

Agile supports iterative releases and adapting to feedback.

Why this answer

Agile methodology uses iterative development and adapts to changing requirements based on feedback.

45
MCQmedium

A testing team is verifying a new version of an e-commerce website. They run a set of pre-existing test cases to ensure that recent changes have not broken any previously working functionality. What type of testing is this?

A.Unit testing
B.System testing
C.Regression testing
D.Integration testing
AnswerC

Regression testing ensures that new changes haven't broken existing functionality.

Why this answer

Regression testing checks that new code changes do not adversely affect existing features.

46
MCQhard

A web developer is creating a weather application that retrieves data from a third-party service. The service requires an identifier to track usage and authenticate requests. The developer includes this identifier in the HTTP header of each request. What is this identifier called?

A.JWT
B.Session ID
C.API key
D.OAuth token
AnswerC

API keys are simple identifiers used for authentication and tracking.

Why this answer

An API key is a unique identifier used to authenticate and authorize API requests, often passed in headers.

47
MCQmedium

A programmer needs to represent the logic of a program that includes decisions and loops. Which tool is most suitable for visually representing this logic?

A.Algorithm
B.Flowchart
C.Data structure
D.Pseudocode
AnswerB

Flowcharts provide a visual representation of logic with standard symbols.

Why this answer

A flowchart uses symbols like diamonds for decisions and rectangles for processes to visually represent program logic.

48
MCQmedium

A developer writes code to store a collection of employee names in a structure that allows adding names at the end and removing names from the front, following a first-in-first-out (FIFO) order. Which data structure is the developer implementing?

A.Tree
B.Array
C.Queue
D.Stack
AnswerC

A queue operates on FIFO principle.

Why this answer

A queue follows FIFO order: elements are added at the rear and removed from the front.

49
MCQmedium

A project team is in the phase where they gather business requirements, define project scope, and create a project plan. This phase occurs before any design or coding begins. Which SDLC phase is being described?

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

Planning is the first SDLC phase where scope and requirements are defined.

Why this answer

Option C (Planning) is correct because the SDLC Planning phase is specifically where business requirements are gathered, project scope is defined, and a project plan is created before any design or coding begins. This phase establishes the high-level goals, feasibility, and resource allocation that drive all subsequent phases.

Exam trap

The trap here is that candidates often confuse the 'Analysis' phase with the 'Planning' phase, mistakenly thinking that requirements gathering is exclusive to Analysis, when in fact Planning is the first phase where high-level business requirements and scope are defined before any detailed analysis begins.

How to eliminate wrong answers

Option A (Implementation) is wrong because the Implementation phase involves actual coding, deployment, and system rollout, which occurs after design and testing, not before. Option B (Analysis) is wrong because while Analysis involves requirements gathering, it typically focuses on detailed functional and technical requirements after the Planning phase has already defined scope and created the project plan. Option D (Design) is wrong because the Design phase creates the system architecture, data models, and interface specifications based on requirements gathered in earlier phases, and it occurs after Planning and Analysis.

50
MCQmedium

A software tester writes tests to verify that individual functions in a module return correct results when given specific inputs. These tests are isolated from other parts of the system. Which type of testing is being performed?

A.Integration testing
B.User acceptance testing
C.Unit testing
D.System testing
AnswerC

Unit testing tests individual units/functions in isolation.

Why this answer

Unit testing is the correct answer because it involves testing individual functions or methods in isolation to verify they return correct outputs for specific inputs. This aligns directly with the scenario where the tester is focusing on single modules without dependencies on other system parts, which is the core definition of unit testing in software development.

Exam trap

The trap here is that candidates confuse 'testing individual functions' with 'integration testing' because they overlook the key phrase 'isolated from other parts of the system,' which is the hallmark of unit testing, not integration testing.

How to eliminate wrong answers

Option A is wrong because integration testing verifies interactions between multiple modules or components, not isolated functions. Option B is wrong because user acceptance testing (UAT) is performed by end-users to validate the system meets business requirements, not by developers testing individual functions. Option D is wrong because system testing evaluates the complete, integrated system against requirements, not isolated units of code.

51
MCQhard

A developer is debugging a program that produces incorrect output. The developer sets a breakpoint on a specific line of code and runs the program in a debugger. When execution stops at the breakpoint, the developer examines the values of variables at that point. What debugging technique is being used?

A.Step-through execution
B.Logging
C.Unit testing
D.Code review
AnswerA

Step-through execution allows stepping line by line, often combined with breakpoints.

Why this answer

Using breakpoints and inspecting variables is a common debugging technique to identify issues.

52
Multi-Selectmedium

A junior developer is learning about data structures. The developer needs to choose a data structure for the following scenarios: - Storing a list of items where order matters and items can be accessed by index. - Storing key-value pairs for fast lookups. Which TWO data structures should the developer consider?

Select 2 answers
A.Dictionary
B.Tree
C.Array
D.Stack
E.Queue
AnswersA, C

Dictionaries store key-value pairs for fast lookups.

Why this answer

An array (or list) allows indexed access and maintains order. A dictionary (hash map) allows fast key-based lookups.

53
MCQeasy

A software development team is working on a project with fixed requirements and a strict deadline. The project manager decides to use a methodology where each phase must be completed before moving to the next. Which development methodology is being used?

A.Agile
B.Scrum
C.Waterfall
D.Spiral
AnswerC

Waterfall follows a linear sequential flow through phases.

Why this answer

The waterfall model follows sequential phases with fixed scope, making it suitable for predictable projects with stable requirements.

54
MCQmedium

An organization is implementing a new payroll system. Before final deployment, a group of actual payroll employees test the system to ensure it meets their business needs and processes payroll correctly. Which testing phase is this?

A.Unit testing
B.User acceptance testing
C.System testing
D.Integration testing
AnswerB

UAT is performed by users to confirm the system meets their needs.

Why this answer

User acceptance testing (UAT) involves end users validating that the system meets their requirements.

55
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

Analysis phase is for requirements gathering and analysis.

Why this answer

The analysis phase focuses on gathering and analyzing requirements to understand what the system must do.

56
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

New features are added to the product backlog and prioritized by the product owner.

Why this answer

In Scrum, new work is added to the product backlog and prioritized by the product owner for a future sprint; the current sprint scope is not changed.

57
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

Option A is correct because 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

Cisco 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.

58
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

Regression testing re-runs previous tests to ensure no regressions.

Why this answer

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

59
Multi-Selecthard

A development team is working on a critical update to an e-commerce website. After deploying the update, they must ensure that existing features (like login and search) still work correctly. Additionally, they want to test the new checkout flow end-to-end. Which TWO types of testing should the team perform?

Select 2 answers
A.Unit testing
B.Integration testing
C.Regression testing
D.System testing
E.User acceptance testing
AnswersC, D

Regression testing ensures existing features still work after changes.

Why this answer

Regression testing (C) is correct because it verifies that existing features like login and search still work after deploying the update, ensuring no new defects were introduced. System testing (D) is correct because it validates the entire integrated system, including the new checkout flow end-to-end, against the specified requirements.

Exam trap

Cisco often tests the distinction between regression testing and integration testing, where candidates mistakenly choose integration testing for verifying existing features, not realizing integration testing only checks module interfaces, not the full set of unchanged functionalities.

Ready to test yourself?

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