(计算机软件与理论专业论文)用户界面设计关键技术的研究.pdf_第1页
(计算机软件与理论专业论文)用户界面设计关键技术的研究.pdf_第2页
(计算机软件与理论专业论文)用户界面设计关键技术的研究.pdf_第3页
(计算机软件与理论专业论文)用户界面设计关键技术的研究.pdf_第4页
(计算机软件与理论专业论文)用户界面设计关键技术的研究.pdf_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

山东大学硕士学位论文 用户界面设计关键技术的研究 硕士研究生:高大伟 指导教师:李学庆教授 捅妥 随着多种新兴笔交互设备的出现,用户界面需要提供对笔交互的支持,已有 的用户界面均是基于鼠标键盘设计开发的,不能直接应用到笔式交互设备上,需 要提供对笔交互的支持。另外,同一种服务会针对不同的用户群组发布到不同的 笔式交互设备上,需要花费大量的时间针对特定设备重新设计相应的用户界面。 设计开发人员大量的设计开发工作内容与界面密切相关,目前很多笔式用户界面 的技术还不成熟,需要对笔式用户界面开发平台作进一步的研究。 本文提出了基于笔交互的多种设备上的表单用户界面的抽象描述,给出了抽 象交互对象到具体交互对象的映射转换。使用基于模型( m o d e l - b a s e d ) 的技术研究用 户界面开发环境( u s e ri n t e r f a c ed e v e l o p m e n te n v i r o n m e n t , u i d e ) ,运用界面交互模 式( i n t e r a c t i v ep a t t e r n ) 、抽象用户界面( a b s t r a c tu s e ri n t e r f a c e ,a u d ,界面描述语言 ( u s e ri n t e r f a c ed e s c r i p t i o nl a n g u a g e ,u m l ) 、使用类似l r m l 的方法对用户界面建 模等多种思想,研究表单用户界面开发平台,在该平台中着重研究对表现模型 ( p r e s e n t a t i o nm o d e l ,p m ) 、任务模型( t a s km o d e l ,t m ) 和域模型( d o m a i nm o d e l ,d m ) 的支持,并在该平台中引入笔交互,使得非正式的笔式输入更好的辅助当前正式 的用户界面。 本文首先提出表单用户界面开发遇到的问题,通过介绍界面开发平台的历史、 现状和发展趋势,对界面开发平台的设计方案和实现技术进行了讨论。然后针对 使用手写笔填写表单进行数据采集这个特定应用,提出了笔式表单用户界面开发 平台的体系结构,介绍了开发用户界面的陈述性模型,特别针对表现模型,从表 单用户界面的表现、表单用户界面的事件分发与响应方式、表单间关系作了细致 的讨论,在此基础上研究每个界面元素响应笔交互事件的方式。具体说明了如何 实现任务模型、表现模型、域模型,着重从结构方面和行为方面对界面表现模型 作了详细论述,给出了表单用户界面中的模型间的映射规则( m a p p i n gr u l e s ) 根据 山东大学硕士学位论文 表现模型中对抽象交互对象的定义,在分析和比较当前各种正在研究中的界面描 述语言的基础上,使用自定义的界面描述语言给出了抽象交互对象的序列化表示, 并给出了对界面描述的解析算法,最后给出了单个表单和表单日j 交互的实例实现 结果。 在对整个笔式用户界面开发环境研究的介绍、界面开发平台设计思想以及研 究方法的讨论的基础上,本文详细论述了在研究工作中的创新之处,主要可以归 纳为如下几点: 1 通过讨论笔式表单用户界面的表现、显示策略、事件处理机制以及表单间 的关系,提出了笔式表单用户界面的抽象交互对象d c o m p o n e n t 和 d c o n t a i n e r ,给出了d c o m p o n e n t 在现有的开发平台中w i d g e t 的对应,并 对d c o n t a i n e r 进行分类。 2 使用基于模型的技术创建笔式用户界面开发平台的任务模型、域模型和表 现模型,通过表现模型对抽象交互对象的描述,提出了按照平台模型中抽 象的w i d g e t 在特定服务、特定设备、特定环境映射到具体用户界面元素的 规则,确定最终的界面表现模型和域模型的方法。 3 建立了表单用户界面高层抽象的规范描述,并给出响应的解析算法,通过 基于语言级的解析算法实现用户界面在多平台上的交换与共享。 关键词:表单用户界面,基于模型的技术,x m l u i ,u m l ,抽象用户界面( a u i ) , d c o m p o n e n t ,d c o n t a i n c r i j 山东大学硕士学位论文 r e s e a r c ho nk e yt e c h n o l o g yi n u s e ri n t e r f a c ed e s i g n - 7 1 rt p d a w e ig a o d i r e c t e db yp r o f e s s o rx u e q i n gl i a b s t r a c t n o w a d a y s ,w i t ht h ed e v e l o p m e n to fm a n yn e wk i n d so fp e n - b a s e di n t e r a c t i v ed e v i c e s , u s e ri n t e r f a c es h o u l ds u p p o r tp e n - b a s e di n t e r a c t i o n t r a d i t i o n a lu s e ri n t e r f a c ew h i c hi s d e s i g n e df o rw i m p i n t e r f a c e sc a l ln o tb ed i r e c t l yu s e df o rp e n - b a s e di n t e r a c t i v ed e v i c e s m o r e o v e r , w h e nt h es a m es e r v i c ei sd e p l o y e do nd i f f e r e n tp e n - b a s e di n t e r a c t i v ed e v i c e s f o rd i f f e r e n tu s e rg r o u p s ,c o r r e s p o n d i n gu s e ri n t e r f a c er e d e s i g n e df o rp a r t i c u l a rd e v i c e i st i m e - c o n s u m i n g m o s to ft h ew o r k i n gt i m eo fd e s i g n e r sh a sb e e ns p e n to nu s e r i n t e r f a c e sa n dm o s tc o n t e m p o r a r yp e n b a s e di n t e r f a c et e c h n i q u e sh a v en o tr e a c h e da d e s i r e dc o n d i t i o n ,s op e n - b a s e du i d e ( u s e ri n t e r f a c ed e v e l o p i n ge n v i r o n m e n t ) n e e d s f a r t h e rs t u d y t h i sp a p e rp r o p o s e dt h ea b s t r a c td e s c r i p t i o nf o rf o r m - b a s e du s e ri n t e r f a c e su s e di n m a n yk i n d so fp e n - b a s e dd e v i c e s ,p r o v i d e dt h et r a n s l a t i o nf r o ma i o s ( a b s t r a c t i n t e r a c t i v eo b j e c t s ) t oc l o s ( c o n c r e t ei n t e r a c t i v eo b j e c t s ) m o d e l - b a s e dt e c h n i q u e sa r e u s e dt or e s e a r c hu i d e ,a n dm a n yc o n c e p t sa r ei n c l u d e d , s u c ha si n t e r a c t i v ep a t t e r n s , a u i ( a b s t r a c tu s e ri n t e r f a c e ) ,u i d l ( u s e ri n t e r f a c ed e s c r i p t i o nl a n g u a g e ) ,u s e r i n t e r f a c em o d e l i n gb yt h et o o l ss i m i l a r 、) l ,i t l lu m l i nt h eu i d e p m ( p r e s e n t a t i o n m o d e l ) ,t m ( t a s km o d e l ) a n dd m ( d o m a i nm o d e l ) a r em o r ec o n c e r n e d ,a n dp e n i n t e r a c t i o na r ei n t r o d u c e di n t ot h eu i d et om a k et h ei n f o r m a lp e ni n p u tf a c i l i t a t et h e f o r m a lu s e ri n t e r f a c e s p r o b l e m sw h i c hh a v eb e e nc o m ea c r o s si nf o r m - b a s e di n t e r f a c e sa r ed e c l a r e df i r s t l y w i t l lt h ei n t r o d u c t i o nt ot h ep h y l o g e n y , s t a t eo ft h ea r ta n dt h et r e n do fu i d e t h e a r c h i t e c t u r ea n dt e c h n i q u e sa r ed i s c u s s e d f o rt h es p e c i f i ca p p l i c a t i o no ff i l l i n gi nt h e f o r mt oc o l l e c td a t aw i t hp e n , t h ea r c h i t e c t u r e f o rp e n - b a s e da n df o r m - b a s e du s e r i n t e r f a c e si sp o s e d , a n dd e c l a r a t i v em o d e l sa r ei n t r o d u c e d ,e s p e c i a l l yt h ep m p mi s d i s c u s s e df r o mf o u ra s p e c t s :t h ea p p e a r a n c e ,t h ed i s t r i b u t i o na n dr e a c t i o no ft h ee v e n t s , a n dt h er e l a t i o n s h i pb c t w e e r l t h ef o r m s ,a n de v e n t sd e f i n e dr e a c tt op e ni n p u ta r es t u d i e d 1 1 l ci m p l e m e n t a t i o no ft m , p ma n dd ma r ed e c l a r e da n dm a p p i n gr u l e sa r es p e c i f i e d j 山东大学硕士学位论文 b e t w e e nm o d e l s p mi sd i s c u s s e di nd e t a i lf r o mt w oa s p e c t s :s t r u c t u r ea n db e h a v i o r a c c o r d i n gt ot h ed e f i n i t i o no ft h ea i oi np ma n dt h ea n a l y s i sa n dc o m p a r i s o no fk i n d s o fu i d l ,t h ec u s t o m i z e du i d li sp r o p o s e dt os e r i a l i z et h ea i o sa n dt h ep a r s i n g a l g o r i t h m sa r ep r o v i d e d f i n a l l y t h ei n s t a n c e so fi n t e r a c t i o ni nas i n g l ef o r ma n d b e t w e e nf o r m sa r eg i v e n w i t ht h ed i s c u s so ft h ea p p e a r a n c e ,d i s p l a yp o l i c y , e v e n th a n d l i n gm e c h a n i s ma n d r e l a t i o n s h i pb e t w e e nf o r m so ft h ef o r m - b a s e da n dp e n - b a s e db s e ri n t e r f a c e s ,a i o s d c o m p o n e n ta n dd c o n t a i n e ra r ep o s e d ,a n dw i d g e t si np r o g r a m m i n gl a n g u a g e sa r e p r o v i d e d i na d d i t i o n ,d c o n t a i n e ri sc l a s s i f i e d m o d e l b a s e dt e c h n i q u e sa r eu s e dt oc r e a t et h et m d ma n dp mi nu i d e w i t ht h e d e s c r i p t i o no ft h ea i o si np m ,a c c o r d i n gt ot h ew i d g e t sm a p p i n gi nt h es p e c i f i c e n v i r o n m e n tt ot h es p e c i 丘cb s e ri n t e r f a c ee l e m e n t ,m o d e l sf o rt h ee n d u s e ri n t e r f a c e s c a nb eg e n e r a t e d a c c o r d i n gt ot h em o d e l s ,h i g hl e v e ls p e c i f i c a t i o nc a nb eb u i l t t h i s s p e c i f i c a t i o nc a nb ei n t e r c h a n g e da n ds h a r e do nt h eb a s i so fl a n g u a g el e v e lu s e df o r d i f f e r e n td e v i c e s k e y w o r d s :f o r m - b a s e du s 靠i n t e r f a c e ,m o d e l b a s e dt e c h n i q u e s ,x m lu i ,u m l , a b s t r a c tu s e ri n t e r f a c e ,d c o m p o n e n t ,d c o n t a i n e r 山东大学硕士学位论文 原创性声明和关于论文使用授权的说明 原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立 进行研究所取得的成果。除文中已经注明引用的内容外,本论文不包含 任何其他个人或集体已经发表或撰写过的科研成果。对本文的研究作出 重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律责 任由本人承担。 论文作者签名:丑土! 整 日期:世配灯 关于学位论文使用授权的声明 本人完全了解山东大学有关保留、使用学位论文的规定,同意学校保留或向国家有 关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅;本人授权山东大学可 以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或其他 复制手段保存论文和汇编本学位论文。 ( 保密论文在解密后应遵守此规定) 论文作者签名:砬导师签名多趣日期: 矽寸肇汀 山东大学硕士学位论文 1 引言 用户界面( u s e r i n t e r f a c e ,简称u b 作为用户和交互系统之间通信的桥梁,在整 个应用程序里扮演着非常重要的角色:接收来自用户的一系列动作,转换为一种 基于设备之上的抽象交互作为输入传送给系统,系统处理这些信号之后,将输出 信号传送给输出设备,输出设备将信号转换为用户可感知的形式反馈给用户。大 i n p u td e v i c e s 一0 。咖。二鸥i 石一 :p t e t m m a t m a: : : 蜀“: n u e f a h:跏l 两 图1 界面:用户与系统间的交互器【6 0 】 多数数据密集的交互系统使用的都是基于窗口( f o r m - b a s e d ) 【l 】或者说是基于对话 ( d i a l o g - b a s e d ) 的用户界面,如数据库应用程序和w e b 应用程序,类似日常生活中 填写的表单,本文中我们统称之为表单用户界面,一般不包含字处理器、游戏仿 真器、游戏等界面 2 】。笔式表单用户界面是p o s t o w i m p 【3 】【4 】【5 】【6 】界面的一个主 要的形式,在界面的交互过程中除了保留了对传统鼠标键盘的支持外,还添加了 对手写笔的支持,主要通过对原始笔迹的处理,抽象出对笔手势、笔迹符号等的 处理,提供自然高效的交互。 伴随着用户界面的发展,人们无时无刻不在探寻用户界面开发平台的理论和 技术在用户界面的发展史上,已经出现的开发平台有用户界面管理系统0 3 s e r i n t e r f a c em a n a g e m e n ts y s t e m s 。u i m s 7 8 1 1 9 1 0 1 1 1 2 1 3 ) ,工具箱( t o o l k i t s ) , 用户界面开发环境( u s e ri n t e r f a c ed e v e l o p m e n te n v i r o n m e n t s ,u i d e s ) ,界面构建 器( i n t e r f a c eb u i l d e r s ) ,界面开发工具应用框架( i n t e r f a c ed e v e l o p m e n tt o o l s a p p l i c a t i o nf r a m e w o r k s ) ,从某种意义上说,这些都可以看作是计算机辅助软件工 程工具( c o m p u t e r - a i d e ds o f t w a r ee n g i n e e r i n gt o o l s 。c a s e 1 4 ) e p 特殊的一类,这些 工具存在多种形态,从早期的语言范例( l a n g u a g ep a r a d i g m s 6 7 ) ,到现在的主流商 用软件中的交互图形指定的工具,再到目前正在研究中的通过在更高的层次上描 山东大学硕士学位论文 述用户界面,是交互设计。在用户界面领域发展的体现。这种高层的用户界面描述 的理念主要的表现形式是界面的陈述性模型( d e c l a r a t i v em o d e l ) ,这种模型可以通 过建模工具指定,借助x m l 来串行化,最终通过解析器生成。 1 1 问题陈述 目前,界面开发平台产业界,r a d ( r a p i da p p l i c a t i o nd e v e l o p m e n 0 、i d e ( i n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t s ) 依然处于支配地位,这些工具都是以“所见 即所得”为特征在低层开发设计工具涉及的各个方面创建真实的用户界面,提供 了设计者旌展创新的空间,但也给没有经验的设计者制造不好的设计大开方便之 门【1 7 】。使用这种开发方式,传统界面的质量依赖于设计者的经验和他们对开发工 具、平台的熟悉程度。 传统的开发设计没有将界面设计与业务开发分离,往往是界面实例对象与业 务流程的控制代码混合在一起;没有将界面本身与界面表现的内容分离,往往是 界面实例已经被预先赋予了表现的数据,不能被单独控制;没有在界面开发与设 计的过程中贯穿软件工程的思想。如果开发者不沿着需求分析、软件分析与设计、 编码开发、测试这样一个软件开发流程来进行,也可以创建完美的用户界面,但 是这个过程是不规范的:如果界面开发平台开发界面的时候能像j b u i l d e r 开发j a v a 程序一样,真正将面向对象的思想自然的灌输给用户,不创建c l a s s 就不能编写程 序,那么规范的界面开发平台应该将会是,如果用户不按照软件生命周期模型的 过程定义进行创建,就不能编写界面。 当前,市场正朝着w e b 界面、普适计算、无线通讯的方向发展,在日常生活 中,人们会在多个设备上使用用户界面。在传统的软件开发模式下,经常会疲于 应付需求的不断变更,文档迅速地失效、维护困难,每当一种新的技术产生时, 就必须做许多重复的工作。如果用户界面可以在一个比较高的抽象层次上只被指 定一次,在实现时为每个目标设备在特定的编程语言上详细定制,这样就可以提 高开发效率。 目前已经出现了很多新的用户界面开发平台的思想和技术,比如,基于模型 的技术【2 1 】,使用x m l 表示用户界面【2 4 【2 6 】【2 9 】,抽象用户界面 3 0 3 1 1 ,界面交 互模式【3 2 】【3 3 】,界面在u m l 中的表示【3 9 】【4 0 】【4 l 】等等。如何更好的将这些技术 融合在一起,相互整合,形成新的统一的界面开发方法并创建新的界面开发平台 交互设计是指设计用于支持m f 日常工作,生活的交互式产品【i6 】 山东大学硕士学1 立论文 是亟待解决的问题。 1 2 笔式用户界面开发平台发展动态及相关技术 界面开发日趋朝着抽象性、陈述性和明确性的方向发展。抽象性是指界面要在 比较高的抽象层次上指定,陈述性是指需要设计者使用陈述性模型或陈述性的说 明书指定,明确性是指设计者了解界面的哪些方面需要被指定,哪些方面可以直 接使用默认的值。目前只是出现了一些商业上基于开发包的笔式用户界面开发平 台,而且是基于编写程序代码的方式,尚未出现比较完整的融合了开发平台先进 技术的环境。 1 2 1 笔式界面技术 在表单用户界面范畴里,笔式表单用户界面和传统的图形用户界面基本上没有 太大的区别,虽然在一些科学研究的应用系统中出现了许多新奇的界面元素,比 如饼形按钮,但在现有的正规化的用户界面中尚未出现,只是界面元素增添了对 笔事件的响应。人们使用笔式界面主要用于文字输入、手势输入、创作性活动和 绘制 4 8 1 1 4 9 。 笔交互的研究对象主要是笔划【4 6 】【4 8 】,而笔划可以从 数字墨水、笔手势、笔压力三个方面来讨论。数字墨水通 过曲线来描述笔输入的笔迹,已跻身为操作系统级的基本 数据类型。数字墨水的处理包括了数字墨水的表示、压缩 和显示,智能的墨水分析技术,墨水标记和注解技术,墨 水的智能操作以及墨水存储和搜索等一系列有关技术。笔 手势使用笔的运动来控制计算机的功能实现,而不是书写 图2 饼型按钮 或绘制。系统采集的墨水信息,通过笔绘制的特定符号 5 2 1 和速度提取用户意图, 形成命令,从而达到操纵界面的目的;通过探测笔压是否存在,来决定用户是否 处于书写或绘制状态。 现在出现了称为“微软魔笔”的“万能数字笔”技术,主要是两项重要技术。 首先是文档编码技术。使电脑通过打印机打印出的文档保持为数字文档,而不是 像过去那样只是一种无法读写的模拟文档。其次采用复杂的计算机视觉技术,使 数字笔上的微型照相机能识别出这种特殊的打印出来的数字文档。这样计算机便 能够快速确定正在操作的文档,将任何操作同步地存到计算机中的电子文档中。 山东大学硕士学位论文 1 2 2 用户界面开发技术 当前已经出现了很多用户界面开发的技术,大致可以分为三类: 基于语言的工具需要使用特定的语言编程,比如使用当前主流的编程语 言j a v a , c + + ,c 群等 基于交互图形指定的工具即可视化的编程工具,允许交互用户界面设计, 对应基于语言的工具,当前主流的编程工具有j b u i l d e r , v i s u a ls t u d i o 等 基于模型的生成工具使用模型或是高层描述来自动生成用户界面。 基于语言的工具和基于交互图形指定的工具b s 以工具箱系统为代表,笔式用 户界面开发包有微软的t a b l e tp cp l a t f o r ms d k ,b e r k e l e y 大学g u i r 的 s a t i n 4 4 4 5 1 工具箱等。设计者通过编码来编写用户界面,这种方式适宜比较专 业的开发者来创建界面。在国内,中科院软件所侧重面向主流应用的自然、高效 的用户界面理论与技术研究,以及交互平台的开发,针对非正式界面( i n f o r m a l ) 笔 交互方面作了大量的研究工作。实现了支持笔式用户界面开发的工具箱系统 p e n b u i l d e r 4 9 5 0 ,但目前的工具箱的侧重对笔输入的支持,界面的设计也不是非 常方便,还不能成为一个统一的人机交互界面设计开发平台。 基于模型的生成工具使用陈述性模型( d e c l a r a t i v em o d e l s ) 描述与用户系统交互 相关的各个方面,以模型为出发点,自动生成用户界面,以下列出了当前从不同 的角度来分析和描述基于模型的用户界面生成工具。 1 2 2 1 基于模型的技术 m b - u i d e ( m o d e l - b a s e du s e ri n t e r f a c ed e v e l o p i n ge n v i r o n m e n t ) 1 8 】提供了一个 比传统的用户界面开发工具更为简单的能够以系统化、体系化的方式设计和实现 用户界面的环境,在一个比较高的抽象层次上以一种陈述性的方式指定界面的各 个方面。使用基于模型的界面开发平台开发界面使用陈述性的模型描述用户与系 统交互的各个方面,并且希望由模型自动生成界面。 p a u l op i n h e i r od as i l v a 讨论了使用陈述性模型提供用户界面的抽象描述,使得 体系化设计和实现u i 的方法更为便利,提供用户界面设计和实现流程的任务自动 生成工具 5 3 1 。不过,模型和标识符号的复杂性使得这种方式难于学 - 3 和使用。需 要图形编辑器、设计助手,设计评论师的帮助。同时也有很多技术上的问题: 难于展示用户界面模型u r m ( u s e r i n t e r f a c e m o d e l ) ,界面模型就是为生成可 运行的用户界面而描述的用户系统交互的各个方面。 4 山东大学硕士学位论文 关注如何更好的将u i 与应用整合,而没有完整的介绍使用m b u i d e s 生 成用户界面 在使用哪些模型组合更适于描述用户界面方面,没有一致的意见 同时,也存在很多希望以后能够解决的问题: 模型间的映射( m a p p i n gb e t w e e nm o d e l s ) :如何更好的描述模型间的关系 用户界面模型的后编辑问题( u i m p o s t - e d i t i n g p r o b l e m ) :人工修改模型可以 得到最终的用户界面2 。当使用系统重新生成其它的草图设计时,人工的修 改会丢失。 用户界面模型的标准符号( s t a n d a r dn o t a t i o n sf o ru i m s ) :u i m s 和操纵u i m s 的u i d e s 的比较和重用 m b - u i d e 大体经历了两个阶段性的发展。第一代的m b - u i 提供一种适当的方 式从u i m 中执行u i ,是基于u i m s 的一个发展。比如,c o u s i n 6 9 , h u m a n o i d 7 0 ,m i k e 7 1 ,u i d e 7 2 和u o f a 7 3 】,没有提供用户界面描述的高 层抽象,在用户界面设计流程中出现了布局和w i d g e t 的自定义第二代在更为抽 象的层次上提供描述用户界面的机制,比如。a d e p t 7 4 ,a m e 7 5 ,d i a n e + 7 6 , f u s e 7 7 ,m a s t e r m i n d 7 $ ,m e c a n o 7 9 ,m o b i - d 8 0 ,t a d e u s 8 1 , t e a l l a e h 1 8 】和t r i d e n t 8 2 。这个时期的界面开发平台可以指定、生成和运行用 户界面,趋于多样化,比如,有些可以使用c a s e 工具和o m t 符号,有些更加关 注完整的用户界面开发。 1 2 2 2 用户界面描述语言 使用x m l 来表示用户界面,是一种规范的描述用户界面的方式,它将表示和 信息隔离,能够帮助非专业人员创建用户界面,而且这种表示是面向w e b 的,可 以使得用户界面设计在不同的设备上重用,这样就可以构成一种同设备无关的统 一的语言。 现在已经出现了很多使用x m l 表示用户界面的表示,如用户界面标记语言 ( u s e ri n t e r f a c em a r k u pl a n g u a g e ,u i m l 2 3 1 1 2 4 1 1 2 5 ) ,扩展界面标记语言( e x t e n s i b l e i n t e r f a c em a r k u pl a n g u a g e x i m l 2 6 2 7 2 8 ) ,x w e b ,x f o r m s 。u i m l 就是一种描述 2 最终用户界面( f i n a l u s e r i n t e r f a c e ,m - e n d u s e r i n t c 嘞) 是具体的用户界面( c u i c o n c r c u ! u s e r i n t c l f a ) 翻译 到特定的软件环境上的界面;具体的用户界面( c u i ) 是使用依赖于特定平台和介质的具体交互对象替换抽象交 互器拥有一系列定义具体如何为用户感知的属性;抽象用户界面( a u i ,c o n c r e t eu s e ri n t e r f a c e 独立于交互通 道,只考虑界面的逻辑结构 山东大学硕士学位论文 用户界面的元语言,目标是在不考虑交互形式、语言、操作系统和平台的基础上, 作为一种通用的格式表示任意的用户界面。u i m l 从六个方面柬描述用户界面: 结构和流从定义在词汇表中的部件中创建 表现形式通过给部件的属性赋值来定义,比如位置、颜色和字体 内容包含用户界面中使用的文本,图片、声音等 行为一系列的和平台无关的状态动作规则,这些规则响应用户动作,给 属性赋值,调用逻辑函数 逻辑对用户界面驱动的应用逻辑的a p i 的描述,如过程调用、s o a p 等 表现特定工具箱中对部件控制的映射,比如j a v as w i n g 类 x i m l 主要研究本体3 ,本体的表示以及用户界面模型。和基于模型的技术类似, 把模型分为两类,一类是基于上下文的抽象的表示,任务模型、域模型和用户模 型就属于这一类;一类实现的具体的表示,对话模型和表现模型就属于这一类。 同时,还定义了关系,对一个组件内的或跨组件的两个或更多的x i m l 元素的定 义或陈述。支持关系的定义。指定一个关系的规范形式和关系陈述。 除了这些研究性的界面描述语言外,还有一些商用界面描述语言,如微软的 x m l 命名扩展应用标记语言f x m ln a m e de x t e n s i b l ea p p l i c a t i o nm a r k u pl a n g u a g e , x a m l 8 ,m o z i l l a 的x m l 用户界面语言( x m lu s e r i n t e r f a c el a n g u a g e , x u l s 3 ) 。微软的下一代操作系统l o n g h o r n 的应用程序开发提出了基于抽象的陈 述性编程模型开发。为了简化使用模型编程,一种新的基于x m l 的陈述性编程语 言x a m l 正在研发之中x a m l 可以创建用户界面元素,比如b u t t o n s ,t e x tb o x e s , s h a p e s 等,但是不能处理事件。 x u l 是基于m o z i l l a 浏览器构建的,更容易,也更快捷。它是一种x m l 语言, 这样,所有对x m l 可用的因素对x u l 都是可用的。大多数的应用在开发时需要 使用特定平台上的各种因素使得跨平台软件更节省时间,花费更少。这对某些软 件不太重要,但是用户可能想要使用一个应用在其他设备上,比如,手持设备, 机顶盒。x u l 就是这样种语言,为可便携的用户界面量身定做。在仅仅一个平 台上建造一个应用都要花费很长的时间。编译和调试的时间也是冗长的。有了 x u l ,一个界面就可以被快速且容易的实现和修改。x u l 拥有x m l 语言所有的优 点。比如,x h t m l 或者其他x m l 语言,比如m a t h m l 或者s v g 可以被插入 而且,使用x u l 显示文本可以容易的本地化,这意味着在花费较少的情况下,它 奉倬( 0 | i t o l o ) 是共享概念模型的明确的形式化规范说明【6 2 l 6 山东大学硕士学位论文 就可以被翻译到其他语言样式表【s 哪渤e e t ) 可以被应用到用户界面的外观,这 非常类似w i n a m p 或一些窗口管理器的皮肤或主题。 1 2 2 3 抽象的用户界面 抽象用户界面 3 0 】的思想很早就已出现,但是不 同的人观点不同,总起来讲,应该是独立于输入输出 设备的,只依赖于对服务的抽象表示,不捕捉设计 者在创建高保真用户界面的任何信息。类似前面所 述的两种情况,有人把抽象的模型或抽象描述作为 抽象界面的表示,但是也有其他的情况: 一是表现层次上的抽象。抽象用户界面的模型 和符号用于在以直接操纵为特征的表单图形用户界图3 按钮在不同设备上的表示 面中指定交互系统中的抽象交互【3 l 】。界面模型旨在提高交互系统的弹性,如果交 互系统很容易适应到具体的用户界面样式,我们就认为该交互系统是有弹性的。 为了支持这种弹性,抽象用户界面定义了抽象界面元素间的输入、输出以及内部 的计算处理。由于多种新兴设备的出现,不同的设备拥有本身自定义的用户界面 元素对应抽象的w i d g e t s 2 0 ,比如一个按钮,在不同的设备上可以以不同的形式 显示,但是功能是同样的 二是任务层次上的抽象。现在大都把抽象的用户界面定位于任务级,由于不同 的设备具有不同的窗口划分和表现单元,会导致对话流程上的不同,但是界面所 要完成的任务、实现的功能甚至使用的用户群并没有改变,这是界面能够在不同 的平台和语言上实现共享的基础。 1 2 2 4 界面设计模式 设计模式 6 4 】是关于特定场景下解决一般涉及问题的类和相互通信的对象的描 述,展示了对典型性问题的普遍的、独立于领域的解决方案,使开发者在软件设 计和实现中获得更好的复用性和灵活性。这里所讲的设计模式与软件工程模式( s e p a a e r n s o , w a r ee n g i n e e r i n gp a t t e r n ) 3 7 不太相同,用户界面设计模式【3 4 】【3 5 】关注 的重点是用户与系统交互时的可用性问题【3 6 】,比如 可视性:给与用户怎样通过视觉来辨别如何使用一个目标对象。 启示性:包含对象感知的、真实的属性来反映对象是如何使用的。 自然映射:在用户想做什么和提供运作的机制之间创建一个清晰的关系 粤黑墨 山东大学硕士学位论文 约束:减少完成工作的所用方式的数量和所需的知识量,能够更容易的 辨别它们。 概念模型:一个好的概念模型是用户对工作机制的理解与它真正的运行 机制相对应,用户就可以预测他的动作产生的影响。 反馈:暗示用户任务正在执行或者正在正常运转。 有些是设计者或者市场营销人员的u i d 确定的要解决的问题,不一定是用户 提出的问题,比如徽标和软件的启动画面。但是,无论是软件工程领域还是界面 设计领域,使用模式对专业设计者来讲,当解决某个问题时,不需要从头做起, 而是参考过去的经验,或者向专家咨询意见,这样可以提高效率。 1 2 2 5 使用i 】,为用户界面建模 u m l 主要的不利之处在于在处理建模的底层方面时不很友好。比如,在界面 元素组成树形表示中对一组界面元素排序很容易,但在u m l 中就需要很多技巧。 使用标准的u m l 既有的工具对用户界面建模,在描述界面功能时,暴露了各种各 样的问题,使得人们不得不对u m l 作一些扩展,比如u m l i 3 8 4 2 4 3 1 ,它是专 门为满足用户界面建模者的需要而研制的。u m l i 的重点是为了支持开发基于表单 的用户界面的开发 1 2 2 6 模型驱动框架( m o d e l d r i v e na r c h i t e c t u r e m d a ) m d a 6 6 的思想与基于模型的技术是一致的,都是希望使用模型创建系统。 m d a 将软件系统的模型分离为平台无关模型( p l a t f o r mi n d e p e n d e n tm o d e l ,p i m ) 和特定平台模型( p l a t f o r ms p e c i f i cm o d e ,p s m ) ,同时又能通过转换规则将它们统 一起来。平台无关模型p i m 是对系统高层次的抽象,其中不包括任何与实现技术 相关的信息;特定平台模型p s m 是跟特定平台相关的模型。在m d a 框架中,酋 先使用平台无关的建模语言来搭建平台无关的模型p i m ,然后根据特定平台和实 现语言的映射规则,将p i m 转换以生成平台相关的模型p s m s ,最终生成应用程 序代码和测试框架。但是m d a 针对的应用系统,其中的平台无关的模型是针对业 务逻辑的计算模型,和设备关系不大,用户界面作为特殊的系统,具备一些比较 特殊的内在规律,和独立于设备的抽象模型和设备无关,具体的表现模型和设备 关系比较紧密,使用基于模型的技术探求的是针对用户界面的更加具体更加专用 的解决方法。 山东大学硕士学位论文 1 3 本文的工作 本文针对基于模型的技术进行了阐述,并在此基础上针对表单用户界面的交 互模式进行了深入的讨论,建立了表单用户界面的陈述性模型及其相应的映射规 则,然后将这些模型的抽象语义使用x m l 描述,并创立对模型和描述的解析器, 从而最终实现用户界面的自动生成。本课题针对当前广泛使用的表单用户界面, 所做的研究工作主要包括: 1 用户界面开发平台概述 本文论述了与用户界面开发平台相关的几个重要理念,并阐明了界面高度抽 象表示作为新一代界面开发平台具有很高的研究价值。通过分析界面开发平台的 发展历史、国内外研究现状以及发展趋势等方面对界面开发平台进行了概要性的 介绍论述中结合了学术界与产业界的研究现状与趋势 2 提出了基于模型的技术开发表单用户界面的体系结构 介绍基于模型的技术的由来以及表示用户界面的陈述性模型。给出了使用基 于模型的技术描述用户界面的总体框架,并从任务模型和表现模型两个方面进行 了具体的描述。通过描述任务模型给出任务对象、交互对象与领域对象之甸的映 射规则,并通过分析表单用户界面的表现、逻辑组织结构、事件分发及响应方式 及表单间的关系来描述用户界面的表现。 3 实现了对界面任务模型、表现模型和域模型的构建。 任务模型方面,通过c t t 进行任务分析,给出了任务的分类以及任务的操作 符。表现模型方面通过外观层与事件层两个方面来分析:外观层通过d c o m p o n e n

温馨提示

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

评论

0/150

提交评论