2024 question paper

Software Engineering

28 questions

  1. Q1a. Which of the following activity spans all stages of a software development life cycle (SDLC)? (i) Coding (ii) Design (iii) Testing (iv) Project management20242m

    Module 1: Software Engineering Introduction and SDLC

    Which of the following activity spans all stages of a software development life cycle (SDLC)?
    (i) Coding
    (ii) Design
    (iii) Testing
    (iv) Project management

    View this question on its own page →
  2. Q1b. Which one of the following life cycle models lacks the characteristics of iterative software development? (i) Spiral model (ii) Classical waterfall model (iii) Prototyping model (iv) Evolutionary model20242m

    Module 1: Software Engineering Introduction and SDLC

    Which one of the following life cycle models lacks the characteristics of iterative software development?
    (i) Spiral model
    (ii) Classical waterfall model
    (iii) Prototyping model
    (iv) Evolutionary model

    View this question on its own page →
  3. Q1c. What is the correct order in which a software project manager estimates various project parameters while using COCOMO: (i) Cost, effort, duration, size (ii) Size, effort, duration, cost (iii) Cost, duration, effort, size (iv) Size, cost, effort, duration20242m

    Module 4: Project Management, Metrics, and Estimation

    What is the correct order in which a software project manager estimates various project parameters while using COCOMO:
    (i) Cost, effort, duration, size
    (ii) Size, effort, duration, cost
    (iii) Cost, duration, effort, size
    (iv) Size, cost, effort, duration

    View this question on its own page →
  4. Q1d. How is an application's "version" different from its "release"? (i) A release is a small change to earlier release. (ii) A release is essentially the same as a version. (iii) A version is a small change made to an earlier release. (iv) A release is the one made available to customers whereas versions are for internal use.20242m

    Module 6: Software Maintenance and Reengineering

    How is an application's "version" different from its "release"?
    (i) A release is a small change to earlier release.
    (ii) A release is essentially the same as a version.
    (iii) A version is a small change made to an earlier release.
    (iv) A release is the one made available to customers whereas versions are for internal use.

    View this question on its own page →
  5. Q1e. When the two bubbles are interconnected directly, it is referred as which one of the following? (i) [Missing in question paper] (ii) Direct DFD (iii) Synchronous DFD (iv) Balanced DFD20242m

    Module 3: Software Design Methodologies and UML

    When the two bubbles are interconnected directly, it is referred as which one of the following?
    (i) [Missing in question paper]
    (ii) Direct DFD
    (iii) Synchronous DFD
    (iv) Balanced DFD

    View this question on its own page →
  6. Q1f. A software requirements specification (SRS) document should avoid discussing which one of the following? (i) Functional requirements (ii) Non-functional requirements (iii) Design specification (iv) Constraints on the implementation20242m

    Module 2: Requirements Engineering and Analysis

    A software requirements specification (SRS) document should avoid discussing which one of the following?
    (i) Functional requirements
    (ii) Non-functional requirements
    (iii) Design specification
    (iv) Constraints on the implementation

    View this question on its own page →
  7. Q1g. System Testing performed by a friendly set of customers is called (i) Alpha Testing (ii) Beta Testing (iii) Performance Testing (iv) Usability Testing20242m

    Module 5: Software Coding, Testing, and Debugging

    System Testing performed by a friendly set of customers is called
    (i) Alpha Testing
    (ii) Beta Testing
    (iii) Performance Testing
    (iv) Usability Testing

    View this question on its own page →
  8. Q1h. The most desirable form of cohesion is (i) sequential cohesion (ii) procedural cohesion (iii) coincidental cohesion (iv) functional cohesion20242m

    Module 3: Software Design Methodologies and UML

    The most desirable form of cohesion is
    (i) sequential cohesion
    (ii) procedural cohesion
    (iii) coincidental cohesion
    (iv) functional cohesion

    View this question on its own page →
  9. Q1i. Functionality of software is tested by (i) white-box testing (ii) glass-box testing (iii) black-box testing (iv) grey-box testing20242m

    Module 5: Software Coding, Testing, and Debugging

    Functionality of software is tested by
    (i) white-box testing
    (ii) glass-box testing
    (iii) black-box testing
    (iv) grey-box testing

    View this question on its own page →
  10. Q1j. To achieve a good design, modules should have (i) Weak cohesion Low coupling (ii) Weak cohesion High coupling (iii) Strong cohesion Low coupling (iv) Strong cohesion High coupling20242m

    Module 3: Software Design Methodologies and UML

    To achieve a good design, modules should have
    (i) Weak cohesion Low coupling
    (ii) Weak cohesion High coupling
    (iii) Strong cohesion Low coupling
    (iv) Strong cohesion High coupling

    View this question on its own page →
  11. Q2a. Explain the software life cycle model that incorporates risk factor with its advantages and disadvantages.20247m

    Module 1: Software Engineering Introduction and SDLC

    Explain the software life cycle model that incorporates risk factor with its advantages and disadvantages.

    View this question on its own page →
  12. Q2b. Identify the criteria based on which a suitable life cycle model can be chosen for a given project development. Illustrate your answer using suitable examples.20247m

    Module 1: Software Engineering Introduction and SDLC

    Identify the criteria based on which a suitable life cycle model can be chosen for a given project development. Illustrate your answer using suitable examples.

    View this question on its own page →
  13. Q3a. What is the difference between the functional and the non-functional requirements of a system? Explain with suitable examples.20247m

    Module 2: Requirements Engineering and Analysis

    What is the difference between the functional and the non-functional requirements of a system? Explain with suitable examples.

    View this question on its own page →
  14. Q3b. List five desirable characteristics of a good software requirements specification (SRS) document. Also, make a checklist of errors that might exist in an SRS document.20247m

    Module 2: Requirements Engineering and Analysis

    List five desirable characteristics of a good software requirements specification (SRS) document. Also, make a checklist of errors that might exist in an SRS document.

    View this question on its own page →
  15. Q4a. Briefly explain project size estimation using Delphi technique and expert judgement technique. Compare the advantages and disadvantages of them.20247m

    Module 4: Project Management, Metrics, and Estimation

    Briefly explain project size estimation using Delphi technique and expert judgement technique. Compare the advantages and disadvantages of them.

    View this question on its own page →
  16. Q4b. Suppose you are developing a software product of organic type. You have estimated the size of the product to be about 1,00,000 lines of code. Compute the nominal effort and the development time.20247m

    Module 4: Project Management, Metrics, and Estimation

    Suppose you are developing a software product of organic type. You have estimated the size of the product to be about 1,00,000 lines of code. Compute the nominal effort and the development time.

    View this question on its own page →
  17. Q5a. Explain when you use the PERT charts and when to use Gnatt charts. Consider a software project with 5 tasks T1-T5. Duration of the 5 tasks in weeks are 3, 2, 3, 5, 2 respectively. T2 and T4 can start when T1 is complete. T3 can start when T2 is complete. T5 can start when both T3 and T4 are complete. Draw the PERT chart representation of the project. When is the latest start date of the task T3? What is the slack time of the task T4? Which tasks are the critical path?20247m

    Module 4: Project Management, Metrics, and Estimation

    Explain when you use the PERT charts and when to use Gnatt charts.

    Consider a software project with 5 tasks T1-T5. Duration of the 5 tasks in weeks are 3, 2, 3, 5, 2 respectively. T2 and T4 can start when T1 is complete. T3 can start when T2 is complete. T5 can start when both T3 and T4 are complete.

    Draw the PERT chart representation of the project. When is the latest start date of the task T3? What is the slack time of the task T4? Which tasks are the critical path?

    View this question on its own page →
  18. Q5b. Enumerate different types of cohesion and coupling that a module in a design might exhibit. Give examples of each.20247m

    Module 3: Software Design Methodologies and UML

    Enumerate different types of cohesion and coupling that a module in a design might exhibit. Give examples of each.

    View this question on its own page →
  19. Q6a. Draw the context diagram and Level-1 DFD for the following Mail Order Processing System. "HMV Records is a mail-order company that distributes CDs and tapes at discounted prices to record-club members. When an order processing clerk receives an order form, he verifies that the sender is a club member by checking the member file. If the sender is not a member, the clerk returns the order along with a membership application form. If the customer is a member, the clerk verifies the order item data by checking the Item file. Then the clerk enters the order data and saves it to the Daily Order file. The clerk also prints an invoice and shipping list for each order, which are forwarded to order fulfilment section."20247m

    Module 3: Software Design Methodologies and UML

    Draw the context diagram and Level-1 DFD for the following Mail Order Processing System.

    "HMV Records is a mail-order company that distributes CDs and tapes at discounted prices to record-club members. When an order processing clerk receives an order form, he verifies that the sender is a club member by checking the member file. If the sender is not a member, the clerk returns the order along with a membership application form. If the customer is a member, the clerk verifies the order item data by checking the Item file. Then the clerk enters the order data and saves it to the Daily Order file. The clerk also prints an invoice and shipping list for each order, which are forwarded to order fulfilment section."

    View this question on its own page →
  20. Q6b. Instead of having a onetime testing of a software at the end of its development, why are three different levels of testing - unit testing, integration testing, system testing and acceptance testing - necessary? What is the main purpose of each of these different levels of testing?20247m

    Module 5: Software Coding, Testing, and Debugging

    Instead of having a onetime testing of a software at the end of its development, why are three different levels of testing - unit testing, integration testing, system testing and acceptance testing - necessary? What is the main purpose of each of these different levels of testing?

    View this question on its own page →
  21. Q7a. What do you understand by cyclomatic complexity of a program? How can it be measured? What are its applications in program development? Explain with suitable example.20247m

    Module 5: Software Coding, Testing, and Debugging

    What do you understand by cyclomatic complexity of a program? How can it be measured? What are its applications in program development? Explain with suitable example.

    View this question on its own page →
  22. Q7b. Which one of the following is the strongest structural testing technique: statement coverage-based testing, branch coverage-based testing, or multiple condition coverage-based testing? Justify your answer.20247m

    Module 5: Software Coding, Testing, and Debugging

    Which one of the following is the strongest structural testing technique: statement coverage-based testing, branch coverage-based testing, or multiple condition coverage-based testing? Justify your answer.

    View this question on its own page →
  23. Q8a. Define three metrics to measure software reliability. Do you consider these metrics entirely satisfactory to provide measure of the reliability of a system? Justify your answer.20247m

    Module 7: Software Reliability and Quality Assurance

    Define three metrics to measure software reliability. Do you consider these metrics entirely satisfactory to provide measure of the reliability of a system? Justify your answer.

    View this question on its own page →
  24. Q8b. What do you mean by the term software reverse engineering? Why is it required? Explain the different activities undertaken during reverse engineering.20247m

    Module 6: Software Maintenance and Reengineering

    What do you mean by the term software reverse engineering? Why is it required? Explain the different activities undertaken during reverse engineering.

    View this question on its own page →
  25. Q9a. Write short notes on: Agile Development Process20247m

    Module 1: Software Engineering Introduction and SDLC

    Write short notes on: Agile Development Process

    View this question on its own page →
  26. Q9b. Write short notes on: UML Diagrams20247m

    Module 3: Software Design Methodologies and UML

    Write short notes on: UML Diagrams

    View this question on its own page →
  27. Q9c. Write short notes on: Equivalence Class Testing20247m

    Module 5: Software Coding, Testing, and Debugging

    Write short notes on: Equivalence Class Testing

    View this question on its own page →
  28. Q9d. Write short notes on: Putnam model20247m

    Module 4: Project Management, Metrics, and Estimation

    Write short notes on: Putnam model

    View this question on its own page →