CpSc 872
Exam 1
Name______________________________________________
Answer any FOUR of the five questions. Place a large X on the question you are omitting. If you answer all five, the one on which you score the best will NOT be counted. All questions are counted the same: 25 points each. Answer all parts of each question. Note that a part may require more than one response.
You can not have a laptop in the exam. You may have the textbook, class notes, handouts, copies of submitted homework. You have from 12:30pm until 1:45pm for the exam.
a.
Each component in a system can be
thought of as a state machine. How does the specification of each component
allow the components to communicate with each other?
b.
Explain what is meant by the AADL
phrase: Occurrence=>poisson 1×E-3
c.
Describe 2 failure modes of the OBD
product and the effects of each failure mode.
a. The
specification of one component defines ports that must match complementary
ports of the other component.
b. This
gives the probability of the event within which it is defined in the context of
a specific distribution.
c. Bluetooth
streaming terminates – data is lost; cloud connectivity is lost – data is lost
2. Fault
tree analysis
a.
A fault tree begins at the top with a
system failure as the root node. As you move from the top of a fault tree to
the bottom what changes about the failures in each layer of nodes?
b.
The fault tree, the output of fault
analysis, is related to many other development artifacts. How is the fault tree
related to the error model for the system?
c.
An error will cause other computations
to be in error. What purpose does an
error propagation element serve in an AADL model?
a. The
failures become more localized as you move down.
b. A
fault in the fault tree is related to the error that occurs when that fault is
encountered during program execution
c. An
error propagation gives the designer a way to define a path for error flow.
a. We considered 4 product design perspectives: tools, architectural, media, and usability. Why would a company take the time to design the same product from multiple perspectives? What would be the difference between the product design using the architectural perspective and the design using the usability perspective? (Do not define each if the perspectives, describe how they differ.)
b. We defined constraints on our product. List two of those constraints. Describe the consequences if violating each separately.
c. Decompose is a design operator. How does it improve a design? How might it degrade a design?
a. Using different perspectives gives a more complete product description; The priority of system characteristics is different. (Typed the key during the exam and got distracted and left this answer off.)
b. Answers will vary;
c. Decompose reduces the complexity of a module by dividing it into 2 smaller modules but this may degrade performance.
a. An interface describes the interaction between two components. The specification for each component must fit in the interface. How must a component’s specification fit into the interface definition?
b. You investigated one of the interfaces in the OBD system. What types of information did you find that was helpful?
c. Explain the relationship between the state machine for the interface and the specifications of the two components.
a. How does the fault analysis information contribute to the design of the error model?
b. In general we design so that the system will possess both safety and liveness properties. Explain each of these properties in the context of the OBD example system.
c. Define at least two errors that might occur in the OBD examples. What would be the failures that result from these errors?
a. An error corresponds to the execution of a fault. Looking at the fault tree identifies errors that could result during an execution (Again, got distracted)
b. Liveness says that data will eventually reach the cloud; safety says that data will not be lost
c. There might be Nodata or BadValue errors. NoData results in loss of data; BadValue might result in a predetermined value being inserted in its place