A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Forcing behavioral subtyping through specification inheritance
Proceedings of the 18th international conference on Software engineering
An axiomatic basis for computer programming
Communications of the ACM
Computer
IEEE Transactions on Software Engineering
Preliminary design of JML: a behavioral interface specification language for java
ACM SIGSOFT Software Engineering Notes
IEEE Transactions on Software Engineering
Contracts for aspect-oriented design
Proceedings of the 2008 AOSD workshop on Software engineering properties of languages and aspect technologies
A machine-checked model of safe composition
Proceedings of the 2009 workshop on Foundations of aspect-oriented languages
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Pipa: a behavioral interface specification language for aspectJ
FASE'03 Proceedings of the 6th international conference on Fundamental approaches to software engineering
Automated analysis of feature models 20 years later: A literature review
Information Systems
Type safety for feature-oriented product lines
Automated Software Engineering
Detecting Dependences and Interactions in Feature-Oriented Design
ISSRE '10 Proceedings of the 2010 IEEE 21st International Symposium on Software Reliability Engineering
Compositional model checking of software product lines using variation point obligations
Automated Software Engineering
Verification of software product lines with delta-oriented slicing
FoVeOOS'10 Proceedings of the 2010 international conference on Formal verification of object-oriented software
Proof Composition for Deductive Verification of Software Product Lines
ICSTW '11 Proceedings of the 2011 IEEE Fourth International Conference on Software Testing, Verification and Validation Workshops
Automatic detection of feature interactions using the Java modeling language: an experience report
Proceedings of the 15th International Software Product Line Conference, Volume 2
Detection of feature interactions using feature-aware verification
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
Family-based deductive verification of software product lines
Proceedings of the 11th International Conference on Generative Programming and Component Engineering
Subclack: feature-oriented programming with behavioral feature interfaces
Proceedings of the 5th Workshop on MechAnisms for SPEcialization, Generalization and inHerItance
Product-line verification with feature-oriented contracts
Proceedings of the 2013 International Symposium on Software Testing and Analysis
Feature-interaction detection based on feature-based specifications
Computer Networks: The International Journal of Computer and Telecommunications Networking
Proceedings of the Eighth International Workshop on Variability Modelling of Software-Intensive Systems
Hi-index | 0.00 |
Feature-oriented programming (FOP) is an extension of ob- ject-oriented programming to support software variability by refining existing classes and methods. In order to increase the reliability of all implemented program variants, we integrate design by contract (DbC) with FOP. DbC is an approach to build reliable object-oriented software by specifying methods with contracts. Contracts are annotations that document and formally specify behavior, and can be used for formal verification of correctness or as test oracles. We present and discuss five approaches to define contracts of methods and their refinements in FOP. Furthermore, we share our insights gained by performing five case studies. This work is a foundation for research on the analysis of feature-oriented programs (e.g., for verifying functional correctness or for detecting feature interactions).