uiz Space

May 2026 term · Modern Application Development II · BSCS2006

Modern Application Development II End Term: 13 September 2026, Set 1 (May 2026 term)

The IIT Madras BS Modern Application Development II (MAD 2) End Term paper sat on 13 Sept 2026, in the May 2026 term, set 1: 30 questions for 95.5 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
30
Marks
95.5
Duration
180 min
MCQ
19
MSQ
11

Updated

Official paper: Modern Application Development Ii 13 Sep 26 (Session 2) · No negative marking.

Question 1

+2 marksOne correct option
  1. A

    The header stores the encrypted password used to generate the signature.

  2. B

    The signature is generated using the encoded header, encoded payload, and a secret key. If the header is modified, the signature verification fails.

  3. C

    The signature only protects the payload section; changes to the header do not affect token validation.

  4. D

    The header contains the final signature hash generated after token creation.

Show answer

Correct answer

  • B

    The signature is generated using the encoded header, encoded payload, and a secret key. If the header is modified, the signature verification fails.

Question 2

+4.5 marksOne correct option

A news platform wants to send a morning digest email to all subscribers every day at 7 AM. Sweta sets up the beat schedule, starts Redis and Celery Beat, and then claims: "The Worker is optional here. Beat handles the scheduling and the execution of the task, so we do not need a separate Worker process."
Is Sweta's claim correct? Choose the best answer.

  1. A
  2. B

    No. Celery Beat is only a scheduler. At 7 AM, it pushes a task message into the Redis broker and stops there. Without a running Celery Worker to pick up that message, the digest email is never actually sent.

  3. C
  4. D
Show answer

Correct answer

  • B

    No. Celery Beat is only a scheduler. At 7 AM, it pushes a task message into the Redis broker and stops there. Without a running Celery Worker to pick up that message, the digest email is never actually sent.

Question 3

+4.5 marksOne correct option

A startup is building a food delivery app. The customer-facing screen shows live order status updates: "Order Placed → Preparing → Out for Delivery → Delivered".
Each stage is triggered by the restaurant or the delivery rider updating the status on their end. The customer's screen should reflect these changes in real time without refreshing the page.
Two developers debate about the right technology: Developer A says: "Let's use Server-Sent Events. It's the right fit here." Developer B says: "No, we must use WebSockets. SSE won't work."
Who is correct, and why?

  1. A

    Developer B is correct. SSE cannot transmit JSON data, so structured order status objects cannot be pushed to the browser.

  2. B

    Developer B is correct. SSE connections do not reconnect automatically when the network is briefly interrupted, making it unreliable for a live tracker.

  3. C

    Developer A is correct. The tracker only requires the server to push status updates to the customer, without the customer sending data back through the same connection. SSE is purpose-built for exactly this one-way server-to-client push scenario.

  4. D

    Developer A is correct, but only if WebSockets are set up as a mandatory fallback, since SSE requires HTTP/2 to function.

Show answer

Correct answer

  • C

    Developer A is correct. The tracker only requires the server to push status updates to the customer, without the customer sending data back through the same connection. SSE is purpose-built for exactly this one-way server-to-client push scenario.

Question 4

+4.5 marksOne correct option

File: app.js

  1. A

    Delhi

  2. B

    Indore

  3. C

    Rewa

  4. D

    Raipur

Show answer

Correct answer

  • C

    Rewa

Question 5

+4.5 marksOne or more correct options

Read the following component code carefully. file: script.js

file:index.html

Select all statements that correctly describe the console output:

Select all that apply.

  1. A
  2. B
  3. C
  4. D
  5. E

    Log 3: throws an error because $el is not yet available

Show answer

Correct answers

  • A
  • B
  • D

Question 6

+4.5 marksOne or more correct options

Consider the following Flask JWT code:

Select all that apply.

  1. A
  2. B

    If the JWT token is missing or invalid, Flask-JWT-Extended returns an unauthorized error.

  3. C
  4. D
Show answer

Correct answers

  • A
  • B

    If the JWT token is missing or invalid, Flask-JWT-Extended returns an unauthorized error.

  • D

Question 7

+4.5 marksOne or more correct options

Select all that apply.

  1. A
  2. B
  3. C
  4. D
  5. E
  6. F
Show answer

Correct answers

  • A
  • C
  • D
  • F

Question 8

+4.5 marksOne or more correct options

Consider the following code using flask_jwt_extended:

Which of the following statements are correct? (Select all that apply)

Select all that apply.

  1. A
  2. B
  3. C
  4. D
  5. E
  6. F
Show answer

Correct answers

  • A
  • B
  • C
  • E

Question 9

+3 marksOne or more correct options

Pratham builds a Flask route that generates a PDF report and sends it to the user via email, all inside the route handler without using Celery. A tester notices that the browser takes about 12 seconds to respond, and during that time other users are unable to use the app normally. Which of the following correctly explain this behaviour and what Celery would change?

Select all that apply.

  1. A

    Flask handles one request at a time per worker, so the long-running task blocks the entire process until it finishes.

  2. B

    Other users' requests are queued and only served after the heavy task completes, making the app feel unresponsive.

  3. C
  4. D

    With Celery, Flask immediately returns a response to the user while the report generation and email sending happen inside a separate Celery worker process in the background.

Show answer

Correct answers

  • A

    Flask handles one request at a time per worker, so the long-running task blocks the entire process until it finishes.

  • B

    Other users' requests are queued and only served after the heavy task completes, making the app feel unresponsive.

  • D

    With Celery, Flask immediately returns a response to the user while the report generation and email sending happen inside a separate Celery worker process in the background.

Question 10

+3 marksOne or more correct options

Which of the following is/are the advantage(s) of client-side storage?

Select all that apply.

  1. A

    Saving web generated documents for offline use.

  2. B

    Storing personalized site preferences.

  3. C

    The data can be stored across devices.

  4. D

    IndexedDB API is a kind of client-side storage which can be used for audio/video files.

Show answer

Correct answers

  • A

    Saving web generated documents for offline use.

  • B

    Storing personalized site preferences.

  • D

    IndexedDB API is a kind of client-side storage which can be used for audio/video files.

Question 11

+3 marksOne or more correct options

Which of the following are valid capabilities of Lighthouse while analyzing a website?

Select all that apply.

  1. A

    Measuring performance metrics such as FCP, LCP and TBT

  2. B

    Simulating slow networks and throttled conditions

  3. C

    Emulating mobile and desktop devices

  4. D

    Automatically fixing accessibility and SEO issues in the source code

Show answer

Correct answers

  • A

    Measuring performance metrics such as FCP, LCP and TBT

  • B

    Simulating slow networks and throttled conditions

  • C

    Emulating mobile and desktop devices

Question 12

+3 marksOne or more correct options

Given the following code, select all the statements that are TRUE about its execution if the code is run in a browser environment.

Select all that apply.

  1. A
  2. B
  3. C
  4. D
Show answer

Correct answers

  • A
  • B
  • D

Question 13

+3 marksOne correct option

A team builds an internal warehouse dashboard where multiple managers, each on a different computer, need to receive live low-stock alerts from the server in real time. They decide to use Flask-SSE with Redis.
Which of the following best explains Redis's role in a Flask-SSE setup?

  1. A

    Redis is used by Flask-SSE to authenticate connected users before events can be streamed to the browser.

  2. B

    Flask-SSE uses Redis as a shared event channel so published messages can be delivered to connected clients.

  3. C

    Redis is only needed when SSE events must be stored permanently and replayed after reconnection.

  4. D

    Redis is optional in Flask-SSE and is only recommended when the application has a very large number of concurrent users.

Show answer

Correct answer

  • B

    Flask-SSE uses Redis as a shared event channel so published messages can be delivered to connected clients.

Question 14

+3 marksOne correct option

Match the testing concept in Column I with the most appropriate description in Column II.

  1. A

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

  2. B

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

  3. C

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

  4. D

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

Show answer

Correct answer

  • A

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

Question 15

+3 marksOne correct option

Match the performance metric in Column I with the most appropriate description in Column II.

  1. A

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

  2. B

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

  3. C

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

  4. D

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

Show answer

Correct answer

  • C

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

Question 16

+3 marksOne correct option

What is the value of result after running the following code?

  1. A
  2. B
  3. C
  4. D
Show answer

Correct answer

  • C

Question 17

+3 marksOne correct option

A developer has just created a new Vue 2 project using Vue CLI and the following package.json was generated. package.json

  1. A
  2. B
  3. C
  4. D
Show answer

Correct answer

  • B

Question 18

+3 marksOne correct option

Consider the following JavaScript code:

What will be output on the browser’s console?

  1. A

    (A figure from the original paper is missing from the source site.)

  2. B

    (A figure from the original paper is missing from the source site.)

  3. C

    (A figure from the original paper is missing from the source site.)

  4. D

    None of these.

Show answer

Correct answer

  • C

    (A figure from the original paper is missing from the source site.)

Question 19

+3 marksOne correct option

What is logged to the console after running the following code?

  1. A

    10 30 [40, 50] and 100 0

  2. B

    10 30 [40, 50] and 100 200

  3. C

    10 20 [30, 40, 50] and undefined 0

  4. D

    10 30 [30, 40, 50] and 100 0

Show answer

Correct answer

  • A

    10 30 [40, 50] and 100 0

Question 20

+3 marksOne correct option

A developer runs the following code in Tab 1 of a browser, then opens the same website in a new Tab 2 (not a duplicate, but a fresh tab typed into the address bar).

Which of the following statements correctly describes what happens in Tab 2?

  1. A
  2. B
  3. C

    Both return null

  4. D
Show answer

Correct answer

  • B

Question 21

+2 marksOne correct option

Consider the following Vue 2 + Vuex application:

Note: All three image above are of one html.
Based on the above data, answer the given subquestions.

What will be displayed after clicking the Increase Temperature button once?

  1. A

    Temperature: 28oC, Status: Normal

  2. B

    Temperature: 33oC, Status: Hot

  3. C

    Temperature: 33oC, Status: Normal

  4. D

    Temperature: 35oC, Status: Normal

Show answer

Correct answer

  • C

    Temperature: 33oC, Status: Normal

Question 22

+3 marksOne correct option

Consider the following Vue 2 + Vuex application:

Note: All three image above are of one html.
Based on the above data, answer the given subquestions.

Why does the watcher on temperature execute after clicking the button?

  1. A

    Because Vue automatically watches all methods

  2. B

    Because the Vuex mutation changes the state used by the computed property

  3. C

    Because getters directly trigger watchers

  4. D

    Because computed properties cannot access Vuex state

Show answer

Correct answer

  • B

    Because the Vuex mutation changes the state used by the computed property

Question 23

+2 marksOne correct option

Consider the following JavaScript code:

Based on the above data, answer the given subquestions.

What will be printed in the console?

  1. A

    Normal: Rahul Arrow: Rahul

  2. B

    Normal: Arrow: Rahul

  3. C

    Normal: Rahul Arrow: undefined

  4. D

    Normal: Arrow:

Show answer

Correct answer

  • B

    Normal: Arrow: Rahul

Question 24

+3 marksOne or more correct options

Consider the following JavaScript code:

Based on the above data, answer the given subquestions.

Which of the following statements correctly explain the behaviour of the code?

Select all that apply.

  1. A
  2. B
  3. C
  4. D
Show answer

Correct answers

  • A
  • B
  • D

Question 25

+2 marksOne correct option

Read the following Vue 2 component code carefully and answer the given subquestions: index.html

What text appears on the button when the app first renders?

  1. A

    "Hello"

  2. B

    "Click Me"

  3. C

    "" (empty)

  4. D

    undefined

Show answer

Correct answer

  • B

    "Click Me"

Question 26

+3 marksOne correct option

Read the following Vue 2 component code carefully and answer the given subquestions: index.html

After the button is clicked once, what is the value of log in the parent?

  1. A

    "Hello"

  2. B

    "Click Me"

  3. C

    "Button clicked"

  4. D

    undefined

Show answer

Correct answer

  • C

    "Button clicked"

Question 27

+2 marksOne correct option

Read the following Vuex setup carefully and answer the given subquestions: store.js

component

  1. A

    15 and 30

  2. B

    18 and 36

  3. C

    15 and 20

  4. D

    10 and 20

Show answer

Correct answer

  • A

    15 and 30

Question 28

+3 marksOne correct option

Read the following Vuex setup carefully and answer the given subquestions: store.js

component

  1. A

    Mutations can contain asynchronous code; actions cannot

  2. B

    Only actions can call commit; mutations cannot

  3. C

    Mutations must be synchronous; actions can contain async logic and then commit mutations

  4. D

    There is no real difference; both are interchangeable

Show answer

Correct answer

  • C

    Mutations must be synchronous; actions can contain async logic and then commit mutations

Question 29

+3 marksOne or more correct options

Read the following code carefully and answer the given subquestions:

Select all statements that are TRUE about the output:

Select all that apply.

  1. A

    d1.speak() returns "Tommy barks"

  2. B

    d1.speak() returns "Tommy makes a sound"

  3. C

    Animal.count returns 2

  4. D

    Animal.count returns 1

Show answer

Correct answers

  • A

    d1.speak() returns "Tommy barks"

  • C

    Animal.count returns 2

Question 30

+3 marksOne or more correct options

Read the following code carefully and answer the given subquestions:

Select all statements that are TRUE about the output :

Select all that apply.

  1. A

    d1 instanceof Animal returns true

  2. B

    d1 instanceof Animal returns false

  3. C

    Dog.create("Tommy") creates an instance of Dog, but not Animal

  4. D

    Dog.create("Tommy") creates an instance of Dog as well as Animal

Show answer

Correct answers

  • A

    d1 instanceof Animal returns true

  • D

    Dog.create("Tommy") creates an instance of Dog as well as Animal