(计算机软件与理论专业论文)基于任务模型的用户界面自动生成研究.pdf_第1页
(计算机软件与理论专业论文)基于任务模型的用户界面自动生成研究.pdf_第2页
(计算机软件与理论专业论文)基于任务模型的用户界面自动生成研究.pdf_第3页
(计算机软件与理论专业论文)基于任务模型的用户界面自动生成研究.pdf_第4页
(计算机软件与理论专业论文)基于任务模型的用户界面自动生成研究.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机软件与理论专业论文)基于任务模型的用户界面自动生成研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

山东大学硕士学位论文 摘要 近几年来,随着模型驱动体系结构( m d a ) 在软件工程领域研究和应用的 逐渐升温,越来越多的有关人机交互和用户界面的研究者开始逐渐把目光投向 m d a ,探索将模型驱动的思想引入到用户界面的自动生成的相关研究中,取得 了不少有益的成果。 在这样的背景之下,各种各样有关基于任务模型的用户界面自动生成的概念 和理论不断涌现,其中f a b i op a t 唧o 等人提出了基于图形符号的 c o n c u r t 鹤k t 旭e s ( a r r ) 任务模型表示法,被越来越多大学和研究机构用于各种 用户界面的任务分析研究中,并在实际的应用中收到了良好的效果。不少基于任 务模型的用户界面生成工具和原型系统也被开发出来。其中包括g i m i om 耐, f a b i op a t e m o ,c 砌肌s a l l 幻r o 等人设计实现的c r r e 肥r e s a 系统,t i mc l e r c 奴 等人提出的d y 百m 豁原型系统等等。 本文将以c o n c u d 缸k 1 r e e s 任务模型为主要的研究对象,着重讨论和解决了 基于c o n c 鼬k t r e 鹊任务模型自动生成用户界面过程中的2 个问题: 1 ) c o n c l l r l 缸k t r e 嚣任务模型表示法的形式化的分析和描述。本文定义了任 务的状态谓词,用来描述任务在执行过程中的不同时刻所处的状态,并且讨论了 状态谓词的转化关系,即任务执行状态的转化。在状态谓词的基础上,本文用状 态转移网( s i n ) 来描述象任务执行过程这样的动态的过程,用谓词逻辑公式的 形式对c o n c u r l 缸k t h 鼯暂态关系含义进行了重新表述,给出了几种主要任务暂 态关系的s 1 n 图。 2 ) 如何由c o n c “k k t r e 髓任务模型抽取用户界面对话导航模型的方法。 本文以d y 萄m 嚣原型系统的有关研究工作为基础,提出了暂态关系运算的概念, 将由c o n c u r r a s k t r e e s 任务模型抽取用户界面对话导航模型的过程转变成一个 求解暂态关系运算表达式的过程。和这个过程相关的工作包括两个方面:一是由 任务模型得到暂态关系运算表达式树:二是对基本的暂态关系运算规则的定义。 在将用户界面的对话导航模型表示为s t n 图后,暂态关系的运算实际上被定义 为一个针对s t n 图的操作,求解暂态关系运算表达式的过程实际上变成了一个 合并s t n 图的过程。这个过程改进了d y g i m e s 原型系统提出的解决方案,把抽 山东大学硕士学位论文 取e t s 及其之间转换关系的过程统一为一个过程,整个过程简洁易懂,并且易于 实现。 以上面两点为基础,本文实现了一个基于c o n c u r t a s k t r e e s 任务模型的用户 界面生成原型系统,实现了本文提出的几种暂态关系运算操作。 关键词m d a :模型驱动:任务模型:c o n c u r t a 8 k t r e e s ;用户界面自动生成 1 1 山东大学硕士学位论文 a b s t r a c t h l 血ep 嬲tf e w y e a r s ,t 量l er e a r c h 锄d 印p l i c 撕o no fm o d e ld r i v m c l l i t 咖e i ns o f h a r e 锄西n e e r i n gf i e l dh a v eb e e nm o r e 锄d l o r ep o p i 】1 缸m a i l yr e s e a r c h e r so n h c iha _ v e b e i n gp 巧m o r ea n 鞠t i o n s0 1 1m d a ,孤d 吐l e ya r e 仃y i n gt oa p p l y m o d e l - 嘶v e nc o n c 印ti i lr e s e a r c ha b o l l tu ri i l _ t e r f a c ea u t o m a 士i cg e n e 枷o n u n d e rm i sb a c k 笋o i l i l d ,m m l y 妇d so fc o n c e p 招a i l d 由e o r i 器a b o l i tt a s k _ b a d l l s e ri i l t 鲥沁eg 衄e r 撕o nh a v ea r i s e l l f a b i op a t e 】m o p r o p o s e dm ec o n c u r r e n tt a s k t r e 酷( c t r ) n 咖i o n ,谢1 i c hb a s e do i l 伊a p h i c a 王n o t a t i o n 锄di si l s e dt od e s c 曲et a s k n d e l m o r ea n dm o r e 吼i v e r s i 6 e s 锄di n s d t l i t e sh a v eu s e dc 下rn o 谢o nt or j e s e a r c h t i l et 越k 舭a l y s i so fu s e ri n t e r f e m a n y 协o l s 锄dp r 讲a 卯es y s t e m sw h i c hs u p p o r t t 船k b a s e d惜e ri l i t e r f 缸e g 髓e r a d o n a l s oh a v e b e 髓d e v e l o p e d , s u c ha s c t r e 肥r e s aw h i c l li sd e v e l o p e db yg i l l l i om o f i ,f a b i op 啦m o 、dc a m 跚 s 锄t o r o ,锄dd y 萄m 器p r o t o t y p e 锣s t e mw i l i c hi sp r o p o s e db yt i mc 1 e r c k x 1 k sn l e s i s 谢nt a k ec o n c u r l j s k t r e e st 罂km o d e l 罄m em a i nr 器e 盯c ho b j e 吒 锄dw ed i s c u s st v 旧p r o b l e i 璐t l a lw e 锻l c o m t e ri nc o u c m t a s k t r e e s 协km o c l e lb a s e d 璐e rh e f f ! a c eg 锄e r a d o n : 1 t h ef o 彻a l 孤出s i s 锄dd e s c r i p d o nf o rc o n a l r t a s k t r 嘲t a s km o d e l w e 澌l l d e f i n e m es t a :t ep r e d i c a t eo fa 协s k 锄du s e i t 幻d e s c r i b e l 王l es t a 士eo f 吐l i s t 鹤kd u r i n g 吐1 e 懿e c l n i o np r o c e s s b a s e do nd l i sc o n c 印t ,也es t a _ t et r 锄s i t i o nn e t w o r k ( s t n ) 耐n b eu s e d 协d 豁c r i b et 量1 ed y n a i n i ce x e c 砸o np r o c e s so fa 筝d u po ft a s k s t h e nw ew i l l 蜥n eag o u po fn l l e sw h j c hb a s e do np r e d i c a t ef o 哪i l l ae ) c 廿a c t 血em 朗血go f 僦n p o r a lr e l 枷跏i nc o n c u r 陆k t r e 嚣t a s km o d e l 2 王0 wt oe 喇m c t d i a l o g n a v i g a 五o n m o d e lo f 璐e ri l l t e r f k ef b ma c o n c u r t a s k t r e e st a s km o d e l b a s e do nr e l a l i v er e s e a r c ho fd y 百m e sp r o t o t y p e s y s t e i n ,w e 谢up r o p o s e 也ec o n c 印t 觚p o r a lr e l 撕o no p e r 撕o n ,锄d 谢l l 钆mn l e 国m 硼p r o c e s si n 幻ac a l c u i 撕o np r o c e s so fat e m p o r a lr e l a l i o no p e r a 五o ne x p r 器s i o l l m y w o r k 、i l l m a i l d y f o c u s o n 佃o f 缸酷:o n e i s 也e p r o c e s s t l 砒t i l m a c o n c u r r e n t t 弱k n 弓ei i l 幻at e m p o f a lr e l m i o no p e r a t i o ne x p r e s s i o n 扛e e ,t h eo 血e ri s 也ed e 缸i 矗o nf o r i 山东大学硕士学位论文 b a s i ct e m p o r a lr e l 撕o no p e r a t i o n t h ed i a l o 咖a v i g a t i o ni sr 印r e s e n t e db yas t ni n r 珂印p r o a c h ,a 1 1 d 吐1 e nat e l n p o r a lr e l a t i o n0 p e r a n o na 咖“l yi so p e r 撕o nt 0t t l i ss t n c a l c u l 撕o no fa 1 1e 冲r e s s i 伽i sa c t u a l l yt om e 唱es t nm ya p p r o 础i m p r o v 器廿l e m e t i l o dm a ti sp r o p o s e db yd y 百m e sp r o t o 锣p es y s t e m a tl a 瓯1 1 1 i st 1 e s i sw i l lp r o p o s ea 嘲i 1 1 t e r f a c ea u t o m 撕cg e n e 谢o np r o c e s sm a 土 i sb a s e do nc o n c u r t a s k t r e e st a s km o d e la saf e s i 】l t i o y _ o r d bm o d ei d riv e n r c h ;t e c t u r e( m d a ) : _ o d e | - b a s e d :t a s k m o d e c o n c u r t a s k t r e e s :u s e rn t e r f a c eg e 九e r a to n 原创性声明和关于论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下, 独立进行研究所取得的成果。除文中已经注明引用的内容外,本 论文不包含任何其他个人或集体己经发表或撰写过的科研成果。 对本文的研究做出重要贡献的个人和集体,均已在文中以明确方 式标明。本声明的法律责任由本人承担。 论文作者签名:燃 日期:2 文:! 照:盟 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同 意学校保留或向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅和借阅;本人授权山东大学可以将本学位论 文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印或其他复制手段保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名:燃导师签名:期:i 丑:匹:i o 山东大学硕士学位论文 第1 章引言 1 1 研究背景 当今,越来越多的研究人员和开发人员开始意识到用户界面开发,在高可交 互性应用系统开发中的重要性,用户界面开发在整个系统开发过程中所占的比重 也越来越大。然而,传统的开发方法由于其自身的局限性,在实际的开发过程中 往往致使广大研究和开发人员面临很多问题的困扰,主要表现在: ( 1 ) 用户界面的设计和开发过多的依赖于系统解决方案所采用的硬件和 软件平台。 ( 2 ) 用户界面的设计和开发过程主要集中在抽象层次较低的代码级别上。 ( 3 ) 用户界面设计和实现的对立,忽略了对交互过程的考虑。 ( 4 ) 不同系统的用户界面之间难以直接相互复用,大多需要重复开发。 ( 5 ) 用户界面和交互过程与具体应用的业务逻辑紧密耦合,难以根据需求 的快速变化对用户界面做出迅速调整。 为了解决这些问题,很多关于用户界面自动生成的研究作了许多有益的探 索,特别是近几年来,随着模型驱动体系结构( m d a ) 在软件工程领域研究和 应用的逐渐升温,越来越多的有关人机交互和用户界面的研究者开始逐渐把目光 投向m d a ,探索将模型驱动的思想引入到用户界面的自动生成的相关研究中, 取得了不少有益的成果。各种各样有关基于模型的用户界面自动生成的概念和理 论不断涌现,有些还设计开发实现了相关的工具和原型系统。 在这些研究中,基于任务模型的用户界面自动生成研究尤其引人注目。f a b i o p 砒e m o 等人提出了基于图形符号的c o n c u r t 鹊k t r e 豁( c t t ) 任务模型表示法【1 2 1 ”, c t t 被越来越多大学和研究机构用于各种用户界面的任务分析研究中,并在实际 的应用中收到了良好的效果。 一些基于c o n c u r t 鹪k t r e e s 任务模型的用户界面生成方法和原型系统也相继 出现,其中包括g i u l i om o r i ,f a b i op a t e m o ,c 踟s a n t o r o 等人设计实现的 c t r e 肛r e s a 系统,t i mc l e r c k x 等人提出的d y 百m e s 【2 1 1 原型系统等等。他 们对基于任务模型的用户界面生成研究做出了许多有益的探索。 山东大学硕士学位论文 随着对c o n c u r t a s k t r e e s 任务模型的研究的逐渐深入,越来越多的问冠也不 断出现,需要研究解决。本文的研究正是在这样的背景之下提出的。 1 2 研究现状 在正式展开本文主要工作的论述之前,首先有必要先介绍一下和本文的研究 内容相关的一些问题的研究现状。 1 2 1 模型驱动体系结构( m d 模型驱动体系结构( m o d e ld r i v 钮a r c h i t e c n l f e ,m d a ) p 9 ,”,4 3 。州是o m g ( 0 b j e c tm 锄a g 锄e n tg r o u p ) 提出的软件体系结构方法学,是一种基于模型的软 件开发框架。m d a 利用模型来指导系统开发的全过程,包括系统理解、设计、 架构、开发、部署、维护、集成等系统生命周期相关的全过程。 m d a 的基本思想是将模型作为软件开发过程的核心部分,严格区分系统的 功能规约与实现细节,把模型区分为描述系统业务功能的平台独立模型( p 1 a 怕h n h l d e p e n d e mm o d e l ,p d “) 和描述系统在特定技术平台上实现的平台相关模型 ( p l a 响ms p e c i f i cm o d e l ,p s m ) ,通过p d 讧到p s m 的变换以及p s m 到具体程 序代码的变换,完成整个软件系统的开发过程。 近些年来,很多研究都把模型驱动的思想引入到构建用户界面过程中,做出 了有益的探索和实践 ( 1 ) 关注点分离思想 关注点分离思想( s e p a r a l i o no f c o n c e m ,s o c ) 就是将所研究问题领域的各 个层次和方面分离,每个层次或方面构成一个关注点,每个关注点着重于解决问 题的某个特定方面。m d a 思想的基础就是基于将系统的和具体实现技术无关的 功能规范与系统在特定平台上的具体实现相分离的思想。 ( 2 ) 用户界面抽象层次的提升 人们可以在不同的层次上对用户界面进行建模。如本文将要重点讨论的 c o n c “h k t r e e s 任务模型以及各种抽象用户界面( a b s 仃a c tu s e r i i l t e f e ,a u ) 模型等等。 ( 3 ) 用户界面自动生成 山东大学硕士学位论文 从描述界面规范的各种模型出发,经过模型变换,可以得到最终的用户界面。 如本文将重点讨论由任务模型出发实现用户界面的自动生成。 ( 4 ) 开发环境和工具以及开发方式的变革 基于模型驱动的用户界面开发的整个过程,从设计,建模,模型变换直到最 后最终用户界面的生成,都需要有高度自动化的工具来保证。近年来的研究中, 出现了很多这样的工具,后面将会介绍其中比较优秀的两个代表:c r r e 用巨r e s a 和d y 画i n 嚣。 1 2 2c 仰c u r l 勰k t r 嘲任务模型表示法 c o n c l | r 协k t r e e s 任务模型表示法( c o n c u r r e n t 协kt r e e t a _ 6 0 n ) 1 1 1 3 1 ,它 是一种基于图形符号的,采用层次的树状结构来组织并表示任务模型的方法。 首先介绍c o i l c u r l 缸k l k 翳中任务种类和暂态关系的含义及其图形符号。 1 任务分析 任务分析是一个以人们的行为为出发点的分析过程,它分析人们完成任务的 方法:他们要做的事、要起作用的事和想要知道的事【1 】。 任务分析的一个重要方法是任务分解,郎需要考察将一项任务分成为若干子 任务的途径以及这些子任务执行次序的方法。任务分解使得任务的执行过程变得 层次化了,即一个任务的执行被委托给它下一层的子任务来完成,这些子任务之 间的关系及其执行的顺序成为考察一个任务执行过程的重点。 考虑一个用户交互过程,对其进行任务分析的目的和重点在于得到交互任务 及其子任务的一个层次体系,以及一些描述子任务执行的顺序和条件的方案( 1 1 。 这个方案必须能够恰当地捕获用户的交互意图,能够如实地反映交互过程,并把 它准确地表达出来,同时它不能曲解交互过程下蕴涵的业务要求。 这样一个层次体系以及方案就是一个任务模型。表达越准确,则由任务模型 生成的用户界面才能够越贴近实际的交互需求,符合一般的交互习惯,同时不会 改变业务规则。下一节将要介绍的c 0 n c u f r a s k t f e e s 任务表示法就是描述任务模 型的一个非常优秀的方法。 山东大学硕士学位论文 2 任务的种类 在c o n c u r t 缸k t r e e s 任务表示法中,依据任务的抽象层次和任务执行过程中 参与角色的不同,对任务的类型进行了归类,总共提供了5 种记号,分别代表不 同种类的任务,分别介绍如下: o抽象任务( a b s t r a c t k ) :代表一个复杂抽象的任务,通常用来表示 由其它种类的任务任意组合而成的任务。 旦 用户任务( u r 1 酗k ) :代表一个只能有用户参与的任务,通常用来表 示和用户感知或者认知行为相关的任务。例如,用户阅读系统的反馈 的信息提示,然后决定下一步的操作。 鞘 交互任务( i i i 把豫c 6 0 n1 缸k ) :代表执行过程中需要用户与系统进行交 互的任务。例如用户在线注册填写表单。 霪 系统任务( a p p l i c a t i 仰1 黜k ) :代表由系统来执行而不需要用户参与交 互的任务。例如,系统处理用户提交的注册信息,然后将处理结果显 示给用户。 3 暂态关系符号 c o n c 慨k t f e e s 任务模型表示法定义了丰富的暂态关系用以表示任务之间 在执行过程的相互联系和制约作用。这些关系都有相应的图形符号,这里介绍十 种主要关系的基本含义: c h o i c e :t l t 2 【】 k 口 从任务t l t 2 ,t t i 之中选择一个且只能选择一个执行,且在一次执 行过程中,一旦选定了一个任务则其它任务将不能被执行。 c o n c u r r e n t ( i n d e p e n d e n tc o n c u r r e n c y ) :t l t 2 t n 任务t 1 ,t 2 ,t n 可以并发的执行,任务之间的执行开始和结束没有 任何的限制。 川 带信息交换的c o n c u r r e n t :t 1l 】it 2 吲吲t l i “+ 任务t 。,t 2 ,k 可以并发的执行,而且允许任务之间进行信息交换。 山东大学硕士学位论文 r 、d i s a b h n g :t 1 【 t 2 r 一旦任务t 2 开始执行,则中断并终止任务t l 的执行。 e n a b i i n g :t l t 2 t i i 任务t 1 ,t 2 ,k 必须按顺序执行,且任务“l 不能开始执行直到 已经执行完成,对于v i l ,2 ,n 1 ) 。 带信息交换的e n a b i i n g :t l 【】 t 2 【 】 k 口 任务t l ,t 2 ,t t i 必须像e n a b l i n g 关系那样按顺序执行,而且允许任 务之间进行信息交换。 i n d e p e n d e n c e :t 1i 刊t 2 l _ i任务t l 和t 2 可以按任意的顺序执行,但当一个开始执行后,另一个任 务则不能开始执行,除非已经开始的任务执行完成。 4 单用户任务模型 单用户任务模型在c 0 n c 慨k t r e 器中表示为一棵树。如图1 1 所示的任务 模型,表示了用户使用自动取款机( 觚m ) 的过程。该模型出自c t l e 的一个示 例。 图1 1 一个单用户任务模型实例 在模型中,树中的每个节点代表一个任务,任务可以被分解为更为具体的子 任务,并用该节点的子节点来表示。根节点代表的任务抽象层次最高,叶子节点 代表的任务最为具体。 山东大学硕士学位论文 拥有相同父节点的兄弟节点之间的关系由暂态关系符号来表示。暂态关系符 号决定了兄弟任务在某个时刻的相互之间的制约关系,并且决定了这组任务所能 有的执行顺序,如前面所述。 任务还具有不同的种类,以示区别不同任务执行过程中参与的角色的不同, 以及对交互要求的高低,如前面所述。 例如,在该模型中,抽象任务e n a b l e a c c e 鲻被分解为三个具体的子任务 h l s e n c a r d ,r e q u i r e p a s s w o r d ,h l s e r l p 嬲s w o r d ,这三个任务在e n 曲l m g 关系的 限定下必须顺序执行。交互任务h l s e r t c a r d 和h l s e r c p a s s w o r d 需要用户和系统进 行交互,而系统任务r e q 伍r e p 鹅s w o r d 则不需要用户的参与。 1 2 3 基于任务模型的用户界面生成系统 在这一节将介绍两个基于模型驱动的用户界面生成系统:c t r e 肥r e s a 和 d y 百m e s 。它们共同的特点是都采用任务模型作为输入,支持由任务模型生成用 户界面。 1c t t e t e r e s a 环境 图1 2 c r i e 的界面 c t r e ( c o n c u r ,r a s k t r e e se n “r o 蛐e m ) 【1 0 ,1 4 0 5 1 是一个集成了设计、编辑、测 试、分析和调试c o n c u r t a s k t b e s 任务模型等功能于一体的环境,如图1 2 所示。 山东大学硕士学位论文 它由c m j c e 的h c i 小组开发实现,最初被用于测试c o n c “k k t r e 器任务模型 表示法,后来被广泛用于c o n c l | r 协k t r e 舒的设计和分析中。本文论述中涉及到 的所有任务模型都是利用c r r e 构建的。 t e r e s a ( t r 舭s f b m l 撕o ne n v i r o n m e n tf o ri 劬o r a c d v es y s t e m sr e p r e s 锄认d o n s ) 砸是一个由c r r e 衍生出的工具。它支持基于c o n c u 订a s k t r e 船任务模型生成 适应跨平台要求的用户界面。 利用t e r e s a 由任务模型生成用户界面,需要经历以下几个步骤:首先利 用c t r e 设计构建c o n c u r i j s k t r e 髑任务模型。然后基于此模型生成针对特定平 台的系统任务模型( s y s t e m1 缸km o d e l ) ,以适应特定平台的要求。然后基于系 统任务模型生成活动任务集( e n a b i e d ks e 招,e t s ) ,再由e t s 得到表现任 务集( p r e s e n 拓i t i o nt 嬲ks e t s ,p t s ) ,这是可以同时映射到用户界面上的一组任 务。然后再由表现任务集生成抽象用户界面( a b s 订a c tu 研h l t e r f 缸e ,a u ) 和具 体用户界面( c o n c r e t e u r h l t e r f 扯e ,c u i ) 。 2d y g i s 原型系统 图1 3d y 垂n k s 系统的c c 丌工具界面【5 】 d y 西m 器系统( d y n a i i l i c a l l yg 吼e m n gi n t e r f 缸e sf o rm 0 b i l e 龃de m b e d d e d s y s t e 船) 伫1 捌,如图1 3 所示,是另一个基于模型驱动的用户界面生成系统, 主要面向于嵌入式系统和移动计算设备的用户界面。 山东大学硕士学位论文 图1 4d y g i m e s 的用户界面生成过程引 d y 垂m 豁系统的解决方案,如图1 4 所示。它同样以c o n c u r l 缸k t r e e s 任务模 型作为输入,它对任务模型最核心的处理是由任务模型抽取交互的对话模型 ( d i a j o gm o d e l ) 的过程。这一过程需要考虑两点:e t s 以及e t s 间的转移关系, d y 百m c s 认为这两点分别代表了用户界面的静态和动态方面。首先和t e r e s a 的处理过程一样先由任务模型得到e t s ,接着依据任务的暂态关系分析e t s 间 的转移( t r 孤s m o n ) 关系后,再将e t s 映射到一个状态转移网( s t a 由et r 柚s i 6 0 n n e 押o r k ,s t n ) 上。最后将s t n 中的任务映射为a u i ,将a u 渲染后便生成 用户界面。 3 小结 总结n 豫e s a 和d y 百m e s 的界面生成过程可以发现,虽然它们所生成的用 户界面面向的目标平台和具体的实现过程有所差别,但两者仍然有很多相似点: ( 1 ) 两者都以c o n c u r 仇k t r e e s 任务模型作为起始的输入模型。 ( 2 ) e t s 在这两个系统所提出的界面生成解决方案中都扮演了相当重要的 角色。由c o n cu r ,协k t r e 器任务模型生成用户界面的核心和关键问题 之一就是如何由任务模型抽取出e t s 。 ( 3 ) 界面的表现模型都是采用) 儿兼容的标记语言”0 6 j 1 表示, 这三点也是目前大多数基于c o n c u r t a s k t r e e s 任务模型生成用户界面的相关 研究中通常采用的方法。 山东大学硕士学位论文 本文余下内容也将重点围绕这三点内容展开讨论,在第2 章中将以d y 互m 鹤 系统所提出的用户界面生成过程为基础,提出一个新的由c o n c u r 陌s k t r s 任务 模型抽取e t s 及其之间的转移关系的解决方案,和该方案密切相关的概念和算 法等细节将在第3 章和第4 章中详细讨论。 1 3 主要研究内容和创新点 本文以c o n c u r t a s k n 嘲任务模型为主要研究内容,着重讨论了基于 c 0 n c u r t 缸k t r e e s 任务模型自动生成用户界面过程中的两个问题: ( 1 ) 采用形式化的方法对c o n c 1 r a s k t r e e s 任务模型表示法进行了分析和 描述。主要包括用谓词逻辑对任务间的暂态关系进行了分析。 ( 2 ) 以d y 垂m e s 原型系统的研究工作为基础,提出了一个新的由 c o n c u r t 缸k t r e 鼯任务模型抽取用户界面对话导航模型的方法。 以上面两点为基础,提出了一个基于c o n c u f r a s k t r e e s 任务模型的用户界面 生成过程。这个过程改进了d y 百m e s 的解决方案,把抽取e t s 及其之间转换关 系的过程统一为一个过程。 本文的研究内容和其他相关研究的主要区别,或者说是本文的主要创新工作 主要体现在以下两个方面; ( 1 ) 本文提出了任务的状态谓词,并用谓词逻辑对c 0 n a 】r 1 暗s k t r e 髂暂态 关系含义进行了分析,同时采用了利用状态转移网的方法来描述基本 暂态关系的时态逻辑。 ( 2 ) 本文提出了暂态关系运算的概念,把任务间的暂态关系定义为一种运 算,统一了由任务模型抽取e t s 及其转移关系的过程。 1 4 本文的内容组织 本文的余下内容将按照如下的章节进行组织。 第2 章介绍由任务模型生成用户界面的主要过程和架构,提出一个新的由 c o n c u r t a s k t r e e s 任务模型抽取e t s 及其之间的转移关系的解决方案。 第3 章介绍对c o n c u r t a s k t r e e s 任务模型表示法中任务暂态关系的形式化分 析。这一章作为第2 章所提出的解决方案的理论基础,主要内容包括任务状态谓 山东大学硕士学位论文 词的定义和时态逻辑的状态转移网表示法,进而给出几种主要c o n c u r t a s k t r e e s 任务暂态关系含义的谓词逻辑表示及其对应的状态转移网。 第4 章详细介绍第2 章所提出的解决方案。即论述如何从c o n c u r t a s k t r e e s 任务模型中抽取e t s 及其转移关系。一个新的求解算法将会给出,同时暂态关系 的基本运算定义也将给出。 第5 章是实例分析及原型系统介绍。 第6 章是结束语及未来工作展望。 l o 山东大学硕士学位论文 第2 章用户界面自动生成过程 回顾1 2 3 节介绍的d y 画m e s 系统,它由任务模型生成用户界面的过程如图 1 4 所示。该过程对c o n c u r t a s k t r e e s 任务模型最核心的处理是由任务模型抽取 交互的对话模型( d i a l o g m o d e l ) 的过程,这包括e t s 及其e t s 间的转移关系两 个方面,但注意到它得到e t s 及其转移关系的过程是分离的。 本文在d y g i m e s 系统所提出的用户界面生成过程的基础上,提出一个由任务 模型生成用户界面的解决方案,并且设计实现了一个小型的原型系统。该方案的 核心内容包括了对c o n c u r t a s k t r e e s 任务模型表示法的形式化分析和表示,以及 基于此分析提出的一个新的由c o n c u r t a s k t r e e s 任务模型抽取e t s 及其之间的转 移关系的方法,该方法将得到e t s 及其之间转移关系的过程统一起来,即在对任 务模型的处理过程中同时得到e t s 及其转移关系。这两部分内容将分别在第3 章 和第4 章中详细讨论。 本章在这里先从整体上对该解决方案作一个介绍,以期能对本文介绍的基于 任务模型的用户界面自动生成过程有一个大概初步的了解。第5 章将会再次回到 这个问题,届时会讨论一个更为详细复杂的实例。 2 1 整体架构 如1 2 3 节的讨论所述,e t s 在由任务模型生成用户界面的过程中起着非常 重要的作用。以d y 垂m 器的用户界面生成过程为基础,这里提出一个新的解决方 案,如图2 1 所示。 整个过程由4 个主要的部分组成,分别是设计和构建任务模型,预处理 c 0 n c l l f 陆k t r e e s 任务模型,抽取对话导航模型,界面生成。对比d y 百m e s 原型 系统的处理过程,可以明显的看出本文这里提出的处理过程与其区别主要体现在 以下两个方面: 山东大学硕士学位论文 界面生成l 垒竺卜叫! 望r 叫! 竺 j 图2 1 用户界面自动生成过程 第一,对任务模型的预处理。d y 垂m e s 原型系统会在原始的c 订任务模型 上附加一些它自定义的数据结构信息以及抽象交互对象( 趟0 ,a b s 圩a c t h n e r a c t i o no b j e c t ) , 用于任务模型的显示和后续的映射处理。而本文提出的处 理过程先不对原始的c t t 任务模型附加任何其它信息,最重要的预处理步骤就 是将任务模型变换为一个任务暂态关系表达式树。 第二,抽取用户界面对话导航模型,d y 百m e s 原型系统把用户界面的交互 对话模型看作由静态行为( s t a _ d cb e h a 访o r ) 和动态行为( d y n a 血cb e h a v i o r ) 两 部分构成,前者可看作是一组静态的界面,后者可看作是这些静态界面之间的联 系。相应的,它把抽取对话模型的过程也分为确定活动任务集( e t s ) 和这些 e t s 间的转移关系两个部分。而这里提出的界面生成过程通过定义任务暂态关系 运算,将抽取对话模型的过程转变为一个计算暂态关系表达式的过程,计算所得 的s t n 图包含了e t s 和e t s 间的转移关系。这一过程将抽取用户界面的静态行 为和动态行为统一为一个过程。 下面将结合一个简单的例子和我们设计实现的原型系统对上述4 个过程分 别进行介绍。 山东大学硕士学位论文 2 2 设计构建任务模型 由于这个解决方案仍然以c o n c u r t 缸k l h 器任务模型作为输入模型,所以首 要的步骤就是要设计和构建任务模型。这一步都是在c t r e 工具下完成的。下面 将以图2 2 所示的任务模型为例,开始处理过程,用c r r e 工具构建好一个示例 任务模型,图2 2 所示。 图22 一个示例任务模型 该步骤完成后的输出就是一个任务模型,我们把它保存为一个札文件, 以便在下面的步骤中能够解析该文件还原出任务模型。其中描述“c h e c km a i l ” 任务的) m 几片段如下: 山东大学硕士学位论文 2 3 预处理c o n c u r t a s k t r e 鹤任务模型 这一部分以上一步得到的c t t 儿文件作为输入,首先要作的工作就是解 析该) m 儿文件,还原出c o n c u r l 缸k n e e s 任务模型树。这里需要定义合适的数 据结构来描述和显示任务树。 接下来需要将任务模型树根据暂态关系的优先级分别转化为优先级树 ( 蹦o n t yt r e e ) 和暂态关系运算表达式树( e x p r e s s i o nt r ) 。关于这两个树的定 义及其转化方法,将在第4 章中详细讨论。 该部分完成后得到的输出就是个暂态关系运算表达式。 2 4 抽取对话导航模型 图2 3 转化后的优先级树 这一部分是整个解决方案的核心部分,它以上一步得到的暂态关系运算表达 式为输入,按照第4 章将要介绍的规则进行计算,最终结果可以得到一个表示对 话导航模型的s 1 n 图,如图2 4 所示。 过程实际上是一个合并s t n 图的过程, 在定义了暂态关系的运算后,整个计算 且该过程将得到e t s 和转移关系的过程 统一起来,因为s t n 图所表示的对话导航模型包括了我们想要的e t s 及其转移 关系。 4 山东大学硕士学位论文 图2 4 计算所得的s 1 n 图 2 5 由任务映射到用户界面 这一部分的主要作用是依据e t s 中任务的种类及其附加信息把任务映射为 交互组件,得到用户界面的a u 描述。以a u 为基础可以进步变换和渲染最 终得到用户界面。限于篇幅所限,本文不再过多讨论这一部分的内容。一个由图 2 4 所示的s 1 n 图映射得到的一个界面如图2 5 所示。 图25 由s 1 n 图映射得到的用户界面示意 山东大学硕士学位论文 第3 章c o n c u r t a s k t r e e s 任务表示法的形式化分析与描述 3 1 命题逻辑和谓词逻辑基础 本章所论述的c 0 n c u r 协k t r e e s 任务表示法的形式化分析与描述方法,是基 于命题逻辑和谓词逻辑基础上的。在正式展开论述之前,这里先对命题逻辑和谓 词逻辑基本知识作一个简单回顾,这些内容对于展开后面的论述也是十分必要 的。 3 1 1 命题 在数理逻辑中,命题( p r o p o s i t i ) 通常作为一个基本概念而没有明确的定 义。这里只对它的含义作描述性的解释。一般地,命题代表语言中的一个陈述句, 它具有明确的真值含义,即它要么是真的,要么是假的,但不能同时既是真的又 是假的,也不能两者都不是。 有这样一类命题,它们是简单的陈述句,不需要先决定其他命题的真假性就 可以去分析决定它们的真假性。即它可以在命题逻辑中作为一个基本的个体,且 它的真假性不依赖于其他的命题。我们将这样的命题称为原子命题( a t o i i i i c p r o p o s i t i o n ) a 相应的,复合命题( c o m p o 哪dp m p o s i t i o n ) 是由几个原子命题或其否定命 题组合而成的一个命题。 每个命题都有一个真值,对于一个具体的命题而言,如果它是真的,就记它 的真值为t ;如果它是假的,就记它的真值为f 。而且每个命题在给定时刻所取 的真值必定是唯一的。 连接这些原子命题并使其组成复合命题的符号称为连接词。显然,复合命题 的真值要由组合它的原子命题的真值来决定。几种基本的逻辑连接词及其含义如 下: 1 否定( 一) 命题p 的否定是命题呻,读作非p 。p 与呻的取值关系:p 取真值t ,当且仅当 6 山东大学硕士学位论文 呻取真值f 。 2 合取( 八) 命题p 与q 的合取是命题p q ,读作p 与q 。p 八q 取真值t ,当且仅当p 与q 都 取真值t 。 3 析取( v ) 命题p 与q 的析取是命题p vq ,读作p 或q 。p v q 取真值f ,当且仅当p 与q 都 取真值f 。也可以这样理解,命题p v q 取真值t ,当且仅当命题p 与q 之中至少有 一个取真值t 。 4 条件( 一) 命题p 与q 组成条件命题p q ,读作如果p 则q 。其中p 称前件,q 称后件。p q 取真值f ,当且仅当p 取真值t 而q 取真值f 。 条件命题p q 当前件p 取值为假时无论后件取值是真还是假,它都取真值真, 即从假的前件出发不管推断的后件是真还是假,p q 都为真。这一定义方法被理 解为“善意的推定”。p q 在p 为假时被规定为真的规定称“实质蕴涵”规定。 5 双条件( 一) 命题p 与q 组成的双条件命题p q ,读作p 当且仅当q 。p q 取真值t ,当且仅 当p 与q 取相同的真值( 同真或同假) 。这里称p 为双条件命题的左支,称q 为右支。 通常,称能表示任意的原子命题的命题符号为命题变元。命题逻辑中的命题 公式是一个由命题变元及逻辑连接词和圆括号组成的表达式,并且有如下的递归 定义: ( 1 ) 命题变元是公式; ( 2 ) 若p 与q 均是公式,则一p ,p 八q ,p v q ,p q 和p q 也是公式; ( 3 ) 所有公式都是有限次使用( 1 ) 和( 2 ) 得到的表达式。 若某公式满足凡对所有的真值指派均取真值t ,则称为重言式。凡对所有的 真值指派均取真值f 的公式,称为矛盾式。不是矛盾式的公式,称为可满足的公 式。 现在考虑条件命题:设p 与q 是公式,若p q 是重言式,则称p 蕴含q , 记为p 号q 。换句话说,p 蕴含q 当且仅当p 取真值t 时,q 必取真值t 。 一个正确的逻辑推理形式,由真的前提出发必能得出真的结论,其前提与结论 1 7 山东大学硕士学位论文 之间的逻辑形式正是蕴涵式。如果推理形式是正确的,那么由推理的前提和结论 构成的条件公式必定是一个重言式。检查一个推理的推理形式是否正确,只须写 出相应于推理的条件命题公式,判定这个条件命题公式是否重言式即可。 关于蕴含,有一些很有用的性质: 性质3l 若由b 的真值为f 而得到a 的真值为f ,则a 辛b 。 性质3 2 若由a 的真值为t 而得到b 的真值为t ,则a 号b 。 性质33 若a j b 且b 辛c ,则a 辛c 。 性质34 若a j b ,则1 b j a 。 性质35 若a 辛b 且a j c ,则

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论