Feature Interaction Filtering and Detection with Use Case Maps and LOTOS Jameleddine Hassine Thesis submitted to the school of graduate studies and research in partial fulfillment of the requirements for the degree of Master of Computer Science Under the auspices of the Ottawa-Carleton Institute of Computer Science University of Ottawa, Ottawa, Ontario, Canada February 2001 Abstract Telephony systems have evolved from the Plain Old Telephony System providing only the basic functionality of making phone calls, to sophisticated systems in which many features have been introduced, providing network subscribers more control on the call establishment process. However, these facilities are confronted with a major obstacle known as the feature interaction problem. A feature interaction occurs when at least one feature is prevented from performing its functionality or when the system functions incorrectly due to the presence of features. In the first part of the thesis, we present a model for describing telephony features at the requirements stage. This model is built using the Use Case Maps Notation (UCM). Based on this model, we propose a method to filter feature interactions at the requirements stage. This preliminary evaluation allows the detection process to focus on feature combinations where interactions are possible and therefore reduces the cost of the detection process. In the second part of the thesis, a Feature Interaction Detection System is developed for detecting feature interactions between switch based and IN features. This method aims to detect interactions occurring at the abstract specification level and resulting in violation of feature properties. This technique in based on the Formal Description technique LOTOS and uses Abstract Data Types to detect those violations. Our method detects feature interaction by executing the system specification. The designer can reach those interaction points either by a step by step execution or using the goal oriented execution technique. It is concluded that UCM and LOTOS are useful in specifying the telephony system with features and for detecting feature interactions at the abstract specification level.