Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions

Feature interactions occur when one feature interferes with the intended operation of another feature. To detect such interactions, each new feature must be tested against existing features. The detected interactions must then be resolved; many existing approaches to resolving interactions require t...

Full description

Bibliographic Details
Main Author: Zimmer, Patsy Ann
Language:en
Published: 2007
Subjects:
Online Access:http://hdl.handle.net/10012/3350
id ndltd-WATERLOO-oai-uwspace.uwaterloo.ca-10012-3350
record_format oai_dc
spelling ndltd-WATERLOO-oai-uwspace.uwaterloo.ca-10012-33502013-01-08T18:50:41ZZimmer, Patsy Ann2007-09-27T17:42:32Z2007-09-27T17:42:32Z2007-09-27T17:42:32Z2007-09-26http://hdl.handle.net/10012/3350Feature interactions occur when one feature interferes with the intended operation of another feature. To detect such interactions, each new feature must be tested against existing features. The detected interactions must then be resolved; many existing approaches to resolving interactions require the feature set be prioritized. Unfortunately, the cost to determine a priority ordering for a feature set increases dramatically as the number of features increases. This thesis explores strategies to decrease the cost of prioritizing features, and thus facilitates priority-based solutions to resolving feature interactions. Specifically, this thesis introduces a categorization approach that reduces the complexity of determining priorities for a large set of features by decomposing the prioritization problem. Our categorization approach reduces this cost by using abstraction to divide the system's features into categories based on their main goal or functionality (e.g., block unwanted calls, present call information). Next, in order to detect and resolve the interactions that occur between these seemingly unrelated categories, we identify a set of principles for proper system behaviour that define acceptable behaviour in the global system. For example, a call that should be blocked by a call-screening feature should never result in a voice connection. The categories are then ordered, such that adherence to the principles is optimized. We show that using category priorities, to order a large feature set, correctly resolves interactions between individual features and significantly reduces the cost to determine priority orderings. The four significant contributions that this thesis makes are: 1) the categorization of features, 2) the principles of proper system behaviour, 3) automatic generation of priority orderings for categories, and 4) devising several optimizations that reduce the search space when exploring call simulations during the automatic generation of the priority orderings. These contributions are examined with respect to the telephony domain and result in the identification of 12 feature categories and 9 principles of proper system behaviour. A Prolog model was also created to run call simulations on the categories, using the identified principles as correctness criteria. Our case studies showed the reduced cost of our categorization approach is approximately 1/10^(55) % of the cost of a traditional approach. Given this significant reduction in the cost and the ability of our model to accurately reproduce the manually identified priority orderings, we can confidently argue that our categorization approach was successful. The three main limitations of our categorization approach are: 1) not all features (e.g., 911 features in telephony) can be categorized or some categories will contain a small number of features, 2) the generated priority ordering may still need to be analyzed by a human expert, and 3) the run time for our automatic generation of priority orderings remains factorial with respect to the size of the number of categories. However, these limitations are small in comparison to the savings generated by the categorization approach.enfeature interactiontelephonyprioritizationcategorizationPrioritizing Features Through Categorization: An Approach to Resolving Feature InteractionsThesis or DissertationSchool of Computer ScienceDoctor of PhilosophyComputer Science
collection NDLTD
language en
sources NDLTD
topic feature interaction
telephony
prioritization
categorization
Computer Science
spellingShingle feature interaction
telephony
prioritization
categorization
Computer Science
Zimmer, Patsy Ann
Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions
description Feature interactions occur when one feature interferes with the intended operation of another feature. To detect such interactions, each new feature must be tested against existing features. The detected interactions must then be resolved; many existing approaches to resolving interactions require the feature set be prioritized. Unfortunately, the cost to determine a priority ordering for a feature set increases dramatically as the number of features increases. This thesis explores strategies to decrease the cost of prioritizing features, and thus facilitates priority-based solutions to resolving feature interactions. Specifically, this thesis introduces a categorization approach that reduces the complexity of determining priorities for a large set of features by decomposing the prioritization problem. Our categorization approach reduces this cost by using abstraction to divide the system's features into categories based on their main goal or functionality (e.g., block unwanted calls, present call information). Next, in order to detect and resolve the interactions that occur between these seemingly unrelated categories, we identify a set of principles for proper system behaviour that define acceptable behaviour in the global system. For example, a call that should be blocked by a call-screening feature should never result in a voice connection. The categories are then ordered, such that adherence to the principles is optimized. We show that using category priorities, to order a large feature set, correctly resolves interactions between individual features and significantly reduces the cost to determine priority orderings. The four significant contributions that this thesis makes are: 1) the categorization of features, 2) the principles of proper system behaviour, 3) automatic generation of priority orderings for categories, and 4) devising several optimizations that reduce the search space when exploring call simulations during the automatic generation of the priority orderings. These contributions are examined with respect to the telephony domain and result in the identification of 12 feature categories and 9 principles of proper system behaviour. A Prolog model was also created to run call simulations on the categories, using the identified principles as correctness criteria. Our case studies showed the reduced cost of our categorization approach is approximately 1/10^(55) % of the cost of a traditional approach. Given this significant reduction in the cost and the ability of our model to accurately reproduce the manually identified priority orderings, we can confidently argue that our categorization approach was successful. The three main limitations of our categorization approach are: 1) not all features (e.g., 911 features in telephony) can be categorized or some categories will contain a small number of features, 2) the generated priority ordering may still need to be analyzed by a human expert, and 3) the run time for our automatic generation of priority orderings remains factorial with respect to the size of the number of categories. However, these limitations are small in comparison to the savings generated by the categorization approach.
author Zimmer, Patsy Ann
author_facet Zimmer, Patsy Ann
author_sort Zimmer, Patsy Ann
title Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions
title_short Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions
title_full Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions
title_fullStr Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions
title_full_unstemmed Prioritizing Features Through Categorization: An Approach to Resolving Feature Interactions
title_sort prioritizing features through categorization: an approach to resolving feature interactions
publishDate 2007
url http://hdl.handle.net/10012/3350
work_keys_str_mv AT zimmerpatsyann prioritizingfeaturesthroughcategorizationanapproachtoresolvingfeatureinteractions
_version_ 1716573012898086912