CpSc 875

Exam 2

 

 

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.

 


 

  1.  

a.      Describe the differences between a component error behavior and a composite error behavior. What do they have in common?

b.     What do we learn from the stimulus and stimulus source in a quality attribute scenario?

c.      Architecture Competence has 4 aspects: manage,   make decisions, issue instructions, and represent the organization. Our architect should have architecture competence. List specific actions we have discussed this semester that enhance architecture competence.

a.      Whether the model refers to the single module in which it is defined or to the collective error behavior of subcomponents

b.     The priority of the stimulus, what action is initially invoked

c.      Mange by allocating work via specific modules; use QAs to drive decision making; presentations at ATAM


 

  1.  

a.      How do we go about identifying hazards in a system in the earliest stages of development?

b.     List 2 of Baldwin’s modularity operators that you used in developing your CACC architecture. For each why did you use it and what did you do to the architecture using the operator. 

c.      There are many standards in software engineering. What are the good points and the bad points of adopting a specific standard?

 

a.      Looking for guide words that alert us to unsafe control actions

b.     Variable answer

c.      Standards make our work comparable to others, interchangeable with others; standards don’t always fit our situation


 

  1.  

a.      What are the architectural elements (conceptually, not the AADL syntax) represented in the allocation viewtype? Give a specific example view from this viewtype for your project.

b.     If you see a module with an “in propagation” for a particular type of data but no “out propagation” for that error type what does that tell you? What if there is an “out propagation” for a specific error type but no “in propagation”?

c.      Explain the difference in the information presented by a layered architecture representation and a tiered representation.

 

a.      Physical elements are associated with software elements

b.     Error sink; error source

c.      Layered gives definitional; tiered gives operational


 

  1.  

a.      What types of properties were verified using Resolute? List at least one problem your architecture had that Resolute identified.

b.     What actions are required to derive a product architecture from a reference architecture?

c.      Explain the difference between modifiability and maintainability.

 

a.      Structural; variable anser

b.     Abstractions are replaced by concrete specifications and implementations

c.      There are more actions to take in maintaining than just modifying


 

  1.  

a.      In what ways (list at least 2) might the modules in an architecture be inconsistent? How would this be seen in the AADL model?

b.     We have discussed operational vs definitional views of the architecture. List one attribute that belongs to each view. How are those attributes different?

c.      Explain how the Agree annex is used to state and verify the contract of the module within which the annex is used.

 

a.     Different types between a port and one of its connections

b.     Latency is operational; modifiability is definitional

c.      Assumptions define expected inputs and guarantees define expected outputs