Contracts: specifying behavioral compositions in object-oriented systems
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Eiffel: the language
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Evolving algebras 1993: Lipari guide
Specification and validation methods
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Strongest postcondition semantics as the formal basis for reverse engineering
Reverse engineering
Software reliability via run-time result-checking
Journal of the ACM (JACM)
The object constraint language: precise modeling with UML
The object constraint language: precise modeling with UML
Contract Soundness for object-oriented languages
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Specifying Reusable Components Using Contracts
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
iContract - The Java(tm) Design by Contract(tm) Tool
TOOLS '98 Proceedings of the Technology of Object-Oriented Languages and Systems
Ensuring Correctness of Java Frameworks: A Formal Look at JCF
Ensuring Correctness of Java Frameworks: A Formal Look at JCF
The Greybox Approach: When Blackbox Specifications Hide Too Much
The Greybox Approach: When Blackbox Specifications Hide Too Much
jContractor: A Reflective Java Library to Support Design by Contract
jContractor: A Reflective Java Library to Support Design by Contract
Adding Contracts to Java with Handshake
Adding Contracts to Java with Handshake
Abstract Communication Model for Distributed Systems
IEEE Transactions on Software Engineering
Optimal strategies for testing nondeterministic systems
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Towards automatic monitoring of component-based software systems
Journal of Systems and Software - Special issue: Automated component-based software engineering
Model variables: cleanly supporting abstraction in design by contract: Research Articles
Software—Practice & Experience
Ad hoc extensibility and access control
ACM SIGOPS Operating Systems Review
Modular verification of higher-order methods with mandatory calls specified by model programs
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
IEEE Transactions on Software Engineering
A virtual environment for network testing
Journal of Network and Computer Applications
Tisa: A Language Design and Modular Verification Technique for Temporal Policies in Web Services
ESOP '09 Proceedings of the 18th European Symposium on Programming Languages and Systems: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Model-based testing without a model: assessing portability in the Seattle testbed
SSV'10 Proceedings of the 5th international conference on Systems software verification
Proceedings of the tenth international conference on Aspect-oriented software development
Runtime verification for generic classes with CONGU2
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Allowing state changes in specifications
ETRICS'06 Proceedings of the 2006 international conference on Emerging Trends in Information and Communication Security
The spec# programming system: an overview
CASSIS'04 Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
A contracting system for hierarchical components
CBSE'05 Proceedings of the 8th international conference on Component-Based Software Engineering
Enforcing different contracts in hierarchical component-based systems
SC'06 Proceedings of the 5th international conference on Software Composition
Behavioral interface specification languages
ACM Computing Surveys (CSUR)
Components monitoring through formal specifications
Proceedings of the 17th international doctoral symposium on Components and Architecture
CoMA: conformance monitoring of java programs by abstract state machines
RV'11 Proceedings of the Second international conference on Runtime verification
Hi-index | 0.00 |
We propose a method for implementing behavioral interface specifications on the .NET platform. Our interface specifications are expressed as executable model programs. Model programs can be run either as stand-alone simulations or used as contracts to check the conformance of an implementation class to its specification. We focus on the latter, which we call runtime verification.In our framework, model programs are expressed in the new specification language AsmL. We describe how AsmL can be used to describe contracts independently from any implementation language, how AsmL allows properties of component interaction to be specified using mandatory calls, and how AsmL is used to check the behavior of a component written in any of the .NET languages, such as VB, C#, or C++.