Question 1
Which of the following is not an Integrated Development Environment (IDE)?
Visual Studio Code
PyCharm
Thonny
TextEdit (Mac)

The IIT Madras BS Software Engineering (Software Engineering) Quiz 2 paper sat on 16 Mar 2025, in the January 2025 term: 24 questions for 100 marks in 120 minutes. Every question is below with its answer. Take it as a timed mock test to be marked, or read it through first.
Which of the following is not an Integrated Development Environment (IDE)?
Visual Studio Code
PyCharm
Thonny
TextEdit (Mac)
Correct answer
TextEdit (Mac)
Statement 1 is correct, Statement 2 is incorrect.
Statement 1 is incorrect, Statement 2 is correct.
Both statements are correct.
Both statements are incorrect.
Correct answer
Statement 1 is correct, Statement 2 is incorrect.
A software engineer is working on fixing an issue with a third-party payment processing service in an e-commerce platform. To identify the problem, the engineer starts by reviewing the API documentation, example codes, etc..
Which of the following debugging strategies is being used by the engineer?
Input manipulation
Backwards strategy
Forwards strategy
Blackbox debugging
Correct answer
Blackbox debugging
A hiring manager is conducting an interview with a candidate. Instead of following a predefined set of questions, the manager asks open-ended questions and adapts the follow-up questions based on the candidate's responses, allowing for a free-flowing conversation.
Which type of interview is the manager conducting?
Structured interview
Semistructured interview
Unstructured interview
Questionnaires
Correct answer
Unstructured interview
Coincidental cohesion
Procedural cohesion
Communicational cohesion
Sequential Cohesion
Correct answer
Procedural cohesion
In the design of an e-commerce platform, different modules handle tasks like managing product listings, processing customer orders, and handling payment transactions. While each module focuses on its own task, they all need to access a shared order database to retrieve and update order statuses, customer information, and payment details.
Identify the correct statement about the modules of the given application.
The modules have high cohesion and are highly coupled.
The modules have low cohesion and are highly coupled.
The modules have low cohesion and are loosely coupled.
The modules have high cohesion and are loosely coupled.
Correct answer
The modules have high cohesion and are highly coupled.
Which of the following diagrams models the sequence of message exchanges among parts of a system?
Class diagram
State machine diagram
Activity diagram
Interaction diagram
Correct answer
Interaction diagram
To decide which work is to be done in the current sprint and how the chosen work will be done.
To prioritize the work for the development team.
Team demonstrates what they have completed in the given sprint.
To evaluate the last sprint - team dynamics, processes, tools etc.
Correct answer
To evaluate the last sprint - team dynamics, processes, tools etc.
Suppose the risk assessed for budget slippage is 1.8, and the probability of budget slippage occurring during project development is 0.9. What is the impact of budget slippage on project development?
16.6
2
3
0.17
Correct answer
2
Consider a file-sharing application that allows users to upload and share files with others directly. The files are stored on the users' devices and exchanged directly between users, without relying on a central server for storage or transmission.
What type of software architecture is most likely used for the file-sharing application?
Client-server system
Pipe and filter
Model view controller
Peer-to-peer architecture
Correct answer
Peer-to-peer architecture
A company is building a tool for its own developers to streamline the software development lifecycle. The tool will primarily be used for managing version control, tracking bugs, and automating deployment pipelines.
In this case, which type of clients are we dealing with?
External users
Internal users
Software or software components
None of these
Correct answer
Internal users
Consider a software organization X has developed a complete software product and wants to ensure it works well in real-world scenarios by getting feedback from actual users before the final release.
Identify the type of testing X wants to perform.
System testing
Integration testing
Alpha testing
Beta testing
Correct answer
Beta testing
A food delivery app is shared with a predefined set of customers. The customers report an issue where the delivery tracking feature displays incorrect locations for delivery drivers, causing confusion about the estimated delivery time.
This activity is part of which phase of the software development lifecycle?
Requirement gathering
Development phase
Design phase
Testing phase
Maintenance phase
Correct answer
Testing phase
In an agile project, the team is working on implementing a user story. If the user story cannot be completed within one iteration (1-2 weeks), the team decides to subdivide it into smaller, more manageable ones.
What does this approach make the user story?
Specific
Measurable
Achievable
Relevant
Timeboxed
Correct answer
Achievable
Imagine a food delivery application where users can search for restaurants, place orders, and track deliveries. However, the application fails to provide any real-time updates about the progress of the order or the delivery.
Which design heuristic is lacking in this scenario?
Freedom
Flexibility
Recognition over recall
Show status
Correct answer
Show status
Consider an e-commerce platform that integrates with multiple payment gateways. The platform has a payment processing system that only accepts payments in USD, but the payment gateways provide transaction amounts in different currencies, such as EUR and INR. The class
PaymentProcessor can only handle USD amounts, but the payment gateways provide transaction amounts in incompatible currencies.
Which design pattern can be used to solve the problem?
Factory design pattern
Builder design pattern
Adapter design pattern
Facade design pattern
Correct answer
Adapter design pattern
Open-close principle
Liskov substitution principle
Interface segregation principle
Dependency inversion principle
Correct answer
Interface segregation principle
Consider the following requirements for a mobile app that allows users to book and manage appointments at a healthcare clinic:
Requirement 1: The mobile app must be able to support at least 500 simultaneous user logins. Requirement 2: The mobile app must allow users to view the available doctors and their appointment slots.
Requirement 3: The mobile app must notify users when an appointment is successfully booked. Requirement 4: The mobile app must be able to process payments for appointments within 3 seconds.
Which of the following statements is true?
Requirements 1, 2, and 3 are functional requirements, whereas requirement 4 is a non-functional requirement.
Requirements 2 and 3 are functional requirements, whereas requirements 1 and 4 are non-functional requirements.
Requirements 1 and 4 are functional requirements, whereas requirements 2 and 3 are non-functional requirements.
Requirement 2 is a functional requirement, whereas requirements 1, 3, and 4 are non-functional requirements.
Correct answer
Requirements 2 and 3 are functional requirements, whereas requirements 1 and 4 are non-functional requirements.
3
4
5
6
Correct answer
4
Which requirement collection technique involves gathering detailed information from recorded procedures, rules, steps, and regulations pertaining to a specific task or activity?
Questionnaires
Interviews
Focus group
Documentations
Correct answer
Documentations
A software company is developing a mobile app for a government agency to monitor and control traffic systems in real-time. The app requires integration with multiple hardware devices, real-time processing, and strict security protocols. The developer team consists of highly skilled professionals.
The values for the constants in the COCOMO model for the different types of projects are as follows:
• Organic project: a = 2.4, b = 1.05
• Semi-detached project: a = 3.0, b = 1.12
• Embedded project: a = 3.6, b = 1.20
Consider the source code to be 1,00,000 lines.
Based on the above data, answer the given subquestions.
What is the initial estimated effort for the project?
303 person-months
426 person-months
522 person-months
905 person-months
Correct answer
905 person-months
A software company is developing a mobile app for a government agency to monitor and control traffic systems in real-time. The app requires integration with multiple hardware devices, real-time processing, and strict security protocols. The developer team consists of highly skilled professionals.
The values for the constants in the COCOMO model for the different types of projects are as follows:
• Organic project: a = 2.4, b = 1.05
• Semi-detached project: a = 3.0, b = 1.12
• Embedded project: a = 3.6, b = 1.20
Consider the source code to be 1,00,000 lines.
Based on the above data, answer the given subquestions.
Considering an effort adjustment factor = 1.88, what is the final estimated effort for the project?
305 person-months
570 person-months
1702 person-months
982 person-months
Correct answer
1702 person-months
A logistics company is developing a route optimization system for its fleet, relying on a third-party mapping API to provide real-time traffic data and calculate optimal delivery routes. However, there is a risk of shortcomings in the third-party API.
Based on the above data, answer the given subquestions.
Identify the type of the risk in the given scenario.
Project risks
Technical risk
Business risk
None of these
Correct answer
Technical risk
A logistics company is developing a route optimization system for its fleet, relying on a third-party mapping API to provide real-time traffic data and calculate optimal delivery routes. However, there is a risk of shortcomings in the third-party API.
Based on the above data, answer the given subquestions.
Choose the correct option that specifies how the risk can be mitigated.
By hiring developers with relevant experience within the company and/ or outside the company, or outsource certain things to some third party vendors.
By benchmarking and regular inspection to verify that the external component is up to the mark.
By communicating with clients or build prototype to collect clients feedback
Explore market for similar products
Correct answer
By benchmarking and regular inspection to verify that the external component is up to the mark.