“Sometimes” and “not never” revisited: on branching versus linear time temporal logic
Journal of the ACM (JACM) - The MIT Press scientific computation series
On the synthesis of a reactive module
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
On the development of reactive systems
Logics and models of concurrent systems
Handbook of theoretical computer science (vol. B)
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Feature and Service Interaction Problem in Telecommunications Systems: A Survey
IEEE Transactions on Software Engineering
A hybrid model for specifying features and detecting interactions
Computer Networks: The International Journal of Computer and Telecommunications Networking - Special issue on the feature interactions in telecommunications systems
Feature integration using a feature construct
Science of Computer Programming
Symbolic Model Checking
Specification and verification of concurrent systems in CESAR
Proceedings of the 5th Colloquium on International Symposium on Programming
VIS: A System for Verification and Synthesis
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic
Logic of Programs, Workshop
Composition, reuse and interaction analysis of stateful aspects
Proceedings of the 3rd international conference on Aspect-oriented software development
Resource-based approach to feature interaction in adaptive software
WOSS '04 Proceedings of the 1st ACM SIGSOFT workshop on Self-managed systems
CAV '08 Proceedings of the 20th international conference on Computer Aided Verification
Towards compositional synthesis of evolving systems
Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering
Partial constraint checking for context consistency in pervasive computing
ACM Transactions on Software Engineering and Methodology (TOSEM)
A framework for flexible and dependable service-oriented embedded systems
Architecting dependable systems VII
Two-way traceability and conflict debugging for AspectLTL programs
Proceedings of the 11th annual international conference on Aspect-oriented Software Development
Feature specification and static analysis for interaction resolution
FM'06 Proceedings of the 14th international conference on Formal Methods
Evidence of software inspection on feature specification for software product lines
Journal of Systems and Software
Exploring feature interactions in the wild: the new feature-interaction challenge
Proceedings of the 5th International Workshop on Feature-Oriented Software Development
Two-Way traceability and conflict debugging for AspectLTL programs
Transactions on Aspect-Oriented Software Development X
Hi-index | 0.00 |
Large software systems, especially in the telecommunications field, are often specified as a collection of features. We present a formal specification language for describing features, and a method of automatically detecting conflicts ("undesirable interactions") amongst features at the specification stage. Conflict detection at this early stage can help prevent costly and time consuming problem fixes during implementation. Features are specified using temporal logic; two features conflict essentially if their specifications are mutually inconsistent under axioms about the underlying system behavior. We show how this inconsistency check may be performed automatically with existing model checking tools. In addition, the model checking tools can be used to provide witness scenarios, both when two features conflict as well as when the features are mutually consistent. Both types of witnesses are useful for refining the specifications. We have implemented a conflict detection tool, FIX (Feature Interaction eXtractor), which uses the model checker COSPAN for the inconsistency check. We describe our experience in applying this tool to a collection of telecommunications feature specifications obtained from the Telcordia (Bellcore) standards. Using FIX, we were able to detect most known interactions and some new ones, fully automatically, in a few hours processing time.