0% found this document useful (0 votes)
35 views3 pages

Midterm - SW 408 - SWE 411 Selected Topics Model 2 Answer

Uploaded by

Reem Haitham
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views3 pages

Midterm - SW 408 - SWE 411 Selected Topics Model 2 Answer

Uploaded by

Reem Haitham
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Faculty of Computer Science and Information Technology

Academic Year 2023/2024


Department: Software Engineering Semester: Spring 2024
Level: 4 Duration time: 60 minutes
Course Name: Selected Topics in Software Engineering Exam Date: 21/4/2024
Course Code: SWE 408 – SWE 411 Instructor: Dr. Mervat Helmy
---------------------------------------------------------------------
Midterm Exam
Name: ID:

Question 1- Choose one correct answer: (5 Marks)


1. What is a potential risk associated with modernizing a legacy system?
A. Increased functionality and user satisfaction
B. Unforeseen technical challenges and delivery time delays
C. Reduced development costs
D. Improved security vulnerabilities

2. What is a specialized process used to analyze and understand a legacy system's


architecture and functionality before reengineering?
A. Unit testing C. User acceptance testing
B. Reverse engineering D. Program Debugging

3. What is a potential consequence of neglecting safety engineering principles?


A. Decreasing production efficiency C. Injuries, illnesses, and fatalities
B. Delivering product faster D. Reduced development costs

4. What is the process of modifying existing software to meet changing needs?


A. Software maintenance C. Software evolution
B. Software testing D. Software deployment

5. What is a major requirement in software maintenance prediction?


A. Availability of accurate understanding of systems
B. Constantly evolving programming languages and technologies
C. User training to new software versions
D. Predicting the number of employees

Page 1 of 3
Question 2- Answer the following questions: (8 Marks)

A. What are Safety critical systems?


Safety critical systems: systems that are critical to preserving and maintaining life •
The system may be software-controlled: software behavior is directly related to the
overall safety of the system
Describe the reasons for which software systems may not be safe despite having a
reliability state.
1. Not sure that 100% that a software system is fault-free and fault-tolerant.
Undetected faults can be inactive for a long time, and software failures can occur
after many years of reliable operation
2. The system specifications may be incomplete. Not sufficient requirements are
given to describe the required behavior of the system in some critical situations
3. Hardware malfunctions may cause sensors and actuators to behave in an
unpredictable way (generate signals that are outside the ranges)
4. System operators may generate inputs that are not incorrect. In some situations,
incorrect input can lead to a system malfunction
B. Write down the best strategy for assessing a legacy system in each of the
following scenarios:
1- The system is still required by business but is fairly stable in operation.
Leave the system unchanged and continue with regular maintenance
2- A new arising hardware makes that the legacy system cannot continue in operation.
Replace all or part of the system with a new system

Question 3- Answer the following questions: (7 Marks)


A. Differentiate between Reliability and Resilience
Reliability: The probability of having a failure-free operation over a specified time, in a
given environment, for a specific purpose.
Resilience: The ability of a system to resist and recover from damaging events

Page 2 of 3
B. You're developing a new e-commerce platform. During a testing phase, the number
of user requests tested was 10,000, since the system experiences the following issues:
▪ Number of system crashes: 15
▪ Number of incorrect product recommendations: 20
We want to calculate the probability of occurrence of such failures, considering crashes
and incorrect recommendations as different failures. Interpret your results.

POFOD= Number of failures / Total demands


Since the failures are considered different failures, so we are going to calculate POFOD
for each failure separately.
For the system crashes: POFOD = 15 / 10000 = 0.0015
For the incorrect product recommendations: POFOD = 20/10000 = 0.002
Interpretation: the system crashes with probability 0.0015 for every 10000
requests, and provides incorrect product recommendations occur with 0.002 for
every 10000 requests.

(Optional) If we want to get the overall probability of occurrence of such failures =


0.0015 + 0.002 =0.0035 means the system fails with 0.35% for every 10000
requests.

Good Luck
Dr. Mervat Helmy

Page 3 of 3

You might also like