Proceedings Article10.1109/ASE.2002.1115013
Interfaces for modular feature verification
Harry C. Li,Shriram Krishnamurthi,Kathi Fisler +2 more
- 23 Sep 2002
- pp 195-204
TL;DR: A model of interfaces that supports automated, compositional, feature-oriented model checking is presented and automatically detect the feature-interaction problems originally found manually by R. Hall in an email suite case study.
read more
Abstract: Feature-oriented programming organizes programs around features rather than objects, thus better supporting extensible, product-line architectures. Programming languages increasingly support this style of programming, but programmers get little support from verification tools. Ideally, programmers should be able to verify features independently of each other and use automated compositional reasoning techniques to infer properties of a system from properties of its features. Achieving this requires carefully designed interfaces: they must hold sufficient information to enable compositional verification, yet tools should be able to generate this information automatically because experience indicates programmers cannot or will not provide it manually. We present a model of interfaces that supports automated, compositional, feature-oriented model checking. To demonstrate their utility, we automatically detect the feature-interaction problems originally found manually by R. Hall in an email suite case study.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
Scaling step-wise refinement
TL;DR: The AHEAD (algebraic hierarchical equations for application design) model is presented, that shows how step-wise refinement scales to synthesize multiple programs and multiple noncode representations, and a tool set that supports AHEAD is reviewed.
826
Software diversity: state of the art and perspectives
Ina Schaefer,Rick Rabiser,Dave Clarke,Lorenzo Bettini,David Benavides,Goetz Botterweck,Animesh Pathak,Salvador Trujillo,Karina Villela +8 more
TL;DR: This introductory article to the special section “Software Diversity—Modeling, Analysis and Evolution” provides an overview of the current state of the art in diverse systems development and discusses challenges and potential solutions.
A variability-aware module system
Christian Kästner,Klaus Ostermann,Sebastian Erdweg +2 more
- 19 Oct 2012
TL;DR: A variability-aware module system that supports compile-time variability inside a module and its interface is introduced that breaks with the antimodular tradition of a global variability model in product-line development and provides a path toward software ecosystems and product lines of product lines developed in an open fashion.
104
Verifying cross-cutting features as open systems
Harry C. Li,Shriram Krishnamurthi,Kathi Fisler +2 more
- 01 Nov 2002
TL;DR: This work describes desiderata for verifying such modules through model checking and finds that existing work on the verification of open systems fails to address most of the concerns that arise from feature-oriented systems.
Developing Reusable and Reconfigurable Real-Time Software using Aspects and Components
Aleksandra Tesanovic
- 01 Jan 2006
TL;DR: A reconfigurable real-time component model (RTCOM) is defined that describes how a real-Time component, supporting aspects and enforcing information hiding, could efficiently be designed and implemented and a proof-of-concept implementation of a configurable embedded real- time database is presented, called COMET.
References
Aspect-oriented programming
Gregor Kiczales,Erik Hilsdale +1 more
- 01 Sep 2001
TL;DR: This tutorial shows how to use AOP to implement crosscutting conerns in a concise modular way and includes a description of their underlying model, in terms of which a wide range of AOP languages can be understood.
5.6K
•Book
Component Software: Beyond Object-Oriented Programming
Clemens Szyperski
- 23 Nov 2002
TL;DR: Anyone responsible for developing software strategy, evaluating new technologies, buying or building software will find Clemens Szyperski's objective and market-aware perspective of this new area invaluable.
5.5K
On the criteria to be used in decomposing systems into modules
TL;DR: In this paper, the authors discuss modularization as a mechanism for improving the flexibility and comprehensibility of a system while allowing the shortening of its development time, and the effectiveness of modularization is dependent upon the criteria used in dividing the system into modules.
•Book
The Java Language Specification
James Gosling,Bill Joy,Guy L. Steele +2 more
- 12 Sep 1996
TL;DR: The Java Language Specification, Second Edition is the definitive technical reference for the Java programming language and provides complete, accurate, and detailed coverage of the syntax and semantics of the Java language.
•Book
Software Product Lines: Practices and Patterns
Paul Clements,Linda Northrop +1 more
- 01 Aug 2001
TL;DR: The Three Essential Activities: Core Asset Development, Software Engineering Practice Areas, and Single-System Development with Reuse - All Three Together.
3.8K
Related Papers (5)
Alexander Gruler,Martin Leucker,Kathrin Scheidemann +2 more
- 04 Jun 2008
Christian Prehofer
- 09 Jun 1997