Software Engineering MCQ Quiz - Objective Question with Answer for Software Engineering - Download Free PDF
Last updated on Apr 17, 2024
Latest Software Engineering MCQ Objective Questions
Software Engineering Question 1:
Which of the following is not a measure of code size?
Answer (Detailed Solution Below)
Software Engineering Question 1 Detailed Solution
The correct answer is Cyclomatic Complexity
Key Points
- Cyclomatic complexity is not a size metric; it is a complexity metric used to indicate the complexity of a program by measuring the number of linearly independent paths through the program's source code.
- It is often used to help gauge the understandability and maintainability of a program.
- The other options listed (LOC, Function count, Program length) are examples of size metrics, which are used to measure the size of a software program or its components.
Software Engineering Question 2:
What does FAST stand for?
Answer (Detailed Solution Below)
Software Engineering Question 2 Detailed Solution
The correct answer is Facilitated Application Specification Technique
Key Points
- FAST stands for "Facilitated Application Specification Technique." It is a methodology used in the software development process that emphasizes collaboration and communication among stakeholders to define requirements and specifications effectively.
- This approach involves facilitated sessions where participants work together to capture precise requirements, with the goal of improving the quality and efficiency of software development by ensuring a clear understanding of needs from the outset.
Software Engineering Question 3:
What is the term for modifications made to an information system to include features that are wanted but not necessarily essential?
Answer (Detailed Solution Below)
Software Engineering Question 3 Detailed Solution
The correct answer is Perfective maintenance
Key Points
- Perfective maintenance, refers to the modifications made to an information system to include features that are desirable but not strictly necessary.
- This type of maintenance focuses on enhancing the system's functionality and performance, making it more efficient, user-friendly, or capable of handling additional tasks.
- Unlike corrective or adaptive maintenance, which aim to fix known issues or adjust to new environments respectively, perfective maintenance is about improvement and optimization that goes beyond the basic requirements.
- It's about adding value to the system based on user feedback or anticipated needs, ensuring that the system remains relevant and continues to meet the evolving demands of its users.
Software Engineering Question 4:
In which testing approach are all system modules integrated simultaneously and then tested as a complete system?
Answer (Detailed Solution Below)
Software Engineering Question 4 Detailed Solution
The correct answer is Big-Bang testing
Key Points
- Big-Bang testing is an approach where the various components or modules of a system are integrated all at once, and then the entire system is tested as a whole.
- This approach does not involve incremental testing or integration of modules but waits until all components are ready for integration.
- While this method can be efficient in terms of planning, it might lead to difficulties in isolating and fixing defects since everything is integrated and tested simultaneously.
Software Engineering Question 5:
In system analysis and design SRD stands for
Answer (Detailed Solution Below)
Software Engineering Question 5 Detailed Solution
The correct answer is Structured requirements definition
Key Points
- SRD can stand for either Structured Requirements Definition or Software Requirements Definition, with both options being correct and receiving marks.
- Here are some important points: Structured Requirements Definition is a data-driven, output-oriented methodology that follows a bottom-up approach.
Top Software Engineering MCQ Objective Questions
MS Office, Photoshop and Animagic are examples of:
Answer (Detailed Solution Below)
Software Engineering Question 6 Detailed Solution
Download Solution PDFThe correct answer is Application software
Important Points
- MS Office, Photoshop, and Animagic are examples of Application software
- MS Office is a software bundle provided by Microsoft.
- It includes software like MS Word, MS Excel, MS Powerpoint, MS Outlook, MS Access, MS One Note, and others.
Additional Information
- Photoshop is a powerful photo editing tool by Adobe.
- An Operating System (OS) is an interface between a computer user and computer hardware.
- An operating system is software that performs all the basic tasks like file management, memory management, process management, handling input and output, and controlling peripheral devices such as disk drives and printers.
Which of the following represents the life-cycle of software development ?
Answer (Detailed Solution Below)
Software Engineering Question 7 Detailed Solution
Download Solution PDFConcept:
Software development life cycle is the logical process of developing a system that satisfies customer needs and can be developed within the predefined schedule and cost.
Explanation:
Various phases of the software development life cycle are :
1) Analysis: First thing is to gather and analyze the requirements of the system. The information domain, function, behavioral requirements of the system are understood. These requirements are then well documented.
2) Design: After collecting and analyzing all necessary requirements, design architecture is prepared.
3) Coding: After the design, one can develop the code for the system using some programming language. During this, design is translated into a machine-readable form.
4) Testing: It is done to uncover the errors and fix the bugs.
5) Maintenance: Sometimes errors may get produced after system installation and sometimes the requirements get changed. At that time, the maintenance of the system is needed.
Which of the following is/are the phases of system development life cycle?
Answer (Detailed Solution Below)
Software Engineering Question 8 Detailed Solution
Download Solution PDFConcept:
System development life cycle (SDLC) is a process followed for a software project, within a software organization. It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software.
The life cycle defines a methodology for improving the quality of software and the overall development process.
Phases of SDLC
Feasibility study |
↓ |
Requirements analysis and specification |
↓ |
Design |
↓ |
Coding and unit testing |
↓ |
Integration and system testing |
↓ |
Maintenance |
Therefore, all options are correct
A multimedia project is said to be _________ and user-interactive when users are given navigational control.
Answer (Detailed Solution Below)
Software Engineering Question 9 Detailed Solution
Download Solution PDFConcept:
Mutlimedia means combination of text, audio, video, graphics, and animation. Mutlimedia project are the multimedia materials which are presented on computer screen.
Explanation:
Phases of a multimedia project are : planning, designing , testing and delivering.
Some points about multimedia project :
- Interactive mutlimedia gives the navigational controls to the user. It control what elements are to be delivered.
- It requires creative skills, tools and organization talent to create mutlimedia projects.
- There are two categories in multimedia : linear and non - linear.
- Linear multimedia is without any navigational control example cinema.
- Non - linear provides user interactivity to control progress. Example : computer game.
- Mutlimedia system must be integrated, handled digitally and usually interactive.
- Mutlimedia can be delivered using optical disk, web or distributed network.
Suppose a cloud contains software stack such as Operating system, Application software, etc. This model is referred as _________ model.
Answer (Detailed Solution Below)
Software Engineering Question 10 Detailed Solution
Download Solution PDFConcept:
Cloud computing provides a flexible environment to use resources at low cost. Cloud computing is a web based, distributed computing using which information, resources and software are distributed among different users. All the resources are on web, so this is the reason that there come various ways to provide services.
Explanation:
Cloud computing is internet-based computing where customers do not own the physical infrastructure. All services are on internet. Various services in cloud computing model are as follows:
SaaS – It stands for software as a service. In this, application is hosted as a service to customers who access it via internet. It provides packaged business process offerings that live in cloud. In this, cloud contains stack such as operating system, application software etc.
IaaS – It stands for infrastructure as a service. It is responsible for providing virtualized computing resources, network resources with IaaS users assemble their own virtual cluster on which they are responsible for installing, maintaining, and executing their own software stack.
PaaS – It stands for platform as a service. It supplies all the resources required to build applications and services completely by using internet without having to download or install software. It includes application design, development and hosting.
Regression testing is primarily related to
Answer (Detailed Solution Below)
Software Engineering Question 11 Detailed Solution
Download Solution PDFRegression testing is a type of maintenance testing. Maintenance testing encompasses all testing activities that are performed to identify and fix defects in an existing software system, and regression testing is a specific aspect of this process.
Key Points Maintenance testing is generally divided into two categories:
Corrective Maintenance Testing: This involves testing to identify and fix defects or issues in the software after it has been deployed.
Adaptive Maintenance Testing: This type of maintenance testing is carried out to adapt the software to changes in the environment, such as changes in hardware, software, or regulatory requirements.
Regression testing falls under both corrective and adaptive maintenance testing. When new code is added or existing code is modified, regression testing is performed to ensure that the changes do not negatively impact the existing functionality. This helps in maintaining the reliability and integrity of the software over time.
Software consists of __________.
Answer (Detailed Solution Below)
Software Engineering Question 12 Detailed Solution
Download Solution PDFConcept :
The software comprises the entire set of programs, procedures, and routines associated with the operation of a computer system. The term was coined to differentiate these instructions from hardware—i.e., the physical components of a computer system.
Programs + documentation + operating procedures is the correct answer.
What is the availability of the software with following reliability figures
Mean Time Between Failure (MTBF) is 20 days
Mean Time To Repair (MTTR) is 20 hoursAnswer (Detailed Solution Below)
Software Engineering Question 13 Detailed Solution
Download Solution PDFExplanation:
- Mean time between failures is the average time between failures and not the average time something works then fails.
- Mean time between failure (MTBF) = \(\frac{{total\;uptime}}{{number\;of\;breakdowns}}\)
- Mean time to repair is the average time taken to repair something.
- Mean time to repair (MTTR) = \(\frac{{total\;downtime}}{{number\;of\;breakdowns}}\)
Availability = \(\frac{{total\;uptime}}{{\left( {total\;uptime + total\;downtime} \right)}}\)
= \(\frac{{MTBF}}{{\left( {MTBF + MTTR} \right)}} \times 100\;\;\;\;\;\;\;\;\;\;\backslash \backslash percentage\;\)
= \(\frac{{20*24}}{{\left( {20*24 + 20} \right)}} \times 100\)
= 0.96 × 100 = 96%
Important Point:
A Company has a choice of two languages L1 and L2 to develop a software for their client. Number of LOC required to develop an application in L2, is thrice the LOC in language L1. Also, software has to be maintained for next 10 years. Various parameters for two languages. are given below to decide which language should be preferred for development.
PARAMETER |
L1 |
L2 |
Man-year needed for development |
LOC/1000 |
LOC/1000 |
Development cost |
Rs. 70,000 |
Rs. 90,000 |
Cost of Maintenance per year |
Rs. 1,00,000 |
Rs. 40,000 |
Total cost of project include cost of development and maintenance. What is the LOC for L1 for which cost of developing the software with both languages must be same ?
Answer (Detailed Solution Below)
Software Engineering Question 14 Detailed Solution
Download Solution PDFThe correct answer is option 3
Formula:
The total cost of the project = Total development cost + Total maintenance cost
Calculation:
Let p1 be the LOC using L1 and p2 be the LOC using L2.
Total cost of the project using L1 = (p1/1000) x 70,000 + (10 x 1,00,000) = 70p1 + 10,00,000
Total cost of the project using L2 = (p2/1000) x 90,000 + (10 x 40,000) = 90p2 + 4,00,000
Given that p2 = 3xp1
=>70p1 + 10,00,000 = 90p2 + 4,00,000
=>70p1 + 10,00,000 = 270p1 + 4,00,000
=> 200p1 = 6,00,000
=> p1 = 3000
Alpha and Beta testing are forms of
Answer (Detailed Solution Below)
Software Engineering Question 15 Detailed Solution
Download Solution PDFThe correct answer: Acceptance Testing
Alpha and Beta testing are forms of:
Acceptance Testing
Important Points
Alpha Testing is usually done by internal staff before the product is released to external testers. It is a type of acceptance testing that's done in a lab environment and not by the end users. It helps identify all possible issues and problems in the system before it goes for Beta testing.
Beta Testing is performed by actual users or potential customers in their own environment. It is the second phase of testing in which a sampling of the intended audience tries the product out before it is officially released to the general public. This is the final test before shipping the product. Problems that were not discovered during Alpha testing may be identified here.
These types of tests are done to make sure that the system is working as expected and will be accepted by the end users. They are types of User Acceptance Testing (UAT) and are very important in software development processes.