Software Engineering
MCQ Part - I
1. What is the primary goal of software engineering?
A. To write code
B. To reduce development costs
C. To build reliable and maintainable software within time and budget
D. To design websites
Answer: C
2. Software Engineering is the application of _____ to software.
A. Electrical principles B. Engineering principles
C. Mathematical logic D. Data science
Answer: B
3. The term "software crisis" refers to:
A. Lack of programmers B. Low salaries of developers
C. Poor hardware compatibility D. Inability to maintain & deliver reliable software on time
Answer: B
4. Which of the following is not a software engineering paradigm?
A. Waterfall B. Agile
C. Spiral D. Data mining
Answer: D
5. The Waterfall model is best described as:
A. Iterative B. Linear and sequential
C. Cyclical D. Parallel development
Answer: B
6. The Agile model emphasizes:
A. Strict planning B. Flexibility and customer collaboration
C. Minimal testing D. Ignoring documentation
Answer: B
7. Which of these is not a characteristic of good software?
A. Efficiency B. Maintainability
C. Ambiguity D. Usability
Answer: C
8. The Spiral Model is mainly used for:
A. Large, high-risk projects B. Small web apps
C. Educational purposes D. Data entry software
Answer: A
9. What does the V-model emphasize?
A. Validation only B. Verification and validation at each stage
C. Speed of development D. Minimal documentation
Answer: B
10. Requirements engineering is:
A. A part of project closure B. The process of defining software functionality and
constraints
C. About creating UI design D. Managing project teams
Answer: B
11. Which document defines system boundaries and interaction with external entities?
A. Software Design Document B. System Scope Statement
C. Risk Management Plan D. Deployment Guide
Answer: B
12. Top-level processes are typically isolated during:
A. Implementation B. Requirements analysis
C. Coding phase D. Testing phase
Answer: B
13. Which of the following is used to allocate processes to physical components?
A. Data dictionary B. Context diagram
C. Allocation schema D. Entity-relationship model
Answer: C
14. Which is not a key quality of a software requirements specification (SRS)?
A. Completeness B. Ambiguity
C. Consistency D. Correctness
Answer: B
15. Refinement of requirements involves:
A. Ignoring low-level details B. Making requirements more abstract
C. Adding detail to top-level specifications D. Focusing only on UI design
Answer: C
16. An SRS document should avoid:
A. Technical jargon B. Functional requirements
C. Testable statements D. Ambiguities
Answer: D
17. The process of analyzing a problem typically begins with:
A. Coding B. Debugging
C. Understanding user needs D. Deployment
Answer: C
18. A requirement that specifies how a system performs a function is:
A. Functional requirement B. Performance requirement
C. Non-functional requirement D. User requirement
Answer: C
19. Consistency in SRS means:
A. Same format throughout B. No conflicting requirements
C. All diagrams look alike D. Clear language
Answer: B
20. Reviewing requirements helps ensure:
A. Fast development B. Cost savings
C. Correctness, completeness, and consistency D. Quick testing
Answer: C
21. What is the key goal of requirements analysis?
A. Start coding B. Finalize hardware components
C. Understand what the user expects the software to do D. Write test cases
Answer: C
22. Which type of requirement describes the behavior of a system?
A. Non-functional B. Performance
C. Functional D. Business
Answer: C
23. Which of the following is a non-functional requirement?
A. The system should allow login B. The system must load in less than 2 seconds
C. Users can update their profile D. Admin can delete records
Answer: B
24. Which diagram is useful to represent system scope?
A. Class diagram B. Sequence diagram
C. Context diagram D. Flowchart
Answer: C
25. What does traceability in requirements mean?
A. Requirements are reviewed by users
B. Requirements can be traced through design, implementation, and testing
C. Requirements are tested immediately
D. Requirements are stored in files
Answer: B
26. What is the purpose of a feasibility study in requirements engineering?
A. To identify stakeholders
B. To check whether the project can be done within constraints
C. To finalize the software architecture
D. To plan marketing
Answer: B
27. Who is responsible for creating the software specification document?
A. System administrator B. Software developer
C. Requirements analyst D. UI designer
Answer: C
28. Requirements should be validated to ensure they are:
A. Vague and flexible B. Aligned with system goals
C. Similar to previous systems D. All written by one person
Answer: B
29. Which of the following is not a step in requirements engineering?
A. Elicitation B. Specification
C. Deployment D. Validation
Answer: C
30. Which stakeholder is usually not involved in requirement gathering?
A. Customer B. Developer
C. End-user D. Database
Answer: D
31. Which of these is used to model the interaction between external entities and the system?
A. Use-case diagram B. Class diagram
C. Component diagram D. Object diagram
Answer: A
32. Requirement reviews are carried out to detect:
A. Spelling mistakes B. Syntax errors in code
C. Defects in the requirement documents D. UI design errors
Answer: C
33. What should an SRS document include?
A. Testing procedures B. Hardware specifications
C. Functional and non-functional requirements D. Organizational goals
Answer: C
34. Which of the following can help resolve conflicting requirements?
A. Ignoring users B. Prioritization
C. Removing all requirements D. Decreasing budget
Answer: B
35. What does completeness in requirements mean?
A. Each requirement is clearly stated B. All necessary requirements are included
C. No requirement is contradictory D. All use cases are named
Answer: B
36. Which tool is used for refining requirements?
A. Programming IDE B. Decision table
C. Spreadsheet D. Web browser
Answer: B
37. An SRS acts as a contract between:
A. Developer and tester B. User and tester
C. Customer and developer D. Developer and project manager
Answer: C
38. Which of the following is a characteristic of a well-written requirement?
A. Long and descriptive B. Ambiguous and open-ended
C. Testable and verifiable D. Optional
Answer: C
39. What should be avoided in requirement statements?
A. Precision B. Testability
C. Technical terms D. Ambiguity
Answer: D
40. Requirement traceability is most useful during:
A. Planning B. Maintenance
C. Feasibility study D. Coding
Answer: B
41. Which of the following ensures a requirement is implemented correctly?
A. Verification B. Brainstorming
C. Prototyping D. Feasibility check
Answer: A
42. The process of double-checking whether a product meets its specifications is called:
A. Validation B. Configuration
C. Modeling D. Compilation
Answer: A
43. Which of these best describes a functional requirement?
A. The system must be secure B. The system must provide user login functionality
C. The UI must be attractive D. The system should load fast
Answer: B
44. What does an SRS help prevent?
A. User involvement B. Budget cuts
C. Requirement misunderstandings D. Code duplication
Answer: C
45. An incorrect or missing requirement is a:
A. Feature B. Risk
C. Defect D. Resource
Answer: C
46. Which activity involves communicating with stakeholders to discover what they need?
A. Specification B. Design
C. Elicitation D. Validation
Answer: C
47. What is meant by “allocation to physical elements” in requirements analysis?
A. Assigning software to development teams B. Distributing software to users
C. Mapping processes to hardware/software modules D. Assigning project members to test
Answer: C
48. Use-case diagrams are primarily used in:
A. Coding B. System testing
C. Requirements analysis D. UI design
Answer: C
49. The correctness of requirements is determined by:
A. Developer’s experience B. Conformance to user needs
C. Quality of testing tools D. Speed of development
Answer: B
50. Prototyping is useful in requirements analysis because:
A. It reduces code B. It speeds up deployment
C. It helps visualize unclear requirements D. It is easier to implement
Answer: C
51. Which method helps resolve vague user needs?
A. Brainstorming B. Coding
C. Requirement negotiation D. Testing
Answer: C
52. What is the risk of skipping requirement review?
A. Better performance B. Fast release
C. Introduction of undetected errors D. Improved team collaboration
Answer: C
53. A requirement that conflicts with another should be:
A. Added to a new document B. Ignored
C. Removed or resolved D. Approved by all team members
Answer: C
54. A “shall” statement in SRS indicates:
A. Recommendation B. Possibility
C. Requirement D. Suggestion
Answer: C
55. Which of the following is not part of the requirement specification process?
A. Feasibility study B. Requirements documentation
C. Requirement elicitation D. Database design
Answer: D
56. What technique helps capture high-level functionality from a user’s perspective?
A. Sequence diagrams B. Activity diagrams
C. Use-case diagrams D. ER diagrams
Answer: C
57. Consistency in requirements is important because:
A. It makes the UI appealing B. It ensures requirements do not contradict each other
C. It saves money D. It allows for early delivery
Answer: B
58. Requirement completeness means:
A. All words are spelled correctly B. No missing functionality
C. Design is finalized D. Project is finished
Answer: B
59. The review of the SRS is done by:
A. Only developers B. Only testers
C. Stakeholders including users and developers D. Database administrators
Answer: C
60. Which of these helps visualize how data moves through a system?
A. ER diagram B. DFD (Data Flow Diagram)
C. Sequence diagram D. Class diagram
Answer: B
61. A software specification document mainly focuses on:
A. Design patterns B. What the software must do
C. User interface themes D. Testing strategies
Answer: B
62. Requirements should be written primarily for:
A. Developers B. Customers and all stakeholders
C. Project managers only D. Database administrators
Answer: B
63. A functional requirement can be tested by:
A. Measuring response time B. Observing if the feature works
C. Analyzing UI layout D. Reading documentation
Answer: B
64. What is a benefit of involving users during the requirement phase?
A. Users will develop the code B. Requirements will better match user needs
C. Testing time is eliminated D. The system becomes cheaper
Answer: B
65. What type of requirement is “The system must be usable on mobile devices”?
A. Functional B. Platform-specific
C. Non-functional D. Interface
Answer: C
66. “Scalability” is an example of a:
A. Physical requirement B. Functional requirement
C. Non-functional requirement D. Constraint
Answer: C
67. Which of the following techniques can be used for requirements elicitation?
A. Interviews B. Brainstorming
C. Observation D. All of the above
Answer: D
68. The purpose of requirement refinement is to:
A. Add confusion B. Generalize every detail
C. Elaborate vague requirements D. Reduce cost
Answer: C
69. A “derived requirement” is one that:
A. Comes from another requirement B. Comes from project funding
C. Is created after deployment D. Comes from software errors
Answer: A
70. Which of the following is not a quality attribute of requirements?
A. Verifiable B. Ambiguous
C. Complete D. Consistent
Answer: B
71. What is requirement validation primarily focused on?
A. Coding techniques B. Performance analysis
C. Checking correctness of requirements D. Budget allocation
Answer: C
72. If a requirement is not consistent, it:
A. Can be easily implemented B. May conflict with other requirements
C. Is always accepted D. Can be ignored
Answer: B
73. Prototyping helps reduce which of the following risks?
A. Incorrect requirements B. Database crashes
C. Hardware failures D. Code duplication
Answer: A
74. A good requirement is:
A. Testable B. Ambiguous
C. Optional D. Repetitive
Answer: A
75. Non-functional requirements affect:
A. UI only B. System behavior and performance
C. Deployment phase D. Testing speed
Answer: B
76. Requirements gathered from multiple users may:
A. Never change B. Conflict
C. Be always correct D. Be easy to implement
Answer: B
77. A requirement is said to be “verifiable” if:
A. It is well documented B. It can be expressed in code
C. It can be tested or measured D. It is written by a senior engineer
Answer: C
78. What is the first step in requirements engineering?
A. Design B. Validation
C. Elicitation D. Testing
Answer: C
79. Software requirements serve as a bridge between:
A. Customers and designers B. Developers and code
C. Testers and users D. Hardware and software
Answer: A
80. What does a context diagram define?
A. Internal logic of modules B. System boundaries and external interactions
C. UI layout D. Sequence of operations
Answer: B
81. Which of the following is a benefit of using a Software Requirements Specification (SRS)?
A. Reduces need for documentation B. Eliminates testing
C. Improves communication between stakeholders D. Speeds up coding automatically
Answer: C
82. A poorly defined requirement can result in:
A. Increased productivity B. Better design
C. Misinterpretation and defects D. Cost savings
Answer: C
83. Requirements that specify timing constraints are:
A. Functional B. Platform-specific
C. Non-functional D. Performance-based
Answer: D
84. A use-case represents:
A. A database schema B. A UI layout
C. A sequence of actions a user takes D. Source code
Answer: C
85. Which of these ensures completeness of requirements?
A. Requirement traceability matrix B. Budget estimation
C. UI mock-ups D. Project charter
Answer: A
86. The isolation of top-level processes is done during:
A. System testing B. Requirements analysis
C. Implementation D. Deployment
Answer: B
87. Structural models describe:
A. Project costs B. Code flow
C. Static structure of software D. UI behavior
Answer: C
88. In which requirement category does maintainability fall?
A. Structural B. Functional
C. Non-functional D. External
Answer: C
89. A requirement “The system shall allow password reset via email” is:
A. Non-functional B. Functional
C. External D. Derived
Answer: B
90. Requirements are considered consistent if:
A. They change often B. They are unique
C. They do not conflict with each other D. They are written by the same person
Answer: C
91. Requirement errors found during design are:
A. Cheap to fix B. Time-consuming
C. Costlier than in coding D. Costlier than in testing
Answer: A
92. The term “generalization” in requirements refers to:
A. Making requirements broad for reuse B. Adding too many details
C. Ignoring constraints D. Coding directly from requirements
Answer: A
93. Which one is not a characteristic of a good requirement?
A. Feasible B. Ambiguous
C. Testable D. Traceable
Answer: B
94. Functional requirements describe:
A. The logic of UI B. Internal structure
C. External observable behaviour D. System configuration
Answer: C
95. In requirement analysis, conflict resolution involves:
A. Ignoring user inputs B. Deleting redundant features
C. Negotiating and reaching consensus D. Prioritizing developers’ needs
Answer: C
96. A high-level requirement is also called a:
A. Detailed specification B. User requirement
C. System bug D. Module function
Answer: B
97. Which model is primarily used to capture requirements in object-oriented design?
A. ER Model B. DFD
C. UML D. Flowchart
Answer: C
98. Use-case modeling helps identify:
A. Budget B. Design classes
C. Functional requirements D. Deployment strategy
Answer: C
99. The requirement “system shall not allow invalid inputs” is a:
A. Derived requirement B. Non-functional requirement
C. Functional requirement D. Constraint
Answer: C
100. What’s the key outcome of requirement analysis?
A. Code B. User manual
C. Software Requirement Specification (SRS) D. Project report
Answer: C