(计算机系统结构专业论文)领域工程在网络评审系统中的应用研究.pdf_第1页
(计算机系统结构专业论文)领域工程在网络评审系统中的应用研究.pdf_第2页
(计算机系统结构专业论文)领域工程在网络评审系统中的应用研究.pdf_第3页
(计算机系统结构专业论文)领域工程在网络评审系统中的应用研究.pdf_第4页
(计算机系统结构专业论文)领域工程在网络评审系统中的应用研究.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

摘要 领域工程是实现系统化软件复用的关键技术,它为特定领域建立 可复用的软件资产,并提供了复用这些软件资产的机制和方法。论文 基于领域工程的研究方法,对网络评审进行了领域分析和领域设计, 为网络评审领域实现系统化的复用提供了基础。 在讨论领域工程现状研究的基础上,将统一建模语言与面向特征 的领域分析方法相结合,对网络评审领域进行了特征分析、知识分析 和操作分析,建立了网络评审领域模型。基于该领域模型,抽取领域 中的强制性特征和非强制特征,根据低耦合、高内聚原则,获取主要 的领域业务构件,在此基础上构建了层次的网络评审领域软件体系结 构模型。 论文给出了领域软件构件模型,描述了构件模型的接口和配置信 息,分析在组装过程中其接口配置信息的作用。最后以网络评审领域 体系结构模型为基础,给出了采用x m l 语言描述的构件组装过程。 网络评审应用系统为科技评价工作提供了经济高效、公平、公正、 公开的管理和监督机制,提高了办公效率和服务管理质量。领域工程 在网络评审系统中的应用研究,为网络评审软件的复用提供了坚实的 基础,提高了网络评审应用系统的开发生产力和系统可靠性。 关键字网络评审,领域工程,特征模型,软件体系结构,构件模型 a bs t r a c t d o m a i ne n g i n e e r i n gi sak e yt e c h n i q u et oa c h i e v es y s t e m a t i cr e u s e i td o e sn o to n l ye s t a b l i s ht h er e u s a b l es o f t w a r ea s s e t sf o rs p e c i f i cf i e l d s , b u ta l s oo f f e r st h es y s t e m a t i cm e t h o dt oi m p l e m e n tt h e m s u p p o n e db y r e s e a r c h i n gm e t h o d si nd o m a i ne n g i n e e r i n g ,t h i st h e s i st a k e so u td o m a i n a n a l y s i sa n dd o m a i nd e s i g n ,t h u sp r o v i d e sb a s i sf o rt h es y s t e m a t i cr e u s e i nn e t w o r k e v a l u a t i o nf i e l d s h a v i n gd i s c u s s e d c u r r e n tr e s e a r c ho fd o m a i n e n g i n e e r i n g t h e n c o m b i n e st h eu m l ( u n if i e dm o d e l i n gl a n g u a g e ) a n df e a t u r e o r i e n t e d d o m a i na n a l y s i s ,s oa st op r a c t i c ea n a l y s i so fn e t w o r k - e v a l u a t i o nd o m a i n i ni t sf e a t u r e s ,k n o w l e d g ea n do p e r a t i o n ,w h i c hf i n a l l ys e tt h em o d e lo f n e t w o r k e v a l u a t i o nd o m a i n t h e na b s t r a c tt h ef e a t u r e sb o t ht h e e n f o r c e a b l ea n dn o to nt h eg r o u n do ft h ed o m a i nm o d e l s a c c o r d i n gt o t h ep r i n c i p l eo fl o o s e l yc o u p l i n ga n dt i g h t l yp o l y m e r i z i n g ,t h e ng e t st h e m a i nc o m p o n e n t si nt h ed o m a i na n ds t r u c t u r e sw e l l - a r r a n g e ds o f t w a r e m o d e lo fn e t w o r k e v a l u a t i o no nt h a tb a s is t h et h e s i so f f e r sa ne a s y a s s e m b l ys o f t w a r ec o m p o n e n tm o d e l ,a n d d e s c r i b e st h ec o m p o n e n tm o d e li n t e r f a c ec o n f i g u r a t i o ni n f o r m a t i o n ;i t a l s oa n a l y z e st h er o l eo ft h a ti n f o r m a t i o ni nt h ep r o c e s so fa s s e m b l i n g f i n a l l ya c c o r d i n gt ot h eb a s i cf r a m e w o r ko f t h ec o m p o n e n ta s s e m b l ya n d c o m p o n e n tm o d e l ,t h et h e s i sd e s c r i b e st h ec o m p o n e n ta s s e m b l yp r o c e s s i nd e t a i lw i t hx m l t h en e t w o r k - e v a l u a t i o n s y s t e m r e s e a r c h e di nt h e s i s p r o v i d e s e c o n o m i c ,e f f i c i e n t ,f a i r l y , j u s t i c ea n do p e nm a n a g e m e n ta n dm o n i t o r m e c h a n i s mf o rt h es c i e n t i f i ca n dt e c h n o l o g i c a la s s e s s m e n t ,w h i c ha l s o i m p r o v e sb o t ht h ee f f i c i e n c yo fo f f i c ew o r ka n dt h eq u a l i t yo fs e r v i c e m a n a g e m e n t t h ea p p l i e d r e s e a r c ho fd o m a i n e n g i n e e r i n g i n n e t w o r k e v a l u a t i o ng u a r a n t e e st h er e u s eo fn e t w o r k - e v a l u a t i o ns o f t w a r e a n di m p r o v e st h ep r o d u c t i v i t ya n dr e l i a b i l i t yo ft h ea p p l i c a t i o ns y s t e mo f n e t w o r k e v a l u a t i o n k e yw o r d sn e t w o r ke v a l u a t i o n ,d o m a i ne n g i n e e r i n g ,f e a t u r em o d e l , s o f t w a r ea r c h i t e c t u r e ,c o m p o n e n tm o d e l 原创性声明 本人声明,所呈交的学位论文是本人在导师指导下进行的研究 工作及取得的研究成果。尽我所知,除了论文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不 包含为获得中南大学或其他单位的学位或证书而使用过的材料。与我 共同工作的同志对本研究所作的贡献均己在论文中作了明确的说明。 作者签名: ! 送! 西生殖日期:迹年上月丝日 学位论文版权使用授权书 本人了解中南大学有关保留、使用学位论文的规定,即:学校 有权保留学位论文并根据国家或湖南省有关部门规定送交学位论文, 允许学位论文被查阅和借阅;学校可以公布学位论文的全部或部分内 容,可以采用复印、缩印或其它手段保存学位论文。同时授权中国科 学技术信息研究所将本学位论文收录到中国学位论文全文数据库, 并通过网络向社会公众提供信息服务。 日期:趟年上月上胡 硕十学位论文第一章绪论 1 1 论文研究背景 第一章绪论 政府的信息化建设是国民经济信息化建设的重要组成部分。2 0 世纪9 0 年代 以来,随着技术进步的加快,尤其是互联网络的出现和迅速发展,全球性的信息 化、网络化进程正在改变着人们生活方式,电子商务的爆炸性增长在工作、娱乐 乃至r 常生活的各个层面带来了深刻的影响。各级政府机构作为经济、文化和社 会活动的参与者、管理者和服务者,直接面临着这些快速的变化,推进政府部门 的办公自动化、网络化、无纸化,已是大势所趋,电子政务已日益成为提高政府 行政效能的有效手段。 目前,提高国家科技奖励信息化管理水平,充分运用信息、网络等现代化技 术,整合全国科技奖励信息,实现全国科技奖励信息资源的共享,充分利用信息 资源为面向管理人员、面向社会、面向广大科技人员的服务,做好对内、对外服 务工作,是国家科学技术奖励工作办公室正努力追寻的目标。因此,研究国家科 技奖励综合业务处理平台,构建面向全国的统一分布式科技奖励网络管理系统有 着十分重要的意义。 国家科学技术奖励评审办公平台将国家科学技术奖励工作中的项目申报、评 审以及评审专家的申报、遴选工作计算机网络化。在此平台基础之上,有效整合 资源,建立一套分布式、网络化、信息化的科技奖励办公平台。不仅实现奖励办 各部门之间工作协调合作和相关资源共享,极大简化工作业务,提高了工作效率, 降低了政府运作成本,而且给全国各级科学技术行政管理部门协作提供了多种跨 平台的服务接口,向科技工作者和公众提供简便快捷的多元化服务,并实现了公 平、公正、公开的科技奖励监督机制,提高了办公效率和服务管理质量【l 】。其中 网络评审子系统,主要是为参加科技项目评审的专家提供了一个便利的评审平 台,专家通过网络即可参与项目评审,节约了大量的评审费用和评审时间。目前, 该系统已经在国家奖励办、教育部科技发展中心、上海科技厅、湖南省科技厅、 吉林省科技厅、内蒙古科技厅、甘肃省科技厅、山东科技厅、河北科技厅实施应 用,根据各地使用特点不同,总结了以下几种情况: 1 评审流程环节数不同,但核心业务基本相同; 2 核心业务规则不同,需要根据应用需求做出调整修改; 3 评审管理需求不同,涉及到多个部门进行联合管理的情况。 针对各省所使用的网络评审平台的功能差异情况,论文从提高软件开发的效 硕十学位论文 第一章绪论 率以及实现系统化复用出发,从领域工程角度对网络评审领域进行分析,建立了 基于领域构件的软件体系结构模型,设计了易于组装的领域构件模型,采用接口 配置实现待组装构件接口间的对偶关系。 1 2 领域工程研究现状 领域工程( d o m a i ne n g i n e e r i n g ) 是为一组相似或相近系统的应用工程建立基 本能力和必备基础的过程,它覆盖了建立可重用构件的所有活动,主要过程分为 领域分析、领域设计和领域实现三个阶段。它以领域分析为出发点,对领域中的 系统进行分析,包括识别、搜集、组织、分析和表示领域中相关的共性和个性信 息,形成领域定义和领域模型,其中领域模型确定了该领域系统的公共功能和数 据,依据领域模型,设计面向特定领域的软件构架( d o m a i ns p e c i f i cs o f t w a r e a r c h i t e c t u r e ,简称d s s a ) ,包括系统中各种构件间交互关系的共性和差异,并以 此领域构架为中心,识别、开发和组织可重用构件,供应用系统开发使用。这样, 当开发同一领域中新的应用时,可以根据领域分析模型,确定新应用的需求规约, 根据特定领域的软件构架形成新应用的设计,并以此为基础选择可复用领域构件 进行组装,从而形成新系统【2 】。由于领域的内聚性和稳定性有助于准确获取可复 用资源,因此在某一特定领域内进行系统化的软件复用更容易成功,领域实现阶 段的构件就成为开发新的应用系统的基础1 3 j 。 领域工程给软件复用提供了有力的支持:( 1 ) 领域工程有助于产生具有较高 可复用性的构件。它将关于领域的知识转化为领域中系统共同的规约、设计和构 架,使得可复用信息的范围扩大到抽象级别较高的分析和设计阶段。由于通过领 域工程产生的可复用构件来源于领域中现有的系统,体现了领域中系统的本质需 求,因此,这些构件具有较高的可复用性。( 2 ) 领域工程产生了领域分析模型和 d s s a ,这对于基于复用的开发很有帮助。应用系统开发以领域分析模型和d s s a 为基础,可以帮助开发者识别复用机会,判断可复用构件是否符合当前需型4 1 。 经过业界多年不断的研究与实践,当前已提出若干种领域工程方法,取得了 一定的研究成果其中比较有代表性的是卡耐基梅隆大学软件工程研究所提出来 的f o d a 方法( 面向特征的领域分析方法) 【5 j ,w i l lt r a c z 提出来的d s s a 领域工 程方法【引、乔治梅森大学h a s s a ng o m a a 教授提出来的e d l c 模型1 3 j 以及贝尔实 验室提出来的f a s t 领域工程方法【7 j ,国内杨芙清院士领导的青鸟工程中提出的 青鸟领域工程方法【8 】。f o d a 方法认为领域工程分为上下文分析、领域建模和构 架建模三个阶段。d s s a 方法把领域工程过程分为定义领域范围、定义领域特定 的元素、定义领域特定的设计和实现需求约束、定义领域模型和构架和产生、搜 索可复用产品五个阶段。每个阶段可以进一步划分为一些步骤和子阶段。每个阶 2 硕十学位论文第一章绪论 段包括一组需要回答的问题,一组需要的输人,一组将产生的输出和验证标准。 同时定义此过程是并发、递归和反复的,完成整个过程可能需要对每个阶段的遍 历迭代,在迭代中增加更多的细节。 领域工程有助于产生具有较高可复用性的构件,目前,对于领域构件的研究 已经是软件复用技术的重点之一,面向特定领域的软件构件可以实现软件的动态 配置及灵活组装,使软件复用实现大粒度的构件复用。领域构件是领域实现的基 础,构件技术彻底改变了软件生产方式,从根本上提高软件生产的效率和质量, 提高开发大型软件系统尤其是商用系统的成功率。有了领域构件之后,应用开发 人员就可以利用现成的构件装配成适用于不同领域、功能各异的应用系统。使软 件生产脱离传统手工业的单件生产模式,转向建筑在标准化零部件基础上的高效 率、高质量的新型生产方式【们。 随着软件构件技术的发展,各大软件公司及软件组织机构纷纷推出了支持中 间件技术的构件标准,已经取得广泛认可的主流构件技术标准有o m g 推出的 c o r b a 、s u n 推出的j a v a b e a n e j b 和m i c r o s o f t 推出的c o m d c o m 。 国外关于软构件技术的研究较早,其主要工作包括:美国军方与政府资助, 旨在解决构件库之间共享资源和无缝互操作问题,并于1 9 9 2 年提交的a l o a f v e r s i o n1 2 版本,这体现了对可复用构件库系统的认识,并给出了一个构件库框 架的参考模型;可复用库互操作组织r i g 开发的可互操作性的解决方案b i d m 和u d m ,u d m 是基于a l o a f 的三层数据模型的统一数据模型,b i d m 是u d m 的一个子集,定义了为实现互操作,复用库交换软构件时所需的信息的最小集, b i d m 已被i e e e 采纳为标准;n a t o 对n a t o 、n a t o 参与国和承包商制定了 一组关于软件复用的标准,包括“可复用构件开发标准”、“可复用软构件库管理 标准 等 1 0 1 。 软构件技术也引起了国内学多专家学者的关注。北京大学软件工程研究所以 杨芙清院士和梅宏教授为代表,以“青鸟工程”为依托,重点研究了软件的工业 化生产技术,开发了软件工业化生产系统,提出了一组软构件技术标准规范,形 成了支持接口连接式和插头插座式体系结构类型的构件模型以及基于体系结构 的构件集成组装框架【1 1 u 2 1 。 a g e n t 是近年来计算机科学领域中的一个重要概念,基于a g e n t 的系统代表 了一种新的软件丌发方式。a g e n t 概念和基于a g e n t 的系统软件开发范型为实现 动态软件重用提供了方法、技术和概念上的支持。目前对a g e n t 的研究主要集中 在面向a g e n t 的程序设计技术、基于a g e n t 的软件工程、a g e n t 协商模型以及基 于代理的软件构件技术等。但由于a g e n t 本身固有的特性,a g e n t 系统开发仍面 临着一些问题,如缺乏有关基于a g e n t 的软件系统丌发方法学,使a g e n t 的开发 硕士学位论文第一章绪论 无规范可言;a g e n t 与可重用技术和分布式对象技术的结合不够紧密等【1 2 儿1 3 】。 尽管软件复用思想早己为人们所接受,然而软件复用技术并没有在实践中得 到广泛的应用,特别是在大型、复杂的软件开发中,系统化地使用软件复用的情 况并不多。 从上述研究的分析可以知道,目前对软件构件的研究主要侧重于如何基于领 域思想抽取构件、开发构件、管理构件以及基于软件构件开发应用系统,因此本 文将基于领域工程思想对网络评审领域进行分析,提取领域内的通用构件与专用 构件,实现系统级别的复用。由于目标集中在一个特定应用领域中实现软件复用, 软件构件的制作不需要在很广的范围考虑其通用性,此外,由于同一领域的应用 系统之间有更多的共性,特别是存在一些较大的系统成份彼此相同,可复用构件 的粒度相应增大,可以形成领域构件。 1 3 论文的主要内容 论文的主要内容是对网络评审领域进行领域分析并建模,根据领域模型设计 领域体系结构模型,最后设计了易于组装的构件模型并使用x m l 描述了基于体 系结构的构件组装过程。论文将从以下几个方面研究软件构件技术在网络评审中 的应用,论文的内容组织结构如下: 第一章简要叙述了网络评审系统在应用中存在的问题并从领域工程的角度 解决现有的问题。 第二章介绍领域工程基础知识,包括领域工程的三个阶段,重点介绍了领域 分析方法、软件复用技术中的构件模型和构件组装方法。 第三章针对网络评审领域采用了面向特征领域分析方法对网络评审领域进 行上下文环境建模、特征建模、知识建模、操作建模,为特定领域体系结构模型 的建立提供了领域模型基础。 第四章根据建立的领域模型,按高内聚、低耦合的原则,提取网络评审领域 内的业务构件,并设计了基于构件实现的网络评审领域体系结构模型。 第五章设计了基于体系结构实现的易于组装的领域构件模型,分析了该模型 在组装中的作用,采用x m l 语言对构件及其接口配置信息进行描述,分析并开 发了系统业务功能构件,然后描述了基于体系结构实现的构件组装过程。 在结论部分,对本文的内容给出一个总结,提出了需要进一步解决的问题和 以后可能的研究方向。 4 硕士学位论文 第二章领域工程 第二章领域工程 基于领域工程思想的软件开发过程,有助于产生具有较高可复用性的领域构 件,领域工程将关于领域的知识转化为领域中系统共同的规约、设计和架构,使 得可复用信息的范围扩大到了抽象级别较高的分析和设计阶段。由于通过领域工 程产生的可复用构件来源于领域中现有的系统,体现了领域中系统的本质需求, 因此这些构件可以在特定领域内实现大粒度的系统复用,通过组装可以快速、高 效产生新的应用系统。 2 1 领域工程概念 w i l lt r a c z 认为“领域工程是产生d s s a 的过程” 6 1 ,因此,研究网络评审 系统这个特定领域的软件体系结构,就需要按照领域工程的方法进行研究。论文 简要介绍领域工程的基本概念。 2 1 1 领域 目前关于领域( d o m a i n ) 的定义有多种形式,在软件工程环境中,领域是指一 组具有相似或相近软件需求的应用系统所覆盖的功能、问题、问题解决方案或知 识区域 5 h 5 】。领域工程则是通过对领域中典型系统的分析,识别这些系统的共性 和特性,运用选择、抽象等方法形成领域模型,进而产生出领域中应用系统共同 具有的体系结构或生成过程,并以此为基础,识别、开发和组装具有较高复用性 的构件p j 。从软件复用内容的角度可以将领域分为垂直领域和水平领域,其中垂 直领域是指具有相似业务需求的一组相似应用系统所覆盖的业务区域,如财务管 理系统、进销存管理系统等;水平领域是指根据应用系统内部模块的功能性分类 而得到的相似问题空间,如数据库系统、工作流系统、g u i 库等【5 j 。 无论是垂直领域还是水平领域,领域内信息普遍具有以下两个基本特征,这 些特征也是进行领域分析研究和实践工作的基础。 ( 1 ) 可复用信息的领域特定性。可复用性不是信息的一种孤立属性,它往往 依赖于特定的问题和特定的问题解决方法。即我们所说某类信息具有可复用性, 是指当使用特定的方法解决特定的问题时,它是可复用的。 基于这种特征,在识别、获取和表示可复用信息时,应该采用面向领域的策 略。 ( 2 ) 问题领域的内聚性和稳定性。关于现实世界问题领域的解决方法的知识 硕士学位论文 第二章领域工程 是充分内聚和充分稳定的,这一基本认识是实际观察的结果,也是知识获取和表 示的意义所在。内聚性使得可以通过一组有限的、相对较少的可复用信息来把握 可以解决大量问题的知识。稳定性使得获取和表示这些信息所付出的代价,可以 通过在较长时间内多次复用它们来得到补偿【5 j 。 领域是研究软件重用技术的重要基础,它不仅对软件开发范式产生了影响, 如基于构件构架的软件开发方法,还对软件开发过程的建模和度量起到了积极 的作用。 2 1 2 领域分析 领域分析( d o m a i na n a l y s i s ) 是n e i g h o u s1 9 8 1 年在他的博士论文“使用部件 的软件构筑 中首次提出的,它的含义是指“识别、捕获和组织特定领域中一类 相似系统内对象、操作等可复用信息的过程”,它的目的是支持系统化的软件复 用【1 6 】。之后,围绕领域分析进行了大量的研究和实践工作,形成了众多关于领 域分析的不同概念和方法。综合这些概念,可以认为,领域分析是在一定领域内 开展的以领域定义、领域共性和特性描述、领域内概念、数据、功能及其关系识 别、领域体系结构开发为目标的系统化分析过程。与系统分析不同,领域分析所 关心的是一个领域内所有相似系统中的对象和活动的共同特征与演化特性,它产 生的是支持系统化复用的基础设施,这些基础复用设施主要包括领域定义、开发 标准、领域模型和可复用构件仓库等。 通过领域分析,类似系统的公共特性将被提取,适用于该领域所有公共的、 基本的对象、操作也将被标志出来,并且通过定义模型来描述它们之问的关系。 所以说,领域分析是系统的可复用体系结构设计和相关应用系统族的部件设计的 起点,是为一个程序系统挑选预备体系结构的过程,并且提前为系统在生命周期 中安排了一个可修改性的过程。领域分析在对领域中若干典型成员系统的需求进 行分析的基础上,考虑预期的需求变化、技术演化、限制条件等因素,确定恰当 的领域范围,识别领域的共性特征和变化特征,获取一组具有足够可复用性的领 域需求,并对其抽象形成领域模型。 卡耐基梅隆大学软件工程研究所早期提出过面向特征的领域分析方法 f f e a t u r e o r i e n t e dd o m a i na n a l y s i s ,f o d a ) 。此方法是一种为了达到软件重用目 的而在一些相关系统中系统化地寻找公共特性的技术【1 7 】i 引。 领域分析是通过特征分析,识别领域中应用的共同特征和可变特征,形成特 征模型,并探讨需求规约的构件化机制,即需求规约构件的基本模型;将软件体 系结构的概念和原则引入到需求分析和需求规约中,以更有效的支持需求复用、 需求规约和系统设计问的可追踪性,以及在整个软件丌发过程中的一致性;领域 6 硕士学位论文第二章领域工程 模型将由需求规约构件和连接子的合理配置而构成。它是发现和记录某个领域各 系统的共性和差异的过程,是系统化、形式化、有效复用的关键。通过领域分析, 类似系统的公共特性将被提取,适用于该领域所有共同的、基本的对象、操作也 将被标志出来,并且通过定义模式来描述它们之间的关系【1 9 】【2 0 l 。 领域分析是一件困难的工作,首先找出可重用的信息本身就是一件不容易的 工作。其次,即使这些信息已经找到,还存在一个如何表示、组织、索引这些知 识的问题,而且必须在软件开发组织使用这些信息之前将这些信息很好的组织起 来,建立起重用的基础结构和重用信息库。它涉及到软件说明、软件实现、概念 建模、知识获取、知识表示、软件工程经济学等各个分支。人们所以重视它、研 究它,是因为只有通过领域分析。才可以抓住软件重用的关键,即分析和设计的 重用,而不只是代码的重用1 2 1 j 。 2 1 3 领域设计 领域设计要依据领域分析的模型产生出领域中一类应用系统共同具有的软 件体系构架,即特定领域的软件构架d s s a ,并以此为基础识别、开发和组织可 复用构件【2 2 1 。领域设计包括了两个主要的活动,即开发一个领域内的系统共同 具有的软件体系架构和制定由该架构产生具体制品的方案。 根据b u s c h m a n n 等提出的软件架构的定义1 2 3 j :软件架构是对一个软件系统 的子系统和组件以及它们之间关系的描述,典型情况下,在不同的视图中,指定 子系统和组件,以显示这个软件系统相应的功能和非功能属性。系统的软件架构 是一个工件( a r t i f a c t ) ,它是软件开发的结果。系统的架构设计的依据是领域分析 的结果,架构设计的目的是提出一个灵活的系统架构,能够满足所有重要的需求, 同时为系统的具体实现和需求的演化保留最大的灵活程度。 设计一个好的软件体系架构的原则是: 考虑系统强制性功能需求,强制性功能需求可以构成原型系统; 考虑系统非强制性功能需求,非强制性功能需求为方便用户使用而增加的 功能; 对系统进行清晰的划分,使得各业务功能模块的互相影响降到最低; 提高模块的内聚性,降低模块间的耦合性; 嗜虑利用己知的设计和架构模式,根据不同应用可以采用b s 或c s 架构。 领域设计的另外一个方面是产生方案,领域设计需要描述具体的应用系统如 何由通用的软件架构和组件产生出来的。产生方案向请求具体系统的客户描述对 外接口、构件组装过程、处理变更请求和定制丌发的过程以及和生产过程的测量、 跟踪和优化。 7 硕上学位论文 第二章领域t 程 2 1 4 领域实现 领域实现的主要目标是依据领域模型和特定领域的软件构架d s s a 开发和 组织领域内系统的可复用的领域构件。这些可领域构件的获取可能是从现有系统 中提取,也可能通过新的开发得到,它们依据领域模型和特定领域的软件构架 d s s a 进行组装,形成新的面向复用的系统应用【2 1 。 领域实现的主要活动是使用合适的技术来实现领域设计中的产品架构、领域 构件和产生方案。产生方案的实现可能需要编写开发人员指南、实现领域特定语 言( d o m a i n s p e c i f i cl a n g u a g e ,d s l ) 和定制g u i 、产生器等活动。 领域特定语言是一种特定的、面向具体问题的语言,在实现了领域的架构和 领域构件后,可以利用领域特定语言来产生具体的软件产品。软件产品可以是具 体的源程序,也可以是编译好的软件模块。领域特定语言的一个成功例子是s q l , s q l 提供了面向关系数据库具体应用的一种语言,可以方便在的应用程序中利 用s q l 使用数据库系统的能力。 2 2 领域分析方法 领域分析是领域工程过程的基础,也是一个重要的基础过程,因此,论文对 领域分析方法进行重点介绍。领域分析方法是一种为了达到软件重用目的而在一 些相关系统中系统化地寻找公共特性的技术。领域分析过程是一个迭代过程,它 包括四个逻辑过程:标识领域、界定领域、分析问题空间、设计解空间。每个逻 辑过程还可分为相关职责描述和其他活动。领域分析由三个部分组成:上下文分 析、领域建模、体系结构建模【2 训。本文介绍以下三种领域分析方法,并在网络 评审领域分析过程中采用面向特征的领域分析方法对网络评审领域进行分析。 2 2 1 面向特征的领域分析方法 f o d a 方法是在2 0 世纪9 0 年代由美国的软件工程研究所提出的一种全面的 对领域分析过程进行描述的方法,它用于识别特定领域一系列应用系统的显著性 特征【2 引。f o d a 方法学基于两个建模概念:抽象( a b s t r a c t i o n ) 和求精( r e f i n e m e n t ) 。 抽象用于从领域内的具体应用系统创建领域模型,这些通用的领域模型抽象了应 用系统中具有领域代表性的功能需求和设计模式,领域模型的基本特性是通过去 除此应用系统与相同领域的应用系统之间不同的“因子”而得到的i 引i 。而领域 内的具体应用系统可以通过对抽象过程得来的领域模型求精进行丌发。如图2 1 所示。 8 硕士学位论文 绍二二章领域工程 特定领域a特定领域a 应用系统1 应用系统2 一一 新应用系统 应用系统n 图2 - 1f o d a 方法原理图 f o d a 方法强调对领域内软件系统的主要的或个性特征的标识,这些特征是 用户对领域的各个侧面或特性的认识,通过这些用户熟悉的特征来引导领域产品 的生产以及对领域产品的命名。因此这种分析方法能够充分体现用户所希望的满 足应用需求的功能和体系结构。 f o d a 的分析过程被分为3 个阶段【5 1 。 1 语境分析 语境分析的目的是定义一个领域范围,对领域和与领域交互的外在因素( 如 不同的操作环境、不同的数据需求) 联系进行分析。分析的结果是产生文档化的 语境模型。 2 领域建模 在领域分析中,类似系统的公共特征将被提取,适用于该领域所有公共的、 基本的对象、操作也将被标志出来,并且要定义模型来描述它们之间的关系。 一旦领域的范围界定后,领域建模通过3 个步骤对领域中应用系统的公共与 不同的部分进行抽象,进而产生3 种领域模型。这3 个步骤分别是: 特征分析( f e a t u r ea n a l y s i s ) 。在这个过程中,捕获客户对应用系统通用功 能或特征的需求,产生特征模型( f e a t u r e sm o d e l ) 。这是f o d a 分析过程产生的领 域模型中最重要的一个模型。在此模型中,特征可以被定义为是可选择的或是强 制性的。强制性的特征是指系统的基本特征及它们之问的关系,可选择的特征是 指通用特征的具体化【2 6 1 。 知识分析( i n f o r m a t i o na n a l y s i s ) 。在这个过程中,应用系统所涉及的领域知 识和数据需求被定义和分析,产生知识模型( i n f o r m a t i o nm o d e l ) 。知识分析的目 的是用描述领域实体和它们之间的关系来表示领域知识,在下面的操作分析和构 架建模的过程中可以由此提取出系统设计的对象和数据定义【2 7 j 。 操作分析( o p e r a t i o n a la n a l y s i s ) 。在这个过程中,领域的活动特性( 数据流 和系统的控制流、有限状态机模型等) 被描述,产生了操作模型。 3 构架建模 9 硕上学位论文第二章领域工程 这个阶段提供特定领域应用系统的构架模型,体系结构模型是对应用系统的 高层设计。它重点在于确定一致的过程和面向领域的公共模块,并且定义了从领 域模型中描述的系统特征、功能和数据对象到过程和模块的映射。 2 2 2 联接的面向对象领域分析方法 联接的面向对象领域分析方法( j i a w go b j e c t o r i e n t e dd o m a i na n a l y s i s , j o d a ) 是j i a w g ( j o i n ti n t e g r a t e da v i o n i c sw o r k i n gg r o u p ) 的一个工作产品,是以 c o a d y o u r d o n 的面向对象分析( c o a d y o u r d o no b j e c t o r i e n t e da n a l y s i s ,c y o o a ) 技术以及符号体系为基础的领域分析方法。主要思想是:运用修改后的 c o a d y o u r d o n 面向对象分析技术获取领域模型信息,定义领域模型来产生可重用 软件对象( r e u s es o f t w a r eo b j e c t s ,r s o ) ,特别是可重用的需求。然后在领域工程 环境下,利用领域分析过程,在领域模型的基础上定义可重用的软件体系结构, 设计可重用编码。通过领域结构刻画领域所展示的问题、概念、对象、服务、属 性以及这些对象和概念之问的关系。 j o d a 过程由三个阶段所组成:领域准备、领域定义和领域建模【5 】【2 引。 2 2 3 领域分析与设计过程方法 领域分析与设计过程方法( d o m a i na n a l y s i sa n dd e s i g np r o c e s s ,d a d p ) 注重 软件和系统重用过程,并依赖于特定的领域分析和领域设计。它通过各个系统工 程来描述一个问题空间及其约束条件,然后通过反复运用软件工程、硬件工程、 人员工程来寻求问题空间的解。问题空间的这种表示存贮于一个生命周期支持环 境。领域工程定义问题空间和约束条件,专用领域字典,对于一个理想的生产线, 还相应地定义了一个一般解体系结构( g e n e r a l l ys o f t w a r ea r c h i t e c t u r e ,g s a ) ,包 括约束和接口。这种g s a 将成为指定领域这种生产方式的大范围重用的基础。 领域工程还强调领域模型和特定领域软件体系结构( d s s a ) 的分析、设计以及维 护和演进。d a d p 方法还遵循面向对象的方法,使用自顶向下和自底向上的组合 方式来标识最大程度的重用潜力,包括一些公共的( 水平重用) 和特定领域( 垂直重 用) 特征1 5 1 。 领域分析过程环境如图2 2 所示。领域分析过程是收集、组织、分析、和表 示信息的过程,以标识己知领域的一族系统内的重用时机。通过领域分析揭示领 域内的一组相关系统所刻画的问题,并将此问题模型化,同时开发了类属需求。 领域设计过程构造了领域内一个生产线需求的设计版本,包括一般的、特定领域 的解和体系结构。领域设计为特定领域生产线开发了一般解体系结构,这有助于 1 0 硕士学位论文第二章领域t 程 用户对现有问题的解的证实,并可作为类似应用软件进一步开发的自适应框架。 d a d p 方法策略是:标识、获取、组织、抽象和表示一个特定领域内的共性和差 异,便于在一个组织好的领域知识主体内有效地揭示生命周期工作产品的可重用 性。d a d p 方法步骤由标识领域、界定领域、分析领域、设计领域组成【2 9 1 。 2 2 4 分析方法比较 图2 - 2 领域分析过程环境 d a d p 方法正是强调了软件和系统的重用过程,这意味着可重用部件能被多 个应用系统采用。领域分析的实施过程也是通过领域工程来完成的,但它是通过 领域设计过程所构造出来的反映领域内一个生产线需求的设计版本( 包括一般 的、特定领域的解和体系结构) 来完成的,因此d a d p 是一种设计级的方法。 j o d a 方法是基于可重用软件对象的,采用了面向对象的技术,领域分析的 实施过程是通过领域工程来完成的,也即领域实现产生了r s o s ,对软件和系统 重用过程并未强调,因此这是一种实现级的方法。 f o d a 方法从用户了解的领域特征出发,来引导领域分析过程,产生他们所 希望的领域分析产品,如可重用的功能和软件体系结构。由于采用了聚合分解、 一般特殊、参数化等建模技术,因此这种方法能够支持产品构架的开发和重用, 同时对用户新的需求( 如:新功能、新子系统以及现有系统的新作用等) 可作出快 速的反应。 论文将在具体的分析过程中采用f o d a 方法对网络评审领域从其特征角度 对该领域进行分析。 2 3 领域工程与软件复用 使用领域工程对领域内的系统进行分析,有助于实现系统化的软件复用,由 于一般性的识别系统中的可复用信息是非常困难的,而系统化的复用是对特定领 硕上学位论文 第二章领域工程 域内的可复用信息的获取,可以产生具有较高可复用性的构件2 1 。构件是支持软 件复用的核心技术,构件模型和构件组装的研究成为构件技术研究的主要内容之 2 3 1 构件模型 构件是一个功能单元、符合构件模型或规范、允许不同构件开发商开发的构 件进行组装,构件是软件的构成元素,构件具有一定的功能和结构,并符合一定 的标准,可以完成一个或多个特定的服务,构件隐藏了具体的实现,通过接口对 外提供服务【3 0 】。 构件模型是领域构件技术的核心内容,是构件定义和构件性质的具体化。构 件模型除定义了构件的本质属性外,还规定了构件接口的结构以及构件与应用框 架( f r a m e w o r k ) 、构件与构件之间的交互机制。构件模型通常还提供创建和实现 构件的指导原则。一个被构件生产者和使用者所共同接受的构件模型实际上起到 了构件标准化的作用。现有的构件模型一般认为构件由构件接口和构件内容两部 分组成。构件接口就是为成功复用该软件实体而需要提供给外界的所有信息;构 件内容是用于直接复用的软件实体,它可以具有源代码、二进制码、文档、分析 设计模型和脚本等不同的物理形态,并遵从一定的格式标准。 目前比较有代表性的是t r a c z 提出的3 c 模型、r e b o o t ( r e u s eb a s e do n o b j e c t o r i e n t e dt e c h n o l o g y ,基于面向对象技术的复用) 项目中提出的r e b o o t 模型和北京大学提出的青鸟构件模型。这些模型均是学术界提出的指导性模型, 抽象层次比较高,用户可以根据不同的问题域对其进行扩展1 3 。 3 c 模型的命名主要来自该模型描述构件所采用的3 个c 特征,即概念 ( c o n c e p t ) 、内容( c o n t e n t ) 和语境( c o n t e x t ) 。概念用于描述构件的功能。构件的概念 依据它的接口说明以及它所执行操作的语义描述表现出来,使用者可以从概念描 述中了解它的功能;内容用来描述内件怎样完成概念所描述的功能,如算法、结 构等,它是概念的细化描述;语境或者叫上下文,主要用于描述构件与其他构件 的关系,它是构件中最复杂的特征描述f 3 2 1 。r e b o o t 模型是一个基于刻面的分 类模型,它所考虑的刻面包括依赖、抽象、操作及操作对象,是一个被称为是刻 面中项的联合1 3 3 j 。 北京大学青鸟构件模型从三个不同的、相互正交的视角来看待构件,每个具 体的构件都是形态、层次和表示构成的三维空间中的一个点。构件形态被分为类、 类树、框架、设计模式、体系结构5 种:构件层次被分为分析件( 指系统需求规 约和功能规约) 、设计件( 指系统体系结构和设计方案) 、编码件( 由具体程序设计 语言编制的源代码构件) 、测试件( 测试计划和测试案例) 4 个层次;构件的表示与 硕七学位论文第二章领域工程 层次有关,不同层次的构件具有不同的表示媒介和手段,如图形、复合文档、正 文、伪码、编程语言、目标码等。根据上述概念,青鸟构件模型从9 个方面来描 述构件,即概念、操作规约、接口、类型、实现体、构件复合、构件性质、构件 注释、构件语境。青鸟构件模型是一个具有面向对象风格的模型3 4 】。 在产业界,以c o r b a ,c o m d c o m 和j a v a b e a n s e j b 为代表的基于分布式 对象技术的构件实现模型正在向实用化方向快速发展,它们对构件的基本构成及 其体系结构的演化产生着十分重要的影响,从而成为实现级的主流构件模型。 2 3 2 构件组装方法 1 基于框架的组装方法 f a b i ok o n 等在研究基于构件的分布式系统中和构件的依赖关系的基础上, 提出了构件配置框架。这个框架主要考虑新构件的加载条件和运行系统中构件的 动态依赖两种依赖关系,并将其分开来处理。a p b a r r o n s 等为解决b 2 b 在电子 商务中工作流构件的组装,提出了工作流构件框架,针对异构环境下不同工作流 的互操作问题,定义了抽象通信和抽象服务接口的概念,进而构造多工作流构件 集成组装的体系框架。 一种值得关注的构件组装框架是j o h np e n i x 提出的构件自动自适应和集成 的框架r e b o u n d 。由于其核心思想是通过构件规约及应用需求规约的匹配来 选择构件的自适应策略,因而被称为“基于理解的复用”【3 5 】【3 6 1 。 以框架为基础

温馨提示

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

评论

0/150

提交评论