论文部分内容阅读
近几年来,随着模型驱动体系结构(MDA)在软件工程领域研究和应用的逐渐升温,越来越多的有关人机交互和用户界面的研究者开始逐渐把目光投向MDA,探索将模型驱动的思想引入到用户界面的自动生成的相关研究中,取得了不少有益的成果。在这样的背景之下,各种各样有关基于任务模型的用户界面自动生成的概念和理论不断涌现,其中Fabio Paterno等人提出了基于图形符号的ConcurTaskTrees(CTT)任务模型表示法,被越来越多大学和研究机构用于各种用户界面的任务分析研究中,并在实际的应用中收到了良好的效果。不少基于任务模型的用户界面生成工具和原型系统也被开发出来。其中包括Giulio Mori,Fabio Paterno,Carmen Santoro等人设计实现的CTTE/TERESA系统,Tim Clerckx等人提出的Dygimes原型系统等等。本文将以ConcurTaskTrees任务模型为主要的研究对象,着重讨论和解决了基于ConcurTaskTrees任务模型自动生成用户界面过程中的2个问题:1)ConcurTaskTrees任务模型表示法的形式化的分析和描述。本文定义了任务的状态谓词,用来描述任务在执行过程中的不同时刻所处的状态,并且讨论了状态谓词的转化关系,即任务执行状态的转化。在状态谓词的基础上,本文用状态转移网(STN)来描述象任务执行过程这样的动态的过程,用谓词逻辑公式的形式对ConcurTaskTrees暂态关系含义进行了重新表述,给出了几种主要任务暂态关系的STN图。2)如何由ConcurTaskTrees任务模型抽取用户界面对话/导航模型的方法,本文以Dygimes原型系统的有关研究工作为基础,提出了暂态关系运算的概念,将由ConcurTaskTrees任务模型抽取用户界面对话/导航模型的过程转变成一个求解暂态关系运算表达式的过程,和这个过程相关的工作包括两个方面:一是由任务模型得到暂态关系运算表达式树;二是对基本的暂态关系运算规则的定义。在将用户界面的对话/导航模型表示为STN图后,暂态关系的运算实际上被定义为一个针对STN图的操作,求解暂态关系运算表达式的过程实际上变成了一个合并STN图的过程。这个过程改进了Dygimes原型系统提出的解决方案,把抽取ETS及其之间转换关系的过程统一为一个过程,整个过程简洁易懂,并且易于实现。以上面两点为基础,本文实现了一个基于ConcurTaskTrees任务模型的用户界面生成原型系统,实现了本文提出的几种暂态关系运算操作。