Quiz Space

September 2023 term · Software Engineering · BSCS3001

Software Engineering End Term: 24 December 2023, Set ADB3 (September 2023 term)

The IIT Madras BS Software Engineering (Software Engineering) End Term paper sat on 24 Dec 2023, in the September 2023 term, set ADB3: 32 questions for 100 marks in 180 minutes. Every question is below with its answer. Take it as a timed mock test to be marked, or read it through first.

Questions
32
Marks
100
Duration
180 min
MSQ
14
MCQ
17
Numerical
1

Updated

Official paper: IIT M DEGREE FN EXAM FDB1 24 Dec 2023 · No negative marking.

Question 1

+2 marksOne or more correct options

Presently a lot of software development takes place in a distributed environment, the developer is expected to write precise interface definitions. From the given options, which is/are TRUE about interface definition.

Select all that apply.

  1. A

    It describes the capabilities of a function

  2. B

    It provides the implementation details of a function

  3. C

    It tells which requests are allowed and specifies the format of the output

  4. D

    The code implementing the interface should remain unchanged for a given interface definition

Show answer

Correct answers

  • A

    It describes the capabilities of a function

  • C

    It tells which requests are allowed and specifies the format of the output

Question 2

+2 marksOne or more correct options

Consider the Gantt chart as follows:

Select the correct observations from the given Gantt chart.

Select all that apply.

  1. A

    Component design starts once the user interface and database schema are completed

  2. B

    User interface and database design can start at the same time

  3. C

    Update status and reschedule task both are done concurrently

  4. D

    Task manager must complete before task reviewer starts

Show answer

Correct answers

  • B

    User interface and database design can start at the same time

  • C

    Update status and reschedule task both are done concurrently

  • D

    Task manager must complete before task reviewer starts

Question 3

+2 marksOne or more correct options

Which kinds of integration testing approaches must require the use of stubs?

Select all that apply.

  1. A

    Big Bang approach

  2. B

    Bottom-Up approach

  3. C

    Top-down approach

  4. D

    Mixed approach

Show answer

Correct answers

  • C

    Top-down approach

  • D

    Mixed approach

Question 4

+3 marksOne or more correct options

Consider the class diagram given below.

Which of the following is true about the class diagram?

Select all that apply.

  1. A

    There is an association relation between class User and TaskList

  2. B

    There is an inheritance relation between class User and TaskList

  3. C

    There is a composition relation between class Task and TaskList

  4. D

    There is an inheritance relation between class Task and TaskList

  5. E

    There is a composition relation between class Task and TimeBoundedTask

  6. F

    There is an inheritance relation between class Task and TimeBoundedTask

Show answer

Correct answers

  • A

    There is an association relation between class User and TaskList

  • C

    There is a composition relation between class Task and TaskList

  • F

    There is an inheritance relation between class Task and TimeBoundedTask

Question 5

+3 marksOne or more correct options

Which of the following are dynamic behavioural views?

Select all that apply.

  1. A

    Class diagram

  2. B

    State machine diagram

  3. C

    Activity diagram

  4. D

    Interaction diagram

Show answer

Correct answers

  • B

    State machine diagram

  • C

    Activity diagram

  • D

    Interaction diagram

Question 6

+3 marksOne or more correct options

Which of the following statements about the flask framework is/are correct?

Select all that apply.

  1. A

    It is a mobile application framework

  2. B

    It is a web application framework

  3. C

    It is a micro-framework

  4. D

    It imposes several restrictions on developing applications, like the kind of databases that can be used and the type of web servers that can be used

Show answer

Correct answers

  • B

    It is a web application framework

  • C

    It is a micro-framework

Question 7

+3 marksOne or more correct options

Which of the following software deployment strategies have the drawback of maintaining multiple versions?

Select all that apply.

  1. A

    Blue/Green deployment

  2. B

    Canary deployment

  3. C

    Versioned deployment

  4. D

    None of these

Show answer

Correct answers

  • B

    Canary deployment

  • C

    Versioned deployment

Question 8

+3 marksOne or more correct options

Choose the correct statements regarding software organizations.

Select all that apply.

  1. A

    In a flat organizational structure, there are fewer levels of hierarchy, promoting a more collaborative environment

  2. B

    Agile methodologies are primarily suitable for large, bureaucratic organizations

  3. C

    DevOps is a cultural and professional movement that aims to improve collaboration between software development and IT operations

  4. D

    Waterfall model is an agile software development methodology

  5. E

    The Scrum framework defines roles, events, and artifacts for organizing and managing work

Show answer

Correct answers

  • A

    In a flat organizational structure, there are fewer levels of hierarchy, promoting a more collaborative environment

  • C

    DevOps is a cultural and professional movement that aims to improve collaboration between software development and IT operations

  • E

    The Scrum framework defines roles, events, and artifacts for organizing and managing work

Question 9

+4 marksOne or more correct options

Consider the class diagram given below.

Identify the statements that can be inferred from the given class diagram.

Select all that apply.

  1. A

    The relationship between class Payment and class Order is association

  2. B

    The relationship between class Payment and class UPIPayment is composition

  3. C

    The relationship between class Order and class Item is inheritance

  4. D

    The relationship between class Payment and class CardPayment is inheritance

Show answer

Correct answers

  • A

    The relationship between class Payment and class Order is association

  • D

    The relationship between class Payment and class CardPayment is inheritance

Question 10

+4 marksOne or more correct options

Which of the following integration testing approaches may require drivers?

Select all that apply.

  1. A

    Big bang approach

  2. B

    Bottom up approach

  3. C

    Top down approach

  4. D

    Mixed approach

Show answer

Correct answers

  • B

    Bottom up approach

  • D

    Mixed approach

Question 11

+4 marksOne or more correct options

What are the primary applications of knowledge sharing tools in software development?

Select all that apply.

  1. A

    The tools can be used for sharing documents and archiving decisions

  2. B

    The tools enable all members of the team to get a big picture of the project along with a detailed view of its progress

  3. C

    The tools can be used to apply the knowledge gained in one project to another project

  4. D

    The tools mainly include IDEs that help the developers to be more productive

Show answer

Correct answers

  • A

    The tools can be used for sharing documents and archiving decisions

  • C

    The tools can be used to apply the knowledge gained in one project to another project

Question 12

+5 marksOne or more correct options

Choose the correct statements regarding Test-Driven Development (TDD).

Select all that apply.

  1. A

    TDD involves writing test cases after the implementation of the code

  2. B

    TDD follows the cycle of "Red-Green-Refactor"

  3. C

    TDD encourages developers to write production code without any testing

  4. D

    In TDD, tests are written to validate the expected behavior of the code before the code is implemented

  5. E

    TDD is not suitable for agile development methodologies

Show answer

Correct answers

  • B

    TDD follows the cycle of "Red-Green-Refactor"

  • D

    In TDD, tests are written to validate the expected behavior of the code before the code is implemented

Question 13

+5 marksOne or more correct options

Choose the correct statements about continuous integration (CI).

Select all that apply.

  1. A

    CI is a software development practice where code changes are tested and integrated into the main codebase frequently

  2. B

    Jenkins and Travis CI are examples of CI tools

  3. C

    CI helps identify and fix integration issues early in the development process

  4. D

    Continuous Deployment (CD) is synonymous with continuous integration

  5. E

    CI is only beneficial for small development teams

Show answer

Correct answers

  • A

    CI is a software development practice where code changes are tested and integrated into the main codebase frequently

  • B

    Jenkins and Travis CI are examples of CI tools

  • C

    CI helps identify and fix integration issues early in the development process

Question 14

+2 marksOne correct option

An organisation decided to develop an online medicine selling app. So a team from the organisation visited some medical shops to observe the process of selling the medicines. Identify the type of requirement collection technique used in the given scenario.

  1. A

    Questionnaires

  2. B

    Focus group

  3. C

    Naturalistic observations

  4. D

    Documentations

Show answer

Correct answer

  • C

    Naturalistic observations

Question 15

+2 marksOne correct option

An employee payroll software provides its users with several services. For each service, a tutorial video is provided along with step-by-step examples. Which of the following usability goals is fulfilled by the payroll software?

  1. A

    Effectiveness

  2. B

    Efficiency

  3. C

    Safe to use

  4. D

    Learnability

  5. E

    Memorability

Show answer

Correct answer

  • D

    Learnability

Question 16

+2 marksOne correct option

Which of the following types of testing determines whether a software product meets nonfunctional requirements or not?

  1. A

    Unit testing

  2. B

    Alpha testing

  3. C

    Beta testing

  4. D

    Smoke testing

  5. E

    Performance testing

Show answer

Correct answer

  • E

    Performance testing

Question 17

+2 marksOne correct option

In which of the following hosting service, the provider is responsible for providing a part of the infrastructure without providing the software layer?

  1. A

    Bare Metal Servers

  2. B

    Infrastructure-as-a-Service

  3. C

    Platform-as-a-Service

  4. D

    All of these

Show answer

Correct answer

  • B

    Infrastructure-as-a-Service

Question 18

+3 marksOne correct option

A programmer is developing a module for a big software project. The module has 50 functions. After writing the code, the programmer has observed that he is not getting the desired output, and he suspects some of the functions are not getting called. In order to identify those functions, he places some print statements in all the functions.
What kind of debugging technique does the programmer employ in this case?

  1. A

    Logging

  2. B

    Dump & diff

  3. C

    Stepping in debugger

  4. D

    Profiling tool

Show answer

Correct answer

  • A

    Logging

Question 19

+3 marksOne correct option
  1. A

    Factory design pattern

  2. B

    Builder design pattern

  3. C

    Adapter design pattern

  4. D

    Facade design pattern

Show answer

Correct answer

  • B

    Builder design pattern

Question 20

+3 marksOne correct option

Consider a program that has classes CashPayment , CardPayment and UPIPayment , which are derived from class Payment . However, in the functions, changing the object types from derived class to the base class causes various errors in the program.
Which of the SOLID principles is violated by the program?

  1. A

    Open-Closed principle

  2. B

    Liskov Substitution principle

  3. C

    Interface Segregation principle

  4. D

    Dependency Inversion principle

Show answer

Correct answer

  • B

    Liskov Substitution principle

Question 21

+3 marksOne correct option

Which of the following statements are true about the staging environment?

  1. A

    It provides the local environment to a software developer which contains the tools like IDE

  2. B

    It provides an environment with several testing tools and focuses on integration testing

  3. C

    It provides an environment that exactly resembles the production environment

  4. D

    It provides the actual production environment

Show answer

Correct answer

  • C

    It provides an environment that exactly resembles the production environment

Question 22

+4 marksOne correct option

During debugging, a developer finds out the event that triggers an incorrect behavior. He follows the data control flow ahead until the incorrect state is reached.
Which of the following debugging strategies was chosen by the developer?

  1. A

    Input manipulation

  2. B

    Backwards strategy

  3. C

    Forwards strategy

  4. D

    Blackbox debugging

Show answer

Correct answer

  • C

    Forwards strategy

Question 23

+4 marksOne correct option

Consider the following classes: BMI, HeightConverter, and WeightConverter. Class BMI considers the height and weight of a person in CMs and KGs respectively and then computes the person's BMI(body mass index). However, the input is collected in the form of Feet and Pounds. Class HeightConverter converts the height from Feet to CM, and class WeightConverter converts weight from Pound to KG. But, unfortunately, the class BMI is not compatible with HeightConverter, and WeightConverter.
Therefore, we apply design pattern X to solve the problem, and represent the class diagram as follows:

Identify the design pattern referred to above as X.

  1. A

    Factory design pattern

  2. B

    Builder design pattern

  3. C

    Adapter design pattern

  4. D

    Facade design pattern

Show answer

Correct answer

  • C

    Adapter design pattern

Question 24

+4 marksOne correct option
  1. A

    1-B, 2-D, 3-C, 4-A

  2. B

    1-B, 2-A, 3-C, 4-D

  3. C

    1-C, 2-D, 3-B, 4-A

  4. D

    1-C, 2-A, 3-B, 4-D

Show answer

Correct answer

  • C

    1-C, 2-D, 3-B, 4-A

Question 25

+4 marksOne correct option

Which of the deployment environments exactly resembles the production environment and is used for testing the web application for its performance before it goes live?

  1. A

    Development

  2. B

    Testing

  3. C

    Staging

  4. D

    Production

Show answer

Correct answer

  • C

    Staging

Question 26

+4 marksOne correct option

Identify the type of decision making required for the following situations:
Situation 1: To decide which software architecture to be used for developing a specific software system
Situation 2: To decide which data structure to be used for developing a specific software module

  1. A

    Both are macro decisions

  2. B

    Both are micro decisions

  3. C

    1 is a macro decision, but 2 is a micro decision

  4. D

    1 is a micro-decisions, but 2 is a macro decision

Show answer

Correct answer

  • C

    1 is a macro decision, but 2 is a micro decision

Question 27

+5 marksOne correct option
  1. A

    I --> V --> IV --> II

  2. B

    I --> III --> II --> IV --> V

  3. C

    IV --> V --> II

  4. D

    III --> II --> V

Show answer

Correct answer

  • C

    IV --> V --> II

Question 28

+3 marksOne or more correct options

Based on the above data, answer the given subquestions.

Which of the following sets of test cases provide/s branch coverage of the given code segment?

Select all that apply.

  1. A

    {18, 60}

  2. B

    {30, 75}

  3. C

    {10, 75}

  4. D

    {10, 30, 75}

Show answer

Correct answers

  • B

    {30, 75}

  • D

    {10, 30, 75}

Question 29

+2 marksOne correct option

Based on the above data, answer the given subquestions.

Which of the following sets of test cases provide/s multiple condition coverage of the given code segment?

  1. A

    {18, 60}

  2. B

    {30, 75}

  3. C

    {10, 75}

  4. D

    {10, 30, 75}

Show answer

Correct answer

  • D

    {10, 30, 75}

Question 30

+2 marksOne correct option

Answer the given subquestions.

Which of the following teams in a software organization is primarily responsible for laying down the terms of service for its software products?

  1. A

    Sales team

  2. B

    Support team

  3. C

    Ethics and policy specialists

  4. D

    Data scientists

Show answer

Correct answer

  • C

    Ethics and policy specialists

Question 31

+2 marksOne correct option

Answer the given subquestions.

IDEs are very useful in the software development process, mainly because ___________ .

  1. A

    they are useful in documenting and archiving knowledge of one project so that it can be reused in another project

  2. B

    they are useful for sharing documents and archiving decisions

  3. C

    they enable all the members of the team to get a big picture as well as a detailed view of progress in the software development

  4. D

    they help the developers become more productive

Show answer

Correct answer

  • D

    they help the developers become more productive

Question 32

+3 marksNumerical answer

Consider a program that takes a number as input. If the input number is not an integer it generates an error. Otherwise, it identifies the integer as even or odd.
Identify the number of equivalence classes for black box testing of the program.

Show answer

Correct answer: 3