2025 question paper
Software Engineering
26 questions
Q1a. What was the main cause of the "Software Crisis"? (i) Lack of programming languages (ii) Inability to manage complex software projects effectively (iii) Insufficient hardware resources (iv) Overuse of automation20252m
Module 1: Introduction & SDLC
View this question on its own page →What was the main cause of the "Software Crisis"?
(i) Lack of programming languages
(ii) Inability to manage complex software projects effectively
(iii) Insufficient hardware resources
(iv) Overuse of automationQ1b. Which software development model emphasizes risk analysis at every phase? (i) Waterfall model (ii) Incremental model (iii) Spiral model (iv) Prototype model20252m
Module 1: Introduction & SDLC
View this question on its own page →Which software development model emphasizes risk analysis at every phase?
(i) Waterfall model
(ii) Incremental model
(iii) Spiral model
(iv) Prototype modelQ1c. According to Brooks' "No Silver Bullet," what is the biggest challenge in software engineering? (i) Hardware constraints (ii) Lack of skilled developers (iii) Essential complexity of software (iv) Inadequate documentation20252m
Module 1: Introduction & SDLC
View this question on its own page →According to Brooks' "No Silver Bullet," what is the biggest challenge in software engineering?
(i) Hardware constraints
(ii) Lack of skilled developers
(iii) Essential complexity of software
(iv) Inadequate documentationQ1d. Which of the following best describes Functional Requirements? (i) Constraints on the software design (ii) Features the system must perform (iii) Performance and reliability requirements (iv) Documentation standards20252m
Module 2: Requirements & SRS
View this question on its own page →Which of the following best describes Functional Requirements?
(i) Constraints on the software design
(ii) Features the system must perform
(iii) Performance and reliability requirements
(iv) Documentation standardsQ1e. The main purpose of an SRS (Software Requirements Specification) document is to: (i) Describe coding standards (ii) Provide a user manual (iii) Serve as a contract between client and developer (iv) Define the software test cases20252m
Module 2: Requirements & SRS
View this question on its own page →The main purpose of an SRS (Software Requirements Specification) document is to:
(i) Describe coding standards
(ii) Provide a user manual
(iii) Serve as a contract between client and developer
(iv) Define the software test casesQ1f. Which of the following is *not* a characteristic of good software design? (i) Low coupling (ii) High cohesion (iii) High complexity (iv) Modularity20252m
Module 3: Software Design & Metrics
View this question on its own page →Which of the following is not a characteristic of good software design?
(i) Low coupling
(ii) High cohesion
(iii) High complexity
(iv) ModularityQ1g. In a Data Flow Diagram (DFD), which symbol represents an external entity? (i) Circle (ii) Arrow (iii) Open rectangle (iv) Double line20252m
Module 3: Software Design & Metrics
View this question on its own page →In a Data Flow Diagram (DFD), which symbol represents an external entity?
(i) Circle
(ii) Arrow
(iii) Open rectangle
(iv) Double lineQ1h. Cyclomatic Complexity is primarily used to measure: (i) Lines of code (ii) Logical paths in a program (iii) Execution speed (iv) Code documentation quality20252m
Module 3: Software Design & Metrics
View this question on its own page →Cyclomatic Complexity is primarily used to measure:
(i) Lines of code
(ii) Logical paths in a program
(iii) Execution speed
(iv) Code documentation qualityQ1i. In Boundary Value Analysis, test cases are designed based on: (i) Average input data (ii) Input conditions at their limits (iii) Randomly selected inputs (iv) Data from previous projects20252m
Module 4: Software Testing
View this question on its own page →In Boundary Value Analysis, test cases are designed based on:
(i) Average input data
(ii) Input conditions at their limits
(iii) Randomly selected inputs
(iv) Data from previous projectsQ1j. Regression testing is performed to: (i) Test a new module (ii) Ensure recent changes didn't affect existing functionality (iii) Improve system performance (iv) Identify hardware errors20252m
Module 5: Software Maintenance
View this question on its own page →Regression testing is performed to:
(i) Test a new module
(ii) Ensure recent changes didn't affect existing functionality
(iii) Improve system performance
(iv) Identify hardware errorsQ2a. What are the major characteristics of software that distinguish it from hardware?20257m
Module 1: Introduction & SDLC
View this question on its own page →What are the major characteristics of software that distinguish it from hardware?
Q2b. Explain Software Development Life Cycles. Compare the Waterfall Model and Agile model of software development.20257m
Module 1: Introduction & SDLC
View this question on its own page →Explain Software Development Life Cycles. Compare the Waterfall Model and Agile model of software development.
Q3a. Define Requirement Analysis. Why is it considered one of the most critical stages in the software development life cycle?20257m
Module 2: Requirements & SRS
View this question on its own page →Define Requirement Analysis. Why is it considered one of the most critical stages in the software development life cycle?
Q3b. Explain the purpose of a Software Requirements Specification (SRS). What standards or attributes should a good SRS doc contain?20257m
Module 2: Requirements & SRS
View this question on its own page →Explain the purpose of a Software Requirements Specification (SRS). What standards or attributes should a good SRS doc contain?
Q4a. Compare the top-down and bottom-up approaches in software design, with examples of when each is appropriate.20257m
Module 3: Software Design & Metrics
View this question on its own page →Compare the top-down and bottom-up approaches in software design, with examples of when each is appropriate.
Q4b. What is a design pattern? Provide an example of a design pattern and explain its use.20257m
Module 3: Software Design & Metrics
View this question on its own page →What is a design pattern? Provide an example of a design pattern and explain its use.
Q5a. What is the purpose of software measurement and metrics? How can they improve software quality or project management?20257m
Module 3: Software Design & Metrics
View this question on its own page →What is the purpose of software measurement and metrics? How can they improve software quality or project management?
Q5b. Describe Cyclomatic Complexity and how it is used to measure software. What insight does it provide?20257m
Module 3: Software Design & Metrics
View this question on its own page →Describe Cyclomatic Complexity and how it is used to measure software. What insight does it provide?
Q6a. Explain boundary value analysis and equivalence class testing in functional testing? How do they help?20257m
Module 4: Software Testing
View this question on its own page →Explain boundary value analysis and equivalence class testing in functional testing? How do they help?
Q6b. Describe unit testing, integration testing and system testing—how they differ and what each addresses.20257m
Module 4: Software Testing
View this question on its own page →Describe unit testing, integration testing and system testing—how they differ and what each addresses.
Q7a. Explain the concepts of alpha testing and beta testing. What are their roles in the release cycle of software?20257m
Module 4: Software Testing
View this question on its own page →Explain the concepts of alpha testing and beta testing. What are their roles in the release cycle of software?
Q7b. What is configuration management in the context of software maintenance? Why is it important?20257m
Module 5: Software Maintenance
View this question on its own page →What is configuration management in the context of software maintenance? Why is it important?
Q8a. Describe different models of software maintenance (corrective, adaptive, perfective, preventive) and give examples.20257m
Module 5: Software Maintenance
View this question on its own page →Describe different models of software maintenance (corrective, adaptive, perfective, preventive) and give examples.
Q8b. Define coupling and cohesion in module design. Why is low coupling and high cohesion preferred?20257m
Module 3: Software Design & Metrics
View this question on its own page →Define coupling and cohesion in module design. Why is low coupling and high cohesion preferred?
Q9a. What is software maintenance? Why is it an inevitable phase in the software life-cycle?20257m
Module 5: Software Maintenance
View this question on its own page →What is software maintenance? Why is it an inevitable phase in the software life-cycle?
Q9b. Explain reverse engineering and software re-engineering. How do they relate to legacy systems?20257m
Module 5: Software Maintenance
View this question on its own page →Explain reverse engineering and software re-engineering. How do they relate to legacy systems?