Elements of Style: Analyzing a Software Design Feature with a Counterexample Detector
IEEE Transactions on Software Engineering - Special issue: best papers of the 1996 international symposium on software testing and analysis ISSTA'96
Model checking for programming languages using VeriSoft
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Ownership types for object encapsulation
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Modular verification of software components in C
Proceedings of the 25th International Conference on Software Engineering
Eclipse Modeling Framework
Recovering binary class relationships: putting icing on the UML cake
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Precise identification of composition relationships for UML class diagrams
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Effective java™, second edition
Effective java™, second edition
Hi-index | 0.00 |
In this paper, we study how to detect the ownership violation based on the Unified Modeling Language (UML 2.0) in IBM Eclipse Modeling Framework. We develop a novel technique for automatically detecting the ownership violation in a program against its design class diagram using a software model checker. Specifically, given the fields that are intended to implement ownership in a UML class diagram, our approach checks the ownership property in two steps. First, the approach systematically generates all valid object diagrams, i.e. valid input program states. Then, after a method to destroy the owner object is called on each object diagram, the approach checks whether all external links to the owned objects have been removed. Central to this approach is how to prune away the large search space that includes all valid input program states.