A Heuristic Algorithm to Detect Feature Interactions in Requirements

  • Maritta Heisel
  • Jeanine Souquières
Conference paper


We present a heuristic algorithm to systematically detect feature interactions in requirements, which are expressed as constraints on system event traces. The algorithm is part of a broader methodology for requirements elicitation and formal specification. Given a new constraint and a set of already accepted constraints, it computes a set of candidate constraints that possibly interact with the new one. We illustrate the algorithm by adding new features to a simple lift.


Heuristic Algorithm Requirement Engineering Semantic Relation Feature Interaction Predicate Symbol 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    M. Calder and E. Magill, editors. Proc. 6th Feature Interaction Workshop, FIW 2000. IOS Press Amsterdam, 2000.Google Scholar
  2. 2.
    K. Kimbler and W. Bouma, editors. Proc. 5th Feature Interaction Workshop, FIW 1998. IOS Press Amsterdam, 1998.Google Scholar
  3. 3.
    R. Turner, A. Fuggetta, L. Lavazza, and A. Wolf. A conceptual basis for feature engineering. Journal of Systems and Software, 49(1):3–15, 1999.CrossRefGoogle Scholar
  4. 4.
    G.B. Bruns, P. Mataga, and I. Sutherland. Features as Service Transformers. In Kimbler and Bouma [2], pages 85–97.Google Scholar
  5. 5.
    P. Zave. Systematic design of call-coverage features. In Proc. 7th International Conference on Algebraic Methodology and Software Technology, LNCS 1548. Springer-Verlag, 1999.Google Scholar
  6. 6.
    M. Heisel and J. Souquières. A heuristic approach to detect feature interactions in requirements. In Kimbler and Bouma [2], pages 165–171.Google Scholar
  7. 7.
    M. Heisel and J. Souquières. A Method for Requirements Elicitation and Formal Specification. In J. Akoka and M. Bouzeghoub and I. Comyn-Wattiau and E. Metais, editor, Proceedings of the 18th International Conference on Conceptual Modeling, LNCS 1728, pages 309–324. Springer Verlag, November 1999.Google Scholar
  8. 8.
    M. Heisel and J. Souquières. De l’élicitation des besoins à la spécification formelle. Technique et science informatiques, 18(7):777–801, 1999.Google Scholar
  9. 9.
    M. Jackson and P. Zave. Deriving Specifications from Requirements: an Example. In Proceedings 17th Int. Conf. on Software Engineering, Seattle, USA, pages 15–24. ACM Press, 1995.Google Scholar
  10. 10.
    P. Zave and M. Jackson. Four dark corners of requirements engineering. ACM Transactions on Software Engineering and Methodology, 6(1):1–30, January 1997.CrossRefGoogle Scholar
  11. 11.
    M. Fowler and K Scott. UML distilled. Applying the standard Object Modelling Language. Addison-Wesley, 1997.Google Scholar
  12. 12.
    M. Jackson and P. Zave. Distributed Feature Composition: A Virtual Architecture for Telecommunications Services. IEEE Transactions on Software Engineering, 24(10):831–847, October 1998.CrossRefGoogle Scholar
  13. 13.
    M. Plath and M. Ryan. Plug-and-Play features. In Kimbler and Bouma [2], pages 150–164.Google Scholar
  14. 14.
    A. Aho, S. Gallagher, N. Griffeth, C. Schell, and D. Swayne. Scf3/sculptor with Chisel: Requirements engineering for communication services. In Kimbler and Bouma [2], pages 45–63.Google Scholar
  15. 15.
    K.E. Cheng. Towards a Formal Model for Incremental Service Specification and Interaction Management Support. In L.G. Bouma and H. Velthuijsen, editors, Feature Interaction in Telecommunication. IOS Press Amsterdam, 1994.Google Scholar
  16. 16.
    B. Jonsson, T. Margaria, G. Naeser, J. Nystrom, and B. Steffen. Incremental Requirement Specification for Evovlving Systems. In Calder and Magill [1], pages 145–162.Google Scholar
  17. 17.
    A. Felty and K Namjoshi. Feature specification and automatic conflict detection. In Calder and Magill [1], pages 179–192.Google Scholar
  18. 18.
    A. Khoumsi and R.J. Bevelo. A detection method developed after a thorough study of the contest held in 1998. In Calder and Magill [1], pages 226–240.Google Scholar
  19. 19.
    A. van Lamsweerde and E. Letier. Integrating Obstacles in Goal-directed Requirements. In Proc. of the 20th International Conference on Software Engineering, ICSE’98, Kyoto, Japan, 1998. IEEE.Google Scholar
  20. 20.
    A. van Lamsweerde and E. Letier. Handling obstacles in goal-directed requirements engineering. IEEE Transactions on Software Engineering, 2000. Special Issue on Exception Handling.Google Scholar
  21. 21.
    J. Souquières and M. Heisel. Une méthode pour l’élicitation des besoins: application au système de contrôle d’accès. In Yves Ledru, editor, Proceedings Approches Formelles dans l’Assistance au Développement de Logiciels-AFADL’2000, pages 36–50. LSR-IMAG, Grenoble, 2000. Scholar
  22. 22.
    J. M. Spivey. The Z Notation-A Reference Manual. Prentice Hall, 2nd edition, 1992.Google Scholar

Copyright information

© Springer-Verlag London Limited 2001

Authors and Affiliations

  • Maritta Heisel
    • 1
  • Jeanine Souquières
    • 2
  1. 1.Fakultät für InformatikUniversität MagdeburgMagdeburg
  2. 2.LORIA—Université Nancy2Vandceuvre-les-Nancy

Personalised recommendations