CpSc 8730
Verification and Validation
Name
____________________________________
There are 5 questions. Answer any 4 of them. Answer all parts of the questions you select. Place a large x of the page containing the question you are not answering. Do NOT answer all 5. If you do I will only count the 4 worst answers.
This is an individual effort. You may use the class handouts, sources pointed to in the slides, and your notes. Nothing else and no one else. No laptops, no sharing notes or handouts. You have 75 minutes, from 8 am to 9:15 am.
a. Guide the development of test cases and design of error flows
b. By judging the difference in response on related scenarios
c. A sufficiently definite (quantitative if possible) statement to judge whether a program provides the specified behavior
a.
2.
a. One type of traceability starts with a top level requirement and then traces down through a derivation hierarchy. Another type of trace goes from architectural components to requirements. What does the concept of traceability add to our V&V process?
b. Orthogonal Defect Classification classifies defects into categories. What is the same about defects in the same category and what might be different within the category?
c.
List 2 quality attributes that could be verified using
an AADL model. Describe the technique for verifying each.
a. The ability to analyze root causes and to do change impact analysis
b. Have the same basic trigger; the effect on the surrounding program
c. Latency and throughput – in both cases looking at specific flows. For Latency sum estimated latencies of individual paths for Throughput look at protocols used on ports
3.
a. Testability is the degree to which the software under test can be controlled and observed. Explain the trade-off between testability and security.
b. What information does the context diagram give the V&V manager?
c. What does a longitudinal look at test results over several projects tell the team about the defect density of a new project that has just started?
a. Reachable by authorized persons – the test must reach certain state to evaluate whether it passes or failed but security requires preventing that access by unauthorized people
b. What not to test and what to test
c. It gives an estimate of the density that the current process will produce
d.
4.
a. What are the similarities and differences between AGREE and Resolute in terms of what they do?
b. List two techniques for writing contracts in an AADL model. What advantage does each have over the other?
c. We presented a “double V” process model. Explain how this model differs from the “usual” V model? How does it improve the quality of the products developed using it?
a. Both support writing verification conditions but agree evaluates from a contract perspective and resolute evaluates model queries
b. Agree and typed ports; agree is more encompassing but not a natural part of the description while typed ports are part of the model but not as flexible
c. There are verification activities specified in parallel to each development activity
5.
a. If a requirement is ambiguous how will V&V actions reveal this problem?
b. Our template for a use case includes an “assumptions” section. What use is this to V&V?
c. An architectural test case is executed as a part of an iteration. During the next iteration the team decides to use the test case again. Under what circumstances would this be a good decision? List at least 2 different circumstances.
a. It will not be possible to write a definitive test case
b. Gives pre-conditions for a test
c. Reuse if the specification has not changed and either the test failed initially or the code that the test case executes has been changed