(计算机应用技术专业论文)基于本体的需求获取及分析工具.pdf_第1页
(计算机应用技术专业论文)基于本体的需求获取及分析工具.pdf_第2页
(计算机应用技术专业论文)基于本体的需求获取及分析工具.pdf_第3页
(计算机应用技术专业论文)基于本体的需求获取及分析工具.pdf_第4页
(计算机应用技术专业论文)基于本体的需求获取及分析工具.pdf_第5页
已阅读5页,还剩59页未读 继续免费阅读

(计算机应用技术专业论文)基于本体的需求获取及分析工具.pdf.pdf 免费下载

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

文档简介

摘要 摘要 需求工程是随着计算机的发展而发展的,在计算机发展的初期,需 求分析很少受到重视,后来软件开发引入了生命周期的概念,需求分析 成为其第一阶段。随着软件系统规模的扩大,人们逐渐认识到需求分析 活动不再仅限于软件开发的最初阶段,而是贯穿于系统开发的整个生命 周期,因此,将需求分析作为软件工程的一个子领域需求工程进行 深入的研究。 需求工程的主要任务中包括探索行之有效的需求获取方法和构建真 实可信的需求验证理论、方法和手段。本文为了找到一种有效的需求获 取方法,根据s o r l 语言的语法规则,设计了一个交互式需求获取的工 具,供用户提出形式各样的需求语句;为了构建真实可信的需求验证理 论、方法和手段,根据已经形成的需求元模型以及目标层模型设计工具 产生的本体模型,设计了一个需求匹配工具,使用j a v a c c 解析s o r l 语 句得到对应的原子需求,并将其作为匹配源,使用j e n aa p l 分析本体模 型,从而产生用户需求相关的匹配指标。 本文设计的基于本体的需求获取与分析工具,对需求工程中的需求 获取和需求匹配阶段的应用具有现实意义,而且可以利用这些工具来验 证需求元模型的正确性,s o r l 语法规范的合理性等等,利于对需求工程 进行更深入的研究。 关键词:需求工程;本体;元模型;o w l ;u m l a b s t r a c t a b s tr a c t t h ed e v e l o p m e n to fr e q u i r e m e n t se n g i n e e r i n gi sa l o n gw i t ht h e d e v e l o p m e n to fc o m p u t e r , i nt h ee a r l ys t a g e so fc o m p u t e rd e v e l o p m e n t , r e q u i r e m e n ta n a l y s i sh a dl i t t l ea t t e n t i o n ,a n dl a t t e rs o f t w a r ed e v e l o p m e n t i n t r o d u c e dt h el i f e c y c l ec o n c e p t ,t h e nr e q u i r e m e n ta n a l y s i sb e c a m et h ef i r s t s t a g ei ns o f t w a r ed e v e l o p m e n t w i t ht h ee x p a n s i o no ft h es o f t w a r es y s t e m s c a l e ,p e o p l ea r er e a l i z i n gt h a tr e q u i r e m e n ta n a l y s i sa c t i v i t i e s a r en ol o n g e r l i m i t e dt ot h ei n i t i a ls t a g eo fs o f t w a r ed e v e l o p m e n t ,b u tt h r o u g h o u tt h ee n t i r e l i f ec y c l eo fs y s t e md e v e l o p m e n t ,s ot h e yb e g i nt od e e p l yr e s e a r c ht h e r e q u i r e m e n ta n a l y s i sa sas u b - d o m a i no fs o f t w a r ee n g i n e e r i n g - - r e q u i r e m e n t s e n g i n e e r i n g t h em a i nt a s k so fr e q u i r e m e n t s e n g i n e e r i n g i n c l u d e s e x p l o r i n g e f f e c t i v ew a y st oe l i c i tr e q u i r e m e n t s ,b u i l d i n gt r u ea n dt r u s t f u lt h e o r y ,m e t h o d a n dm e a n so nr e q u i r e m e n t sv a l i d a t i o n i nt h i sa r t i c l e ,i no r d e rt of i n d a l l e f f e c t i v em e t h o do fr e q u i r e m e n te l i c i t a t i o n s ,a c c o r d i n gt ot h eg r a m m a ro f s o r ll a n g u a g e ,d e s i g n e dai n t e r a c t i v et o o lo fr e q u i r e m e n t sv a l i d a t i o n ;i n o r d e rt ob u i l dt r u ea n dt r u s t f u lt h e o r y ,m e t h o da n dm e a n so nr e q u i r e m e n t s v a l i d a t i o n ,i na c c o r d a n c ew i t ht h er e q u i r e m e n t sm e t a - m o d e lw h i c hh a sb e e n f o r m e da n dt h eg o a lm o d e lt o o lw h i c hh a sb e ed e s i g n e df o ro n t o l o g ym o d e l , d e s i g n e dat o o lf o rr e q u i r e m e n t sm a t c h i n g ,u s i n gj a v a c ct e c h n o l o g ya n a l y s e s o r ls t a t e m e n t s ,t h e ng a i n e dt h ea t o m i cr e q u i r e m e n t s f i n a l l y ,t a k i n gt h e a t o m i cr e q u i r e m e n t sa n da st h es o u r c eo fm a t c h i n g ,w em a k e u s eo f j e n aa p i t oa n a l y s eo n t o l o g ym o d e l ,a n dr e s u l t i n gi nt h em a t c h i n gi n d i c a t o r sw h i c h r e l a t e du s e r sr e q u i r e m e n t s t h et o o l so fr e q u i r e m e n te l i c i t a t i o na n da n a l y s eb a s e do no n t o l o g y i i i 武汉工程大学硕士学位论文 w h i c hw ed e s i g ni nt h i sp a p e ra r ei m p o r t a n tt ot h ea p p l i c a t i o ni nr e q u i r e m e n t e l i c i t a t i o na n dm a t c h i n go fr e q u i r e m e n t se n g i n e e r i n g ,a n dw ec a nu s et h e s e t o o l st ov e r i f yt h ea c c u r a c yo f r e q u i r e m e n t sm o d e l ,t h er e a s o n a b l e n e s so f t h e s o r l g r a m m a r ,t h e ya r eg o o df o rr e q u i r e m e n t se n g i n e e r i n gt od e e p l ys t u d y k e y w o r d s :r e q u i r e m e n t se n g i n e e r i n g ;o n t o l o g y ;m e t a m o d e l ;o w l ;u m l i v 独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除文中已经标明引用的内容外, 本论文不包含任何其他个人或集体已经发表或撰写过的研究成果。对 本文的研究做出贡献的个人和集体,均已在文中以明确方式标明。本 人完全意识到本声明的法律结果由本人承担。 学位论文作者签名:杏犟锋 珈8 年月2 日 学位论文版权使用授权书 本学位论文作者完全了解我校有关保留、使用学位论文的规定, 即:我校有权保留并向国家有关部门或机构送交论文的复印件和电子 版,允许论文被查阅。本人授权武汉工程大学研究生处可以将本学位 论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩 印或扫描等复制手段保存和汇编本学位论文。 保密o ,在年解密后适用本授权书。 本论文属于 不保密斫 ( 请在以上方框内打“4 ) 学位论文作者签名:杏碧锋 2 0 d 苌, 年6 月1e t 指导教师签名: 刁武墨 珧年月2e l 第1 章绪论 1 1 选题背景 1 1 1 需求工程的发展历程 第1 章绪论 自本世纪初以来,由于信息技术及其应用在深度和广度上的飞速发 展,旧的“软件危机”尚未彻底解决,在新形势下又出现了新的“软件 危机 。所谓新形势主要是指:基于网络的信息系统的规模尺度和复杂 程度的剧增;下一代信息网络的发展和逐渐成熟的网格技术;软件中间 件、预购件、a g e n t 技术的逐渐成熟和e n t i t y 、o n t o l o g y 等概念的发展;基 于语义网络的资源聚合技术的逐渐成熟;对信息安全、确认和验证技术 的需求日趋强烈等。解决新形势下的软件危机将是一个综合性的系统问 题,从软件技术的领域而言,应研究针对这类复杂系统的软件工程,即 需求工程。 8 0 年代中期,形成了软件工程的子领域需求工程( r e q u i r e m e n t e n g i n e e r i n g ,r e ) 。进入9 0 年代以来,需求工程成为研究的热点之一。 从1 9 9 3 年起每两年举办一次需求工程国际研讨会( i s r e ) ,自1 9 9 4 年起每两 年举办一次需求工程国际会议( i c r e ) ,在1 9 9 6 年s p r i n g e r v c r l a g 发行了 一种新的刊物( ( r e q u i r e m e n t se n g i n e e r i n g ) ) 。一些关于需求工程的工 作小组也相继成立,如欧洲的r e n o i r ( r e q u i r e m e n t se n g i n e e r i n gn e t w o r k o f i n t e r n a t i o n a lc o o p e r a t i n gr e s e a r c hg r o u p s ) ,并开始开展工作n 1 。 需求工程无疑是当前软件工程中的关键问题,从美国于1 9 9 5 年开始 的一项调查结果就足以看出这一点。在这项调查中,他们对全国范围内 的8 0 0 0 个软件项目进行跟踪调查,结果表明,有1 3 的项目没能完成,而 在完成的2 3 的项目中,又有1 2 的项目没有成功实施。他们仔细分析失败 的原因后发现,与需求过程相关的原因占了4 5 ,而其中缺乏最终用户的 武汉工程大学硕士学位论文 参与以及不完整的需求又是两大首要原因,各占1 3 和1 2 。 需求工程又是软件工程中最复杂的过程之一,其面对的问题几乎是 没有范围的。由于应用领域的广泛性,它的实施无疑与各个应用行业的 特征密切相关。其客观上的难度还体现在非功能性需求及其与功能性需 求的错综复杂的联系上,当前对非功能性需求分析建模技术的缺乏大大 增加了需求工程的复杂性。 最初,需求工程仅仅是软件工程的一个组成部分,是软件生命周期 的第一个阶段。虽然大家也都知道需求工程对软件整个生命周期的重要 性,但对它的研究远远没有对软件工程的其他部分的研究那么深入。 从当前的研究现状来看,需求工程的内容远不止这些。需求工程是 系统工程和软件工程的一个交叉分支,涉及到软件系统的目标、软件系 统提供的服务、软件系统的约束和软件系统运行的环境。它还涉及这些 因素和系统的精确规格说明以及系统进化之间的关系。它也提供现实需 要和软件能力之间的桥梁口1 。 1 1 2 需求工程的主要任务 需求工程是指应用已证实有效的技术、方法进行需求分析,确定客 户需求,帮助分析人员理解问题并定义目标系统的所有外部特征的- - i - j 学科。它通过合适的工具和记号系统地描述待开发系统及其行为特征和 相关约束,形成需求文档,并对用户不断变化的需求演进给予支持。r e 可分为系统需求工程( 如果是针对由软硬件共同组成的整个系统) 和软 件需求工程( 如果仅是专门针对纯软件部分) 。软件需求工程是- - i - 分 析并记录软件需求的学科,它把系统需求分解成一些主要的子系统和任 务,把这些子系统或任务分配给软件,并通过一系列重复的分析、设计、 比较研究、原型开发过程把这些系统需求转换成软件的需求描述和一些 性能参数呤1 。 需求工程的主要任务是:探索行之有效的需求获取方法;实现“用 2 第l 章绪论 户主导、面向领域”的需求建模过程;形成促进协同工作和逐步优化的 需求规格;构建真实可信的需求验证理论、方法和手段;为实现科学的 需求管理奠定理论和方法基础。 1 1 3 需求工程的生命周期 需求工程是一个不断反复的需求定义、文档记录、需求演进的过程, 并最终在验证的基础上冻结需求。8 0 年代,h e r bk r a s n e r 定义了需求工程 的五阶段生命周期h 3 :需求定义和分析、需求决策、形成需求规格、需求 实现与验证、需求演进管理。近来,m a t t h i a sj a r k e 矛l l k l a u sp o h l 提出了三 阶段生命周期的说法吲:获取、表示和验证。 综合了几种观点,可把需求工程的生命周期划分为以下五个阶段【1 1 : ( 1 ) 需求获取:通过与用户的交流,对现有系统的观察及对任务进 行分析,从而开发、捕获和修订用户的需求; ( 2 ) 需求建模:为最终用户所看到的系统建立一个概念模型,作为 对需求的抽象描述,并尽可能多的捕获现实世界的语义; ( 3 ) 形成需求规格:生成需求模型构件的精确的形式化的描述,作 为用户和开发者之间的一个协约; ( 4 ) 需求验证:以需求规格说明为输入,通过符号执行、模拟或快 速原型等途径,分析需求规格的正确性和可行性; ( 5 ) 需求管理:支持系统的需求演进,如需求变化和可跟踪性问题。 本文将主要从面向领域的需求获取、需求建模和需求验证等三个阶 段来对网络化软件的需求工程进行研究。 1 1 4 面向领域的需求工程 面向领域的需求工程( 下面都简称为“领域需求工程”) 是对领域 内需求进行获取、分类以及分析的过程,是领域内一系列相似或相关系 统需求的并集,表示领域中用户对各系统功能要求的总和,集中反映领 武汉工程大学硕士学位论文 域中用户对系统的功能需求。领域需求工程不仅要描述领域的需求,而 且要从复用的观点出发,立足于需求的可复用性阳1 。 领域需求工程需要方方面面的人员参加( 如领域专家、领域用户、 系统开发人员、系统分析人员等等) ,各方面的人员有着不同的知识背 景,特别是对领域知识的掌握程度各不相同,这些差异使各方面人员之 间的沟通困难,常常对同一目标系统有不同的认识,造成领域需求多变、 难以预料的局面,人为地给领域需求工程的实施增加了难度,这就是领 域需求工程中所谓的“通信鸿沟 。而领域需求工程在一定程度上可以 视为特定领域知识获取的过程口1 。只有在各方面人员对于领域知识有着共 同理解的前提下,才能保证相互之间沟通顺利,因此,领域需求工程是 建立在对领域知识的充分理解和共享的基础上的。如果能够统一知识的 组织和表达,使之成为领域内各方面人员普遍接受的规范,就有可能解 决知识共享的问题,有效的消除通信鸿沟,保证领域需求工程的成功实 施。 基于本体的领域需求工程以领域本体作为需求分析的元模型,给领 域内各方面的人员提供共同理解和共享的领域知识,并以领域本体来指 导和规范整个领域需求工程。 1 1 5s o r l 的产生背景 软件的规模化定制服务的基本思想是需求牵引和服务推动的相互作 用。随着软件构件资源和服务资源越来越丰富和中间件技术逐渐成熟, 规模化定制需要的柔性生产技术受到广泛关注。一方面,网络上的各种 服务资源聚合成“满足用户需求的个性化服务”,另一方面,“用户的个 性化服务 有来自于“单个用户的个性化需求”和“领域用户群共性需 求 直接之间的协调、整合。目前,需求工程以系统级用户的需求为工 程对象,但随着服务级用户的个性化服务需要的增长,服务用户的需求 过程方法成为网络化软件需求工程的瓶颈。 4 第1 章绪论 网络化软件人网交互过程中,为了能够及时获取大众用户的个性化、 多样化需求,并兼顾需求工程生命周期( 需求的获取,建模,规格形成, 验证和管理) 的处理要求,形成了的一种面向服务的需求描述语言 s o i 也( s e r v i c e o r i e n t e dr e q u i r e m e n tl a n g u a g e ) 。 1 2 研究内容 本文主要介绍了需求工程包括需求建模、需求获取和需求匹配三个 部分。 其中需求建模部分,包括r g p s 需求元模型的构建,研发目标层模型 设计工具,用其进行本体模型的构建,并形成领域本体文件;需求获取 部分,包括面向服务的需求描述语言s o r l 的语法规则的介绍以及s o r l 交互式需求获取工具的研发;需求匹配部分,首先使用j a v a c c 定义s o r l 语句的语义和词法分析器,并解析用户给定的s o r l 语句而得到原子需 求,然后将原子需求作为匹配源,使用j e n aa p l 分析本体模型,得出用户 需求相关联的匹配结果。 1 3 论文结构 本论文共分五章,各章的主要内容如下: 第一章是绪论。首先介绍了本文的选题背景,包括需求工程的发展 历程,主要任务和生命周期,领域需求工程以及s o r l 的产生背景,随后 明确了本文的研究内容及章节安排; 第二章是基于本体的领域需求建模。首先介绍了本文与本体相关的 一些理论知识,如语义w e b 的发展现状,本体的概念,以及元本体、领 域本体和构建本体模型的作用等,接着说明了面向领域的需求建模所面 临的一些难题,然后详细介绍了如何使用u m l 构建r g p s 需求元模型,从 而保证领域需求工程的成功实施,其中着重说明了r g p s 元模型中目标层 元模型的构建过程,最后介绍了目标层的模型设计工具的开发过程,以 武汉工程大学硕士学位论文 及对使用该工具建立的本体模型的实例进行了详细的解析; 第三章需求描述语言s o r l 。首先介绍了s o r l 语言的主要特点,然 后介绍了s o r l 语言的体系结构;接着对s o r l 语言的需求描述元模型, n l p 及其句法语义,s o r l 语句的分类分别进行了详细的说明,另外,按 照s o r l 语言的语法规则产生了一些合法的s o r l 语句作为实例进行分 析; 第四章是基于本体的交互式需求获取工具。本章是以前两章的内容 为基础的,需求获取工具中的“领域模板“部分是通过分析用目标层模 型设计工具构建的本体模型来实现的,并且该工具获取用户的需求最终 是一些符合s o r l 语言的语法规范的s o r l 语句。因此,首先介绍了本体 模型的分析过程,然后说明该需求获取工具的具体开发过程和使用步骤。 第五章是需求匹配。首先对j a v a c c 的基础知识进行了简单的介绍, 接着描述了使用j a v a c c 解析s o r l 语句得到原子需求的过程,并通过实例 对s o r l 语句解析后得到的原子需求进行具体描述,然后说明了使用j e n a a p i 如何分析o w l 本体文件的过程,最后将原子需求作为匹配源,j e a n a p l 分析本体模型,得出用户需求相关的匹配指标; 第六章是总结和展望。通过对需求工程的研究,对论文进行了总结 和展望。 6 第2 章基于本体的需求建模 2 1 本体概述 第2 章基于本体的需求建模 在万维网日益普及的今天,人们充分体会到网络的巨大魅力。但现 在的万维网的功能并不完善,如网页单调枯燥、搜索引擎智能化程度低 等。那么万维网该如何发展呢? t i mb e m e r s l e e 提出了新一代的万维网一 一语义w e b ( t h es e m a n t i cw e b ) 。 语义是指文本的含义。语义需要理解文本的意思和结构,而与显示 方式无关。语义w e b 就是能够根据语义进行判断的网络。 简单地说,语义w e b 是一种能理解人类语言的智能网络,它不但能 够理解人类的语言,而且还可以使人与电脑之间的交流变得像人与人之 间交流一样轻松砸1 。 语义w e b 的目标是使得w e b 上的信息具有计算机可以理解的语义,满 足智能软件代理( a g e n t ) 对万维网上异构和分布信息的有效访问和检索。 要实现这个目标,也就是不同的系统之间能够共同理解,这需要实现信息 在知识级的共享和语义上的互操作。而本体不仅可以形成对资源、知识 等的统一认识,而且支持的推理机制是计算机“理解与处理 的基础,于是 本体自然地成为了语义w e b 发展的基础。 本体为语义w e b 提供了相关领域的共同理解,通过描述领域中概念 的严格定义和概念之间的关系来确定其精确的含义,并表示共同认可的、 可共享的知识。即由本体提供明确定义的词汇表,描述概念、概念特征 的属性、概念之间的关系以及属性之间的约束来表示领域知识。本体的 用途包括交流、共享、互操作、重用等,是解决语义层次上w e b 信息共 享和交换的基础呻1 。 7 武汉工程大学硕士学位论文 2 1 2 本体的概念 本体( o n t o l o g y ) 的定义现在还没有统一的看法,第一个被广泛认定 的定义是由g r u b e r 等人提出的“本体是概念模型的明确的规范说明n 们 。 后来,b o r s t 又在此基础上对本体作了进一步阐述:“本体是共享的概念 模型的形式化的规范说明n 们”。这个定义包括四层含义:概念化 ( c o n c e p t u a l i z a t i o n ) ,明确( e x p l i c i t ) ,形式化( f o r m a l ) 和共享( s h a r e ) , 具体的描述如下: ( 1 ) 概念化:指通过抽象客观世界中一些事物的相关概念而得到的 模型,其表现的含义独立于具体的环境状态; ( 2 ) 明确性:指所使用的概念及使用这些概念的约束都有明确的定 义; ( 3 ) 形式化:指本体是计算机可处理的; ( 4 ) 共享:指本体中体现的是共同认可的知识,反映的是相关领域 中公认的概念集。 2 1 3 本体的分类 本体概念的含义很广泛,可以指任何具体的或抽象的事物,如工作 描述、功能、行为、策略和推理过程等。概念可以在本体模型图中用节 点表示也可以在本体学习系统中通过学习得到,概念可以从输入数据中 提取也可以在本体精炼( r e f i n e ) 的过程中从其它的概念中产生。在基于 术语的概念获得中,个概念节点可以从相应的提取的术语中产生,这 些术语是自然语言的词或短语。然而在基于语义的概念获得中,概念常 常在本体精炼的过程中产生。 本体是客观存在的一个系统的解释或说明,关心的是客观现实的抽 象本质,在软件复用、自然语言处理、协同信息系统、智能信息集成、 i n t e m e t 上智能信息获取、知识管理、信息检索以及语义w e b 等方面得到 8 第2 章基于本体的需求建模 了广泛的应用。依据本体的领域依赖程度,可以将本体划分如下m 1 : ( 1 ) 顶层本体:主要研究非常通用的概念,如空间、时间、事物、 对象、事件、行为等,他们完全独立于特定的问题或领域。因此,可以 说顶层本体可以是在一个很大的范围内共享; ( 2 ) 领域本体:研究与一个特定领域相关的术语或词汇,如医学、 企业模拟等; ( 3 ) 任务本体:定义通用任务或推理活动,如诊断等。它们都可以 应用项层本体中定义的词汇来描述自己的词汇。任务本体和领域本体处 于同一个研究和开发层次; ( 4 ) 应用本体:描述特定的应用,它既可以引用涉及特定的领域本 体中的概念又可以引用出现在任务本体中的概念。 本文探讨的是面向领域的需求工程,故主要探讨构建领域本体方面 的知识。 2 1 4 元本体和领域本体 一般而言,元本体( m e t ao n t o l o g y ) 描述本体及其本体协调要素的 元数据n 列。例如,两个本体之间的互操作性问题,如语义转换本体或r d f t 本体就是元本体。元本体在本体的进化、本体模型的转换、映射、管理 等方面得到广泛的应用。 另一方面,领域的本体建模一般包括以下三个层次: ( 1 ) 基础本体:独立于领域应用逻辑的基本类型和概念结构; ( 2 ) 核心( c o r e ) 本体:符合上层定义的领域核心概念结构; ( 3 ) 精确本体:符合核心本体的精确的领域概念本体,成功的例子, 如w o r d 2 n e t ,c y c 等。精确本体一般使用u m l 承诺建模。元本体能够 表达本体建模中公共问题求解的知识,类似于软件模式,领域本体建模 中应该尽可能多地组入元本体。 9 武汉工程大学硕士学位论文 2 1 5 构建本体的作用 构建本体的作用n 胡主要是:能够在人与软件代理之间对信息结构达 成共识,方便人机对话;能够使本领域的知识得到共享和重用;使领域 内不同的系统和模型之间能够进行互操作。在对特定领域本体的构造和 设计进行比较深入的研究后,提出利用u m l 概念模型,通过概念模型与本 体之间存在的内在联系进行术语收集,再利用所提出的术语分类方法, 建立领域概念层次树,实现企业管理知识本体,使得企业管理信息系统 能够屏蔽由于系统开发者不同而造成的对领域概念理解上的差异,实现 系统在概念和语义层次上满足信息交换语义化的需求。 2 2 网络本体语言o w l 2 2 1o w l 概述 o w l ( w e b o n t o l o g yl a n g u a g e ,网络本体语言) 旨在用于那些需要 由应用程序而不是由人类来处理文档中的信息的情形。o w l 可被用来明 确表示词汇表中术语的含义以及术语间的关系n 制。本体就是这样表示术 语及术语间的关系的。在表达含义和语义方面,o w ll 匕x m l 、r d f 和 r d f s 有更多的表达手段,因此在w e b 上表达机器可理解内容的能力也比 这些语言强。o w l 是d a m l + o i lw e b 本体语言的修改版,并吸取了在 d a m l + o i l 的设计和应用中得到的经验教训。 2 2 2o w l 的优点 语义w e b 是对未来w e b 的展望。在语义w e b 中,信息被赋予明确的含 义,使得机器自动处理和集成w e b 上的信息更为容易。语义w e b 将构建于 x m l 自定义标签模式的能力以及r d f 灵活的描述数据的方式上。语义 w e b 需要在r d f 之上增加的第一个层次是一种能够对w e b 文档中的术语 1 0 第2 章基于本体的需求建模 含义进行形式化描述的本体语言。如果希望机器能够对这些w e b 文档进 行有效的推理工作,这一本体语言必须超越r d fs c h e m a 的基本语义。 o w l 用例和需求文档提供了更多关于本体的细节,用六个用例推动了对 o w l 的需求,并且规范化了o w l 的设计目标、需求以及目的n 副。 o w l 被设计为满足对w e b 本体语言的需求。o w l 是w 3 c 一系列与语 义w e b 相关的并不断扩大的规范的一部分。 x m l 提供了一种结构化文档的表层语法( s u r f a c es y n t a x ) ,但没有 对这些文档的含义施加任何语义约束。x m ls c h e m a 是一个约束x m l 文档 结构和为x m l 扩充了数据类型的语言。 r d f 是一个关于对象( 或资源) 和它们之间关系的数据模型,且为 该数据模型提供了简单的语义,这个数据模型能够用x m l 语法表示。r d f s c h e m a 是一个描述r d f 资源的属性( p r o p e r t y ) 和类( c l a s s e ) 的词汇表, 提供了关于这些属性和类的层次结构的语义。 o w l 添加了更多的用于描述属性和类的词汇,例如类之间的不相交 性( d i s j o i n t n e s s ) 、基数( c a r d i n a l i t y ) 、等价性、属性的更丰富类型、 属性特征以及枚举类( e n u m e r a t e dc l a s s e s ) 。 2 2 3o w l 的三种子语言 o w l 提供了三种表达能力递增的子语言n 刖,以分别用于特定的实现 者和用户团体。 o w ll i t e 用于提供给那些只需要一个分类层次和简单约束的用户。 例如,虽然o w ll i t e 支持支持基数限制,但只允许基数为o 或1 。提供支 持o w ll i t e 的工具应该比支持其他表达能力更强的o w l 子语言更简单, 相比o w ld l ,o w ll i t e 还具有更低的形式复杂度; o w ld l 用于支持那些需要最强表达能力而需要保持计算完备性 ( c o m p u t a t i o n a lc o m p l e t e n e s s ) 和可判定性( d e c i d a b i l i t y ) 。o w ld l 包 括o w l 语言的所有语言成分,但使用时必须符合一定的约束,例如,一 1 1 武汉工程大学硕士学位论文 个类可以是多个类的子类,但它不能同时是另外一个类的实例。o w ld l 这么命名是因为它对应于描述逻辑,它是一个研究作为o w l 形式基础的 逻辑的研究领域; o w lf u l l 支持那些需要尽管没有可计算性保证,但有最强的表达能 力和完全自由的r d f 语法的用户。这样,不太可能有推理软件能支持对 o w lf u l l 的所有成分的完全推理。 使用o w l 的本体开发者要考虑哪个子语言最符合他的需求。选择 o w ll i t e 还是o w ld l 主要取决于用户在多大程度上需要o w ld l 提供 的表达能力更强的成分。选择o w ld l 还是o w lf u l l 主要取决于用户在 多大程度上需要r d fs c h e m a 的元建模( m e t a m o d e l i n g ) 机制;使用o w l f u l l 相比于o w ld l ,对推理的支持是更难预测的,因为目前还没有完全 的o w lf u l l 的实现。因此,在这里选择o w ld l 来完成领域本体的构建 工作。 2 2 4o w l 的常用语言特性 下一节将说明o w l 描述领域本体的过程,所以这里介绍一些将要使 用的与r d fs c h e m a 有关系的o w l 特性n 5 1 。 ( 1 ) c l a s s :类定义了因共有某些属性而同属一组的一些个体。例如, d e b o r a h 和f r a n k 都是类p e r s o n 的成员。多个类也可以用“子类 ( s u b c l a s s o f ) 关系组织为一个特定的层次结构。一个内置的最一般的类 被称为t h i n g ,它是所有个体的类,因此是所有o w l 类的父类。另外还 有一个内置的最特殊类被称为n o t h i n g ,它没有任何实例,因此是任意 o w l 类的子类。一 ( 2 ) p r o p e r t y :属性是个体之间的二元关系,也就是说,属性把两 个个体连接在一起。例如,属性h a s s i b l i n g 可能会把m a t t h e w 禾l g e m m a 这 两个个体连接起来,而属- l 生h a s c h i l d 会把p e t e r 矛i m a t t h e w 这两个个体连接 起来;属性可以有反向( i n v e r s e ) 属性,例女l h a s o w n e r 的反向属性是 1 2 第2 章基于本体的需求建模 i s o w n e d b y ;属性也可以被限制为只能拥有一个值,即所谓的函数属性 ( f u n c t i o n a l ) ;属性还可以是具有传递性( t r a n s i t i v e ) 或是对称的 ( s y m m e t r i c ) 。 ( 3 ) r d f s :d o m a i n :一个属性的定义域用来约束该属性可以适用的个 体。如果一个个体以一个属性和另一个体关联,并且该属性用某个类作 为它的一个定义域,那么该个体必然属于这个类。例如,属性h a s c h i l d 可 能声明其定义域为m a m m a l 。据此,一个推理机就可以推出:如果f r a n k h a s c h i l da n n a ,那么f r a n k 必然是一个类m a m m a l 的实例。注意 “r d f s :d o m a i n ”被称为全局限制,因为该限制是在此属性上声明的,而不 只是当这个属性应用于某个类时声明的。 ( 4 ) r d f s :r a n g e :一个属性的值域用来限制哪些个体可以成为属性的 值。如果一个个体以一个属性和另一个体关联,并且该属性的值域是一 个类,那么另外那个个体必然属于此类。例如,可以声明属性h a s c h i l d 的 值域是类m a m m a l 。据此,推理机可以推出:如果l o u i s e 以h a s c h i l d 属 性和d e b o r a h 关联( 臣p d e b o r a h 是l o u i s e 的孩子) ,那么d e b o r a h 是类m a m m a l 的实例。值域同上面的定义域一样也是全局限制。 ( 5 ) i n d i v i d u a l :个体是类的实例,个体之间可以用属性相互关联。 例如,一个名为“d e b o r a h 的个体可以被声明为类p e r s o n 的一个实例, 个体d e b o r a h 可以用属 生h a s e m p l o y e r 来和个体“斯坦福大学 关联。 2 3 需求元模型的构建 2 3 1u m l 简介 统一建模语言u m l ( u n i f i e dm o d e l i n gl a n g u a g e ) 软件工程领域在 1 9 9 5 年至1 9 9 7 年取得了前所未有的进展,其成果超过软件工程领域过去 1 5 年来的成就总和。其中最重要的、具有划时代重大意义的成果之一就 是统一建模语言的出现。在世界范围内,至少在近1 0 年内,u m l 将是面 武汉工程大学硕士学位论文 向对象技术领域内占主导地位的标准建模语言。采用u m l 作为我国统一 的建模语言是完全必要的:首先,过去数十种面向对象的建模语言都是 相互独立的,而u m l 可以消除一些潜在的不必要的差异,以免用户混淆; 其次,通过统一语义和符号表示,能够稳定我国的面向对象技术市场, 使项目根植于一个成熟的标准建模语言,从而可以大大拓宽所研制与开 发的软件系统的适用范围,并大大提高其灵活程度。 u m l 是一种定义良好、易于表达、功能强大且普遍适用的建模语言。 它溶入了软件工程领域的新思想、新方法和新技术。它的作用域不限于 支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过 程。 面向对象技术和u m l 的发展过程可用上图来表示,标准建模语言的 出现是其重要成果。在美国,截止1 9 9 6 年1 0 月,u m l 获得了工业界、科 技界和应用界的广泛支持,已有7 0 0 多个公司表示支持采用u m l 作为建模 语言。1 9 9 6 年底,u m l 已稳占面向对象技术市场的8 5 ,成为可视化建 模语言事实上的工业标准。1 9 9 7 年1 1 月1 7 日,o m g 采纳u m l1 1 作为基 于面向对象技术的标准建模语言。 作为一种建模语言,u m l 的定义包括u m l 语义和u m l 表示法两个部 分n 引。 ( 1 ) u m l 语义:描述基于u m l 的精确元模型定义。元模型为u m l 的所有元素在语法和语义上提供了简单、一致、通用的定义性说明,使 开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的 影响。此外u m l 还支持对元模型的扩展定义。 ( 2 ) u m l 表示法:定义u m l 符号的表示法,为开发者或开发工具 使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和 文字所表达的是应用级的模型,在语义上它是u m l 元模型的个体。 从应用的角度看,当采用面向对象技术设计系统时,首先是描述需 求;其次根据需求建立系统的静态模型,以构造系统的结构;第三步是 1 4 第2 章基于本体的需求建模 描述系统的行为。其中在第一步与第二步中所建立的模型都是静态的, 包括用例图、类图( 包含包) 、对象图、组件图和配置图等五个图形, 是标准建模语言u m l 的静态建模机制。其中第三步中所建立的模型或者 可以执行,或者表示执行时的时序状态或交互关系。它包括状态图、活 动图、顺序图和合作图等四个图形,是标准建模语言u m l 的动态建模机 制。因此,标准建模语言u m l 的主要内容也可以归纳为静态建模机制和 动态建模机制两大类。 当今面向对象开发方法已经成为软件开发的主流技术,因此需求分 析的结果应该有效地支持面向对象的软件开发活动。基于这一点,该文 采用了面向对象的建模语言u m l 来表示领域需求工程的结果,以求更好 地将领域需求工程与系统开发结合起来,同时,统一用u m l 来表示领域 需求工程的结果,也有利于实现领域需求的复用。 u m l 强大的图形元素可以为本体模型提供图形化、直观的描述,而 u m l 的次语言o c l ( o b j e c tc o n s t r a i n tl a n g u a g e ,对象约束语言) 可以 为u m l 建立的本体模型提供半形式化的语义描述。 使用u m l 建模,本体的概念可以映射为类或对象,由u m l 语言中的 类图和对象图来表示,本体概念之间的关系映射为类之间或者类与对象 之间的关系,如个体( i n s t a n c e ) 、关联( a s s o c i a t i o n s ) 、聚合( a g g r e g a t i o n s ) 和泛化( g e n e r a l i z a t i o n s ) 等。将u m l 类图与对象图建立本体模型称为本 体模型图( o n t o l o g ym o d e ld i a g r a m ) 。本体模型图中的实体类是在领域 概念的抽象层次上的,因此实体类不包含操作。 2 3 2u m l 构建领域本体模型的优点 基于u m l 构建领域本体模型具有以下几个优点n 7 埔1 : ( 1 ) u m l 为本体模型的表达提供了标准的图形化表示,这种图形化 的表示方法使领域内各方面人员可以方便地浏览本体,并从中找到他所 要查询了解的概念。而其它逻辑化建模方法只提供了本体的线性语义, 武汉工程大学硕士学位论文 而没有提供图形表示; ( 2 ) 由于u m l 是与具体实现无关的可视化建模语言,因此使用 u m l 建立的本体模型与系统具体的编程语言无关; ( 3 ) o c l 语言具有表达能力强的特点,可以描述逻辑化方法无法描 述的约束问题; ( 4 ) 虽然目前有的本体建模语言也提供了图形化工具,但u m l 是唯 一具有严密、高层次和标准化图形符号和强大的商业支撑工具的本体建 模语言; ( 5 ) u m l 有着庞大并正在急剧增长的用户群,并且相对于一阶逻辑 或者描述逻辑,软件开发者对u m l 更加熟悉,而且也更容易接受u m l 。 2 3 3r g p s 需求元模型的构建 1 面向领域的需求元模型框架 目前,需求元模型的构建方法有很多种,其中包括面向角色的需求 建模方法,面向目标的需求建模方法,面向过程的需求建模方法和面向 服务的动态组合、服务计算、普适计算等,虽然已经存在这么多种方法, 但是仍然没有一个统一的需求建模语言和方法的标准,因此对需求元模 型的研究变得异常重要了。这里结合各种流行的需求建模方法,得到一 个需求元模型的框架n 钉,如图2 1 所示。 图2 1 需求元模型 1 6 镥 求 网 臻 蠢 、,0krj多受| 鼍;奢繁多复车包标程簿 角县过 资 产求务 务用需业服 第2 章基于本体的需求建模 2 r g p s 元模型中层次问的关系 上面提出了需求元模型框架中的四个要素,也就是对需求元模型进 行了分层描述,这里说明一下各个层次之间的关系n 引,如图2 2 所示。 图2 2 需求元模型四要素之间的关系 3 r g p s 元

温馨提示

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

评论

0/150

提交评论