CpSc 875
Exam 2 - Key
Name______________________________________________
Answer any FOUR of the five questions. Place a large X on the page for the question you are not answering. If you answer all five, I will not count the one on which you did the best. All questions are counted the same: 25 points each. Be certain to answer ALL parts of the questions you select to answer. When a question refers to either the architecture you developed in the project or specific examples that we developed in class, be certain to answer using the correct system. You are allowed the notes you have taken and handouts.
a. The Eclipse Process Framework models processes. Assuming we have an EPF model of the ADD process we followed this semester, describe how you would modify the model to incorporate the continuous-ATAM technique we discussed.
b. We have represented architectures at several levels: conceptual, logical, physical. For each of these three levels list at least 3 AADL constructs specific to that level.
c. Describe 2 architectural tactics for increasing the availability of the robotic surgery system. Which would be better to use? why?
d. How is a layered architecture different from a tiered architecture? How are they the same?
a. Create a task called Continuous-ATAM, create roles for carrying out the task (reviewer, moderator, scribe), and create a workproduct – ATAM report.
b. Conceptual - system
Logical – threads, process
Physical – bus, processor
c. Redundancy, fault tolerance; fault tolerance will continue operation after a failure without the overhead of a second component required for redundancy
d.
The difference is the basis for the abstraction. Away
from hardware (layer) or away from user (tiers)
a. How is the separation of concerns shown in the architectural documentation for a product?
b. Explain the relationships among a reference architecture, a product line architecture, and a product architecture.
c. Explain in detail every element of the following behavioral model:
Defined before the behavioral spec:
timer : in event port ;
intit : in event port ;
eofit : in event port ;
aocsack : out event port ;
dorack : out event port ;
Now explain this specification:
annex behavior_specification{**
states
s0: initial complete state;
s1, s2, s3: complete state;
t r a n s i t i o n s
s0 − [timer?]-> s1;
s1 − [intit?]-> s2 {aocsack ! ; } ;
s2 − [intit?]-> s3 {dorack ! ; } ;
s3 − [eofit?]-> s0;
**};
A. two or more views
B. The differences are in the scope and level of abstraction. A reference architecture describes the structure of a general class of systems in a domain; a product line architecture describes the structure of a smaller set of systems in more detail; and the product architecture resolves the generality to focus on one system.
C.
The behavior specification shows a state machine in
which the transitions are triggered by an event arriving at one of three in
ports. In two of the cases a side effect of the transition to the new state is
raising an event on an out port.
a. What are the architectural elements (conceptually, not the AADL syntax) represented in the module decomposition view?
b. Which documentation view presents processes and threads? What is the relationship between an end-to-end flow and the process architecture?
c. How could a blackboard style be integrated with the 4 tier architectural style? Why does this work?
d. Describe a view that should be included in the robotic surgery architecture documentation. Which stakeholders is the view intended for? What does this view provide that no other view does?
A. Modules and relationships
B. Component and connector or allocation. The end-to-end flow cuts across the processes in the architecture.
C. The blackboard could be composed into one of the tiers.
D. The allocation view would illustrate which of the two processor boxes each thread is allocated to.
a. How are quality attributes considered in an application of ATAM to an architecture?
b. How is the “distributedness” of a distributed system represented in AADL?
c. Describe 2 architectural tactics for increasing the maintainability of the robotic surgery system. Which would be better to use? Why?
d. Explain exactly what this screen print from Cheddar shows to the architect:
A. QA scenarios are elicited from stakeholders during the initial phases of the ATAM. The QAs are prioritized and the system is analyzed to determine whether a system built from the architecture would have appropriate levels of each quality.
B. Two systems, or processes, or threads are allocated to two separate processors
C. Decomposition and information hiding; Information hiding will degrade fewer qualities
D.
This shows that there is a schedule for allocating the
processor’s time to each of the two tasks so that they both complete their tasks
within the required time.
a. List at least two AADL constructs that can be used in the design of a variation point. Explain how they provide variation.
b. Explain the difference between “allowed memory binding”, and “actual memory access”.
c. Explain exactly every detail of the following:
Annex error {**
events
Failure: error event;
States
Operational: initial state;
Failed: state;
Transitions
BadValueTransition : Operational -[Failure]-> Failed;
**}