Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Feature interaction problem
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Software engineering concept}} '''Feature interaction''' is a [[software engineering]] concept. It occurs when the integration of two features would modify the behavior of one or both features. The term ''feature'' is used to denote a unit of functionality of a software application. Similar to many concepts in computer science, the term can be used at different levels of abstraction. For example, the plain old telephone service (POTS) is a telephony application feature at one level, but itself is composed of originating features and terminating features. The originating features may in turn include the provide [[dial tone]] feature, digit collection feature and so on. This definition of ''feature interaction'' allows one to focus on certain behavior of the interacting features such as how their response time may be changed given the integration. Many researchers in the field consider problems that arise due to change in the execution ''behavior'' of the interacting features. Under that context, the ''behavior'' of a feature is defined by its execution flow and output for a given input. In other words, the interaction changes the execution flow and output of the interacting features for a given input. ==Example== In the context of [[telephony]], a [[telephone line]] (the system) typically offers a set of features that include [[call forwarding]] and [[call waiting]]. Call waiting allows one call to be suspended while a second call is answered, while call forwarding enables a customer to specify a secondary phone number to which additional calls will be forwarded in the event that the customer is already using the phone. To illustrate the example, we consider a telephone line provided to a customer, and we assume that both call forwarding and call waiting are enabled on the line. When a first call arrives on the line, the phone rings and is answered. Since neither feature is activated by the first call, there is no noticeable problem. When a second call arrives before the first has terminated, the telephone system has a decision to make: whether the call should be forwarded to the secondary number (call forwarding) or the person who answered the first call should be notified that another call has arrived (call waiting). Since this decision has no obvious correct answer, the optimal answer depends on the needs of the customer. This ''feature interaction'' is a specific example of a general and common problem that has become prevalent due to increasing system complexity. In this situation, it is possible that the systemโs decision will be made in a [[Nondeterministic algorithm|non-deterministic]] fashion due to [[Concurrency (computer science)|race conditions]] and other design factors. The consequences of feature interactions can range from minor irritations to life-threatening software failures, and therefore there is ongoing research that aims to find ways of ''detecting'' as well as ''resolving'' feature interactions. ==Workshops and conferences== *The series of Feature Interaction Workshops (FIW) and the International Conferences on Feature Interaction (ICFI) are the primary venues devoted to this problem: {| class="wikitable" border="1" |- ! Event ! Location ! Co-chairs |- | FIW'92 | St. Petersburg, USA | [[Nancy Davis Griffeth|N. Griffeth]], Y.-J. Lin |- | FIW'94 | Amsterdam, the Netherlands | L.G. Bouma, H. Velthuijsen |- | FIW'95 | Kyoto, Japan | K.E. Cheng, T. Ohta |- | FIW'97 | Montreal, Canada | P. Dini, R. Boutaba, L. Logrippo |- | FIW'98 | Lund, Sweden | K. Kimbler, L.G. Bouma |- | [http://www.cs.stir.ac.uk/~mko/fiw00/ FIW'00] | Glasgow, Scotland | M. Calder, E. Magill |- | [http://www.site.uottawa.ca/fiw03/ FIW'03] | Ottawa, Canada | D. Amyot, [[Luigi Logrippo|L. Logrippo]] |- | [http://www.cs.le.ac.uk/people/srm13/fiw05/ ICFI'05] | Leicester, UK | S. Reiff-Marganiec, M. D. Ryan |- | [https://web.archive.org/web/20071126074956/http://www-lsr.imag.fr/ICFI2007/ ICFI'07] | Grenoble, France | F. Ouabdesselam, L. du Bousquet |- | [http://www27.cs.kobe-u.ac.jp/wiki/icfi/ ICFI'09] | Lisbon, Portugal | S. Reiff-Marganiec, M. Nakamura |} ==See also== *[[Dependability]] ==External links== ===Research groups=== *[http://www.dcs.gla.ac.uk/research/hfig/ Hybrid Feature Interaction Group] *[https://web.archive.org/web/20061020203632/http://staff.science.uva.nl/~mdr/Projects/FI/index.html University of Amsterdam] *[https://web.archive.org/web/20050526022739/http://www.docs.uu.se/docs/fi/ Uppsala University] ===Papers=== *[https://web.archive.org/web/20120806133417/http://www.research.att.com/~pamela/faq.html FAQ Sheet on Feature Interaction], [[Pamela Zave]]. *[http://www.soi.city.ac.uk/~bernie/keynote.ps Agents and their Services: An Ontological Approach to Feature Interaction] B. Cohen, City University. *[http://citeseer.ist.psu.edu/cameron94feature.html A Feature Interaction Benchmark for IN and Beyond] E. Jane Cameron, [[Nancy Davis Griffeth|Nancy D. Griffeth]], Yow-Jian Lin, Margaret E. Nilson, William K. Schnure, Bellcore, and H. Velthuijsen, PTT Research, The Netherlands. * [http://www.iospress.nl/subject/feature-interactions/ Conference proceedings] of FIW and ICFI at [http://www.iospress.nl IOS Press]. * [http://www.dcs.gla.ac.uk/~muffy/papers/calder-kolberg-magill-reiff.pdf Feature interaction: a critical review and considered forecast]. M. Calder, M. Kolberg, E. H. Magill, and S. Reiff-Marganiec. Computer Networks 41, pp. 115โ141 (2002). * [http://oro.open.ac.uk/22499/ Feature Interaction as a Context Sharing Problem]. Armstrong Nhlabatsi, Robin Laney, and Bashar Nuseibeh. International Conference on Feature Interactions, 11-12 June, University of Lisbon, Portugal, pp. 133-148 (2009). [[Category:Software quality]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Short description
(
edit
)