When | What |
---|---|
April 9th, 2015 | Donated by Shahar Maoz |
Studies who have been using the data (in any form) are required to include the following reference:
@inproceedings{maoz2014verifying,
title={Verifying component and connector models against crosscutting structural views},
author={Maoz, Shahar and Ringert, Jan Oliver and Rumpe, Bernhard},
booktitle={Proceedings of the 36th International Conference on Software Engineering},
pages={95--105},
year={2014},
organization={ACM}
}
We conducted a small user study to examine two high level research questions: [RC1] is C&C verification difficult to do manually, and [RC2] are witnesses for satisfaction/non-satisfaction helpful. The study included a two-pages introduction on C&C views to read, 3 verification questions (each presenting one C&C view), and 3 questions about the usefulness of a set of witnesses that was presented to the user, all referring to a common C&C model. Two of the views in the first 3 questions had 2 non-satisfaction reasons each. The questions of each group were presented to the users in a random order to avoid a bias due to learning effect. The study subjects were all CS graduate students or professional software engineers, all with some modeling background but no specific previous knowledge on our work on C&C views. No grades or other reward was involved. The study was anonymous and conducted online. We obtained complete set of answers from 17 subjects.
For the user response:
id |
---|
completed |
last page |
start language |
data started |
date last action |
Component and connector (C&C) models are used in many application domains of software engineering. C&C views can be used to specify structural properties of C&C models, e.g., which component should be inside which component, which component should be connected to which component, in an expressive and intuitive way. An introduction to C&C models and C&C views is given in this PDF. All the tasks in the exercise are based on the same C&C model of a pump station (download the PDF here). Are you ready to start the exercise- |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[Yes, the C&C model satisfies the view.] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Hierarchy Mismatch] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Missing Component] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Interface Mismatch] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Missing Connector] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[Yes, the C&C model satisfies the view.] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Hierarchy Mismatch] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Missing Component] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Interface Mismatch] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Missing Connector] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[Yes, the C&C model satisfies the view.] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Hierarchy Mismatch] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Missing Component] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Interface Mismatch] |
Does the C&C model of the pump station (same as before) satisfy this view-,Check either “Yes, …” or check “No, …” for ALL reasons for non-satisfaction you find.,[No, there is a Missing Connector] |
Please rate your confidence that you correctly identified whether the C&C views were satisfied by the C&C model. Rate your confidence regardless of the reasons you identified. |
Please rate your confidence in finding all reasons for non-satisfaction. |
Consider the C&C model of the pump station (same as before) and the C&C view below:,The C&C model does not satisfy this C&C view. Here are two witnesses that demonstrate separate reasons for non-satisfaction:,First witness for non-satisfaction:,Second witness for non-satisfaction:,Do you find these witnesses helpful in understanding the verification result (non-satisfaction)- |
Consider the C&C model of the pump station (same as before) and the C&C view below:,The C&C model satisfies this C&C view. Here is a witnesses for satisfaction:,Do you find this witnesses helpful in understanding the verification result (satisfaction)- |
Consider the C&C model of the pump station (same as before) and the C&C view below:,The C&C model does not satisfy this C&C view. Here are four witnesses that demonstrate separate reasons for non-satisfaction.,First witness for non-satisfaction:,Second witness for non-satisfaction:,Third witness for non-satisfaction:,Fourth witness for non-satisfaction:,Do you find these witnesses helpful in understanding the verification result (non-satisfaction)- |
Please note any comments you may have about C&C models, C&C views, and C&C witnesses. |
Total time |
Group time: Intro |
Question time: Intro |
Group time: C&C Views Verification |
Question time: SAT1 |
Question time: SAT2 |
Question time: SAT3 |
Question time: Correctness |
Question time: Completeness |
Group time: Helpful Witnesses |
Question time: Witness1 |
Question time: Witness2 |
Question time: Witness3 |
Group time: Remarks |
The structure of component and connector (C&C) models, which are used in many application domains of software engineering, consists of components at different containment levels, their typed input and output ports, and the connectors between them. C&C views, presented in [24], can be used to specify structural properties of C&C models in an expressive and intuitive way. In this work we address the verification of a C&C model against a C&C view and present efficient (polynomial) algorithms to decide satisfaction. A unique feature of our work, not present in existing approaches to checking structural properties of C&C models, is the generation of witnesses for satisfaction/non-satisfaction and of short naturallanguage texts, which serve to explain and formally justify the verification results and point the engineer to its causes. A prototype tool and an evaluation over four example systems with multiple views, performance and scalability experiments, as well as a user study of the usefulness of the witnesses for engineers, demonstrate the contribution of our work to the state-of-the-art in component and connector modeling and analysis.