Return to search

A Declarative Rules API for Managing Adaptation Relationships in Context-Oriented Programming

Context-aware computing requires software that can adapt to changes in context. When contextual circumstances trigger multiple adaptations, software must also understand the relationships between these adaptations and react according to the rules governing these relationships. Adaptable software needs a means to establish and interpret these rules in order to avoid any undesirable and potentially catastrophic conflicts.
This dissertation designs and implements the Adaptation Rules Management API (ArmAPI). ArmAPI has been demonstrated to work with a Context-Oriented Programming variation for Java called ContextJ* to execute conflict-free adaptations in two software applications. ArmAPI allows programmers to define relationship types between adaptations, and transfers these definitions to Prolog facts and rules. The Prolog engine, encapsulated within ArmAPI, then works with imperative algorithms to determine the appropriate adaptations to execute based on the current set of facts, rules, and contextual circumstances.
Context represents all of the conditions for all of the entities known to an observing device. In any environment, context represents a large amount of data that can influence a multitude of conflicting adaptations. This research provides an incremental step towards overcoming the problem of adaptation conflict by constructing an API that considers the relationship types of inclusion, exclusion, ordering, conditional dependency, and independence. The API has been validated via two prototypes that provide typical scenarios.

Identiferoai:union.ndltd.org:nova.edu/oai:nsuworks.nova.edu:gscis_etd-1134
Date01 January 2012
CreatorsDirska, Henry
PublisherNSUWorks
Source SetsNova Southeastern University
Detected LanguageEnglish
Typetext
Formatapplication/pdf
SourceCEC Theses and Dissertations

Page generated in 0.0018 seconds