Not publically available yet

People Currently Involved
   Carlos Areces
   Wiet Bouma
   Maarten de Rijke

People Previously Involved
   Rafael Accorsi

External links

Feature Interaction

This page describes our ongoing work on feature interaction in telecommunications

An important approach towards software design that is advocated by modern software engineering is to consider a complex system as a combination of a basic system, which provides the necessary behavior for stand-alone operation, and a set of modules of functionality, called features, which are added on top of the basic system.

While this approach has clear benefits for both developer and user, it also presents problems. In the presence of mutliple features on top of the same basic system the behavior of one feature may affect the behavior of another in unexpected or unwanted ways. The problem of identifying such interactions is called the feature interaction detection problem.

The telecommunications domain provides a particularly important setting in which feature interaction may occur widely, since ``plug-in'' architectures are its model of choice. In telephony systems, features are pieces of functionality that are designed to provide a new facility to a subscriber or to simplify the administration of the network.

An Example
A classical example of feature interaction occurs between Call Waiting (if a busy subscriber receives a call, the new incoming call is put on hold) and Call Forwarding (every call to a subscriber is forwarded to another phone). These features cannot be activated in conjunction: if one of them has priority, the other is disabled.

What's the Problem?
Resolving interaction between features is usually not problematic. What is problematic is determining whether interaction can occur. Even for small systems the task of exploring all possible behaviors is usually beyond human capabilities, and the use of formal testing and simulation environments seems unavoidable.

Feature Interaction in Amsterdam
There have been several formal approaches tot the feature interaction detection problem, based on model checking or on satisfiability checking. In the Computational Logic group here in Amsterdam, we're pursuing two lines of attack, one based on satisfiability checking, the other based on constraints. Please explore the links on the left-hand side to find out more.

Send nice feedback and friendly requests to