Software Engineering Questions and Answers – Dependability Engineering

«
»

This set of Software Engineering Multiple Choice Questions & Answers (MCQs) focuses on “Dependability Engineering”.

1. Which of the following examples does not involve dependability engineering ?
a) Medical Systems
b) Power Systems
c) Library Management
d) Telecommunications
View Answer

Answer: c
Explanation: Software customers expect all software to be dependable. However, for non-critical applications such as certain management systems, they may be willing to accept some system failures.
advertisement

2. What is the term for development process organised such that faults in the system are detected and repaired before delivery to the customer ?
a) Fault Avoidance
b) Fault detection
c) Fault tolerance
d) None of the mentioned
View Answer

Answer: a
Explanation: In Fault Avoidance, the system is developed in such a way that human error is avoided and thus system faults are minimised.

3. What is the term for a system that is designed such that the faults in the delivered software do not result in system failure ?
a) Fault Avoidance
b) Fault detection
c) Fault tolerance
d) None of the mentioned
View Answer

Answer: c
Explanation: None.

4. Which process characteristic with respect to Dependability Engineering is mentioned by the statement: “The process should be understandable by people apart from process participants”?
a) Diverse
b) Documentable
c) Auditable
d) None of the mentioned
View Answer

Answer: c
Explanation: It means that process standards are being followed and make suggestions for process improvement.

5. Which of the following is not a Protection system ?
a) System to stop a train if it passes a red light
b) System to indicate not returning of the library book
c) System to shut down a reactor if temperature/pressure are too high
d) None of the mentioned
View Answer

Answer: b
Explanation: A Protection system is a specialized system that is associated with some other control system, which can take emergency action if a failure occurs.
advertisement

6. The use of a well-defined, repeatable process is essential if faults in a system are to be minimized.
a) True
b) False
View Answer

Answer: a
Explanation: The answer is self explanatory.

7. Which of the following is a Strategy to achieve Software diversity ?
a) Different programming languages
b) Different design methods and tools
c) Explicit specification of different algorithms
d) All of the mentioned
View Answer

Answer: d
Explanation: Diversity means to provide the same functionality in different ways so that critical components of a dependable system will not fail in the same way.

8. Exception handling is a mechanism to provide some fault avoidance.
a) True
b) False
View Answer

Answer: b
Explanation: Exception handling is a mechanism to provide some fault tolerance.

9. Which of the following is a bad practice of Dependable programming ?
a) Limit the visibility of information in a program
b) Check array bounds
c) Check all inputs for validity
d) None of the mentioned
View Answer

Answer: d
Explanation: All the options are good practices to achieve Dependability Engineering.
advertisement

10. What is a Range check?
a) Check that the input does not exceed some maximum size e.g. 40 characters for a name
b) Check that the input falls within a known range
c) Use information about the input to check if it is reasonable rather than an extreme value
d) None of the mentioned
View Answer

Answer: b
Explanation: None.

Sanfoundry Global Education & Learning Series – Software Engineering.

Here’s the list of Best Reference Books in Software Engineering.

Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

advertisement
advertisement
advertisement
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He is Linux Kernel Developer & SAN Architect and is passionate about competency developments in these areas. He lives in Bangalore and delivers focused training sessions to IT professionals in Linux Kernel, Linux Debugging, Linux Device Drivers, Linux Networking, Linux Storage, Advanced C Programming, SAN Storage Technologies, SCSI Internals & Storage Protocols such as iSCSI & Fiber Channel. Stay connected with him @ LinkedIn