(计算机软件与理论专业论文)柔性软件应用平台技术在erp系统中的应用.pdf_第1页
(计算机软件与理论专业论文)柔性软件应用平台技术在erp系统中的应用.pdf_第2页
(计算机软件与理论专业论文)柔性软件应用平台技术在erp系统中的应用.pdf_第3页
(计算机软件与理论专业论文)柔性软件应用平台技术在erp系统中的应用.pdf_第4页
(计算机软件与理论专业论文)柔性软件应用平台技术在erp系统中的应用.pdf_第5页
已阅读5页,还剩65页未读 继续免费阅读

(计算机软件与理论专业论文)柔性软件应用平台技术在erp系统中的应用.pdf.pdf 免费下载

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

文档简介

柔性软件应用平台技术在e r p 系统中的应用 摘要 随着企业信息化技术的不断推广,越来越多的企业选择了e r p 系统作为提升竞争力、进行管理创新的平台。然而到目前为止,e r p 系统实施的成功率一直较低,其中一个主要原因是e r p 软件缺乏柔 性,无法适应不同企业的系统需求,不能适应企业管理理论与软件技 术的不断发展。 柔性e r p 软件,具有灵活性、适应性、可扩展性、开放性和易 用性等特点,能够满足用户不断变化的需求,促进e r p 系统快速高 效的开发与实施,在一定程度上解决e r p 的实施难题。因此,柔性 e r p 软件的开发有利于e r p 系统的进一步推广。 在企业的经营管理中,存在着大量的各类单据与报表,它们是企 业经营数据的最主要载体,是企业各类经营过程的基础和进行企业管 理的依据。本文针对企业管理的上述特点,提出了一种基于模板与流 程管理的柔性应用软件平台,它以单据为核心,提供了具有柔性的单 据开发方法和基于单据的业务流程配置方法,可以为企业管理中的各 种高层应用提供灵活的业务数据与相关流程的管理服务。本文结合用 友软件公司的e r p - n c 产品,探讨了柔性应用软件平台在e r p 系统 中的应用、以及它为e r p 系统实施所提供的柔性支持。 关键词柔性软件,应用平台,e r p ,流程管理 t e c h n o l o g yo ff l e x i b l es o f t 後r e a p p l i c a t i o np l a t f o r ma n di t s a p p l i c a t i o nt oe r ps y s t e m a b s t r a c t w i t ht h es p r e a do f t e c h n o l o g yo fe n t e r p r i s ei n f o r m a t i z a t i o n ,m o r e a n dm o r e c o r p o r a t i o n sr e g a r d e r ps y s t e ma st h e w a y t or a i s e c o m p e t i t i o na n dt o i n n o v a t em a n a g e m e n t m i l e t h es u c c e s sr a t eo f e r ps y s t e mh a sr e m a i n e dal o w1 e v e lt i l l t o d a y o n eo ft h em a i n r e a s o n si st h a tt h ee r ps o f t w a r eh a sal a c ko ff l e x i b i l i t i e s a n di sn o t a b l et os a t i s f yt h ed i f f e r e n tu s e r s r e q u i r e m e n t sa n dt h ec o n t i n u o u s d e v e l o p m e n to f t h em a n a g e m e n tt h e o r i e sa n ds o f t w a r et e c h n o l o g i e s t h ef l e x i b l ee r p s o f t w a r e 。u s u a l l y i s f l e x i b l e ,a d a p t a b l e , e x p a n s i b l e o p e na n dh a saf r i e n d l yu s e ri n t e r f a c e i tc a ns a r i s f yt h e u s e r s c h a n g e f u lr e q u i r e m e n t s , a n de n h a n c et h e e f f i c i e n c y o f d e v e l o p i n ga n di m p l e m e n t i n ge r ps y s t e m i no n ew o r d i tr e s o l v et h e e r pi m p l e m e n tp r o b l e ms o m ed e g r e e s s o t od e v e l o pf l e x i b l ee r p s o f t w a r ew i l lp r o m o t et h es p r e a do ft h ea p p l i c a t i o no fe r p s y s t e m t h e r ei sa v a r i e t y o fb i l l sa n dr e p o r tf o r m si nt h eb u s i n e s s m a n a g e m e n t n e s eb i l l sa n df o r m sa r em a i nc a r r i e r so fb u s i n e s sd a t a a n da r e t h eb a s i so fv a r i o u sb u s i n e s sa c f i v i t i e sa n dm a n a g e m e n t a c c o r d i n g t ot h e s e f a c t s ,w eb r i n g f o r w a r daf l e x i b l es o f t w a r e a p p l i c a t i o np l a t f o r m i nt h i sa r t i c l e ,w h i c hi sb a s e do nb i l l sa n db u s i n e s s f l o wc o n f i g u r a t i o n t h ep l a t f o r mc a n p r o v i d ev a r i o u sb u s i n e s sd a t aa n d f l e x i b l e m a n a g e m e n t o fb u s i n e s sf l o wf o ri t s u p p e ra p p l i c a t i o n c o m p o n e n t s t h i sa r t i c l ea l s od i s c u s s e st h ep l a t f o r m sa p p l i c a t i o n t ot h e e r p n c w h i c hi sam a i ne r ps o f t w a r ep r o d u c to f b e i j i n gu f s o f t c o l t d 。a n di t sf l e x i b l es e r v i c e sf o re r p i r r r o l e m e n t 。 k e yw o r d sf l e x i b l e s o f t w a r e ,a p p l i c a t i o np l a t f o r m ,e r p , f l o w m a n a g e m e n t 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列 的内容以外,论文中不包含其他人已经发表或撰写过的研究成果,也 不包含为获得北京邮电大学或其他教育机构的学位或证书而使用过 的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中 作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:日期: 学位论文作者完全了解北京邮电大学有关保留和使用学位论文 的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属北 京邮电大学。学校有权保留并向国家有关部门或机构送交论文的复印 件和磁盘,允许学位论文被查阅和借阅;学校可以公布学位论文的全 部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编 学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权 书。非保密论文注释:本学位论文不属于保密范围,适用本授权书。 本人签名:日期: 导师签名: 毒叶 日期 第1 章e r p 的实施难题 1 1 e r p 概述 第1 章e r p 的实旅难题 2 0 世纪9 0 年代,美国加特纳咨询公司( g a r t n e rg r o u pi n c ) 针对经济全球化的 趋势以及信息技术的发展,提出了企业资源计划( e n t e r p r i s er e s o u r c ep l a n n i n g , 简称e r p ) 的理念2 1 。e r p 是在“制造资源计划”( m a n u f a c t u r i n gr e s o a r c e p l a r a f i n g ,简称m r p i i ) 的基础上发展面来的,它以市场和客户需求为导向,实 现信息流、物流、资金流、价值流的有机集成,以计划与控制为主线,以网络和 信息技术为平台,集客户、市场、销售、采购、计划、生产、财务、质量、服务、 信息集成等功能于一体,实现供应链管理s c m ( s u p p l y c h a i nm a n a g e m e n t ) ,为 企业决策层及员工提供决策运行手段的管理平分3 】【”。 e r p 作为现代企业管理思想与先进管理工具的集成,体现了对整个供应链资 源进行管理的思想:它体现精益生产( l e a np r o d u c t i o n ) 、同步工程( s i m u l t a n e o u s e n g i n e e r i n g ) 和敏捷制造( a g i l em a n u f a c t u r i n g ) 的思想;体现事先计划与事中 控制的思想p j 。 e r p 系统推动了企业管理思想和方法的改革,促进了企业业务流程的重组 ( b p r ,b u s i n e s sp r o g r a m m i n gr e e n g i n e e r i n g ) 、组织结构与管理过程的整合,使 企业决策更加科学化。 总之,e r p 是一种融合了现代企业管理思想、先进管理方法和现代信息处理 技术的管理系统 6 1 ,能够有效改善企业的运作状况。提高经济效益,增强企业 竞争力。 1 2e r p 实施难题 1 2 1e r p 实施的败因分析 虽然成功的e r p 系统有着改善企业的运营状况、提高企业竞争力等诸多裨 益,然而e r p 软件实施的成功率却一直徘徊在较低水平。据中国企业资源管理 网站的一项调查,在所有的e r p 系统应用中,近期按预算成功实现系统集成的 只占1 0 2 0 ;没有实现系统集成或实现部分集成的只有3 0 4 0 ;而实施失 败的却占了5 0 。 e r p 系统实施是一项高风险、高投入的项目,成功与否受到诸多因素的影响, 归纳起来主要有以下几点: 北京邮电大学工学硕士学位论文 1 领导的重视和参与。实施e r p 实质上是管理模式的变革,必然涉及到“更 新观念和改革管理”。e r p 实施涉及到企业战略、组织结构、人力资源、 业务流程等方方面面,如果没有企业高层领导的重视和参与,e r p 实施 必须会遇到极大阻力。 2 企业是否摈弃落后的管理理念。e r p 是在西方工业化国家企业管理水平 上产生的系统,它的实施需要特定的管理及技术环境。在我国当酊的管 理环境下,系统的实施有赖于企业运作体系的重建,它涉及到管理权限 再分配等敏感问题。如果不摈弃落后的管理思想,改善企业自身管理状 况,e r p 的实旌也不可能取得成功【7 1 。 3 有没有成功实现业务流程重组( b p r ) 。e r p 系统实施与企业业务流程 重组是密切相关的。信息技术的发展加快了信息传递速度和实时性,扩 大了业务的覆盖面和信息交换量。这必然会带来企业业务流程、信息流 程和组织机构的改革。在流程改组中,会涉及到部门职能的重新划分、 岗位职责的调整等复杂因素,如果企业不能妥当处理这些问题,将会给 企业带来不稳定因素,导致e r p 项目实施的失败【8 】。 另外,国内企业实施e r p 失败还有诸如入才缺乏、软件产品质量不高以及 软件供应商的服务体系不完善等原因。 1 2 2e r p 软件系统对实施的影响 上节就e r p 软件实施难题的原因作了简要的分析。本节则专注于从e r p 软 件系统的若干特性出发,来分析e r p 的实施面临的困难。 1 e r p 软件的灵活性:e r p 软件是为企业定制的软件系统,不同行业、不 同特点的企业,对e r p 系统的需求也不尽相同;另外,由于企业实施 e r p 的目标不同,以及预算、工期等方面的原因,企业对e r p 模块的 购买也会各有差异。因此e r p 软件应具有很大的灵活性,一方面能够最 大限度的实现不同企业的共同需求,减少实施过程中针对企业自身特点 进行的个性化开发的工作量;另一方面软件的各模块可以灵活组合,满 足企业不同层次的需求,以增加实施工作的灵活性,并提高整个系统的 稳定性。 2 e r p 软件的适应性:如前所述,在e r p 系统实施过程中,针对企业自 身特点进行个性化开发的工作是必不可少的。这是一个软件商与企业相 互磨合的过程,也是一个含有诸多不确定因素的过程。一方面随着软件 商对企业特点认识的加深,会对软件产品进行相应调整:另一方面,随 着企业对e r p 系统整体认识的提高,也会不断提出新的需求:在这一时 期进行的代码开发工作,需要投入大量人力、物力、精力,并可能会造 第l 章e r p 的实施难题 成工期的延误;而这些代码在满足企业个性化需求的同时,也有可能破 坏e r p 软件系统的整体性和稳定性。因此e r p 软件系统应当提供二次 开发工具以增强自身适应性,使实旋人员不需编写代码,而通过二次开 发工具就能完成大部分企业个性化开发的任务,为e r p 的实施在资金、 软件质量和进度方面提供保障。 3 e r p 软件的可扩展性:e r p 系统作为集成的企业管理平台,必然随着企 业管理理论与信息技术的发展而不断发展。e r p 软件系统在应用需求与 信息技术进步的双重驱动下,也在不断地增加和扩展新的功能,如产品 数据管理( p r o d u c td a t am a n a g e m e n t ,p d m ) 、电子数据交换( e l e c t r o n i c d a t ai n t e r c h a n g e ,e d i ) 集成、工作流管理( w o r k f l o wm a n a g e m e n t ) 、 数据仓库( d a t aw a r e h o u s e ,d w ) 、联机分析处理( o n l i n ea n a l y t i c a l p r o c e s s i n g ,o l a p ) 等。因此e r p 软件应具有扩展性,为今后的扩展与 升级留有余地。 4 e r p 软件的开放性:在e r p 实施过程中,经常会遇到e r p 软件与第三 方软件的集成问题。企业在实施e r p 前可能已经建立起一些信息化系 统,企业可能会要求e r p 系统能与现存系统共同工作;另外,一些企业 也可能选择从不同软件商购买不同的e r p 软件模块进行集成;还有,随 着e r p 系统功能的不断扩展,e r p 软件商无法自主开发所有的功能模 块,因此需要将e r p 软件与专业应用开发商的成熟产品进行集成。这些 都要求e r p 软件有开放的架构,能方便地与第三方软件集成。 5 e r p 软件的易用性:在e r p 实施过程中,常常会由于e r p 软件不易使 用、操作方法难以掌握,而使企业员工对e r p 系统产生抵触情绪,甚至 影响到整个系统的顺利实施。因此,e r p 软件应注重操作流程与用户界 面设计,最好能提供流程与界面的定制功能。 1 3 柔性e r p 软件的提出 正如上一节中讨论的那样,e r p 软件自身的一些不足在一定程度上阻碍了 e r p 系统的顺利实施,造成了e r p 的实施难题。在这里,我们把软件系统的灵 活性、适应性、可扩展性、开放性、易用性等特点统称为软件的“柔性”,那么 如果我们能够设计出具有较大柔性的e r p 软件,就能够满足用户不断变化的需 求,提高e r p 系统开发与实施的效率,提高e r p 系统实施的成功率,从而在一 定程度上解决e k p 的实施难题,并且有利于e r p 系统的进一步推广。 2 0 0 3 年l o 月,我参加了用友软件公司的e r p 软件产品e r p n c2 3 版 北京邮电人学工学硕士学位论文 的开发工作。由于在企业的经营管理中,存在着大量的各类单据与报表,这些单 据与报表是企业经营数据的最主要载体,是企业各类经营过程的基础和进行企业 管理的依据。因此,在e r p n c2 3 版的设计过程中,我们针对企业管理的上述 特点,提出了一种基于模板与流程管理的柔性应用软件平台。它以单据为核心, 提供了具有柔性的单据开发方法与基于单据的业务流程配置方法可以为企业管 理中的各种高层应用提供灵活的业务数据与相关流程的管理服务。我参与了单据 模板的设计开发工作,并参与了部分流程管理系统的设计工作。 本文将结合e i 冲- n c2 3 版的开发过程与实际应用,探讨柔性应用软件平台 的相关技术,以及它在e r p 系统中的应用和对实施所提供的柔性支持。 1 4 本文的结构安排 本文的内容安排如下:第一章通过探讨e r p 系统的实施难题、e r p 软件系 统对实施的影响,提出了柔性e r p 软件的思想,以及一种基于模板与流程管理 的柔性软件应用平台:第二章概述了柔性软件的概念、特点、意义,以及柔性软 件开发过程中涉及到的各种相关技术:第三章简要介绍了用友e r p - n c 的框架结 构,它是柔性软件应用平台的运行环境和应用环境;第四章给出了单据模板的设 计方案,以及它的实现方法;第五章讨论了流程管理系统的概念、模型,以及主 要的设计与实现方法。第六章针对柔性应用软件平台在e r p - n c 中的应用,讨论 了柔性应用软件平台对e r p 系统提供的柔性支持;第七章总结了目前工作的不 足之处,并提出了对未来工作的期望。 第2 章柔性软件的开发技术 第2 章柔性软件的开发技术 2 1 柔性软件概述 2 1 1 软件危机与柔性软件的提出 “软件危机”的概念最早是在1 9 6 8 年的n a t o 会议中提出的,它主要表现 在以下两方面: 1 对软件的需求远远超出现有的生产能力。 2 人们依赖于脆弱的软件,目前的软件不可靠、缺乏安全性、性能下降、 出错、难以升级,据统计7 3 的软件项目超支、被延迟、取消或失败【9 】。 从软件危机被提出以来。人们一直在寻找解决它的方法,如结构化的程序设 计、面向对象的开发,c m m ,u m l 等等。直到今天,软件的发展仍面临以下问 题: 1 软件的适用性和可用性问题:即软件的功能要满足用户的需求。特别是 随着经济的发展与社会的多元化,用户需求也在不断变化并趋于多样 化。 2 软件的稳定性问题:软件系统开发完成后必然需要不断的维护。在软件 维护工作中近7 0 属于扩充性维护,每次这样的修改都有可能降低系统 的稳定性。 针对上述问题,有人提出柔性软件系统的概念,即软件系统能满足某领域内 不同用户的不同需求,并且对用户需求的变化有一定的适应性,在原有系统基础 上不做修改或稍做修改即可满足需求,减少重复性开发和资源的浪费 1 。 2 1 2 柔性软件的概念及柔性的表现形式 1 9 8 0 年以来,柔性一词频频出现于管理学、柔性制造等领域的文献中。1 9 9 0 年又开始出现在软件领域。但至今仍然没有一个对“柔性”或“柔性软件”的严 格的、被普遍接受的定义。 造成软件开发的诸多问题的最主要原因是软件无法满足用户需求变化和多 样性的要求。因此,我们把软件适应变化的能力称为“软件的柔性”。柔性软件 系统( f l e x i b l es o f t w a r es y s t e m ) 则是指在一定范围内能够满足和适应用户不断 变化的需求的应用软件系统。 柔性软件系统的“柔性”分为两个层次: 1 面向普通用户的柔性;当用户需求发生变化时,原有软件系统不必由开 发人员修改,用户可以通过软件提供的友好界面,对软件的功能自行进 北京邮电大学工学硕士学位论文 行动态的配置或调整,调整后的软件不需要进行编译即可使用。 2 。 面向开发人员的柔性:当开发一个新的应用对,不必从头开始设计,进 行大量的代码编写,而是充分利用已有的可重用资源,调整、重新组装 或稍加修改已有资源即可组成新的系统。 柔性软件系统的柔性分别从阱下几个方面加以体现: 1 环境柔性:当软件的运行环境发生变化时软件具有适应这种变化的能 力。 2 数据柔性:当软件功能发生变化时,用户可以方便地维护数据及数据结 构的变化。如系统允许数据结构、数据类型、数据范围的某种变化等。 3 表现柔性:软件系统可以用不同的表示形式展现相同的数据信息,以满 足用户的个性化需求; 4 流程柔性:软件系统允许用户通过多种途径完成相同的任务,同时允许 用户调整业务处理流程和处理方法。 5 操作柔性:软件系统的操作界面、操作步骤与方法可以根据用户的需要 进行调整,以满足不同操作人员的需要。 上述各方面的柔性并不是孤立存在的,它们是相互影响、相互锚约的。例如, 流程的变化可能导致数据结构的变化,而数据结构的变化又可能导致表示界面的 相应改变。 2 1 3 柔性软件的意义 柔性软件具有以下意义: 1 缓解软件危机:柔性软件虽然不能从根本上解决软件危机,但一方面, 柔性软件能适应环境和用户需求的变化,缓解用户需求对软件的压力: 另一方面,柔性软件能够大幅提高软件的利用率和软件的开发效率。因 此,柔性软件系统能在一定程度上缓解软件危机。 2 增强软件的时效性:柔性软件系统能够适应环境和用户需求的变化,降 低了因需求变化而导致的系统重新开发的可能性;同时,柔性软件具有 面向开发人员的柔性,能够提高软件系统开发和修改的效率,以最短的 时间为用户提供满足需求的软件产品。 3 有利于软件的维护:传统软件系统维护非常困难,其维护量通常随程序 量的增长而呈几何增长。柔性软件系统由于具有适应性。可以大大减少 不必要的修改工作;同时其所具有的结构与特点也能够有效防止传统软 件修改中牵一发而动全身的缺陷,有利于减少维护工作量,也有利于提 高软件质量【1 1 1 。 第2 章柔性软件的开发技术 2 2 柔性软件的体系结构 软件体系结构的概念最早是由p e r r y 和w o l f 于1 9 9 2 年提出的。p e r r y 和w o l f 将软件体系结构的元素分为处理元素、数据元素和连接元素,把软件体系结构定 义为体系结构元素的集合 1 2 ;g a r l a n 和s h a w 【1 3 】,b a s s 、c l e m e n t s 和k a z m a n1 1 4 等人分别提出了对软件体系结构各自的定义。 软件体系结构的核心内容是对软件系统结构的描述,而不是这种结构的实 现。它在较高层次上确定了构成系统的部件、部件的规模与功能、部件的组织、 部件间的互操作关系、全局控制结构等。 软件体系结构可以借助不同的视图加以描述,k r u c h t e n 在1 9 9 5 年提出了软 件体系结构的“4 + 1 ”视图模型,分别从逻辑视图、过程视图、物理视图、开发 视图和场景视图来描述软件体系结构。“4 + 1 ”模型如图2 1 所示【l “。 图2 - 1k r u c h t c n 的软件体系结构视图模型 为了使柔性软件能够适应系统环境和功能变化的要求,满足用户对软件适应 性、可扩展性、可重用性、互操作性、易用性的需求,应当从软件体系结构的角 度考虑柔性软件的结构设计,在体系结构的级别上提供对软件柔性的支持。本章 下面的部分将在软件体系结构的层次上,从体系结构的风格、技术标准、开发过 程等不同角度,对柔性软件开发的一般特性加以分析和讨论。 2 2 1 层次化的体系结构风格 柔性软件具有面向变化的特征,而层次化的体系结构具有简单灵活,支持重 用,易于扩展与维护等优点,因此柔性软件适合于采用分层的体系结构。 软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式,它 反映了领域中众多系统所共有的结构和语义特性。层次化的体系结构将软件系统 按一定规则和级别分组,并按照某种逻辑关系将组排成若干层,以分层的形式来 北京邮电大学丁学硕十学位论文 组织系统并确定层内及层间的联系方式。 图2 2 分层的体系结构参考模型 狭义的层次体系结构中,各层问只能单向依赖,即上层软件基于下层软件之 上,上下层之间不能构成循环。而在更广义的分层结构中,允许横向与纵向的分 层。图2 - 2 给出了一个分层的体系结构参考模型,其中垂直分层的语义为应用的 特定性,即层次越高的部件,其特定性就越强,层次越低的部件,其通用性就越 大;而水平方向的分层则代表了可应用领域的范围,是所有应用领域的一个子集 还是某一个领域。双向分层的一个典型例子是m m 的j a v a 应用开发平台s a n f r a n c i s c o ,它也是m 电子商务应用框架的核心部分,其分层结构如图2 - 3 所示 1 1 6 。 图2 - 3m ms a nf r a n c i s c o 平台体系结构分层图 第2 章柔性软件的开发技术 分层体系结构具有以下优点: 1 降低了系统的复杂性:分层体系结构支持基于抽象程度递增的系统设 计,使设计者可以把一个复杂系统按递增的步骤进行分解。 2 保证了系统的正确性:层次的划分大大降低了系统内不同部件间的耦合 程度,使错误被局限于其存在的层次内。 3 便于系统的扩展与维护:每一层的改变一般只涉及与它相邻的两层,从 而减小了扩展与维护的工作量。 4 支持重用:只要提供服务的接口定义不变,同一层的不同实现可以替换 使用。这样,就可以定义一组标准的接口,而在不同场合选择各种不同 的实现方法。 2 2 2 基于复用的开发 柔性软件的主要目标之一就是提高软件产品的复用率,以最小的代价满足用 户的变化需求。基于复用的软件开发技术,能够提高柔性软件产品的生产率和质 量,使软件产品具有柔性。基于复用是柔性软件开发的主要技术基础。 软件复用( s o f t w a r er e u s e ) 是一种由预先构造好的、为复用目的而设计的软件 构件来建立或者组装软件系统的过程。它的基本思想非常简单,即放弃原始的、 一切从头开始的软件开发方式,而利用公共的可利用的构件来组装新的系统。软 件复用可分为代码复用( 如源代码、目标代码、类库、构件等) 、设计复用( 如 结构、设计模式、框架等) 和过程复用( 如规则说明、文档等) 。 基于复用的软件开发对软件开发过程提出了如下要求: 1 复用必须被看作是一种长期的策略,管理者应对它负责。 2 复用的实现必须跨越组织间的界限,扩展到不同的项目中。 3 复用必须得到组织结构的支持,该组织结构将系统开发人员的角色和责 任分为可复用构件建立者和系统组装者。 基于复用的软件开发具有以下特点: 1 多系统视角:也就是说将视野从一个单独的系统或者项目的需求,拓宽 到考虑现在和将来的其他系统,或者系统实现所共享的公共需求上。 2 回顾过去:通过遗留系统部分或全部的复用对其进行扩展;预期将来, 扩展战略计划以定义基于优先复用业务的机会。 3 将自顶向下与自底向上的开发方法结合起来:使自顶向下的问题分析和 自底向上的对现有系统的综合交织在一起。 4 利用一组系统间的共同点和差异之处,来识别公共的和可复用的构件。 基于复用的软件开发可以从两个不同视角来看待复用,如图2 - 4 所示: 1 应用者复用( c o n s u m e rr e u s e ) :使用可复用构件去建立新的软件系统的 北京邮电大学工学硕士学位论文 活动。 2 生产者复用( p r o d u c e rr e u s e ) :建立、获取或者重新设计可利用构件的 活动。 图2 - 4 复用驱动的软件过程看待应用者复用和生产者复用的方式 应用者复用要求把复用的观念渗透于开发过程中。制定项目复用规划、检索 可利用的应用包并进行评估、评估实施复用效益和成本、尽可能地通过可复用构 件生成项目交付;生产者复用的主要任务是建立新的可复用构件、建立复用库和 复用目录、定义复用库检索模式、定义复用标准和准则、建立高质量高回报的可 复用构件。 2 2 3 基于构件的开发 基于构件的开发( c o m p o n e n t b a s e dd e v e l o p m e n t ,简称c b d ) 是一种软件 开发方法,它是在一定构件模型的支持下,复用构件库中的一个或多个软件构件, 通过组合手段高效率、高质量地构造应用软件系统的过程。由于以分布式对象为 基础的构件实现技术日趋成熟,c b d 已经成为现今软件复用实践的研究热点, 被认为是最具潜力的软件工程发展方向之一。 下面是构件的一个定义:构件是一个独立发布的功能部分,可以通过它的接 口访问它的服务。构件包含以下几个要素:规格说明、一个或多个实现、构件标 准、包装方法、部署方法。 基于构件的开发方法的基本目的是以组装方式进行应用程序开发,它具有以 第2 章柔性软件的开发技术 下特点: 1 即插即用:构件可以方便地集成于框架中,不用修改代码,也不用重新 编译。 2 以接口为核心:构件的接口与实现分离,构件通过接口实现与其他组件 和框架的交互。 3 标准化:为了实现构件间的通信与系统集成,构件的接口必须实现标准 化。目前主要的构件标准有:m i c r o s o f t 的c o m d c o m ,s u n 的j a v a b e a n s e n t e r p r i s ej a v ab e a n s ( e j b ) 和o m g 组织的c o r b a 。 基于构件的开发方法具有以下优点: 1 降低费用:根据接口和规格说明进行系统分析、构件选择与应用程序的 装配,可以降低开发难度,缩短开发时间,大大降低了开发成本。 2 方便装配:构件相互独立,通过标准化接口提供服务,便于系统装配。 3 提高复用率:构件可在多个应用系统中充分发挥复用潜力。 4 提高可定制性和适应性:构件相互独立,同一接口可以有多个不同实现, 便于根据开发的需要进行灵活的选择与定制。 5 提高可维护性:在系统中可以方便地添加、删除和修改构件 1 ”。 2 2 4 工作流管理系统 工作流是针对工作中具有固定程序的常规活动而提出的一个概念。通过将工 作活动分解成定义良好的任务、角色、规则和过程来进行执行和监控,可以达到 提高生产组织水平和工作效率的目的。工作流技术为企业更好地实现经营目标提 供了先进的手段。 国际工作流管理联盟( w o r k f l o wm a n a g e m e n tc o a l i t i o n ,w f m c ) 为了实现 不同工作流产品之间的互操作,在工作流管理系统的相关术语、体系结构及应用 编程接口等方面制定了系列标准。工作流管理联盟给出的工作流定义是:工作 流是指整个或部分经营过程在计算机支持下的全自动或半自动化。在实际情况中 可以更广泛地把凡是由计算机软件系统( 或工作流管理系统) 控制其执行的过程 都称为工作流。 一个工作流包括一组活动及它们的相互顺序关系,还包括过程及活动的启动 和终止条件,以及对每个活动的描述。工作流管理系统指运行在一个或多个工作 流引擎上用于定义、实现和管理工作流运行的一套软件系统,它与工作流执行者 ( 人、应用) 交互,推进工作流实例的执行,并监控工作流的运行状态。 工作流管理系统是支持企业经营过程高效执行并监控其执行过程的计算机 软件系统。工作流管理系统不是企业的业务系统,但在很大程度上为企业的业务 系统运行提供一个软件支撑环境。在工作流管理系统的支撑下,通过集成具体的 北京邮电大学工学硕士学位论文 业务应用软件和操作人员的界面操作,才能够良好地完成对企业经营过程运行的 支持。图2 - 5 表示了w t m c 提出的工作流管理系统的参考模型。 口软件构件口系统控制数据圆外部产品数据 图2 5 工作流管理系统的参考模型 传统e r p 是一个面向功能的事务处理系统,它对相互关联的业务处理流程 缺乏有效的控制和管理,一些业务流程被写死在程序里,要么按其执行,要么修 改程序。这不仅增加了系统的运营成本。降低了办公效率,也限制了业务流程的 变化,制约了企业流程重组,以及敏捷制造、虚拟工厂目标的达成网j 。 将工作流管理技术引入e r p 系统中,把对工作流的管理与e r p 事务处理结 合起来,可以使e r p 系统中零散的功能连接在一起,共同完成一个任务,从而 增加e r p 系统的灵活性,增强企业对生产流程的监控能力和对市场变化的适应 能力。 2 2 5 领域工程与企业建模 领域工程是为一组相似或相近系统的应用工程建立基本能力和必备基础的 过程,它覆盖了建立可复用的软件构件的所有活动。其中“领域”是指一组具有 相似或相近软件需求的应用系统所覆盖的功能区域。 领域工程对领域中的系统进行分析,识别这些应用的共同特征和可变特征, 对刻画这些特征的对象和操作进行选择和抽象,形成领域模型,依据领域模型产 第2 章柔性软件的开发挫术 生出领域中应用共同具有的体系结构或生成过程,并以此为基础识别、开发和组 织可复用构件。这样,当开发同一领域中的新应用时,可以根据领域模型,确定 新应用的需求规约,根据特定领域的软件构架形成新应用的设计,并以此为基础 选择可复用构件进行组装,从而形成新系统 2 1 1 。 企业模型是人们为了解企业而经过抽象得到的对于企业某个或者某些方面 进行的描述。企业模型通常是由一组模型组成的,每个子模型完成企业某一个局 部特性的描述,按照一定的约束和连接关系将所有的子模型组织在一起构成整个 企业模型。 企业建模是一个通用的术语,它涉及一组活动、方法和工具,它们被用来建 立描述企业不同侧面的模型。企业建模是一个过程,它通过一系列步骤和采用特 定的方法,对实际的企业对象进行分析和简化,得到一个抽象的模型【2 2 】。 企业建模是企业诊断和优化的基础,是企业集成的基础。企业建模可以使 e r p 系统在更高的层次上对企业业务过程进行抽象,使业务过程具有较好的柔 性,能够根据环境变化进行相应调整;企业模型能够提高e r p 软件的开发、实 施效率,减少二次开发的工作量,并使系统更易于维护。 北京邮电大学工学硕士学位论文 第3 章应用软件平台的运行环境 本文提出的柔性软件应用平台,是以用友软件公司的e r p 软件产品 e r p n c 为运行环境的,因此在讨论柔性软件应用平台的设计实现之前,有必要 先对它的运行环境迸行简要的介绍。 3 1e r p n c 的总体技术框架 e r p - h c 是用友公司面向大型企业和政府事业单位开发的高端e p , 2 产品, 它为客户和企业提供了一个基于i n t e r n e t 的稳定的、开放的和先进的工作平台, 为企业的经营管理和决策提供集中式的信息管理平台,支持和优化不同的部门、 企业及用户之间的协同工作和协同服务,从而推动企业的可持续发展。 e r p - n c 系统采用层次化的体系结构,其总体技术框架如图3 一l 所示。 3 2 用友中间件 图3 - 1 用友e r p n c 总体技术框架 用友中间件是e r p - n c 的运行基础和技术支撑,它为e r p - n c 提供基本的开 发、运行环境,以及多种基础服务。 第3 章应用软件平台的运行环境 用友中间件遵循j 2 e e 规范,提供多种公共服务。在此基础上,用友中间件 根据自身业务特点,提供一些特有服务:如提供的多种监控工具,可以对典型业 务特征进行监控:提供多种配置、管理工具,方便中间件的使用;引入动态加载 服务模式,提高了中间件的效率、增强了可扩展性。图3 - 2 展示了用友中间件的 框架结构。 图3 2 用友中间件框架结构 用友中间件提供的主要服务如下: 1 j n d l 名称目录服务:为应用程序提供标准的目录、命名操作功能。 2 e j b 容器服务:e j b 是s u n 提出的组件接口标准,其体系结构如图3 3 所示。e j b 容器提供对e n t e r p r i s ej a v ab e a n 的生命期管理及相应接口服 务 2 3 】。 3 j t s 事务管理服务:提供对事务的支持,保持事务的原子性、一致性、 孤立性,持久性。 4 j m s 消息服务:即j a v a 消息服务,支持点对点和发布订阅两种消息传 递模式。 5 安全服务:用友中间件提供了静态口令身份认证和“挑战- 应答”式的动 态密码身份认证机制。 6 j d b c 数据库连接服务:提供访问各种数据库的统一的方式,能够将开 发者和私有数据库之间的差异隔离开来。 7 w e b s e r v e r 服务:用友中间件集成了a p a c h ew e bs e r v e r 和t o m c a t ,分 别提供h t t p 服务和j s p 解析服务。 8 数据加密与数据压缩服务:用友中间件提供数据加密与数据压缩服务, 北京邮电大学t 学硕士学位论文 数据加密可以采用r s a 与d e s 方式。 j a v am a i l 邮件服务:用友中间件集成了j a v am a i l 的支持,对外提供统 一的调用接口。 图3 - 3 e j b 体系结构 图3 4 用友中间件集群结构图 第3 章应用软件平台的运行环境 1 0 集群服务:即在系统中引入多个服务器,为系统提供分布性、提高可用 性和伸缩性,并可在服务器之间进行负载平衡。集群服务的结构如图3 - 4 所示。 1 1 系统配置:用友中间件提供多种配置工具,可以进行j a v a b e a n 的配置、 部署,集群服务配置,中间件相关服务参数的设置等。 1 2 系统监控:用友中间件提供系统监控工具,可以查看各种中间件服务的 系统负荷、各种典型操作的消耗和活动情况。 3 3e r p - n c 的持久化数据模型 实体b e a n ( e n t i t y b e a n ) 是e j b 规范中的持久化数据模型,它将数据库中的数 据映射为e n t e r p r i s eb e a n ,并由e j bc o n t a i n e r 负责维护其持久性。然而实体b e a n 会在服务器端和客户端进行大量数据缓存操作,从而消耗过多资源,不利于系统 性能的提高。因此,虽然用友中间件支持实体b e a n ,但并不鼓励使用它。 为了实现数据对象的持久化,e r p - n c 将所有对象分为三类: 1 数据对象类v o ( v a l u eo b j e c t ) :它是数据库表结构的一个映射,它的 所有域分别对应数据库表的相应字段,并且每个域均是私有的。v o 对 象为每个域提供g e t t e r s e t t e r 方法,其它类只能通过g e t t e r s e t t e r 方法访 问域的值。每个v o 均有一个主键域,每个主键域的值可以唯一确定一 个数据对象类实例。数据对象类的一个实例对应相应数据库表中的一条 记录,它的主键域对应数据库中相应记录的主键值。v o 对象还提供对 相应数据库表名、字段名、字段数据类型的查询方法,其它类可以在不 知道数据库表结构的情况下,通过查询v o 域名与域的数据类型得到 v o 的域值。数据对象既可以存在于服务器,也可以存在于客户端。v o 对象是实现数据交换的中介,同时它还可以屏蔽不同数据库间的差异。 v o 可以在客户端的硬盘中大量缓存,从而降低内存消耗,提高系统效 率。 2 业务相关对象:业务相关对象只存在于服务器端,它通常包括业务对象 b o ( b u s i n e s so b j e c t ) 和数据管理对象d m o ( d a t a m a n a g e m e n to b j e c t ) , 由于b o 是一个e j b 会话b e a n ( s e s s i o nb e a n ) ,因此b o 类的e j b 对象、 接口与实现类也属于业务相关对象。其中d m o 负责数据的持久化,它 实现各种对数据库的存取操作。因为d m o 不支持远程调用及位置透明 性,因此客户端程序不能直接调用d m o ,而只能通过b o 对其进行操 作。b o 是e j b 会话b e a n ,既可以是有状态的,也可以是无状态的。它 北京邮电大学t 学硕士学位论文 包含各种业务方法,当用户请求数据持久化操作时,由b o 来调用d m o , 并将结果返回给客户端。d m o 总是与v o 进行数据交换,当进行数据 库存储时,v o 以参数形式由b o 传递给d m o ,d m o 从中读取数据并 进行存储操作;当读出数据时,d m o 将读出的结果封装到v o 中返回 给b o 。 3 用户接口对象:用户接口对象总是运行在客户端的,它包括各种界面对 象、接口、界面控制类及应用程序等。b o 对象的客户端程序也属于用 户接口对象,它负责业务方法的调用以及数据持久化操作的发起。 e r p n c 的数据持久化模型如图3 5 所示。 u i 对象 v 0 对象 e j bs e r v e r c 1 i e n t 端 e j bc o n t a i n e r 【逸太 , 澄 因 圈 幽 a p p ( 困圈回 、彳, 主上 : : 图3 - 5e r p - n c 的数据持久化模型 用友中间件提供代码生成工具,

温馨提示

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

评论

0/150

提交评论