Concurrent constraint programming
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Communication and Concurrency
Verifying cross-cutting features as open systems
Proceedings of the 10th ACM SIGSOFT symposium on Foundations of software engineering
Modular Verification of Open Features Using Three-Valued Model Checking
Automated Software Engineering
A foundation for behavioural conformance in software product line architectures
Proceedings of the ISSTA 2006 workshop on Role of software architecture for testing and analysis
Feature Diagrams: A Survey and a Formal Semantics
RE '06 Proceedings of the 14th IEEE International Requirements Engineering Conference
Modeling and Model Checking Software Product Lines
FMOODS '08 Proceedings of the 10th IFIP WG 6.1 international conference on Formal Methods for Open Object-Based Distributed Systems
Calculating and Modeling Common Parts of Software Product Lines
SPLC '08 Proceedings of the 2008 12th International Software Product Line Conference
Model Checking of Domain Artifacts in Product Line Engineering
ASE '09 Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering
CC-Pi: a constraint-based language for specifying service level agreements
ESOP'07 Proceedings of the 16th European conference on Programming
Modal I/O automata for interface and product line theories
ESOP'07 Proceedings of the 16th European conference on Programming
What's in a feature: a requirements engineering perspective
FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
A logical framework to deal with variability
IFM'10 Proceedings of the 8th international conference on Integrated formal methods
Composing Event-B specifications: case-study experience
SC'11 Proceedings of the 10th international conference on Software composition
Formal Description of Variability in Product Families
SPLC '11 Proceedings of the 2011 15th International Software Product Line Conference
Modular modelling of software product lines with feature nets
SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
Detection of feature interactions using feature-aware verification
ASE '11 Proceedings of the 2011 26th IEEE/ACM International Conference on Automated Software Engineering
A conceptual framework for adaptation
FASE'12 Proceedings of the 15th international conference on Fundamental Approaches to Software Engineering
Towards an executable algebra for product lines
Proceedings of the 16th International Software Product Line Conference - Volume 2
Demonstration of a model checker for the analysis of product variability
Proceedings of the 16th International Software Product Line Conference - Volume 2
A formal approach to software product families
ISoLA'12 Proceedings of the 5th international conference on Leveraging Applications of Formal Methods, Verification and Validation: technologies for mastering change - Volume Part I
Hi-index | 0.00 |
We introduce the feature-oriented language FLan as a proof of concept for specifying both declarative aspects of product families, namely constraints on their features, and procedural aspects, namely feature configuration and run-time behaviour. FLan is inspired by the concurrent constraint programming paradigm. A store of constraints allows one to specify in a declarative way all common constraints on features, including inter-feature constraints. A standard yet rich set of process-algebraic operators allows one to specify in a procedural way the configuration and behaviour of products. There is a close interaction between both views: (i) the execution of a process is constrained by its store to forbid undesired configurations; (ii) a process can query a store to resolve design and behavioural choices; (iii) a process can update the store by adding new features. An implementation in the Maude framework allows for a variety of formal automated analyses of product families specified in FLan, ranging from consistency checking to model checking.