(计算机应用技术专业论文)tsm盆地模拟软件集成系统的设计与实现.pdf_第1页
(计算机应用技术专业论文)tsm盆地模拟软件集成系统的设计与实现.pdf_第2页
(计算机应用技术专业论文)tsm盆地模拟软件集成系统的设计与实现.pdf_第3页
(计算机应用技术专业论文)tsm盆地模拟软件集成系统的设计与实现.pdf_第4页
(计算机应用技术专业论文)tsm盆地模拟软件集成系统的设计与实现.pdf_第5页
已阅读5页,还剩67页未读 继续免费阅读

(计算机应用技术专业论文)tsm盆地模拟软件集成系统的设计与实现.pdf.pdf 免费下载

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

文档简介

t s m 盆地模拟软件集成系统的设计与实现 摘要 摘要 t s m 盆地模拟软件能较好地模拟凹陷地区的油气成藏情况。本文介 绍的集成系统为这套软件的众多模拟程序提供了一个联合运作的平台。 首先给出了课题的内容和意义,并结合课题简单介绍了软件集成方 面的相关内容;然后总结归纳了集成系统的功能需求,明确了集成系统 的设计目标和具体功能;接着分析了盆地模拟的工作流程,在此基础上 给出了通过可视化配置工作流程、自动执行工作流程,来实现盆地模拟 自动化的方案,详细介绍了工作流程的生成、保存和还原,以及根据工 作流程文件生成v b s c r i p t 脚本以及执行脚本的具体实现;最后,就集成 系统中模拟程序的管理和数据格式的转换给出了相应的解决方案。 利用本文介绍的集成系统,可以更好地发挥t s m 盆地模拟软件的作 用,有效提高油气模拟的科研效率。本文对多个相关联的应用程序的集 成和联合自动运作的有效尝试,对于同类需求的应用,当具有借鉴意义。 关键词:集成系统模拟程序工作流程脚本 作者:王亚丽 指导老师:吕强 a b s t r a c tt h ed e s i g na n d i m p l e m e n t a t i o nf o rat s m b a s i nm o d e l i n gs o f t w a r ei n t e g r a t i o ns y s t e m t h e d e s i g n a n d i m p l e m e n t a t i o n f o rat s mb a s i nm o d e l i n g s o f t w a r e i n t e g r a t i o ns y s t e m a b s t r a c t t s mb a s i nm o d e l i n gs o f t w a r ew o r k s v e r yw e l lw h e ns i m u l a t i n gt h eg a s a n do i lr e s e r v o i r f o r m a t i o ni n d e p r e s s i o n a r e a s t h e i n t e g r a t e ds y s t e m m e n t i o n e di n t h i s p a p e rp r o v i d e s a c o l l a b o r a t i n gp l a t f o r m f o rv a r i o u s s i m u l a t i n gp r o g r a m s o f t s m t h i sp a p e rf i r s tb r i n g sf o r w a r dt h ec o n t e n ta n dv a l u eo ft h es u b j e c t ,a n d i n t r o d u c e ss o m ea s s o c i a t e d k n o w l e d g eo fs o f t w a r ei n t e g r a t i o n t h e n t h i s p a p e ra n a l y z e st h ef u n c t i o nr e q u e s to f t h ei n t e g r a t i o ns y s t e m ,d e t e r m i n e st h e d e s i g no b j e c ta n dt h ec o n c r e t ef u n c t i o n s a f t e rt h a tt h ep a p e ra n a l y s e st h e b a s i n m o d e l i n gf l o w , p u t s f o r w a r d st h ei m p l e m e n t a t i o ns c h e m eo fb a s i n m o d e l i n ga u t o m a t i z a t i o nt h r o u g hc o n f i g u r i n g v i s u a lw o r kf l o wa n d e x e c u t m g w o r kf l o wa u t o m a t i c m l y ,i n t r o d u c e si nd e t a i l st h ew h o l e p r o c e s so fg e n e r a t i n g , s a v i n ga n dr e s t o r i n gaw o r k f l o w , g e n e r a t i n ga n de x e c u t i n ga s e c t i o no f s c r i p t f r o mw o r k f l o wf i l et h a ti sb a s e do nt h ew o r k f l o w f i n a l l y , t h i sp a p e r p r o v i d e s as o l u t i o no nb o wt o m a n a g et h es i m u l a t i n gp r o g r a m sa sw e l l a sh o wt o t r a n s f o r mt h ed a t as t r u c t u r ei nt h ei n t e g r a t e ds y s t e m t h e i n t e g r a t e ds y s t e m c a n h e l p al o ti nt h e o p e r a t i o n o ft s m ,b y i n c r e a s i n gt h ee f f i c i e n c yo fg a sa n d o i lm o d e l i n g t h ea t t e m p tf o ri n t e g r a t i o n o fv a r i o u sa s s o c i a t e da p p l i c a t i o n sa n da u t o m a t i o no fc o l l a b o r a t e de x e c u t i o n s h o u l db ea d v i s a b l ef o rt h es a m ek i n d o f r e q u i r e m e n t k e y w o r d s : i n t e g r a t i o ns y s t e m s i m u l a t i o n a p p l i c a t i o n w o r kf l o w s c r i p t w r i t t e n b yw a n g y a l i s u p e r v i s e db y l v q i a n g y64 5 7 5 1 苏州大学学位论文独创性声明及使用授权声明 学位论文独创性声明 本人郑重声明:所提交的学位论文是本人在导师的指导下,独立进 行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含 其他个人或集体已经发表或撰写过的研究成果,也不含为获得苏州大学 或其它教育机构的学位证书而使用过的材料。对本文的研究作出重要贡 献的个人和集体,均已在文中以明确方式标明。本人承担本声明的法律 责任。 研究生签名: 艺礁:蚣日期:五绝幽 学位论文使用授权声明 苏州大学、中国科学技术信息研究所、国家图书馆、清华大学论文 合作部、中国社科院文献信息情报中心有权保留本人所送交学位论文的 复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本 人电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文 外,允许论文被查阅和借阅,可以公布( 包括刊登) 论文的全部或部分 内容。论文的公布( 包括刊登) 授权苏州大学学位办办理。 研究生签名: 昱:弦:豳日期:! k :生丝 们 一 导师签名:纱叼日期:化嘣 t s m 盆地模拟软件集成系统的设计与实现 1 1 课题背景 第一章引言 随着油气勘探理论的发展和计算机应用的深化,计算机软件在油气 勘探开发的各个环节中的作用变得日益重要。我国石油工业领域的计算 机应用和应用软件开发,经过数十年的努力,已有了长足进步。有些应 用领域,已接近国外先进水平。但是,从总体上讲,同国际先进水平相 比,还有3 5 年滞后( 1 ) 。特别是油气勘探开发主体软件,仍然主要依靠 进口。然而石油勘探界所开发或购买的大量软件,一般都有自己的数据 格式、接口方式,通用性较差,且界面风格各异。这一方面使我们每年 要花费近千万美元外汇购买软件,增加了油气勘探的成本,另一方面由 于国内地质条件复杂多样化,引进的软件往往不能满足国内复杂的油、 气田勘探开发的需要。同时,由于软件之间的兼容性差,协作的可能性 小,更是难以进行有效的整合和共享。随着勘探开发与计算机技术日益 紧密结合,这种现状迫切需要改变。 2 0 世纪9 0 年代以来,随着勘探开发中多种学科交叉协作的重要性 日益彰显,油气勘探开发的计算机应用也朝着综合集成方向发展。国内 外大型勘探开发和服务公司纷纷研发综合集成勘探开发软件系统,不再 投入大量资金发展本公司专用的( 所谓i n - h o u s e ) 软件,而转向了使用 成品( 所谓o f f - t h e s h e l f ) 软件,要求软件供应商提供的软件具有互操作 性并能共享数据( i ) 。另外,计算机和通信新技术的发展,特别是网络计 算时代的到来,也加剧了油气勘探工业对新一代集成化的软件系统的需 求。 中国石化某实验地质研究所长期以来致力于苏北某凹陷地区的油 气勘探开发工作。该地区是苏北盆地的一块重要的油气勘探开发基地。 基于该地区所开发的t s m 盆地油气模拟软件已有近2 0 年的发展历史, 形成了从埋藏史、地热史、生烃史、排烃史到运聚史的一系列的模拟软 聊盆地模拟软件集成系统的设计与实现 件。这样一套从理论建模到实例校验,再到动态模拟的软件已经成功模 拟了苏北某凹陷地区的油气成藏情况”,并被证明是符合实际和正确的。 因此,有望在同类地质情况中推广应用。这里所说的t s m 盆地模拟是 指基于t ( 环境) - - s ( 作用) m ( 响应) 工作程式所进行的盆地模 拟。 但是,以今天的计算机技术和硬件运行平台为参照,总的来说,这 套t s m 盆地油气模拟软件较为零散。究其原因,其一,长期以来该研 究所关注的重点在于盆地模拟研究的深入,强调为勘探实际服务,忽视 了软件系统自身的整体性、兼容性和完备性,没有系统化和产品化。t s m 盆地模拟软件的各个功能模块仅作为科研工作的辅助工具供技术人员 使用。其二,在硬件升级的过程中,没能进行相应的软件升级,而且开 发过程中没有考虑到软件的向下兼容性。这套软件开发期间,计算机的 发展经历了从d a u l 6 8 0 0 0 、i b m 4 3 6 1 中型机、p c x t 、p c 3 8 6 到奔腾 系列等多个工作平台,开发平台也经历了从f o r t r a n 、p a s c a l 、c 到v i s u a l 系列多个平台,因而形成了多个平台、多个模块、系统性不 强的局面。 这套t s m 盆地模拟软件操作极为繁琐。目前科研人员使用这套软 件时,必须很清楚地知道各个模块的输入输出情况和相应的文件格式, 需要手动地调用各个模拟程序执行;若已有的输入文件格式不符合程序 的输入文件格式时,还需要自己临时编写程序进行数据格式的转换。这 套软件的数据量非常庞大,模拟流程比较复杂,一套流程运行结束,往 往需要好几天的时间。这期间需要科研人员时刻关注各个模拟程序的运 行状态,在发现一个程序运行结束或者运行异常时,做相应的处理。因 此,工作效率很低,软件的实用性大打折扣。 随着计算机在油气勘探开发中应用领域的不断拓展,人们越来越希 望能够实现t s m 盆地之模拟软件的联合运作,由计算机来管理各个模 拟程序的运行,使得各个模拟程序间能够进行数据交换,实现信息共享、 网络互联、协同工作。基于上述现状和需求,很有必要研究和开发t s m t s h 盆地模拟软件集成系统的设计与实现第一章引言 盆地模拟软件集成系统。 1 2 课题内容 1 2 1 课题内容 本课题涉及的内容主要包括: 1 构建t s m 盆地模拟软件集成平台 建立一个t s m 盆地模拟软件联合运作的平台,该平台包括以下主 要功能: ( 1 ) 提供可视化的工作流程编制手段 ( 2 ) 生成脚本 ( 3 ) 自动运行脚本 ( 4 ) 维护各阶段的模拟程序 2 整理包装已有的t s m 盆地模拟软件 整理t s m 盆地模拟软件的各个模拟程序,分析它们的输入、输出 接口,对某些模拟程序加以完善或重新设计。按照集成平台要求,包装 模拟程序,使其能方便地添加到集成系统中,并与其他软件协同工作。 3 规范数据格式和编制数据格式转化程序 分析t s m 盆地模拟过程中所产生的各种数据,据此规范数据格式。 将多种来源、多种格式、多种属性的大量数据按统一标准进行管理、综 合集成。在此基础上,实现不同的数据格式之间的转换。 4 根据最新理论编制有关t s m 盆地模拟程序 t s m 盆地模拟的某些模拟程序所依据、采用的理论可能已经跟不 上最新的油气理论,需要重新编制这样的模拟程序。另外,如果包装某 个模拟程序的成本太高,也要重新编制。 5 利用网络功能 t s m 盆地模拟软件的模块分布在不同的计算机或工作站上,集成 系统应能充分利用网络功能,使得用户可以透明地访问网络上的程序和 数据。 t s m 盆地模拟软件集成系统的设计与实现 1 2 2 本人所做工作 本课题是在课题组成员的集体共同努力下开展的,本人主要负责系 统分析和总体设计、模拟程序管理和可视化工作流程的管理及执行等工 作,搭建了t s m 盆地模拟软件集成平台,具体内容包括: 1 可视化配置工作流程 实现了可视化编辑界面,使得用户可以在此界面上管理工作流程, 并可对构成工作流程的各个模拟程序设置运行所需的输入、输出参数。 设计和实现了工作流程的存储和还原机制。 2 基于配置的工作流程生成并运行v b s c r i p t 脚本 对工作流程的合法性进行检查。基于合法的工作流程,生成符合 v b s c r i p t 语法的脚本。在脚本里依次调用模拟程序执行。 3 管理集成系统中的模拟程序 提供w i z a r d 向导,完成了集成系统中模拟程序的添加、删除、修 改和替换工作,实现了模拟程序的即插即用。 4 数据管理 参与制定了数据格式规范,提出了用x m l 技术实现各种格式的数 据文件之问的转换。 1 3 课题意义 1 3 1 课题的一般意义 1 使t s m 盆地模拟软件的使用更加便捷 t s m 盆地模拟软件集成系统提供了t s m 盆地模拟软件联合运作的 平台,原来的遗留系统( 1 e g a c ys y s t e m ) 都被整合到集成平台下。系统 提供方便的工作流程配置方法,用户仅通过简单的鼠标操作就能动态配 置工作流程,在设置各模拟程序运行所需的参数后,系统即产生相应的 脚本文件,依次调用各个模拟程序执行,毋须人工干预。若工作流程脚 本运行过程中出错或者运行结束,系统会将相应提示信息通过e m a i l 鸺m 盆地模拟软件集成系统的设计与实现第一章引言 或其它方式通知相关科研人员。 2 提高科研效率,降低成本 t s m 盆地模拟软件集成系统的使用能大大缩短科研工作的周期, 使整个科研工作有序化、自动化,从而提高科研效率。对遗留软件的有 效集成能避免重新开发整套系统的高昂费用。 3 指导勘探,服务科研 虽然盆地油气响应理论研究逐步深入,但原t s m 盆地模拟软件的 某些算法并没有及时进行改进。在t s m 盆地模拟软件集成系统中,我 们对老旧的算法进行了相应的修正或重新设计。集成系统的投入使用将 动态地再现地质史的演化过程,有助于地质科研人员系统地分析油气的 生成、运聚,模拟并计算相应地区的生油量,从而有效地指导勘探。同 时,那些被证明是正确的油气模拟反过来也可以促进科研的发展。 4 具有巨大的经济意义 石油工业在国民经济中占有极其重要的地位,而地下油气资源的查 明,更多、更大油气矿藏的准确定位是石油工业高速发展的必要条件。 t s m 盆地模拟软件集成系统将主要应用于苏北某盆地的油气勘探开发 工作。准确地预测该地区的油气资源,将有效地指导油气勘探开发工作, 减少甚至消灭无效的勘探工作,节约勘探成本,并带来巨大的经济效益。 5 为其他应用系统集成提供参考 对于既有软件系统的集成,是一个有着广泛需求的技术领域,也是 近年来比较热门的研究领域之一。本课题虽然是针对t s m 盆地模拟领 域软件集成系统的研究,其应用范围有一定的局限性,但是我们对于系 统集成方法的研究却具有通用性,对其他领域应用软件的系统集成当具 有借鉴作用。 1 3 2 本人所做工作的意义 在t s m 盆地模拟软件集成系统开发过程中,本人所做的工作对整 个集成系统来说是至关重要的,是整个集成系统的基础和核心。 t s r 盆地模拟软件集成系统的设计与实现 1 提出并实现了可视化配置、自动执行工作流程的方案 针对t s m 盆地模拟工作的流程和模拟软件的现状,提出并实现了 通过可视化配置工作流程、自动执行工作流程,来实现盆地模拟自动化 的方案。实际上,该方案对于解决有着同类需求的应用具有借鉴意义, 所搭建的集成平台稍作修改后即能应用于别的领域。 2 实现了工作流程文件到v b s c r i p t 脚本的转换 集成系统“编译”由用户配置的工作流程,生成v b s c r i p t 脚本, 并执行v b s c r i p t 脚本来自动顺序调用模拟程序执行。这种利用脚本来 自动执行工作流程的方法,有效实现了自动模拟过程,对其他开发者也 具有参考价值。 3 给出了在集成系统中模拟程序即插即用的简单方法 集成系统采用配置文件来记录“注册”到集成系统的模拟程序的信 息,通过读取配置文件的内容来获知模拟程序、进而调用模拟程序。该 方法解决了模拟程序对集成系统的即插即用,但又对集成平台和模拟程 序要求极低。这种管理模拟程序的方法虽然简单,但非常方便、实用。 1 4 本文组织 第二章概述了软件系统集成的意义和必要性,叙述了软件系统集成 的概念,对软件系统集成的内容和特点进行了分析,然后结合课题对软 件系统集成的原则和标准进行了介绍。 第三章分析了t s m 盆地模拟软件集成系统的总体需求,在此基础 上提出了系统的设计目标,确定了系统的主要功能,对系统模块进行u 细分。 第四章介绍了t s m 盆地模拟软件集成系统的应用核心工作流 程管理的实现机制,着重介绍了工作流程的生成、存储和还原方法,就 工作流程的合法性检查和脚本的生成、运行方法做了详细介绍,还给出 了一个脚本生成的实例。 t s m 盆地模拟软件集成系统的设计与实现 第五章对软件集成过程中遇到的相关问题如模拟程序的管理、数据 格式转换给出了解决方案。 最后,对主要工作做了总结,并对集成系统的进一步开发作了展望。 第二章软件集成技术及标准 t s k l 盆地模拟软件集成系统的设计与实现 第二章软件集成技术及标准 2 1 软件集成简述 2 1 1 软件集成概念 系统是由相互联系、相互作用的若干要素构成的具有特定功能的统 一整体,系统要素( 或子系统) 间的关系不是简单的组合或叠加,而是 相互的作用与联系,通过“集成”构成系统。 软件集成是一个新兴的领域,“软件集成”这个概念内涵相当广泛, 迄今还没有一个统一明确的定义。一般认为,软件集成是一种思想、观 念和哲理。它是一种指导系统规则、实施的方法和策略,不仅仅是一种 技术,更含有艺术的成分( 3 ) 。我们这里所说的软件系统集成,是比较狭 义的概念,指一种方法和过程,是将原有应用系统进行“互联”,以达到 系统之间的互操作及数据的融合与共享。我们认为软件集成就是指根据 应用的需要,将硬件平台、网络设备、系统软件、工具软件及相应的应 用软件等组织成能够满足一定功能、具有优良性能价格比的计算机系统 的整个过程及方法。这种系统集成是通过硬件集成、软件集成( 包括网 络集成) 、技术集成、信息集成,实现过程与功能集成来实现的。一般说 来,系统集成实施的具体任务按照每个项目的不同而变化,大致应包括 方案设计、产品优选、网络设计、软件平台配置、应用软件开发,以及 售后培训、咨询等系列子服务,使用户能够得到一体化的解决方案。软 件集成使一个整体的各部分之间能彼此有机地、协调地工作,以发挥整 体效益,达到整体优化之目的。集成绝非是各种应用程序的简单拼接, 而是要通过集成达到1 + 1 2 的效果。 2 1 2 软件集成的必要性 由于计算机领域的发展异常迅速,软件开发平台更新频繁,很多企 t s m 盆地模拟软件集成系统的设计与实现 第二章软件集成技术及标准 业在长期的发展中形成了多个独立的应用程序。这些独立的应用程序对 于处理具体任务中的具体数据是有效的,但由于他们彼此间不是集成的, 信息传送与数据共享就受到极大的限制。这种状态经常导致那些不相容 的或同一平台上运行的应用程序之间数据重复、冗余及数据转换的低效, 而多种文件格式数据的输出、输入及转换的过程也耗时极多。 一个亟需解决的问题就是如何维护和使用好这些软件,尤其是当软 件的用户数目非常庞大时,大量的客户程序需要安装,庞大的系统参数 需要设置,众多的操作使用人员需要培彭i l ,而且更重要的是系统需要不 断的升级和功能扩展,长期维护费用非常高昂,这都势必降低软件的使 用效率,并增加成本。其次,这些应用软件往往都是一个个信息“孤岛”, 软件之间的互操作性和重用性很差,如何集成和共享这些已存在的软件 系统,是企业面临的第二大挑战,也是当今软件界研究的热点之一,然 而国内在这方面进行了研究并取得成功的案例并不多见。 就tsm 盆地模拟软件而言,其开发历时近二十年,其间计算机硬 件飞速发展,软件更新频繁,甚至程序开发理念都有了跳跃式进步。这 套t s m 盆地模拟软件没有也不可能及时地跟随最新技术而更新,就形成 了诸多代沟明显、功能迥异且相互独立的模拟程序。这些模拟程序,既 有基于字符界面的也有基于图形界面的;既有用传统结构化编程语言实 现的也有用最新的面向对象的编程工具实现的;既有自己独立开发的也 有购买的。这些都使得t s m 盆地模拟软件使用不便且难以推广,亟需利 用现有计算机技术,研究t s m 盆地模拟软件集成系统,实现对模拟程序 的有效集成。 2 1 3 软件集成内容和特点 软件集成一般包括计算机硬件平台、网络系统、系统软件、工具软 件以及应用软件的集成、以及围绕这些系统的相应咨询、服务和技术支 持等。 1 软件集成的特点 第二章软件集成技术及标准 t s h 盆地模拟软件集成系统的设计与实现 ( 1 ) 应用综合:系统集成服务的目标是实现应用综合,为用户提供的 解决方案必须周密地实现各种应用的综合化,或称一体化、系统化( 卯。 ( 2 ) 技术综合:为了实现应用综合,在系统集成过程中必须掌握多学 科的技术知识,并且通过技术综合充分体现系统经过“集成”加工的特 点。系统集成必须能够纯熟运用一些基本的计算机技术,并且熟悉当今 流行的计算机技术和软硬件产品和服务( 5 ) 。 2 系统集成技术 系统集成技术是以实现数据的采集、传输、交换、存贮、处理与利 用的集成化、各模块功能一体化、具有统一的底层数据支持为目标的软 件系统互联技术。 进行软件集成的目的在于使实际应用系统加工的对象和产品各 种信息元素实现规范化和体系化,以便于信息采集、存储、处理和利用( 6 ) 。 例如,在t s m 盆地模拟软件集成系统开发时,要着重分析、整理出 完整、满足地质规范的指标体系,定义各种功能模块之间的数据流向等。 为了实现数据之间的转换,还需要建立数据转换规范( 5 ) 。我们将在第五章 介绍t s m 盆地模拟数据规范。 2 1 4 软件集成的目的和原则 软件集成是一项涉及多方面问题的复杂过程,其主要目的是实现统 一平台下软件、系统之间的互操作及数据的融合和共享。因此进行软件 的集成就必须消除应用系统的异构性,及由此产生的系统间共享的复杂 性。异构主要是由以下因素造成的:硬件平台的不一致,操作系统的不 一致,网络协议的不一致和应用格式的不一致等。因此,软件系统的集 成就是要屏蔽这些异构性,包括用户接口、应用通讯、数据共享、系统 管理等,并提供各种类型的服务。 总体而言,集成的目的就是在原来系统的基础上,提供用户一个适 用新需求与应用新技术的更加有效的整体系统,确保系统中各应用子系 统的互操作一致性得到保证。集成的原则就是承继性与创新性相结合, t s r 盆地模拟软件集成系统的设计与实现第二章软件集成技术及标准 既要充分利用原有系统的硬件和软件资源,又要尽可能使用当前的新技 术,从实用角度出发,建立一个整体最优的系统( 7 ) 。 为了适应盆地模拟的复杂性、综合性和易变性,t s m 盆地模拟软件 集成系统的目的是要能够“有限集成,灵活扩展”和“即插即用”。 现代软件系统开发已不再是一个需求分析,结构设计,编码调试的 过程。系统分层开发,通过标准耦合的技术使得系统成为若干“构件” 的集合。这些“构件”既可以从市场上买现成的,也可以是自己独立开 发的,只要它们满足标准协议即可。在这种“集成系统”的思想指导下, t s m 盆地模拟软件集成系统由两部分组成:系统集成平台和应用。系统 集成平台的主要作用是管理应用。前者是指接受应用的注册和启动停止 应用运行符。一旦应用注册,即表明它“插”上了系统,当它能被启动 时,则表明可以“即用”了。在第五章我们对此作说明。应用是具有一 定服务功能的能够独立运行的软件或程序。在t s m 盆地模拟软件集成系 统中,我们构筑了一个重要应用,即盆地模拟过程的自动化。这在第四 章中作介绍。 2 2 软件集成的标准 软件集成框架的目标是开放性。所谓开放性就是指凡是符合标准的 软件都可以集成在框架内,实现对框架的即插即用,同时软件间也可以 进行数据共享和互操作( 扪。开放性的基础是软件的标准化,为了实现软件 集成,必须遵循以下标准: 1 公共数据模型标准:集成系统软件间的数据共享和交换,要求软 件对数据语义有共同的理解,这就需要有公共的数据模型标准,通过公 共数据模型对数据提供统一的描述,不同软件对同一数据的理解不会产 生二义性,这就为数据共享奠定了基础订) 。 2 基于模型的数据存取与交换规范:软件是通过存取函数操作数据 的,如果没有数据存取函数规范,虽然有规范的数据模型,但不同软件 对同一数据操作函数仍然会产生不同理解,这也会为软件间的数据共享 t s m 盆地模拟软件集成系统的设计与实现 带来困难。 3 应用程序互操作规范:应用程序之间的互操作是软件即插即用的 基础,所谓互操作是指应用程序进程动态交换信息。应用程序互操作规 范规定了进程通信的方式、类型和消息结构等,特别是在具体的领域内, 根据领域应用特点,抽象出合适的通信模式。这是领域软件集成平台的 重要保证。 4 软件用户界面规范:制定不同应用软件采用相同的界面规范,可 大大减轻集成后软件应用的困难和繁琐,使不同专业的用户不用培训就 可以使用集成系统。 当然,以上只是最基本的标准,如果考虑到软件开发和平台的需要, 还需要类库、数据交换格式、计算机环境等方面的规范。 在设计t s m 盆地模拟软件集成系统的过程中,我们制定了数据规范, 将系统输入输出数据归为三种格式:c 数据结构、p 数据结构和散点数 据。并对数据存储进行了规划,即按地质史和文件名存取。集成系统规 定所有的模拟程序都必须符合集成要求,对不符合要求的模拟程序必须 先包装后使用。对每个模拟程序来说,系统提供给用户的界面都是相同 的,所不同的只是代表模拟程序的图标而已。 t 跏盆地模拟软件集成系统的设计与实现第三章t s m 盆地模拟软件集成系统总体设计 第三章t s m 盆地模拟软件集成系统总体设计 3 1 需求分析概述 3 1 1 t s m 盆地模拟软件现状 某实验地质研究所从1 9 8 5 年起开始致力于研究开发t s m 盆地模拟 软件,目前整个t s m 盆地模拟软件由4 0 余个独立的模拟程序组成,这 些模拟程序涵盖了对埋藏史、地热史、生烃史、排烃史和运聚史的模拟 和分析处理。其中每一个地质史都包涵若干个模拟程序。这些模拟程序, 有的是必需的,有些是可供选择的。t s m 盆地模拟流程如图3 1 所示, 按照埋藏史、地热史、生烃史、排烃史和运聚史依次顺序进行,前一流 程为后一流程提供数据,数据流向具有不可逆性。 图3 1t s m 盆地模拟流程 这套软件历时甚久,其问计算机的发展异常迅猛,计算机硬件和软 件甚至软件开发技术和理念都有了质的飞跃。软件开发之初,由于没有 预想到这套软件的规模,基本上是按需所编,且受限于当时的程序开发 理念和开发工具,没有进行系统规划。这些主客观的原因使得现有的t s m 盆地模拟软件非常零散、没有系统化和产品化。 日前,使用这套软件相当不方便。由于地质特征的多样化和复杂化, 第三章t s m 盆地模拟软件塑成系统总体设计t s m 盆地模拟软件集成系统的设计与实现 完成同一任务的模拟程序所选用的算法根据地质特征会有所不同,或者 对同一地质特征也可能有不同的模拟算法。这就需要科研人员根据自己 的经验手工启动适合各阶段的模拟程序。其处理过程如下:科研人员选 择需要的模拟程序,设置输入参数,启动模拟程序执行,在一个模拟程 序执行完毕后,再手工启动另一个模拟程序。完整的模拟过程所用到的 模拟程序往往比较多,数据格式比较乱,执行时间也比较长,用户选择 模拟程序时,往往由于模拟程序管理的凌乱和功能描述的不详细等原因 而不知所措。此外,用户需要随时关注模拟程序运行的状态。对于资深 科研人员来说,这套软件的使用已经如此繁琐,新手则更不待言。 3 1 2 需求分析 基于以上现状,有必要向科研人员提供一个有效的软件集成平台, 使得用户能够利用该平台方便快捷地调用各模拟程序。系统将各种模拟 程序集成在同一平台上,使得各软件共享数据并更好地相互协作:提供 动态工作流程管理机制,实现工作流程运行的自动化,从而把用户从繁 琐的工作中解脱出来。 通过与用户的多次沟通,我们分析并得出用户的具体需求如下: 1 对于多个模拟程序的有效集成,使得用户可以在单一软件平台上 完成所有工作。 2 提供对模拟程序的灵活管理,使用户能够方便地添加、替换、修 改或者删除集成系统中已存在的模拟程序。 3 对于多种存储介质、多种数据结构的数据进行有效管理,使得各 个模拟程序间可以共享数据。 4 对模拟程序的输入文件格式进行有效性验证,并能进行不同数据 格式间的转换。 5 能够根据用户需要,可视化地创建工作流程,方便地修改、存储 工作流程,其界面支持“所见即所得”。 t s m 盆地模拟软件集成系统的设计与实现第三章t s m 盆地模拟软件集成系统总体设计 6 能够按照用户创建的工作流程自动调用相关模拟程序和数据文 件,序列化地运行工作流程。 7 能够对工作流的执行情况进行反馈,及时给出提示信息。 8 提供友好的工作界面,方便用户管理模拟程序和数据,快捷准确 地构筑应用。 9 充分利用遗留系统,使得再开发的费用减至最少。 1 0 提供有效的网络管理,使得分布在网络中各台主机上的数据和模 拟程序能够共享,并能实现分布式计算。 3 2 设计目标 综合用户需求,我们设计的t s m 盆地模拟软件集成系统( 以下简称 集成系统) 要集数据平台、软件平台和用户平台诸功能于一身,根据用 户的需求灵活地为用户构筑满足其复杂应用的、开放的分布式协同化集 成系统,实现能提供数据共享、模拟程序问通信和协同工作等服务的综 合开发和运行环境,使在此开放平台集成系统下的模拟程序和数据格式 转换程序能够实现即插即用、高度的数据共享和灵活高效的互操作。该 集成系统应能很好地集成遗留系统,提供方便的接口供模拟程序的添加、 修改和删除,允许用户动态配置工作流程,帮助用户管理工作流程,使 其有序化执行。 t s m 盆地模拟软件集成系统要达到以下具体目标: 1 一体化的集成平台。集成系统应是一个高度集成的软件环境,即 把需要实现的各项功能有机地结合在一起,而不是简单的组合。 2 数据独立性。即数据不再属于某单一的模拟程序,而是公用的、 共享的。将多种来源、多种格式、多种属性的大量数据按照规范化标准 和方式进行管理、综合集成。这是t s m 盆地模拟软件集成系统的显著特 点,这也使得各模拟程序间数据共享的实现成为可能。 3 用户独立性。即用户独立于具体的模拟程序,可以保证用户按照 自己的思路构筑具体应用。如对同组数据,不同用户可以调用不同的 第三章t s m 盆地模拟软件集成系统总体设计t s i d 盆地模拟软件集成系统的设计与实现 模拟程序依据不同的理论,进行模拟,根据模拟结果,再调用相应的处 理程序进行进一步的处理。这种按照自己的思路和需要随心所欲地构筑 应用的过程,是本集成系统所要达到的最终目的。 4 具有良好的互换性和可扩充性。所谓互换性,是指软件集成系统 的某个成分能够被替换,而不必修改相关模拟程序;同样,原有程序更 新后,可继续使用软件集成平台。另外,对于新近开发或可能用到的第 三方模拟程序应能按照集成标准方便地加入到集成平台,供用户使用。 5 盆地模拟的自动化。集成系统允许用户动态配置工作流程,然后 自动执行工作流程。在执行工作流程的过程中不需要用户干预,也不需 要和用户交互信息( 发生错误除外) 。 6 界面友好,操作便捷。系统必须具有良好的界面,保证用户可以 根据需要方便灵活地定制工作流程,轻松简洁地管理工作流程的运行, 有效地处理工作流程运行期间可能出现的各种情况,从而大大提高用户 工作效率。 7 较强的容错能力。任何用户在使用软件的过程中,都难免出错。 这就要求集成系统应能有效地防止用户的错误操作并避免由此而导致的 问题,这也是现代软件设计中的一个重要原则。集成系统还要求在运行 结束或者运行出错时,能及时通知用户。 3 3 系统主要功能 3 3 1 主要功能 结合软件需求分析及设计目标,t s m 盆地模拟软件集成系统的主要 功能是管理模拟程序和数据,在此基础上实现盆地模拟的自动化。 其功能细分如下: 1 实现工作流程的可视化配置 t s m 盆地模拟软件集成系统提供图形化的工作界面供用户配置工作 流程。用户根据自己的需要或经验,只需将系统提供的各阶段的模拟程 t s m 盆地模拟软件集成系统的设计与实现第三章t s m 盆地模拟软件集成系统总体设计 序和数据格式转换程序图标拖动至编辑区适当位置,按模拟顺序排列就 可以动态地配置工作流程。这一切通过鼠标操作即可完成流程的配置。 与字符形式相比,该工作界面更容易向用户表达工作流程的含义,也更 便于用户理解工作流程和使用系统。 2 实现脚本的动态生成及执行 用户在拖动模拟程序图标配置工作流程的同时能够对模拟程序的 出、入口参数进行设置。根据实际盆地模拟流程的约束条件,对工作流 程进行合法性检查,同时生成脚本文件,在必要的时候运行脚本文件, 顺序执行工作流程所涵盖的模拟程序。 3 管理模拟程序,实现模拟程序对集成系统的即插即用 集成系统提供对各阶段模拟程序的管理,包括对模拟程序的添加、 修改、删除和替换等。凡按照标准编制的模拟程序或封装的模拟程序, 特别是在应用数据接口的支撑下,只要向集成系统提供关于该模拟程序 的位置、功能、参数形式等必要的信息,都能被加入开放平台集成系统 的模拟程序库中,并与所有模拟程序互相共享。用户可在定义虚拟应用 时使用它们,由脚本文件启动执行。 4 。实现数据格式的转换 系统原有的数据比较庞大,格式也比较杂乱,需要对数据格式进行 规范。但原模拟程序所用的数据仍然采用原来的格式( 采用规范后的格 式,无疑于重新设计各个模拟程序) ,而集成系统则可以实现各种数据格 式间的转换工作。 5 及时反馈出错信息 脚本在运行的时候难免出错。系统不需要用户自己去查看工作流程 的运行状况,而是在出错的时候通过m a i l 或者短信向用户发送提示信息, 用户在接到通知后再查看并进行相应处理。这样就可以把用户从监控系 统运行状态中解脱出来,从而提高工作效率。 通过以上的功能设计分析,可以看出,本系统的功能主要是从方便 第三章t s m 盆地模拟软件集成系统总体设计t s m 盆地模拟软件集成系统的设计与实现 用户使用和管理系统原有的模拟程序和数据的角度来考虑的,致力于系 统工作流程运行的自动化。 3 3 2 使用集成平台的方法 t s m 盆地模拟软件集成平台充分利用了图形界面所固有的视觉特性 和图形表示,采用直接操纵技术,使用户可以通过鼠标操纵屏幕上可见 对象来定制工作流程,做到“所见即所得”。集成平台的使用方法和b o r l a n d c + + b u i l d e r 的使用方法类似。使用步骤如下: 1 把模拟程序“注册”到集成系统 初次使用集成平台时,集成系统中模拟程序尚不完备( 开发者不可 能把所有的模拟程序都集成到系统中,大量的工作需要用户去做) ,或 在需要添加新模拟程序时,需要用户根据集成平台提供的模拟程序管理 向导把构筑工作流程所需的模拟程序“注册”到集成平台。 2 创建可视化工作流程 把模拟程序“注册”到集成系统后,用户就可构筑集成平台提供的 重要应用一可视化工作流程。集成平台提供类似于b o r l a n d c + + b u i l d e r 的界面实现此功能。系统启动的时候将“注册”到集成系统的模拟程序 的图标( 图标也由用户在“注册”模拟程序的时候提供) 显示于模拟程 序工具箱,用户通过拖动图标到编辑区适当位置,并通过属性管理器对 输入输出参数进行设置,即可形成可视化工作流程。集成平台提供的模 拟程序图标相当于b c b 提供的各种形式的控件,属性管理器相当于b c b 的o b j e c ti n s p e c t o r ,工作流程编辑区则相当于b c b 的f o m a 。 3 保存工作流程,生成脚本 集成平台在菜单项里提供“保存”、“保存并生成脚本”两个命令 来保存工作流程。相应的工具栏也有此命令。 4 执行脚本 执行菜单项( 或工具栏) 提供的“运行”命令,执行脚本。此命令 相当于b c b 的“r u n ”。若当前打开的工作流程已有相应的生成脚本, t s m 盆地模拟软件集成系统的设计与实现第三章t s m 盆地模拟软件集成系统总体设计 则直接运行相应的脚本;若尚未生成脚本,则先生成脚本,再运行。运 行脚本也就是可视化工作流程的自动化执行。 5 分析模拟结果 科研人员对模拟结果进行验证分析。若对结果满意,则结束模拟; 若对结果不满意,则可重新配置工作流程,再行模拟。 至此,也就实现了盆地油气的自动化模拟。 3 4 集成系统主要模块划分 t s m 盆地模拟软件集成系统为用户提供了一个动态构建、自动化执 行可视化工作流程的环境。该系统实现对t s m 盆地模拟软件体系包含的 所有模拟程序的管理,并把这些不同的成分有机地纳入集成系统里,供 用户方便、灵活、高效地使用。该系统还提供对数据的管理,实现不同 数据格式间的转换。集成系统从上到下分别为用户定义层、模拟程序管 理层和数据平台层三个层次: 用户定义层的功能是在数据管理和模拟程序管理的基础上为用户提 供一个构建和执行可视化工作流程的图形用户界面,它包括可视化工作 流程的配置、脚本的生成和工作流程的自动化执行三个部分。 模拟程序管理层实现原t s m 盆地模拟软件的各个模拟程序或新近开 发的模拟程序对集成系统的无缝集成。模拟程序只要符合规范,并且提 供其存放位置、输入输出参数等必需信息,集成系统都能把该模拟程序 “注册”至集成系统中。同时,模拟程序管理层还实现对集成系统中模 拟程序的修改、替换和删除等功能。 数据平台层为t s m 盆地模拟系统的整个模拟流程提供强大的数据管 理和数据标准化服务,包括对各类数据的按类型存取,对不同数据格式 之间的转换等。 根据以上描述,我们把集成系统划分为四个主要模块:工作流程管 理模块、脚本生成及运行模块、模拟程序管理模块和数据管理模块。 工作流程管理模块提供可视化界面供用户配置工作流程,实现工作 第三章t s m 盆地模拟软件集成系统总体设计i s m 盆地模拟软件集成系统的设计与实现 流程中模拟程序的添加、移动和删除。该模块主要包括四个方面:集成 系统中所有模拟程序的动态加载和显示,构成工作流程的各模拟程序图 标的绘制,构成工作流程的各模拟程序正确运行所需的参数设置,工作 流程的保存和还原等。 脚本生成及运行模块主要负责按照工作流程的逻辑顺序生成符合语 法的可执行脚本,并自动运行脚本,及时将运行过程中的提示信息反馈 给用户,从而实现盆地模拟的自动化。该模块的功能还包括工作流程的 合法性检查,模拟程序参数的合法性检查等。 模拟程序管理模块实现模拟程序对集成系统的添加、修改和删除及 替换工作。该模块提供w i z a r d 向导引导用户完成对模拟程序的管理,并 实现对集成系统中已经“注册”的模拟程序的信息存储,以便工作流程 管理模块动态加载这些模拟程序信息。 数据管理模块,实现对数据文件的分类存储,并根据要求实现各种 数据格式间的转换。 3 5 系统开发及运行平台 3 5 1 系统开发平台 操作系统:m i c r o s o f tw i n d o w s2 0 0 0s e r v e r 编程语言:v i s u a lc + 十n e t ,v b s c r i p t 3 5 2 系统运行平台 操作系统:m i c r o s o f tw i n d o w s9 5 9 8 n tw o r k s t a t i o n 2 0 0 0 运行环境:必须安装i i s 的s m t p 服务 型盆地模她件集成系统的设计与实现第四章工作流程管理机制的设计与实现 第四章工作流程管理机制的设计和实现 t s m 盆地模拟软件集成系统的工作流程管理是构筑于集成平台之上 的具体应用。它的设计初衷是把用户从调用、监控模拟程序运行的工作 中解脱出来,实现盆地模拟的自动化

温馨提示

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

评论

0/150

提交评论