Program abstractions for behaviour validation
Proceedings of the 33rd International Conference on Software Engineering
Runtime monitoring of functional component changes with behavior models
MODELS'11 Proceedings of the 2011th international conference on Models in Software Engineering
Behavioral validation of JFSL specifications through model synthesis
Proceedings of the 34th International Conference on Software Engineering
Runtime monitoring of component changes with Spy@Runtime
Proceedings of the 34th International Conference on Software Engineering
Abstractions for validation in action
SFM'12 Proceedings of the 12th international conference on Formal Methods for the Design of Computer, Communication, and Software Systems: formal methods for model-driven engineering
Mining behavior models from enterprise web applications
Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering
Enabledness-based program abstractions for behavior validation
ACM Transactions on Software Engineering and Methodology (TOSEM) - In memoriam, fault detection and localization, formal methods, modeling and design
A taxonomy for requirements engineering and software test alignment
ACM Transactions on Software Engineering and Methodology (TOSEM)
Supporting incremental behaviour model elaboration
Computer Science - Research and Development
Supporting incremental behaviour model elaboration
Computer Science - Research and Development
Hi-index | 0.00 |
Pre/postcondition-based specifications are commonplace in a variety of software engineering activities that range from requirements through to design and implementation. The fragmented nature of these specifications can hinder validation as it is difficult to understand if the specifications for the various operations fit together well. In this paper, we propose a novel technique for automatically constructing abstractions in the form of behavior models from pre/postcondition-based specifications. Abstraction techniques have been used successfully for addressing the complexity of formal artifacts in software engineering; however, the focus has been, up to now, on abstractions for verification. Our aim is abstraction for validation and hence, different and novel trade-offs between precision and tractability are required. More specifically, in this paper, we define and study enabledness-preserving abstractions, that is, models in which concrete states are grouped according to the set of operations that they enable. The abstraction results in a finite model that is intuitive to validate and which facilitates tracing back to the specification for debugging. The paper also reports on the application of the approach to two industrial strength protocol specifications in which concerns were identified.