skip to main content
article

Feature specification and automated conflict detection

Published:01 January 2003Publication History
Skip Abstract Section

Abstract

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.

References

  1. Aho, A., Gallagher, S., Griffeth, N., Schell, C., and Swayne, D. 1998. SCF3TM/culptor with Chisel: Requirements engineering for communications services. In Feature Interactions in Telecommunications and Software Systems V, K. Kimbler and L. G. Bouma, Eds. IOS Press, 45--63.]]Google ScholarGoogle Scholar
  2. Blom, J., Bol, R., and Kempe, L. 1995. Automatic detection of feature interactions in temporal logic. In Feature Interactions in Telecommunications Systems III, K. E. Cheng and T. Ohta, Eds. IOS Press, 1--19.]]Google ScholarGoogle Scholar
  3. Brayton, R. K., Hachtel, G. D., Sangiovanni-Vincentelli, A. L., Somenzi, F., Aziz, A., Cheng, S.-T., Edwards, S. A., Khatri, S. P., Kukimoto, Y., Pardo, A., Qadeer, S., Ranjan, R. K., Sarwary, S., Shiple, T. R., Swamy, G., and Villa, T. 1996. VIS: A system for verification and synthesis. In Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 1102. Springer-Verlag, New York.]] Google ScholarGoogle Scholar
  4. Buchi, J. R. 1962. On a decision method in restricted second-order arithmetic. In 1960 International Congress for Logic, Methodology and Philosophy of Science. Stanford Univ. Press, Stanford, Calif.]]Google ScholarGoogle Scholar
  5. Clarke, E. M. and Emerson, E. A. 1981. Design and synthesis of synchronization skeletons using branching time temporal logic. In Workshop on Logics of Programs. Lecture Notes in Computer Science, vol. 131. Springer-Verlag, New York.]] Google ScholarGoogle Scholar
  6. Combes, P. and Pickin, S. 1994. Formalisation of a user view of network and services for feature interaction detection. In Feature Interactions in Telecommunications Systems, W. Bouma and H. Velthuijsen, Eds. IOS Press, 120--135.]]Google ScholarGoogle Scholar
  7. du Bousquet, L. 1999. Feature interaction detection using testing and model-checking, experience report. In World Congress on Formal Methods. Lecture Notes in Computer Science, vol. 1708. Springer-Verlag, New York.]] Google ScholarGoogle Scholar
  8. Emerson, E. A. and Halpern, J. Y. 1986. "Sometimes" and "Not Never" revisited: on Branching versus Linear Time Temporal Logic. J.ACM 33, 1 (Jan.), 151--178.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Faci, M. and Logrippo, L. 1994. Specifying features and analysing their interactions in a LOTOS environment. In Feature Interactions in Telecommunications Systems, W. Bouma and H. Velthuijsen, Eds. IOS Press, 136--151.]]Google ScholarGoogle Scholar
  10. Gammelgaard, A. and Kristensen, J. E. 1994. Interaction detection, a logical approach. In Feature Interactions in Telecommunications Systems, W. Bouma and H. Velthuijsen, Eds. IOS Press, 178--196.]]Google ScholarGoogle Scholar
  11. Hardin, R. H., Har'el, Z., and Kurshan, R. P. 1996. COSPAN. In Eighth Conference on Computer Aided Verification. Lecture Notes in Computer Science, vol. 1102. Springer-Verlag New York.]]Google ScholarGoogle Scholar
  12. Harel, D. and Pnueli, A. 1985. On the development of reactive systems. In Logics and Models of Concurrent Systems, K. Apt, Ed. NATO Advanced Summer Institutes, vol. F-13. Springer-Verlag, New York, 477--498.]] Google ScholarGoogle Scholar
  13. Holzmann, G. J. and Smith, M. H. 2000. Automating software feature interaction. Bell Labs Tech. J. 5.]]Google ScholarGoogle Scholar
  14. Jonsson, B., Margaria, T., Naeser, G., Nyström, J., and Steffen, B. 2000. Incremental requirement specification for evolving systems. In Feature Interactions in Telecommunications and Software Systems VI, M. Calder and E. Magill, Eds. IOS Press, 145--162.]]Google ScholarGoogle Scholar
  15. Kamoun, J. and Logrippo, L. 1998. Goal-oriented feature interaction detection in the intelligent network model. In Feature Interactions in Telecommunications and Software Systems V, K. Kimbler and L. G. Bouma, Eds. IOS Press, 172--186.]]Google ScholarGoogle Scholar
  16. Keck, D. O. and Kuehn, P. J. 1998. The feature and service interaction problem in telecommunications systems: A survey. IEEE Trans. Softw. Eng. 24, 10 (Oct.), 779--796.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Khoumsi, A. and Bevelo, R. J. 2000. A detection method developed after a thorough study of the contest held in 1998. In Feature Interactions in Telecommunications and Software Systems VI, M. Calder and E. Magill, Eds. IOS Press, 226--240.]]Google ScholarGoogle Scholar
  18. Lamport, L. 1994. The temporal logic of actions. ACM Trans. Prog. Lang. Syst. 16, 3 (May), 872--923.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. LaPorta, T. F., Lee, D., Lin, Y.-J., and Yannakakis, M. 1998. Protocol feature interactions. In Formal Description Techniques (FORTE-PSTV).]]Google ScholarGoogle Scholar
  20. Lin, F. J. and Lin, Y.-J. 1994. A building block approach to detecting and resolving feature interactions. In Feature Interactions in Telecommunications Systems, W. Bouma and H. Velthuijsen, Eds. IOS Press, 86--119.]]Google ScholarGoogle Scholar
  21. McMillan, K. L. 1993. Symbolic Model Checking. Kluwer Academic Publishers.]] Google ScholarGoogle Scholar
  22. Plath, M. and Ryan, M. 1998. Plug-and-play features. In Feature Interactions in Telecommunications and Software Systems V, K. Kimbler and L. G. Bouma, Eds. IOS Press, 150--164.]]Google ScholarGoogle Scholar
  23. Plath, M. and Ryan, M. 2001. Feature integration using a feature construct. Sci. Comput. Prog. 41, 1 (Sept.), 53--84.]] Google ScholarGoogle Scholar
  24. Pnueli, A. 1977. The temporal logic of programs. In Proceedings of the 18th IEEE Symposium on Foundations of Computer Science. IEEE Computer Society Press, Los Alamitos, Calif., 46--57.]]Google ScholarGoogle Scholar
  25. Pnueli, A. and Rosner, R. 1989. On the synthesis of a reactive module. In Proceedings of the 16th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM, New York.]] Google ScholarGoogle Scholar
  26. Queille, J. P. and Sifakis, J. 1982. Specification and verification of concurrent systems in CESAR. In Proceedings of the 5th International Symposium on Programming. Lecture Notes in Computer Science, vol. 137. Springer-Verlag, New York.]] Google ScholarGoogle Scholar
  27. Siddiqi, S. and Atlee, J. M. 2000. A hybrid model for specifying features and detecting interactions. Comput. Netw. 32, 471--485.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Tel 1996. LATA switching systems generic requirements (LSSGR) FR-NWT-000064, 1992 edition. Feature requirements, including: SPCS capabilities and features, SR-504. Issue 1, May 1996, Telcordia/Bellcore.]]Google ScholarGoogle Scholar
  29. Thomas, W. 1990. Automata on infinite objects. In Handbook on Theoretical Computer Science, J. van Leeuwen, Ed. Vol. B. Elsevier Science, Amsterdam, The Netherlands.]] Google ScholarGoogle Scholar
  30. Vardi, M. Y. and Wolper, P. 1986. An automata-theoretic approach to automatic program verification (preliminary report). In Symposium on Logic in Computer Science. 332--344.]]Google ScholarGoogle Scholar

Index Terms

  1. Feature specification and automated conflict detection

                Recommendations

                Comments

                Login options

                Check if you have access through your login credentials or your institution to get full access on this article.

                Sign in

                Full Access

                • Published in

                  cover image ACM Transactions on Software Engineering and Methodology
                  ACM Transactions on Software Engineering and Methodology  Volume 12, Issue 1
                  January 2003
                  105 pages
                  ISSN:1049-331X
                  EISSN:1557-7392
                  DOI:10.1145/839268
                  Issue’s Table of Contents

                  Copyright © 2003 ACM

                  Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 1 January 2003
                  Published in tosem Volume 12, Issue 1

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • article

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader