- UNIT-I
.
Unit-1 MCQ's
-Refinement and review
Unit-2 MCQ's
Software Engineering Unit-V MCQ
Part -1
1. What is software maintenance?
a) The process of writing new software
b) The modification of software after deployment to correct faults or improve performance
c) The process of software testing
d) The initial development of software
✅ Answer: b) The modification of software after deployment to correct faults or improve performance
a) The process of writing new software
b) The modification of software after deployment to correct faults or improve performance
c) The process of software testing
d) The initial development of software
✅ Answer: b) The modification of software after deployment to correct faults or improve performance
2. Which of the following is NOT a type of software maintenance?
a) Corrective maintenance
b) Adaptive maintenance
c) Destructive maintenance
d) Perfective maintenance
✅ Answer: c) Destructive maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Destructive maintenance
d) Perfective maintenance
✅ Answer: c) Destructive maintenance
3. Which type of maintenance focuses on fixing bugs and errors found after software deployment?
a) Adaptive maintenance
b) Preventive maintenance
c) Corrective maintenance
d) Perfective maintenance
✅ Answer: c) Corrective maintenance
a) Adaptive maintenance
b) Preventive maintenance
c) Corrective maintenance
d) Perfective maintenance
✅ Answer: c) Corrective maintenance
4. What is the goal of adaptive maintenance?
a) To improve system performance
b) To fix software defects
c) To adapt software to changes in the environment (e.g., new operating systems, hardware, regulations)
d) To delete outdated code
✅ Answer: c) To adapt software to changes in the environment (e.g., new operating systems, hardware, regulations)
a) To improve system performance
b) To fix software defects
c) To adapt software to changes in the environment (e.g., new operating systems, hardware, regulations)
d) To delete outdated code
✅ Answer: c) To adapt software to changes in the environment (e.g., new operating systems, hardware, regulations)
5. Which maintenance type enhances existing functionalities without changing system behavior?
a) Preventive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) Adaptive maintenance
✅ Answer: b) Perfective maintenance
a) Preventive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) Adaptive maintenance
✅ Answer: b) Perfective maintenance
6. Preventive maintenance aims to:
a) Identify and fix potential issues before they cause failures
b) Reduce system performance
c) Introduce new features
d) Replace old software with new versions
✅ Answer: a) Identify and fix potential issues before they cause failures
a) Identify and fix potential issues before they cause failures
b) Reduce system performance
c) Introduce new features
d) Replace old software with new versions
✅ Answer: a) Identify and fix potential issues before they cause failures
7. Which phase of the software lifecycle does maintenance belong to?
a) Requirements gathering
b) Software development
c) Post-deployment phase
d) Testing phase
✅ Answer: c) Post-deployment phase
a) Requirements gathering
b) Software development
c) Post-deployment phase
d) Testing phase
✅ Answer: c) Post-deployment phase
8. What is software reengineering in maintenance?
a) The process of retiring software
b) The modification of software to improve its structure without changing functionality
c) The process of creating new software
d) The removal of unnecessary features
✅ Answer: b) The modification of software to improve its structure without changing functionality
a) The process of retiring software
b) The modification of software to improve its structure without changing functionality
c) The process of creating new software
d) The removal of unnecessary features
✅ Answer: b) The modification of software to improve its structure without changing functionality
9. Which maintenance activity involves analyzing software performance to determine if improvements are needed?
a) Code refactoring
b) Software evaluation
c) Debugging
d) Software retirement
✅ Answer: b) Software evaluation
a) Code refactoring
b) Software evaluation
c) Debugging
d) Software retirement
✅ Answer: b) Software evaluation
10. What is the purpose of software configuration management (SCM) in maintenance?
a) To create new software applications
b) To track and control changes in software systems
c) To test software before deployment
d) To eliminate software bugs permanently
✅ Answer: b) To track and control changes in software systems
a) To create new software applications
b) To track and control changes in software systems
c) To test software before deployment
d) To eliminate software bugs permanently
✅ Answer: b) To track and control changes in software systems
11. Which of the following is a challenge in software maintenance?
a) Increasing system complexity over time
b) Decreasing system usability
c) Lack of debugging tools
d) Eliminating security updates
✅ Answer: a) Increasing system complexity over time
a) Increasing system complexity over time
b) Decreasing system usability
c) Lack of debugging tools
d) Eliminating security updates
✅ Answer: a) Increasing system complexity over time
12. What is "legacy software" in the context of software maintenance?
a) Newly developed software
b) Outdated software that is still in use
c) Software that has never been updated
d) Software with no documentation
✅ Answer: b) Outdated software that is still in use
a) Newly developed software
b) Outdated software that is still in use
c) Software that has never been updated
d) Software with no documentation
✅ Answer: b) Outdated software that is still in use
13. What is the primary purpose of impact analysis in software maintenance?
a) To identify areas affected by software changes
b) To increase maintenance costs
c) To rewrite entire codebases
d) To reduce debugging efforts
✅ Answer: a) To identify areas affected by software changes
a) To identify areas affected by software changes
b) To increase maintenance costs
c) To rewrite entire codebases
d) To reduce debugging efforts
✅ Answer: a) To identify areas affected by software changes
14. What is regression testing in software maintenance?
a) Testing to verify new features
b) Testing to check if new changes introduced new bugs
c) Testing to optimize system performance
d) Testing to remove security vulnerabilities
✅ Answer: b) Testing to check if new changes introduced new bugs
a) Testing to verify new features
b) Testing to check if new changes introduced new bugs
c) Testing to optimize system performance
d) Testing to remove security vulnerabilities
✅ Answer: b) Testing to check if new changes introduced new bugs
15. What is a software patch?
a) A completely new software version
b) A small update applied to fix specific issues in the software
c) A method for deleting old features
d) A replacement for existing software
✅ Answer: b) A small update applied to fix specific issues in the software
a) A completely new software version
b) A small update applied to fix specific issues in the software
c) A method for deleting old features
d) A replacement for existing software
✅ Answer: b) A small update applied to fix specific issues in the software
16. Which metric is commonly used to evaluate software maintenance effectiveness?
a) System latency
b) Mean Time to Repair (MTTR)
c) Software download speed
d) Number of software users
✅ Answer: b) Mean Time to Repair (MTTR)
a) System latency
b) Mean Time to Repair (MTTR)
c) Software download speed
d) Number of software users
✅ Answer: b) Mean Time to Repair (MTTR)
17. What is the effect of poor documentation on software maintenance?
a) Reduces maintenance costs
b) Increases difficulty in understanding and modifying the software
c) Eliminates debugging efforts
d) Speeds up maintenance processes
✅ Answer: b) Increases difficulty in understanding and modifying the software
a) Reduces maintenance costs
b) Increases difficulty in understanding and modifying the software
c) Eliminates debugging efforts
d) Speeds up maintenance processes
✅ Answer: b) Increases difficulty in understanding and modifying the software
18. Why is maintainability an important quality attribute in software?
a) It reduces the need for software testing
b) It ensures that software can be easily modified and updated
c) It eliminates the need for security updates
d) It speeds up initial development
✅ Answer: b) It ensures that software can be easily modified and updated
a) It reduces the need for software testing
b) It ensures that software can be easily modified and updated
c) It eliminates the need for security updates
d) It speeds up initial development
✅ Answer: b) It ensures that software can be easily modified and updated
19. Which factor increases the cost of software maintenance?
a) High code reusability
b) Well-structured documentation
c) Poorly written and complex code
d) Proper version control
✅ Answer: c) Poorly written and complex code
a) High code reusability
b) Well-structured documentation
c) Poorly written and complex code
d) Proper version control
✅ Answer: c) Poorly written and complex code
20. What is "software aging" in maintenance?
a) The process of developing new software
b) The gradual decline in software performance due to outdated technology
c) The increasing efficiency of software over time
d) The process of adding new features
✅ Answer: b) The gradual decline in software performance due to outdated technology
a) The process of developing new software
b) The gradual decline in software performance due to outdated technology
c) The increasing efficiency of software over time
d) The process of adding new features
✅ Answer: b) The gradual decline in software performance due to outdated technology
21. What is "software retirement" in the maintenance phase?
a) The process of decommissioning software when it is no longer useful
b) The process of upgrading software
c) The process of making software open-source
d) The process of migrating software to a new platform
✅ Answer: a) The process of decommissioning software when it is no longer useful
a) The process of decommissioning software when it is no longer useful
b) The process of upgrading software
c) The process of making software open-source
d) The process of migrating software to a new platform
✅ Answer: a) The process of decommissioning software when it is no longer useful
22. What is the main reason for software maintenance failure?
a) Clear requirements
b) Lack of proper documentation and version control
c) Effective testing strategies
d) Strong development teams
✅ Answer: b) Lack of proper documentation and version control
a) Clear requirements
b) Lack of proper documentation and version control
c) Effective testing strategies
d) Strong development teams
✅ Answer: b) Lack of proper documentation and version control
23. What does refactoring involve in software maintenance?
a) Rewriting the entire software
b) Improving code structure without changing its functionality
c) Changing the software interface
d) Adding security vulnerabilities
✅ Answer: b) Improving code structure without changing its functionality
a) Rewriting the entire software
b) Improving code structure without changing its functionality
c) Changing the software interface
d) Adding security vulnerabilities
✅ Answer: b) Improving code structure without changing its functionality
24. Which testing method is commonly used in software maintenance?
a) Alpha testing
b) Regression testing
c) Beta testing
d) Functional testing
✅ Answer: b) Regression testing
a) Alpha testing
b) Regression testing
c) Beta testing
d) Functional testing
✅ Answer: b) Regression testing
25. Why do software updates and patches need to be tested before deployment?
a) To ensure they do not introduce new defects
b) To slow down the release process
c) To prevent software from running
d) To remove all features
✅ Answer: a) To ensure they do not introduce new defects
PART -2
a) To ensure they do not introduce new defects
b) To slow down the release process
c) To prevent software from running
d) To remove all features
✅ Answer: a) To ensure they do not introduce new defects
PART -2
1. Why is software maintenance necessary?
a) To improve the user interface of the software
b) To ensure the software continues to function correctly and efficiently after deployment
c) To remove software documentation
d) To reduce software functionality
✅ Answer: b) To ensure the software continues to function correctly and efficiently after deployment
a) To improve the user interface of the software
b) To ensure the software continues to function correctly and efficiently after deployment
c) To remove software documentation
d) To reduce software functionality
✅ Answer: b) To ensure the software continues to function correctly and efficiently after deployment
2. What is the primary goal of software maintenance?
a) To increase software complexity
b) To modify and improve software after delivery
c) To rewrite software from scratch
d) To eliminate the need for testing
✅ Answer: b) To modify and improve software after delivery
a) To increase software complexity
b) To modify and improve software after delivery
c) To rewrite software from scratch
d) To eliminate the need for testing
✅ Answer: b) To modify and improve software after delivery
3. Which of the following is NOT a reason for software maintenance?
a) Fixing software defects
b) Adapting to a new hardware or software environment
c) Adding new features to meet user needs
d) Developing a new software system
✅ Answer: d) Developing a new software system
a) Fixing software defects
b) Adapting to a new hardware or software environment
c) Adding new features to meet user needs
d) Developing a new software system
✅ Answer: d) Developing a new software system
4. What type of software maintenance is performed to fix software bugs and errors?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: b) Corrective maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: b) Corrective maintenance
5. When a company updates software to support a new operating system, what type of maintenance is this?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
6. If software performance is improved without adding new functionality, what type of maintenance is performed?
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: b) Perfective maintenance
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: b) Perfective maintenance
7. What is the purpose of preventive maintenance?
a) To fix bugs after they occur
b) To reduce the likelihood of future failures
c) To slow down system updates
d) To remove outdated software features
✅ Answer: b) To reduce the likelihood of future failures
a) To fix bugs after they occur
b) To reduce the likelihood of future failures
c) To slow down system updates
d) To remove outdated software features
✅ Answer: b) To reduce the likelihood of future failures
8. What is the reason for software maintenance when security vulnerabilities are patched?
a) Perfective maintenance
b) Adaptive maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
a) Perfective maintenance
b) Adaptive maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
9. A software update is made to comply with new government regulations. This is an example of:
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
10. What is a major challenge in software maintenance?
a) Lack of user feedback
b) Increased software complexity over time
c) High availability of skilled developers
d) Software that never changes
✅ Answer: b) Increased software complexity over time
a) Lack of user feedback
b) Increased software complexity over time
c) High availability of skilled developers
d) Software that never changes
✅ Answer: b) Increased software complexity over time
11. What type of maintenance is applied when modifying software to improve system efficiency?
a) Adaptive maintenance
b) Preventive maintenance
c) Perfective maintenance
d) Corrective maintenance
✅ Answer: c) Perfective maintenance
a) Adaptive maintenance
b) Preventive maintenance
c) Perfective maintenance
d) Corrective maintenance
✅ Answer: c) Perfective maintenance
12. Which of the following is an example of corrective maintenance?
a) Upgrading a software application to work with new hardware
b) Fixing a bug that causes system crashes
c) Improving the speed of a database query
d) Adding new security features
✅ Answer: b) Fixing a bug that causes system crashes
a) Upgrading a software application to work with new hardware
b) Fixing a bug that causes system crashes
c) Improving the speed of a database query
d) Adding new security features
✅ Answer: b) Fixing a bug that causes system crashes
13. What is the main reason for software maintenance in large-scale systems?
a) The need for better documentation
b) Changes in user requirements, hardware, and regulations
c) The elimination of coding practices
d) The removal of all system updates
✅ Answer: b) Changes in user requirements, hardware, and regulations
a) The need for better documentation
b) Changes in user requirements, hardware, and regulations
c) The elimination of coding practices
d) The removal of all system updates
✅ Answer: b) Changes in user requirements, hardware, and regulations
14. Which factor can increase the cost of software maintenance?
a) Well-documented code
b) Simple program structure
c) Poorly structured and complex code
d) Effective debugging tools
✅ Answer: c) Poorly structured and complex code
a) Well-documented code
b) Simple program structure
c) Poorly structured and complex code
d) Effective debugging tools
✅ Answer: c) Poorly structured and complex code
15. What is a common reason for perfective maintenance?
a) Removing software functionality
b) Enhancing user experience and software performance
c) Fixing critical security flaws
d) Making the system compatible with new operating systems
✅ Answer: b) Enhancing user experience and software performance
a) Removing software functionality
b) Enhancing user experience and software performance
c) Fixing critical security flaws
d) Making the system compatible with new operating systems
✅ Answer: b) Enhancing user experience and software performance
16. Which factor contributes to increasing software maintenance costs?
a) Modular and maintainable code
b) Outdated and undocumented software
c) Standardized coding practices
d) Automated testing tools
✅ Answer: b) Outdated and undocumented software
a) Modular and maintainable code
b) Outdated and undocumented software
c) Standardized coding practices
d) Automated testing tools
✅ Answer: b) Outdated and undocumented software
17. If a company upgrades a web application to use cloud computing, what type of maintenance is this?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
18. What is the purpose of software reengineering in maintenance?
a) To replace old software with a completely new system
b) To update software structure and improve maintainability
c) To eliminate software documentation
d) To stop all software maintenance activities
✅ Answer: b) To update software structure and improve maintainability
a) To replace old software with a completely new system
b) To update software structure and improve maintainability
c) To eliminate software documentation
d) To stop all software maintenance activities
✅ Answer: b) To update software structure and improve maintainability
19. What maintenance activity focuses on identifying potential system failures before they happen?
a) Adaptive maintenance
b) Preventive maintenance
c) Perfective maintenance
d) Corrective maintenance
✅ Answer: b) Preventive maintenance
a) Adaptive maintenance
b) Preventive maintenance
c) Perfective maintenance
d) Corrective maintenance
✅ Answer: b) Preventive maintenance
20. Which of the following factors commonly drives the need for adaptive maintenance?
a) Changes in the user interface
b) New business rules or government regulations
c) Fixing software defects
d) Improving software documentation
✅ Answer: b) New business rules or government regulations
a) Changes in the user interface
b) New business rules or government regulations
c) Fixing software defects
d) Improving software documentation
✅ Answer: b) New business rules or government regulations
21. What type of maintenance helps prevent system crashes?
a) Preventive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Adaptive maintenance
✅ Answer: a) Preventive maintenance
a) Preventive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Adaptive maintenance
✅ Answer: a) Preventive maintenance
22. Which maintenance type focuses on improving code quality and structure?
a) Perfective maintenance
b) Adaptive maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
a) Perfective maintenance
b) Adaptive maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
23. A company updates its mobile app to be compatible with a new version of iOS. What maintenance is this?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
24. What is the purpose of refactoring in software maintenance?
a) To improve code structure without changing functionality
b) To remove security vulnerabilities
c) To add new features
d) To convert software to a different programming language
✅ Answer: a) To improve code structure without changing functionality
a) To improve code structure without changing functionality
b) To remove security vulnerabilities
c) To add new features
d) To convert software to a different programming language
✅ Answer: a) To improve code structure without changing functionality
25. What factor can reduce the need for frequent corrective maintenance?
a) Using well-defined coding standards and testing methods
b) Avoiding software updates
c) Removing software documentation
d) Eliminating software testing
✅ Answer: a) Using well-defined coding standards and testing methods
PART-3
a) Using well-defined coding standards and testing methods
b) Avoiding software updates
c) Removing software documentation
d) Eliminating software testing
✅ Answer: a) Using well-defined coding standards and testing methods
PART-3
1. What is the primary purpose of software maintenance?
a) To modify and improve software after deployment
b) To develop new software from scratch
c) To eliminate all software updates
d) To reduce software security
✅ Answer: a) To modify and improve software after deployment
a) To modify and improve software after deployment
b) To develop new software from scratch
c) To eliminate all software updates
d) To reduce software security
✅ Answer: a) To modify and improve software after deployment
2. Which type of software maintenance is applied when fixing software bugs?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: b) Corrective maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: b) Corrective maintenance
3. What is adaptive maintenance mainly focused on?
a) Fixing software defects
b) Modifying software to work in a new environment
c) Improving system efficiency
d) Removing outdated code
✅ Answer: b) Modifying software to work in a new environment
a) Fixing software defects
b) Modifying software to work in a new environment
c) Improving system efficiency
d) Removing outdated code
✅ Answer: b) Modifying software to work in a new environment
4. If a company updates a system to be compatible with a new operating system, what type of maintenance is this?
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: b) Adaptive maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: b) Adaptive maintenance
5. What is perfective maintenance aimed at?
a) Enhancing software performance and usability
b) Fixing existing software bugs
c) Adapting software to a new environment
d) Preventing future failures
✅ Answer: a) Enhancing software performance and usability
a) Enhancing software performance and usability
b) Fixing existing software bugs
c) Adapting software to a new environment
d) Preventing future failures
✅ Answer: a) Enhancing software performance and usability
6. A software bug is identified and fixed after deployment. This is an example of:
a) Adaptive maintenance
b) Preventive maintenance
c) Perfective maintenance
d) Corrective maintenance
✅ Answer: d) Corrective maintenance
a) Adaptive maintenance
b) Preventive maintenance
c) Perfective maintenance
d) Corrective maintenance
✅ Answer: d) Corrective maintenance
7. If a company enhances the speed of a software application without changing its functionality, what type of maintenance is performed?
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: b) Perfective maintenance
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) Preventive maintenance
✅ Answer: b) Perfective maintenance
8. A business updates its payroll software due to new tax regulations. What type of maintenance is required?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Adaptive maintenance
9. What is the main goal of corrective maintenance?
a) To improve the software performance
b) To fix defects and errors in the system
c) To modify the software for a new environment
d) To add new features
✅ Answer: b) To fix defects and errors in the system
a) To improve the software performance
b) To fix defects and errors in the system
c) To modify the software for a new environment
d) To add new features
✅ Answer: b) To fix defects and errors in the system
10. Which of the following is NOT a type of software maintenance?
a) Corrective maintenance
b) Adaptive maintenance
c) Predictive maintenance
d) Perfective maintenance
✅ Answer: c) Predictive maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Predictive maintenance
d) Perfective maintenance
✅ Answer: c) Predictive maintenance
11. What type of maintenance focuses on modifying the software due to changes in user requirements?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: c) Perfective maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: c) Perfective maintenance
12. Which maintenance activity ensures that software remains compatible with evolving technologies?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
13. Which type of maintenance is applied when improving a software’s UI for better usability?
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: c) Perfective maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: c) Perfective maintenance
14. If a company fixes a major security vulnerability after deployment, this is an example of:
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) None of the above
✅ Answer: c) Corrective maintenance
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) None of the above
✅ Answer: c) Corrective maintenance
15. Which of the following maintenance activities is performed proactively to prevent failures?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
16. When a software update is made to support a new database management system, it falls under:
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
17. Which type of maintenance involves refining code for better efficiency and readability?
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: c) Perfective maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: c) Perfective maintenance
18. Fixing a broken link in a web application is an example of:
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Corrective maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Corrective maintenance
19. Making a mobile app responsive for different screen sizes is an example of:
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: c) Perfective maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: c) Perfective maintenance
20. If a company migrates an application from on-premise servers to the cloud, what type of maintenance is required?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Adaptive maintenance
21. Which of the following is a key characteristic of adaptive maintenance?
a) It fixes bugs and defects
b) It adapts software to changing requirements
c) It enhances user experience
d) It prevents software failures
✅ Answer: b) It adapts software to changing requirements
a) It fixes bugs and defects
b) It adapts software to changing requirements
c) It enhances user experience
d) It prevents software failures
✅ Answer: b) It adapts software to changing requirements
22. If software performance degrades over time, what type of maintenance is required?
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: c) Perfective maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: c) Perfective maintenance
23. Which of the following maintenance types is commonly required due to government regulations?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Adaptive maintenance
24. Resolving a software defect that causes incorrect calculations is an example of:
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: b) Corrective maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: b) Corrective maintenance
25. Improving system security to prevent cyber threats falls under:
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: d) Preventive maintenance
26. Updating software to support new hardware components is an example of:
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: a) Adaptive maintenance
27. Which maintenance type focuses on improving system usability and user experience?
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) None of the above
✅ Answer: b) Perfective maintenance
a) Adaptive maintenance
b) Perfective maintenance
c) Corrective maintenance
d) None of the above
✅ Answer: b) Perfective maintenance
28. Which of the following is an example of preventive maintenance?
a) Fixing a memory leak after it causes system crashes
b) Updating security patches to prevent potential threats
c) Improving the user interface for better accessibility
d) Changing the database structure for performance improvements
✅ Answer: b) Updating security patches to prevent potential threats
a) Fixing a memory leak after it causes system crashes
b) Updating security patches to prevent potential threats
c) Improving the user interface for better accessibility
d) Changing the database structure for performance improvements
✅ Answer: b) Updating security patches to prevent potential threats
29. Fixing an issue that causes software crashes after a new version release falls under:
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Corrective maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Corrective maintenance
30. Which type of maintenance deals with adding new features to software to enhance its functionality?
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: c) Perfective maintenance
PART-4
a) Adaptive maintenance
b) Corrective maintenance
c) Perfective maintenance
d) Preventive maintenance
✅ Answer: c) Perfective maintenance
PART-4
1. What does software maintainability primarily focus on?
a) Enhancing software security
b) Making software easier to modify and update
c) Increasing software size
d) Reducing software usability
✅ Answer: b) Making software easier to modify and update
a) Enhancing software security
b) Making software easier to modify and update
c) Increasing software size
d) Reducing software usability
✅ Answer: b) Making software easier to modify and update
2. Which of the following is NOT a key factor affecting software maintainability?
a) Code readability
b) Complexity
c) Frequent hardware failures
d) Modularity
✅ Answer: c) Frequent hardware failures
a) Code readability
b) Complexity
c) Frequent hardware failures
d) Modularity
✅ Answer: c) Frequent hardware failures
3. Which design principle helps improve maintainability by dividing software into independent modules?
a) Coupling
b) Modularity
c) Hard coding
d) Code duplication
✅ Answer: b) Modularity
a) Coupling
b) Modularity
c) Hard coding
d) Code duplication
✅ Answer: b) Modularity
4. What is the main purpose of code refactoring?
a) To add new features
b) To improve code readability and maintainability without changing functionality
c) To increase software complexity
d) To remove old code from the system
✅ Answer: b) To improve code readability and maintainability without changing functionality
a) To add new features
b) To improve code readability and maintainability without changing functionality
c) To increase software complexity
d) To remove old code from the system
✅ Answer: b) To improve code readability and maintainability without changing functionality
5. Which software design technique reduces dependencies between different modules?
a) High coupling
b) Low cohesion
c) Low coupling
d) Code duplication
✅ Answer: c) Low coupling
a) High coupling
b) Low cohesion
c) Low coupling
d) Code duplication
✅ Answer: c) Low coupling
6. How does documentation contribute to software maintainability?
a) By making the software more complex
b) By providing information for future modifications and debugging
c) By increasing software size
d) By slowing down development
✅ Answer: b) By providing information for future modifications and debugging
a) By making the software more complex
b) By providing information for future modifications and debugging
c) By increasing software size
d) By slowing down development
✅ Answer: b) By providing information for future modifications and debugging
7. Which of the following practices improves maintainability by allowing developers to track changes over time?
a) Code obfuscation
b) Version control systems
c) Increasing coupling
d) Reducing testing
✅ Answer: b) Version control systems
a) Code obfuscation
b) Version control systems
c) Increasing coupling
d) Reducing testing
✅ Answer: b) Version control systems
8. What is the effect of high cohesion in software design?
a) It improves maintainability
b) It increases code complexity
c) It makes debugging difficult
d) It reduces code readability
✅ Answer: a) It improves maintainability
a) It improves maintainability
b) It increases code complexity
c) It makes debugging difficult
d) It reduces code readability
✅ Answer: a) It improves maintainability
9. Why should software design follow coding standards?
a) To make the code harder to understand
b) To ensure consistency and maintainability
c) To reduce performance
d) To limit scalability
✅ Answer: b) To ensure consistency and maintainability
a) To make the code harder to understand
b) To ensure consistency and maintainability
c) To reduce performance
d) To limit scalability
✅ Answer: b) To ensure consistency and maintainability
10. Which of the following techniques is used to maintain a clean and organized codebase?
a) Hard coding
b) Code refactoring
c) Ignoring comments
d) Avoiding modularization
✅ Answer: b) Code refactoring
a) Hard coding
b) Code refactoring
c) Ignoring comments
d) Avoiding modularization
✅ Answer: b) Code refactoring
11. How does test-driven development (TDD) improve maintainability?
a) By making code changes easier to test
b) By increasing development time
c) By reducing code readability
d) By eliminating the need for documentation
✅ Answer: a) By making code changes easier to test
a) By making code changes easier to test
b) By increasing development time
c) By reducing code readability
d) By eliminating the need for documentation
✅ Answer: a) By making code changes easier to test
12. Which type of maintenance is reduced by writing maintainable code?
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Corrective maintenance
a) Corrective maintenance
b) Adaptive maintenance
c) Perfective maintenance
d) None of the above
✅ Answer: a) Corrective maintenance
13. What is a key advantage of using modular programming?
a) Increases dependencies
b) Makes debugging easier
c) Reduces code reuse
d) Increases maintenance costs
✅ Answer: b) Makes debugging easier
a) Increases dependencies
b) Makes debugging easier
c) Reduces code reuse
d) Increases maintenance costs
✅ Answer: b) Makes debugging easier
14. How does automated testing help in software maintainability?
a) By reducing the need for documentation
b) By making debugging more difficult
c) By ensuring that new changes do not break existing functionality
d) By increasing software complexity
✅ Answer: c) By ensuring that new changes do not break existing functionality
a) By reducing the need for documentation
b) By making debugging more difficult
c) By ensuring that new changes do not break existing functionality
d) By increasing software complexity
✅ Answer: c) By ensuring that new changes do not break existing functionality
15. What is the role of encapsulation in maintainability?
a) It hides implementation details, reducing the risk of unintended changes
b) It makes code harder to read
c) It increases coupling between modules
d) It prevents code reuse
✅ Answer: a) It hides implementation details, reducing the risk of unintended changes
a) It hides implementation details, reducing the risk of unintended changes
b) It makes code harder to read
c) It increases coupling between modules
d) It prevents code reuse
✅ Answer: a) It hides implementation details, reducing the risk of unintended changes
16. Which of the following is a good practice to improve maintainability?
a) Using meaningful variable names
b) Writing long, complex functions
c) Avoiding documentation
d) Ignoring code reviews
✅ Answer: a) Using meaningful variable names
a) Using meaningful variable names
b) Writing long, complex functions
c) Avoiding documentation
d) Ignoring code reviews
✅ Answer: a) Using meaningful variable names
17. Why is consistent code formatting important?
a) It makes the code unreadable
b) It increases software complexity
c) It improves code readability and maintainability
d) It discourages collaboration
✅ Answer: c) It improves code readability and maintainability
a) It makes the code unreadable
b) It increases software complexity
c) It improves code readability and maintainability
d) It discourages collaboration
✅ Answer: c) It improves code readability and maintainability
18. What is the impact of high code duplication on maintainability?
a) It improves performance
b) It increases maintenance efforts
c) It makes debugging easier
d) It reduces testing requirements
✅ Answer: b) It increases maintenance efforts
a) It improves performance
b) It increases maintenance efforts
c) It makes debugging easier
d) It reduces testing requirements
✅ Answer: b) It increases maintenance efforts
19. What is the purpose of code comments?
a) To confuse future developers
b) To provide explanations for complex logic
c) To increase file size
d) To replace documentation
✅ Answer: b) To provide explanations for complex logic
a) To confuse future developers
b) To provide explanations for complex logic
c) To increase file size
d) To replace documentation
✅ Answer: b) To provide explanations for complex logic
20. Which of the following improves maintainability by breaking a large system into smaller, independent components?
a) Monolithic architecture
b) Microservices architecture
c) Hard coding
d) High coupling
✅ Answer: b) Microservices architecture
a) Monolithic architecture
b) Microservices architecture
c) Hard coding
d) High coupling
✅ Answer: b) Microservices architecture
21. What type of testing helps maintainability by ensuring existing features still work after changes?
a) Regression testing
b) Unit testing
c) Performance testing
d) Security testing
✅ Answer: a) Regression testing
a) Regression testing
b) Unit testing
c) Performance testing
d) Security testing
✅ Answer: a) Regression testing
22. Which of the following is a key maintainability metric?
a) Cyclomatic complexity
b) Lines of code
c) Database size
d) Number of users
✅ Answer: a) Cyclomatic complexity
a) Cyclomatic complexity
b) Lines of code
c) Database size
d) Number of users
✅ Answer: a) Cyclomatic complexity
23. Why should global variables be avoided for maintainability?
a) They make debugging more difficult
b) They increase performance
c) They improve readability
d) They reduce dependencies
✅ Answer: a) They make debugging more difficult
a) They make debugging more difficult
b) They increase performance
c) They improve readability
d) They reduce dependencies
✅ Answer: a) They make debugging more difficult
24. Which design principle encourages software components to be open for extension but closed for modification?
a) Open/Closed Principle
b) Single Responsibility Principle
c) Dependency Inversion Principle
d) Interface Segregation Principle
✅ Answer: a) Open/Closed Principle
a) Open/Closed Principle
b) Single Responsibility Principle
c) Dependency Inversion Principle
d) Interface Segregation Principle
✅ Answer: a) Open/Closed Principle
25. What does DRY (Don’t Repeat Yourself) help with in software design?
a) Reducing code duplication and improving maintainability
b) Making code complex
c) Increasing coupling
d) Avoiding modularization
✅ Answer: a) Reducing code duplication and improving maintainability
a) Reducing code duplication and improving maintainability
b) Making code complex
c) Increasing coupling
d) Avoiding modularization
✅ Answer: a) Reducing code duplication and improving maintainability
26. Which software development model is best suited for maintainable software?
a) Waterfall
b) Agile
c) Code-and-fix
d) Big Bang
✅ Answer: b) Agile
a) Waterfall
b) Agile
c) Code-and-fix
d) Big Bang
✅ Answer: b) Agile
27. What is the impact of poor exception handling on maintainability?
a) It makes debugging difficult
b) It improves error tracking
c) It reduces code complexity
d) It improves system stability
✅ Answer: a) It makes debugging difficult
a) It makes debugging difficult
b) It improves error tracking
c) It reduces code complexity
d) It improves system stability
✅ Answer: a) It makes debugging difficult
28. Which design pattern is commonly used to separate business logic from presentation?
a) Singleton
b) MVC (Model-View-Controller)
c) Factory
d) Observer
✅ Answer: b) MVC (Model-View-Controller)
a) Singleton
b) MVC (Model-View-Controller)
c) Factory
d) Observer
✅ Answer: b) MVC (Model-View-Controller)
29. How does using an Integrated Development Environment (IDE) help maintainability?
a) Provides code suggestions and debugging tools
b) Makes programming harder
c) Removes the need for testing
d) Increases software complexity
✅ Answer: a) Provides code suggestions and debugging tools
a) Provides code suggestions and debugging tools
b) Makes programming harder
c) Removes the need for testing
d) Increases software complexity
✅ Answer: a) Provides code suggestions and debugging tools
30. Why should code reviews be a regular practice?
a) To find and fix issues early
b) To slow down development
c) To make code harder to read
d) To eliminate the need for testing
✅ Answer: a) To find and fix issues early
a) To find and fix issues early
b) To slow down development
c) To make code harder to read
d) To eliminate the need for testing
✅ Answer: a) To find and fix issues early
No comments:
Post a Comment