Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
36 views16 pages

Unit I Software

The document provides an overview of software engineering, covering its evolution, life cycle models, feasibility studies, requirements gathering, and the DevOps approach. Key concepts include the increasing complexity of software systems driving the field, the importance of feasibility studies for project viability, and the role of DevOps in enhancing collaboration and efficiency in software development. It also highlights various requirement types and gathering techniques essential for successful software projects.

Uploaded by

Narottam Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views16 pages

Unit I Software

The document provides an overview of software engineering, covering its evolution, life cycle models, feasibility studies, requirements gathering, and the DevOps approach. Key concepts include the increasing complexity of software systems driving the field, the importance of feasibility studies for project viability, and the role of DevOps in enhancing collaboration and efficiency in software development. It also highlights various requirement types and gathering techniques essential for successful software projects.

Uploaded by

Narottam Kumar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Unit I: Introduction to Software Engineering

Evolution and Impact of Software Engineering

1. Which of the following best describes the primary driver for the evolution of
software engineering? a) Decreasing hardware costs b) Increasing complexity of
software systems c) Advancements in programming languages d) Demand for faster
software development

Answer: b) Increasing complexity of software systems

2. The "software crisis" in the early days of computing was mainly attributed to: a)
Lack of skilled programmers b) Inability to manage large and complex software projects
c) Rapid changes in hardware technology d) Poor understanding of user requirements

Answer: b) Inability to manage large and complex software projects

3. What is the primary goal of software engineering as a discipline? a) To make


programming easier b) To develop cost-effective and reliable software systems c) To
automate the software development process d) To create software that is aesthetically
pleasing

Answer: b) To develop cost-effective and reliable software systems

4. The impact of software engineering is evident in: a) Only large-scale enterprise


applications b) Only scientific and engineering domains c) Virtually every aspect of
modern life d) Primarily in the IT industry

Answer: c) Virtually every aspect of modern life

5. Which of the following is NOT a key aspect of the evolution of software


engineering? a) Shift from art to science-based discipline b) Increased focus on process
and methodologies c) Reduced emphasis on user-centered design d) Development of
specialized tools and techniques

Answer: c) Reduced emphasis on user-centered design

Software Life Cycle Models

6. The Software Development Life Cycle (SDLC) is best described as: a) A specific
programming language b) A framework outlining the steps involved in developing
software c) A tool for managing software projects d) A set of coding standards

Answer: b) A framework outlining the steps involved in developing software


7. In the Waterfall model, which phase must be completed before the next phase can
begin? a) Testing b) Design c) Implementation d) All preceding phases

Answer: d) All preceding phases

8. A major drawback of the Waterfall model is: a) Its simplicity and ease of
understanding b) Its inflexibility to accommodate changing requirements c) Its focus on
documentation d) Its suitability for small projects

Answer: b) Its inflexibility to accommodate changing requirements

9. The Prototyping model is most useful when: a) Requirements are well-defined and
stable b) User requirements are unclear or evolving c) Project timelines are very strict d)
The development team has limited experience

Answer: b) User requirements are unclear or evolving

10. "Throwaway prototyping" primarily aims to: a) Develop a fully functional system
quickly b) Clarify user requirements and design aspects c) Reduce development costs
significantly d) Enable rapid deployment of software

Answer: b) Clarify user requirements and design aspects

11. Evolutionary models are characterized by: a) A linear and sequential approach b)
Iterative development and delivery of increments c) Heavy reliance on initial
requirements specification d) Minimal user involvement during development

Answer: b) Iterative development and delivery of increments

12. The Spiral model incorporates risk analysis at which stage of the SDLC? a)
Requirements gathering b) Design c) Each phase of the cycle d) Testing phase

Answer: c) Each phase of the cycle

13. Which model is most suitable for projects with high risk and complex
requirements? a) Waterfall model b) Prototyping model c) Spiral model d) Evolutionary
model

Answer: c) Spiral model

14. Incremental development is a type of: a) Waterfall model b) Prototyping model c)


Evolutionary model d) Spiral model

Answer: c) Evolutionary model


15. Which model emphasizes customer evaluation at each increment? a) Waterfall model
b) Prototyping model c) Evolutionary model d) Spiral model

Answer: c) Evolutionary model

Feasibility Study

16. The primary purpose of a feasibility study is to: a) Develop a detailed project plan b)
Determine if a project is viable and worth pursuing c) Gather detailed user requirements
d) Start the software coding process

Answer: b) Determine if a project is viable and worth pursuing

17. Which of the following is NOT a common type of feasibility study? a) Technical
feasibility b) Economic feasibility c) Operational feasibility d) Marketing feasibility

Answer: d) Marketing feasibility

18. Technical feasibility assesses: a) The cost-effectiveness of the project b) The availability
of necessary technology and expertise c) The alignment with organizational goals d) The
impact on existing operations

Answer: b) The availability of necessary technology and expertise

19. Economic feasibility is concerned with: a) Whether the project can be completed within
budget b) Whether the project will generate sufficient benefits c) Whether the project is
technically sound d) Whether the project is aligned with legal requirements

Answer: b) Whether the project will generate sufficient benefits

20. Operational feasibility examines: a) The technical risks associated with the project b)
The organizational and user impact of the project c) The financial viability of the project
d) The legal and ethical aspects of the project

Answer: b) The organizational and user impact of the project

21. A "go/no-go" decision is typically made after: a) Requirements gathering b) Feasibility


study c) System design d) Coding phase

Answer: b) Feasibility study

22. Which feasibility study aspect considers the ethical implications of the software
project? a) Technical feasibility b) Economic feasibility c) Operational feasibility d)
Legal and ethical feasibility (though not explicitly listed, it's implied within
operational/other)
Answer: c) Operational feasibility (in a broader sense, including ethical implications)

23. The outcome of a feasibility study is typically a: a) Detailed project plan b) Feasibility
report recommending project continuation or termination c) Prototype of the software
system d) Set of user requirements

Answer: b) Feasibility report recommending project continuation or termination

24. Feasibility studies are most crucial for: a) Small, low-risk projects b) Large, complex,
and high-risk projects c) Projects with well-defined requirements d) Projects using agile
methodologies

Answer: b) Large, complex, and high-risk projects

25. Which of the following is a key question addressed by a feasibility study? a) What
programming language should be used? b) Can the project be completed successfully? c)
Who will be the project manager? d) What testing techniques will be employed?

Answer: b) Can the project be completed successfully?

Functional and Non-Functional Requirements

26. Functional requirements describe: a) How the system performs its functions b) What
the system should do c) The quality attributes of the system d) The system's architecture
and design

Answer: b) What the system should do

27. Non-functional requirements are also known as: a) Behavioral requirements b)


Quality attributes c) User stories d) Use cases

Answer: b) Quality attributes

28. "The system shall respond to user requests within 2 seconds" is an example of a: a)
Functional requirement b) Non-functional requirement (Performance) c) User
requirement d) Design constraint

Answer: b) Non-functional requirement (Performance)

29. Which of the following is NOT a typical category of non-functional requirements? a)


Performance b) Security c) Usability d) Data processing

Answer: d) Data processing (Data processing is more related to functional requirements)


30. "The system shall be accessible to users with disabilities" is an example of a: a)
Functional requirement b) Non-functional requirement (Accessibility) c) Business rule d)
Design specification

Answer: b) Non-functional requirement (Accessibility)

31. Security requirements primarily address: a) System performance and speed b)


Protection of data and system resources c) Ease of use and user satisfaction d) System
reliability and availability

Answer: b) Protection of data and system resources

32. Usability requirements focus on: a) System efficiency and resource utilization b) User-
friendliness and ease of learning c) System robustness and fault tolerance d) Data
integrity and consistency

Answer: b) User-friendliness and ease of learning

33. Scalability is a non-functional requirement related to: a) System security b) System


performance under increasing load c) System portability across different platforms d)
System maintainability over time

Answer: b) System performance under increasing load

34. Which of the following is a technique for eliciting functional requirements? a)


Performance testing b) Usability testing c) User interviews d) Security audit

Answer: c) User interviews

35. Prioritizing requirements is important because: a) It simplifies the coding process b)


It helps manage scope and deliver the most valuable features first c) It reduces the need
for testing d) It makes documentation easier

Answer: b) It helps manage scope and deliver the most valuable features first

Requirement Gathering

36. Requirement gathering is also known as: a) Requirements analysis b) Requirements


elicitation c) Requirements specification d) Requirements validation

Answer: b) Requirements elicitation

37. Which of the following is a key challenge in requirement gathering? a) Lack of


technical expertise in the development team b) Difficulty in understanding and
articulating user needs c) Limited availability of requirement gathering tools d)
Resistance from stakeholders to provide requirements
Answer: b) Difficulty in understanding and articulating user needs

38. Interviews are a requirement gathering technique that is: a) Best suited for large
groups of stakeholders b) Effective for in-depth understanding of individual perspectives
c) Less time-consuming than questionnaires d) Primarily used for non-functional
requirements

Answer: b) Effective for in-depth understanding of individual perspectives

39. Questionnaires are most useful for: a) Exploring complex and nuanced requirements b)
Gathering data from a large and geographically dispersed audience c) Validating already
gathered requirements d) Resolving conflicts among stakeholders

Answer: b) Gathering data from a large and geographically dispersed audience

40. Workshops or JAD sessions involve: a) One-on-one interviews with key stakeholders
b) Structured group meetings to collaboratively define requirements c) Passive
observation of users in their work environment d) Automated analysis of existing systems
and documents

Answer: b) Structured group meetings to collaboratively define requirements

41. Prototyping as a requirement gathering technique helps to: a) Finalize the system
design early in the SDLC b) Visualize and clarify user interactions and system behavior
c) Reduce development time and costs d) Automate the requirement gathering process

Answer: b) Visualize and clarify user interactions and system behavior

42. Use cases are primarily used to capture: a) Non-functional requirements b) Functional
requirements in terms of user interactions c) Data requirements and database design d)
System architecture and component diagrams

Answer: b) Functional requirements in terms of user interactions

43. Which requirement gathering technique involves observing users in their natural
work setting? a) Interviews b) Questionnaires c) Ethnographic studies d) Prototyping

Answer: c) Ethnographic studies

44. "Requirements traceability" refers to the ability to: a) Track requirements changes
throughout the SDLC b) Trace requirements back to their origin and stakeholders c)
Ensure all requirements are implemented and tested d) All of the above

Answer: d) All of the above


45. A "stakeholder" in requirement gathering is: a) Only the end-user of the software b)
Anyone who has an interest in or is affected by the software system c) Primarily the
project manager and development team d) Exclusively the client or customer who
commissioned the software

Answer: b) Anyone who has an interest in or is affected by the software system

Requirement Analysis and Specification

46. Requirement analysis involves: a) Documenting the gathered requirements in a


structured format b) Validating requirements with stakeholders c) Refining, clarifying,
and organizing the gathered requirements d) Prioritizing requirements based on business
value

Answer: c) Refining, clarifying, and organizing the gathered requirements

47. Data flow diagrams (DFDs) are used in requirement analysis to model: a) System
architecture and components b) The flow of data within a system c) User interactions
with the system d) Class relationships and object structures

Answer: b) The flow of data within a system

48. Entity-Relationship Diagrams (ERDs) are used to model: a) System behavior and
state transitions b) Data structures and relationships in a database c) User interface
layouts and navigation flows d) Process workflows and activity sequences

Answer: b) Data structures and relationships in a database

49. Use case diagrams are primarily used to represent: a) Data flow within the system b)
Interactions between actors and the system c) System architecture and deployment views
d) Class hierarchies and object inheritance

Answer: b) Interactions between actors and the system

50. A Software Requirements Specification (SRS) document is: a) A high-level overview


of the system for business stakeholders b) A detailed description of the system's
functional and non-functional requirements c) A technical design document for
developers d) A user manual for end-users

Answer: b) A detailed description of the system's functional and non-functional


requirements

51. Which of the following is NOT typically included in an SRS document? a) Functional
requirements b) Non-functional requirements c) System design details d) Use cases

Answer: c) System design details (Design details come later in the design phase)
52. The SRS serves as a contract between: a) Developers and testers b) Developers and
project managers c) Customers and developers d) Users and system administrators

Answer: c) Customers and developers

53. Requirement validation ensures that: a) Requirements are implemented correctly in the
code b) Requirements are technically feasible c) Requirements are consistent, complete,
and correct with respect to user needs d) Requirements are prioritized and managed
effectively

Answer: c) Requirements are consistent, complete, and correct with respect to user needs

54. Prototyping can be used in requirement validation to: a) Generate code automatically
from requirements b) Demonstrate system behavior and get user feedback c) Perform
automated testing of requirements d) Manage changes to requirements effectively

Answer: b) Demonstrate system behavior and get user feedback

55. "Ambiguity" in requirements refers to: a) Conflicting requirements from different


stakeholders b) Requirements that are unclear or have multiple interpretations c)
Requirements that are technically infeasible d) Requirements that are not testable

Answer: b) Requirements that are unclear or have multiple interpretations

DevOps and CI/CD Pipeline

56. DevOps is best described as: a) A software development methodology focused on rapid
prototyping b) A cultural and technical movement focused on collaboration between
development and operations c) A specific set of tools for automating software
deployment d) A type of software testing approach

Answer: b) A cultural and technical movement focused on collaboration between


development and operations

57. The primary goal of DevOps is to: a) Reduce software development costs b) Shorten
the software development lifecycle and enable faster delivery c) Improve the quality of
software code d) Enhance system security

Answer: b) Shorten the software development lifecycle and enable faster delivery

58. "Continuous Integration" (CI) in DevOps refers to: a) Continuously monitoring


system performance in production b) Regularly merging code changes from multiple
developers into a shared repository c) Automating the deployment of software to
production environments d) Continuously gathering user feedback and incorporating it
into the system
Answer: b) Regularly merging code changes from multiple developers into a shared
repository

59. The benefits of Continuous Integration include: a) Reduced development costs and
faster time to market b) Early detection of integration issues and reduced risk of major
integration problems c) Improved communication and collaboration between
development and operations d) All of the above

Answer: d) All of the above

60. "Continuous Delivery" (CD) extends CI by: a) Automating the testing and release
process to make software deployment more frequent and reliable b) Focusing on
continuous user feedback and requirement refinement c) Continuously monitoring system
security and performance d) Integrating security practices into the development lifecycle

Answer: a) Automating the testing and release process to make software deployment
more frequent and reliable

61. The "pipeline" in CI/CD refers to: a) A linear sequence of development phases (like
Waterfall) b) An automated workflow that takes code changes from commit to production
c) A communication channel between development and operations teams d) A set of
coding standards and best practices

Answer: b) An automated workflow that takes code changes from commit to production

62. Which of the following is a typical stage in a CI/CD pipeline? a) Requirements


gathering b) Coding c) Build, Test, Deploy d) User training

Answer: c) Build, Test, Deploy

63. "Infrastructure as Code" (IaC) in DevOps means: a) Documenting infrastructure


configurations using natural language b) Managing and provisioning infrastructure
through machine-readable code c) Physically building and maintaining server
infrastructure d) Outsourcing infrastructure management to cloud providers

Answer: b) Managing and provisioning infrastructure through machine-readable code

64. Automated testing is a critical component of CI/CD because it: a) Reduces the need
for manual testing altogether b) Provides rapid feedback on code quality and reduces the
risk of regressions c) Eliminates the need for requirement gathering d) Simplifies the
deployment process

Answer: b) Provides rapid feedback on code quality and reduces the risk of regressions

65. "Version control" systems (like Git) are essential for CI/CD to: a) Track code
changes, manage branches, and facilitate collaboration b) Automate the testing and
deployment process c) Monitor system performance and security d) Manage
infrastructure as code

Answer: a) Track code changes, manage branches, and facilitate collaboration

Mixed Topics and University Level Complexity

66. In a scenario where requirements are rapidly changing and project timelines are
tight, which SDLC model would be LEAST appropriate? a) Prototyping model b)
Spiral model c) Waterfall model d) Evolutionary model

Answer: c) Waterfall model

67. A project aims to develop a safety-critical system. Which SDLC model, with its
emphasis on risk analysis, would be MOST suitable? a) Waterfall model b)
Prototyping model c) Spiral model d) Agile model (not explicitly mentioned, but consider
in context)

Answer: c) Spiral model

68. Which of the following BEST describes the relationship between functional and
non-functional requirements? a) Functional requirements are more important than non-
functional requirements b) Non-functional requirements are constraints on how
functional requirements are implemented c) Functional and non-functional requirements
are independent of each other d) Non-functional requirements are derived from functional
requirements

Answer: b) Non-functional requirements are constraints on how functional requirements


are implemented

69. Consider a requirement: "The system should be user-friendly." Why is this


considered a POORLY stated requirement? a) It is a functional requirement, not a
non-functional one b) It is too specific and limits design choices c) It is ambiguous and
subjective d) It is not verifiable or testable

Answer: c) It is ambiguous and subjective

70. To make the requirement "The system should be user-friendly" more effective, it
should be: a) Removed from the requirements specification b) Replaced with a more
technical requirement c) Elaborated with specific, measurable, achievable, relevant, and
time-bound (SMART) criteria d) Left to the discretion of the development team

Answer: c) Elaborated with specific, measurable, achievable, relevant, and time-bound


(SMART) criteria
71. Which of the following is an example of a VALID and TESTABLE non-functional
requirement? a) The system should be fast. b) The system should be easy to use. c) The
system shall process 90% of transactions within 1 second under peak load. d) The system
should be secure.

Answer: c) The system shall process 90% of transactions within 1 second under peak
load.

72. In requirement gathering, "active listening" during interviews is crucial because it


helps to: a) Control the direction of the interview b) Ensure the interviewer's opinions are
heard c) Understand the stakeholder's perspective and uncover unspoken needs d)
Minimize the time spent in interviews

Answer: c) Understand the stakeholder's perspective and uncover unspoken needs

73. What is a potential drawback of relying solely on questionnaires for requirement


gathering? a) Questionnaires are too time-consuming to analyze b) Questionnaires may
not capture nuanced or complex requirements c) Questionnaires are difficult to distribute
to a large audience d) Questionnaires are not suitable for technical stakeholders

Answer: b) Questionnaires may not capture nuanced or complex requirements

74. In a JAD (Joint Application Development) session, the role of a facilitator is to: a)
Dominate the discussion and ensure decisions are made quickly b) Act as a technical
expert and provide solutions c) Guide the discussion, manage conflicts, and ensure all
stakeholders contribute d) Record meeting minutes and distribute them to participants

Answer: c) Guide the discussion, manage conflicts, and ensure all stakeholders
contribute

75. Why is it important to prioritize requirements in software development? a) To


simplify the coding process for developers b) To ensure that all requirements are
implemented regardless of their value c) To manage project scope, budget, and timeline
effectively by focusing on the most critical features d) To reduce the need for user
involvement in the project

Answer: c) To manage project scope, budget, and timeline effectively by focusing on the
most critical features

76. Which of the following is a potential consequence of poorly defined requirements? a)


Faster development and deployment b) Reduced testing effort c) Increased rework, cost
overruns, and user dissatisfaction d) Improved system performance and scalability

Answer: c) Increased rework, cost overruns, and user dissatisfaction


77. In requirement analysis, "decomposition" refers to: a) Breaking down complex
requirements into smaller, more manageable parts b) Combining similar requirements
into larger groups c) Removing redundant or conflicting requirements d) Prioritizing
requirements based on their importance

Answer: a) Breaking down complex requirements into smaller, more manageable parts

78. Use case descriptions typically include: a) Data flow diagrams and ER diagrams b) Pre-
conditions, post-conditions, and main flow of events c) System architecture and
deployment diagrams d) Class diagrams and object models

Answer: b) Pre-conditions, post-conditions, and main flow of events

79. What is the purpose of requirement traceability matrices? a) To track the progress of
development tasks b) To ensure that each requirement is linked to design, code, and test
artifacts c) To manage changes to requirements effectively d) To document user feedback
and change requests

Answer: b) To ensure that each requirement is linked to design, code, and test artifacts

80. In the context of DevOps, "culture" emphasizes: a) Automation of all development


and operations processes b) Collaboration, communication, and shared responsibility
between development and operations teams c) Use of specific tools and technologies d)
Strict adherence to processes and procedures

Answer: b) Collaboration, communication, and shared responsibility between


development and operations teams

81. Which of the following is a key practice in Continuous Integration? a) Deploying


code to production only once a month b) Keeping code changes in isolation for long
periods c) Frequent code commits to a shared repository d) Manual testing of all code
changes before integration

Answer: c) Frequent code commits to a shared repository

82. Continuous Delivery aims to ensure that software is always in a deployable state,
meaning: a) The software is fully tested and bug-free b) The software can be released to
production with minimal manual intervention c) The software is feature-complete and
ready for user acceptance testing d) The software is documented and user manuals are
prepared

Answer: b) The software can be released to production with minimal manual


intervention

83. What is the primary benefit of "Infrastructure as Code"? a) Reduced hardware costs
b) Increased manual configuration of infrastructure c) Faster, more consistent, and
repeatable infrastructure provisioning d) Elimination of the need for infrastructure
maintenance

Answer: c) Faster, more consistent, and repeatable infrastructure provisioning

84. Automated testing in CI/CD pipelines typically includes: a) Only unit tests b) Only
integration tests c) Unit tests, integration tests, and system tests d) Primarily manual
exploratory testing

Answer: c) Unit tests, integration tests, and system tests

85. "Feedback loops" are crucial in DevOps because they: a) Slow down the development
process to ensure quality b) Enable rapid learning, continuous improvement, and faster
response to issues c) Increase the complexity of the development pipeline d) Reduce the
need for automation

Answer: b) Enable rapid learning, continuous improvement, and faster response to issues

Advanced MCQs (Higher Difficulty)

86. Consider a project where user requirements are initially vague but expected to
stabilize over time. Which SDLC model or approach would be MOST adaptable to
this situation? a) Strict Waterfall model b) Prototyping followed by Waterfall c)
Evolutionary prototyping leading to a Spiral model d) Big Bang model (not explicitly
mentioned, but consider as a less structured approach)

Answer: c) Evolutionary prototyping leading to a Spiral model

87. A company is developing a new version of its flagship software product. They want
to minimize disruption to existing users and release new features incrementally.
Which SDLC model would be most suitable? a) Waterfall model b) Spiral model c)
Evolutionary model with incremental delivery d) Prototyping model with throwaway
prototypes

Answer: c) Evolutionary model with incremental delivery

88. In a feasibility study, if the economic feasibility is positive, but the technical
feasibility is highly uncertain, what would be the MOST prudent course of action?
a) Proceed with the project immediately to capitalize on the economic benefits b)
Abandon the project due to technical risks c) Conduct further investigation and
prototyping to reduce technical uncertainty before making a final decision d) Outsource
the technically challenging aspects of the project

Answer: c) Conduct further investigation and prototyping to reduce technical uncertainty


before making a final decision
89. A software system needs to be highly reliable and fault-tolerant. Which non-
functional requirement category would be MOST critical to emphasize during
requirement engineering? a) Usability b) Performance c) Security d) Reliability and
Availability

Answer: d) Reliability and Availability

90. When eliciting requirements for a mobile application, which requirement gathering
technique would be MOST effective in understanding user interaction and
workflow in a real-world context? a) Questionnaires distributed online b) Structured
interviews with stakeholders in a conference room c) Ethnographic studies observing
users in their daily mobile usage scenarios d) Focus group discussions with potential
users

Answer: c) Ethnographic studies observing users in their daily mobile usage scenarios

91. In requirement analysis, what is the significance of identifying and resolving


requirement conflicts early in the SDLC? a) It simplifies the coding process and
reduces development time b) It prevents costly rework, delays, and system defects in later
stages c) It improves communication between developers and testers d) It ensures that all
stakeholders agree on every requirement detail

Answer: b) It prevents costly rework, delays, and system defects in later stages

92. Which aspect of DevOps culture is MOST directly supported by the practice of
"Infrastructure as Code"? a) Collaboration b) Automation c) Continuous Feedback d)
Customer-centricity

Answer: b) Automation

93. Consider a scenario where a critical bug is found in the production environment. In
a DevOps culture with a mature CI/CD pipeline, what would be the TYPICAL
immediate response? a) Roll back to the previous stable version automatically through
the pipeline b) Manually patch the bug in the production environment directly c) Blame
the operations team for the deployment failure d) Schedule a major release to fix the bug
in the next development cycle

Answer: a) Roll back to the previous stable version automatically through the pipeline

94. Which of the following BEST describes the relationship between Continuous
Integration, Continuous Delivery, and DevOps? a) DevOps is a subset of CI/CD b)
CI/CD are practices that enable DevOps principles c) CI/CD and DevOps are competing
methodologies d) DevOps is a specific tool used in CI/CD pipelines

Answer: b) CI/CD are practices that enable DevOps principles


95. What is the PRIMARY benefit of using version control systems in a CI/CD
pipeline? a) Automating infrastructure provisioning b) Enabling parallel development
and managing code changes effectively c) Monitoring system performance and security
d) Generating automated test reports

Answer: b) Enabling parallel development and managing code changes effectively

Scenario-Based MCQs

96. A startup wants to develop a mobile app with limited initial funding and rapidly
evolving user expectations. They need to get a working version to market quickly
and iterate based on user feedback. Which SDLC model would be MOST suitable
for them? a) Waterfall model b) Spiral model c) Agile/Evolutionary Prototyping model
d) Formal Specification model (not in syllabus, but consider extreme case)

Answer: c) Agile/Evolutionary Prototyping model

97. A large government agency is commissioning the development of a new national ID


system. Requirements are expected to be very stable and well-defined upfront due to
legal and regulatory constraints. Documentation and traceability are paramount.
Which SDLC model might be considered, despite its potential inflexibility? a)
Prototyping model b) Spiral model c) Waterfall model (in a carefully managed,
document-heavy approach) d) Agile model

Answer: c) Waterfall model (in a carefully managed, document-heavy approach)

98. A software development team is implementing CI/CD for a web application. They
are facing challenges with slow and unreliable automated tests, which are delaying
deployments. What should be their FIRST priority to improve their CI/CD
pipeline? a) Invest in more powerful servers to run tests faster b) Reduce the number of
automated tests to speed up the pipeline c) Focus on improving the speed, reliability, and
coverage of their automated tests d) Switch to manual testing to bypass the slow
automated tests

Answer: c) Focus on improving the speed, reliability, and coverage of their automated
tests

99. A project is deemed economically feasible based on a cost-benefit analysis. However,


the feasibility study reveals significant operational challenges related to user
adoption and integration with existing systems. What should the project team
recommend? a) Proceed with the project as planned, as it is economically viable b)
Abandon the project due to operational risks c) Re-evaluate the project scope and
operational plan to mitigate user adoption and integration challenges before proceeding
d) Focus solely on the technical feasibility and ignore operational concerns
Answer: c) Re-evaluate the project scope and operational plan to mitigate user adoption
and integration challenges before proceeding

100. In a DevOps environment, "shift-left security" means: a) Delaying security


considerations to the testing phase to avoid slowing down development b) Integrating
security practices and considerations throughout the entire SDLC, starting from the
requirements phase c) Outsourcing security testing to specialized security firms d)
Focusing solely on perimeter security and neglecting application-level security

**Answer:** b) Integrating security practices and considerations throughout


the entire SDLC, starting from the requirements phase

You might also like