Applications which are both context-aware and adapting, enhance users’ experience by anticipating theirudneed in relation with their environment and adapt their behavior according to environmental changes.udBeing by definition both context-aware and adaptive these applications suffer both from faults related toudtheir context-awareness and to their adaptive nature plus from a novel variety of faults originated by theudcombination of the two. This research work analyzes, classifies, detects, and reports faults belongingudto this novel class aiming to improve the robustness of these Context-Aware Adaptive Applicationsud(CAAAs).udTo better understand the peculiar dynamics driving the CAAAs adaptation mechanism a generaludhigh-level architectural model has been designed. This architectural model clearly depicts the stream ofudinformation coming from sensors and being computed all the way to the adaptation mechanism. Theudmodel identifies a stack of common components representing increasing abstractions of the context andudtheir general interconnections. Known faults involving context data can be re-examined according to thisudarchitecture and can be classified in terms of the component in which they are happening and in termsudof their abstraction from the environment. Resulting from this classification is a CAAA-oriented faultudtaxonomy.udOur architectural model also underlines that there is a common evolutionary path for CAAAs andudshows the importance of the adaptation logic. Indeed most of the adaptation failures are caused byudinvalid interpretations of the context by the adaptation logic. To prevent such faults we defined a model,udthe Adaptation Finite-State Machine (A-FSM), describing how the application adapts in response toudchanges in the context. The A-FSM model is a powerful instrument which allows developers to focus inudthose context-aware and adaptive aspects in which faults reside.udIn this model we have identified a set of patterns of faults representing the most common faults inudthis application domain. Such faults are represented as violation of given properties in the A-FSM. Weudhave created four techniques to detect such faults. Our proposed algorithms are based on three differentudtechnologies: enumerative, symbolic and goal planning. Such techniques compensate each other. Weudhave evaluated them by comparing them to each other using both crafted models and models extractedudfrom existing commercial and free applications. In the evaluation we observe the validity, the readabilityudof the reported faults, the scalability and their behavior in limited memory environments. We concludeudthis Thesis by suggesting possible extensions.
展开▼
机译:既可以感知上下文又可以适应环境的应用程序可以通过预测用户与环境的关联来增强用户的体验,并可以根据环境变化来适应其行为。它们的情境感知及其适应性,再加上源自两者的 u u u200b u200b u200b u200b u003c这项研究工作分析,分类,检测和报告属于该新颖类的故障,旨在提高这些上下文感知自适应应用程序的鲁棒性 ud(CAAAs)。 ud为了更好地理解驱动CAAAs自适应机制的特殊动态, ud已经设计了高层架构模型。该体系结构模型清楚地描述了来自传感器的信息流,并一直进行计算直至适应机制。 udmodel标识一堆公共组件,这些组件代表上下文和其一般互连的不断增加的抽象性。可以根据此架构重新检查涉及上下文数据的已知错误,并可以根据发生错误的组件以及从环境中提取的错误对其进行分类。这种分类的结果是面向CAAA的故障分类法。 ud我们的体系结构模型还强调了CAAA存在一条通用的进化路径,并且 ud显示了适应逻辑的重要性。实际上,大多数适配失败是由适配逻辑对上下文的无效解释引起的。为了防止此类错误,我们定义了一个模型,即自适应有限状态机(A-FSM),描述了应用程序如何根据上下文中的udchange进行适应。 A-FSM模型是一种功能强大的工具,它使开发人员可以专注于 r n r n发生错误的上下文感知和自适应方面。 ud此模型中,我们已识别出一组代表该应用程序中最常见错误的错误模式。域。此类故障表示为违反了A-FSM中的给定属性。我们已经创建了四种技术来检测此类故障。我们提出的算法基于三种不同的 udtechnologies:枚举,符号和目标计划。这样的技术相互补偿。我们已通过使用制作的模型和从现有商业应用程序和免费应用程序中提取的模型相互比较来评估它们。在评估中,我们观察了所报告故障的有效性,可读性 ud,可伸缩性及其在有限内存环境中的行为。我们通过建议可能的扩展来结束本文。
展开▼