论文部分内容阅读
普适计算这一新型计算模式试图将丰富的计算资源融入环境,对于用户而言,计算是无处不在而又透明的。随着软硬件技术的发展,这一理念的实现成为了可能,相关领域的研究得到了学术界和工业界的广泛关注。这类研究的一个重要关注点是上下文感知,这是普适计算系统所必须具备的能力之一。具体而言,上下文感知指计算系统可以感知环境,并基于环境进行反应。研究者们从方法学角度对于如何理解上下文的概念、如何开发上下文感知应用、如何支撑这类应用的运行已进行了广泛研究。该研究领域正处于蓬勃发展的阶段。本文对于上述计算模式的一类典型应用进行考察,即,面向动作的上下文感知(Activity-Oriented Context-Aware,简称AOCA)应用。这类应用的用户在一个智能空间中进行一些自主的日常动作,应用为这些动作提供环境保障。AOCA应用的用户需求被表示为对于环境的约束,这类约束是与动作高度相关的。这类应用在普适计算中具有一定普遍性,如智能家居、老人看护皆可被看作AOCA应用。在AOCA应用中,对于环境的约束因人而异、因动作类型而异。这些约束具有开放性,所以难以在开发阶段由开发者一次性地完成理解和定义。此外,这类应用的环境部分同样开放、动态,也难以一次性开发完成。然而,传统的上下文感知应用编程模式多试图考虑全局信息、一次性地完成开发,对于AOCA应用开发以及与之相关的运行过程支持尚多有不足。针对这样一种新型的应用形态,本文以应用系统的构建为主线,以关注分离为基本指导思想,从概念模型、编程模式、软件开发支持、软件运行支撑系统等角度考察了面向动作的上下文感知应用系统的设计与实现技术,取得的创新成果如下:·提出了面向动作的上下文模型,以此为基础给出了面向动作的上下文感知应用的软件模型和编程模式。其中的上下文在运行时围绕动作而组织,呈现出动态性和局部性;软件模型由基础环境和应用约束构成,体现了关注分离思想;编程模式也具有轻量级和增量式开发的特性,较好地适应了AOCA应用的开放性和个性化等特点。●设计和实现了一个支持上述模型的AOCA应用开发平台。该平台支持基础环境和应用中动作的环境约束两个关注点的独立开发和增量式开发。其中,前者由一个图形化的开发工具支持,后者由一个自定义的领域专用语言AOCL来描述。与此同时,平台还提供了一个完整的AOCA应用编程接口(API)供应用开发人员使用。●设计和实现了一个支持AOCA应用的轻量级、可插拔运行支撑平台PAOCo该平台可以支持用上述方法开发出的软件制品的运行,在运行时按照概念模型的指导动态生成特定动作的上下文,并用主动式的上下文管理器管理这样的上下文,以判断特定动作对于环境的约束是否被满足,主动地为用户提供服务。●给出了一种基于Ambient Calculus/Ambient Logic的AOCA应用形式化方法,以期提高该类应用的可靠性。该方法基于Ambient Calculus进行AOCA应用的形式化规约;以Ambient Logic为逻辑基础,给出AOCA应用在系统级和应用级一致性约束的形式规约。AOCA应用系统的设计者和开发者可以基于上述形式工具及其规约方法,在AOCA应用开发的各个阶段开展相应的形式化工作,以期在早期设计阶段发现错误。