2022年研发类课题管理系统架构设计说明书 .pdf
-
资源ID:30522132
资源大小:1.36MB
全文页数:34页
- 资源格式: PDF
下载积分:4.3金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
2022年研发类课题管理系统架构设计说明书 .pdf
研发类课题管理系统架构设计说明书文件版本:文件编号:发布日期:编制:审核:批准:国家开发银行版权所有内部资料注意保密名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 34 页 - - - - - - - - - 第 2 页 共 34 页国家开发银行版权所有修订记录:版本号修订人修订日期修订描述名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 34 页 - - - - - - - - - 第 3 页 共 34 页国家开发银行版权所有目 录1 简介 . 51.1 目的 . 51.2 文档范围 . 51.3 预期的读者和阅读建议. 51.4 参考文档 . 61.4.1 包含文档 . 61.4.2 相关文档 . 61.5 缩略语和术语. 72 总体架构 . 72.1 系统范围 . 错误!未定义书签。2.2 设计方法 . 错误!未定义书签。2.3 设计可选方案. 82.4 整体架构 . 93 总体约束 . 103.1 遵循标准 . 错误!未定义书签。3.2 文件约定 . 错误!未定义书签。3.3 目录约定 . 错误!未定义书签。3.4 对后续设计的约束. 错误!未定义书签。3.5 其它 . 错误!未定义书签。4 系统逻辑结构 . 124.1 总体结构 . 12 4.2 子系统定义 . 13 4.2.1 子系统一 . 错误!未定义书签。4.2.2 子系统二 . 错误!未定义书签。4.3 接口设计 . 14 4.3.1 产品外部接口 . 14 4.3.2 子系统间接口 . 错误!未定义书签。4.4 主要数据模型. 错误!未定义书签。5 系统物理结构 . 155.1 总体结构 . 15 5.2 组件定义 . 16 5.2.1 组件一 . 错误!未定义书签。5.3 组件接口设计. 18 5.4 组件与子系统对应关系. 错误!未定义书签。6 系统部署 . 19名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 34 页 - - - - - - - - - 第 4 页 共 34 页国家开发银行版权所有6.1 网络结构图 . 19 6.2 部署模式 . 19 7 关键技术及公用机制. 217.1 关键技术设计. 21 7.2 公用机制说明. 25 8 系统重用设计 . 318.1 以往设计的重用. 31 8.2 可重用性考虑. 31 9 系统功能实现 . 错误!未定义书签。10 开发平台与技术架构说明. 3110.1 开发平台 . 31 10.2 技术架构 . 错误!未定义书签。10.2.1 硬件设备说明. 错误!未定义书签。10.2.2 软件说明 . 错误!未定义书签。11 系统非功能特性设计 . 3311.1 可扩展性 . 错误!未定义书签。11.2 可靠性 . 错误!未定义书签。11.3 性能 . 错误!未定义书签。11.4 可维护性 . 错误!未定义书签。11.5 安全 . 错误!未定义书签。11.6 审计 . 错误!未定义书签。11.7 容错性 . 错误!未定义书签。11.8 可移植性 . 错误!未定义书签。11.9 可部署性 . 错误!未定义书签。11.10 . 错误!未定义书签。12 风险 . 3313 附录 . 34名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 34 页 - - - - - - - - - 第 5 页 共 34 页国家开发银行版权所有1 简介1.1 目的本设计文档的目的是根据研发类课题管理系统用户需求规格说明书对需求的描述,对研发类课题管理系统的业务实现进行了架构设计。本文档将指导后续的设计和开发工作,并对功能测试和性能测试工作起到辅助、参考作用。1.2 文档范围本文档主要描述研发类课题管理系统的架构设计,覆盖研发类课题管理系统的需求。研发类课题管理系统基于USE平台的 UAAP框架进行构建, UAAP 中已经实现的权限管理、菜单管理、人员及组织机构管理、统一授权接口等已经完成的功能不在本文档范围之内,以后系统实现的各种业务流程将会受到研发类课题管理系统设计的影响。本文档遵循自顶向下、逐层分解的原则,对研发类课题管理系统进行架构设计:首先,根据对开行的系统范围的理解,提出总体设计方法,结合行内的平台及架构要求,给出了系统架构,从与外围系统关系、主要子系统、技术实现框架角度分别阐述研发类课题管理系统的构成。其次,在系统逻辑结构章节,结合以上各个角度的剖析,从平台实现、业务处理模式方面存在的差异,将研发类课题管理系统进行逻辑架构分解,划分为不同的子系统并分别阐述功能及设计思路。再次,在系统物理结构章节,对系统功能进行构件化的划分。此外,该文档对系统的部署、关键技术、系统重用设计、系统功能实现、开发平台与技术架构、系统非功能性设计及风险进行了说明。1.3 预期的读者和阅读建议本文档的读者必须对USE平台的体系结构或者设计方法有所了解本文档的阅读者为研发类课题管理系统开发过程的各角色:产品角色、系统分析架构角名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 34 页 - - - - - - - - - 第 6 页 共 34 页国家开发银行版权所有色、项目管理角色、代码角色、测试角色、文档角色,信息科技事务跟踪系统系统系统的部署角色、培训角色、维护角色;本文档组织方式:第一章简介,描述文档的目的;第二章描述总体设计思路,包括设计方法及备选设计方案和方案的选择;第三章描述系统的逻辑结构。从最高层次上描述系统的逻辑组成;第四章描述系统的物理结构。从最高层次上描述系统的物理组成;第五章描述系统的部署情况;第六章对系统架构中的关键技术及公用设计机制进行描述;第七章如何重用以往设计产物及现有设计如何对将来重用产生影响进行描述;第八章对系统中重要的用例或者有技术难度的部分进行功能实现的描述,以方便设计人员在进行设计、开发时进行参考;第九章对系统依赖的第三方软硬件进行描述;第十章对系统的非功能特性设计进行描述;产品经理应当关注该部分的描述是否与产品需求中产品的非功能性需求一致;开发人员应当在后续设计过程中对这部分设计进行关注,避免遗漏;测试人员应当根据这部分的描述制定测试案例,验证是否可以达到产品需求的要求。第十一章描述架构设计中识别的风险,产品经理、设计人员、开发人员和测试人员都应当随时关注这些风险,避免风险发生并及时采取规避、减轻措施。第十二章附录1.4 参考文档1.4.1 包含文档无1.4.2 相关文档作者文档名称文档版本出版日期出版单位或归属单位研发类课题管理研发类课题管V1.0 二一二年四月国家开发银行信息科技局名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 34 页 - - - - - - - - - 第 7 页 共 34 页国家开发银行版权所有系统项目组理系统用户需求说明书1.5 缩略语和术语缩略语 /术语全称说明CDB 国家开发银行USE 国家开发银行统一软件环境基于 EOS Studio 实现UAAPFRAME Unified Authorization and Auth authentication Platform Frame USE 平台对统一授权平台框架BPM 国家开发银行工作流平台基于 FileNet Process Engine ECM 国家开发银行内容管理平台基于 FileNet Content EngineEII 国家开发银行信息交换平台ESB 国家开发银行企业服务总线基于 TIBCO 实现SOA 面向服务架构EP 国家开发银行企业门户系统基于 TAM 实现RDPM 国家开发银行研发类课题管理系统接口接口研发类课题管理系统对外系统的访问,统称接口服务服务研发类课题管理系统内部调用,统称服务2 总体架构2.1 系统范围研发类课题管理系统面向全行研发类课题申报、管理和查看等部门,系统覆盖研发类课题管理全流程,包括:立项受理、付款受理、信息发布、成果共享等模块。研发类课题管理系统在开行2011 版整体 IT 规划中, 属于支持平台域, 其所处的位置如下所示(红色方框部分) 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 34 页 - - - - - - - - - 第 8 页 共 34 页国家开发银行版权所有主要用户包括:1研发类课题主管部门目前是国家开发银行研究院,作为研发类课题管理系统的管理归口部门,通过系统对全行研发类课题全流程电子化管理。2研发类课题主办部门总行各业务厅局均可申请课题,通过研发类课题管理系统进行课题申请、付款申请等操作。3普通员工全行所有员工,通过研发类课题管理系统查看权限内的共享课题成果。2.2 设计方案研发类课题管理系统的设计方法是在国家开发银行USE 平台架构的基础上,采用符合SOA 体系结构和对其进行SCA 和 SDO 的落地规范进行设计。同时对系统内的公共功能进行参数化及灵活化的设计,来提高系统的重用性和扩展性。在业务方面,采用以课题从立项到成果发布的流程为主线,支持管理功能相对独立的设计方法,模块内部构件化和接口化来降低系统的耦合度,便于系统的实施及升级维护。1. 采用基于 SOA体系结构设计方法采用基于 SOA体系结构的“高内聚,低耦合”的基本原则。遵照国家开发银行USE平台架构系统将采用面向服务的设计方法,把整个系统的不同功能单元(称为服务 )划分出来,通过这些服务之间定义的接口和契约联系起来,接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种系统中的服务可以以一种统一和通用的方式进行交互。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 34 页 - - - - - - - - - 第 9 页 共 34 页国家开发银行版权所有2. 采用 SCA和SDO的落地规范进行设计SOA只是一种框架性的体系结构,研发类课题管理系统采用USE平台进行建设,USE平台整合了 SCA 和SDO的标准和规范。 SCA是SOA的落地架构框架规范,SDO是数据结构规范和数据存取原理规范。而这些规范,用现有的开发语言和技术框架都可以实现。服务构件架构 (SCA)的基本思想是将业务功能作为一系列服务来提供,这些服务组合到一起,以创建满足特定业务需要的解决方案。服务数据对象(SDO)的设计是为了简化和统一应用程序处理数据的方式。利用SDO,应用程序编程人员可以一致地访问和操纵来自异构数据源的数据,包括关系数据库、XML 数据源、 Web服务和其他信息系统。SCA和SDO获得更高的灵活性和更高的开发效率。可以在不改变应用程序情况下,使用不同的技术作为构件的实现,或者改变通信协议等,同时模块也可以容易的被重用和组装,易于修改和变更。3. 参数化和灵活性设计:考虑到国家开发银行研发类课题管理系统业务不断增长和变化带来的种种影响。基于用例的细粒度设计使得业务流程自身是可被组装的。流程可被拆分为多个单元。比如,针对不同的种类的课题在申报时需要提交的材料是不一样的,而且在最终评审和结题的流程中也是不一样的,同时不同种类的课题划分依据也会随着业务的变化而变化。这样在系统设计时就需要采用参数化的设计思想,定义和管理系统的参数及配置,调整参数以适应外部变化。系统的具体设计如下:建立研发类课题业务办理的主体流程,建立以业务流程为主线的系统,体现信贷业务全生命周期的特点,即一条主线:课题立项备案、费用预算执行、合同签订支付、研发成果评审、研发成果发布。建立相对独立的业务支持管理功能,如:立项管理、合同管理、成果管理、机构管理、专家管理等。系统内部模块化、构件化的设计原则,采用统一接口规范,降低各个功能单元之间的耦合度。2.3 整体架构针对研发类课题管理系统的系统功能范围,按照 2.3 章节描述的设计方案,进行系统架构的设计,包括研发类课题管理系统与外围系统的关系,研发类课题管理系统主要功能模块和名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 34 页 - - - - - - - - - 第 10 页 共 34 页国家开发银行版权所有用户访问方式。研发类课题管理系统其与各其他系统关系描述如下:1.通过企业信息交换平台(EII)平台获取全行用户、机构信息等基础数据。2.通过统一授权系统拿到用户授权信息,与统一授权系统同步角色资源等授权信息。3.与企业门户进行单点集成,用户可以通过直接访问和企业门户单点分别访问系统。4.系统根据内部业务流程的需要,封装内部业务流程构件,使用BPM 平台实现流程的调度、监控和管理。5.通过与 ECM 集成对文档管理,进行文档的上传、下载、检索等功能。6.通过 AD 进行用户登录认证管理。3 总体约束3.1 软硬件环境约束1、软件约束:本系统的开发基于国家开发银行USE 开发平台;名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 34 页 - - - - - - - - - 第 11 页 共 34 页国家开发银行版权所有本系统的数据库基于Oracle 10g;2、平台约束:本系统工作流调度实现基于国家开发银行BPM 平台;本系统授权实现基于国家开发银行UAAP 系统;本系统内容存储实现基于国家开发银行ECM 平台;本系统单点登录实现基于国家开发银行企业门户;本系统登录认证实现基于国家开发银行AD 系统。3、环境约束:开发环境应用服务器、数据库服务器操作系统基于Windows Server 2008 ;UAT 测试环境应用服务器、数据库服务器操作系统基于Windows Server 2008 ;生产环境应用服务器、数据库服务器操作系统基于Windows Server 2008 ;4、规范约束:BPM 平台业务系统集成命名规范USE 平台 -应用项目开发规范CDB-SOA_ 系统集成指导说明书BPM 平台 USE 构件接口说明USE 平台 -软件开发编码规范3.2 遵循标准本系统遵循JavaEE 标准,主要包括:WebService、JMS、Servlet、JSP、JDBC、XML等。本系统遵循SOA 架构下SCA 1.0 和 SDO 2.1 标准。本系统 Java部分遵循面向对象设计并在设计中遵循UML 工业标准。本系统遵循JavaSE 5.0 的技术规范及注解标准。本系统 Java 依赖注入标准规范遵循JSR-330。. 本系统遵循ISMS-03-08-01- 国家开发银行软件开发安全管理规范3.3 文件和目录约定1、设计文档名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 34 页 - - - - - - - - - 第 12 页 共 34 页国家开发银行版权所有研发类课题管理系统数据库设计说明书2、开发文档:USE 开发平台下构件包配置信息采用properties、xml、eosinf、aegis 文件扩展名。日志文件为文本文件格式,文件命名:标准模块信息输出,系统名称_模块名称 _yyyymmdd.log ;标准模块错误信息输出,系统名称_模块名称 _Error_yyyymmdd.log 。3、目录约定RDPM /src :源文件目录。RDPM/conf :放置应用系统配置文件。RDPM/build :放置编译代码。RDPM/WEB :放置页面、样式、脚本。RDPM/lib :放置所需第三方Jar包。3.4 对后续设计的约束国家开发银行研发类课题管理系统的后续建设及维护开发,应遵循本文档中列出的遵循标准、文件约定、目录约定中的要求。4 系统逻辑结构根据系统功能实现的技术方式、数据处理模式及平台实现的异同,对研发类课题管理系统进行逻辑结构的分解。本系统由于功能模块关系较为紧密且系统业务逻辑相对简单清晰,因此不划分子系统,以下仅从总体结构进行阐述。4.1 总体结构结合对业务需求的理解和以业务流程为主线的基础上,对系统功能根据业务关联性进行划分,研发类课题管理系统的逻辑架构如下图所示。研发类课题管理系统的逻辑架构设计,遵循系统内各个模块相对独立的松耦合原则。根据系统内实现功能的主体对象及业务关联度,将系统划分为四大单元11 个功能模块,分别是1、立项管理;2、合同管理;3、付款管理; 4、成果管理;5、检索统计;6、业务参数管理;7、机构管理;8、专家管理;9、信息发布;10、系统管理;11、系统维护。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 34 页 - - - - - - - - - 第 13 页 共 34 页国家开发银行版权所有研发类课题管理系统逻辑架构系统管理类角色管理用户管理机构管理菜单管理权限管理业务支持类课题分类管理业务流程类课题立项立项管理合作机构注册专家管理业务规则管理业务管理类成果管理课题备案合同备案合同管理付款申请付款管理检索统计系统管理业务参数管理信息发布系统维护4.2 功能模块定义4.2.1 功能模块概述模块名称主要功能立项管理完成课题立项、课题备案相关业务流程的发起、流转。合同管理完成合同备案业务流程的发起、流转。付款管理完成付款申请业务流程的发起、流转。成果管理完成成果发布业务流程的发起、流转;实现研究成果根据查看范围展示。检索统计根据用户需要对系统中数据进行分类汇总,并打印输出报表。业 务 参 数 管理将业务参数及业务规则作为系统参数进行管理,以使系统灵活响应业务规则调整。合 作 机 构 注册完成合作机构注册业务流程的发起、流转。专家管理完成专家注册业务流程的发起、流转。信息发布完成信息发布业务流程的发起、流转。系统管理完成用户相关的权限、所属机构管理,菜单项管理,角色管理等功能。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 34 页 - - - - - - - - - 第 14 页 共 34 页国家开发银行版权所有系统维护通过系统界面完成系统相关维护功能,目前主要是数据库导入、导出。4.2.2 设计思路根据用户需求进行分析,并进行功能点的适当归纳总结后,可对系统功能进行以下分解设计:a、 业务流程功能单元包含立项管理、合同管理、付款管理3 个逻辑功能模块,此功能组涵盖了课题从立项、商务直至验收后付款的主要业务环节,是课题管理的主要业务功能。b、 业务管理功能单元包含成果管理、检索统计、信息发布3 个逻辑功能模块,主要是课题主管部门对课题管理业务过程进行归纳总结,并发布各项管理信息。c、 业务支持功能单元包含业务参数管理、机构管理、专家管理3 个逻辑功能模块,此功能组为完成课题管理主要业务功能运行的基础。d、 系统管理功能单元由于机构管理、权限管理、用户管理、菜单管理、角色管理等功能从定位上具有同一性,因此考虑在此功能组内使用一个系统管理模块统一完成以上功能。此外,根据非功能需求,需要通过系统界面实现系统主要维护功能,因此在此功能单元内使用系统维护模块完成系统维护功能。4.3 接口设计系统仅有外部接口。外部接口遵循开行各平台、系统接口规范。4.3.1 产品外部接口外部接口主要包括:EII 、统一授权、 AD 、BPM 、ECM 接口。具体接口说明和交互方式如下:序号外围系统说明接口交互方式1 业务流程管理 (BPM) 平台实现流程设计、步骤定义、节点设定并提供接口支持实时2 企业内容管理 (ECM )平台统一存储系统需管理的附件文档,并通过接口进行文档的上传、下载和查询。实时3 企业信息交换(EII )平台在用户、机构信息发生变化时,EII将变化信息主动实时推送至本系统。实时4 统一用户认证系统(AD)对用户进行身份认证检查实时5 统 一 授 权 管 理 系 统( UAAP )本系统与UAAP 间双向同步用户、角色、权限的对应关系。实时6 企业门户( EP)通过 EP实现单点登录实时名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 34 页 - - - - - - - - - 第 15 页 共 34 页国家开发银行版权所有5 系统物理结构5.1 总体结构本系统物理架构设计采用纵向分层、层内模块之间松耦合的原则,保证各组件的物理独立性,增强系统可扩展性,有利于系统分模块开发部署。研发类课题管理系统自身的物理组件主要分为五类:1、业务流程类;2、业务支持类;3、业务管理类;4、基础支持类;5、UAAPFRAME类。共 10 个组件包。1、业务流程类组件是课题管理业务的主线,完成从课题立项、合同备案到付款申请的课题管理主体业务流程;包括课题过程管理组件包。2、业务支持类组件对业务流程类构件提供业务的支持,保证业务的顺利开展;包括业务支持组件包、合作资源组件包。3、业务管理类组件实现对业务的管理统计,包括对成果的发布和查询统计;包括业务管理组件包。4、基础支撑类组件是业务实现的根基,在此基础上对业务流程类、业务支持类和业务管理类构件提供技术的支撑;包括通用工具组件包和流程管理组件包。5、UAAPFRAME类组件提供了通用的和统一授权平台和企业门户集成,以及角色权限管理的功能;包括认证管理组件包,机构管理组件包,权限管理组件包及集成管理组件包。系统纵向分为四层,分别是展现层、业务逻辑处理层、数据持久层以及数据存储层。展现层主要负责向用户展示系统界面,响应用户在界面上的操作,并转化为系统请求传输至业务逻辑处理层调用对应的业务功能组件。业务逻辑处理层在实现业务功能时使用数据持久层中的持久化数据对象,由数据持久层将对持久化数据对象转化为对数据存储层物理数据实体的访问。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 34 页 - - - - - - - - - 第 16 页 共 34 页国家开发银行版权所有研发类课题管理系统物理架构业务逻辑处理层认证组件菜单组件角色组件机构组件消息组件功能组件认证管理集成管理权限管理机构管理UAAPFRAME类组件异常处理组件通用工具基础支持类组件日志处理组件工作流组件集成平台调用业务支持业务支持类组件合作资源业务配置组件专家组件机构组件立项课题组件课题过程管理业务流程类组件备案合同组件申请付款组件业务管理业务管理类组件成果组件查询统计组件展现层页面组件事件处理组件数据存储层数据存储数据持久层数据映射组件备案课题组件信息发布组件文档管理组件系统维护类组件系统维护数据库维护组件5.2 组件定义5.2.1 课题管理课题管理组件包内部的4 个组件属于业务功能组件,实现与课题申报、备案以及付款这一生命周期的业务流程相关的功能。这些业务功能属于业务需求方最关心的主体业务功能,是本系统的核心功能组件。课题管理组件包从展现层接收用户请求,经过处理后调用基础支持类组件,完成业务流程流转及流程附件管理;调用数据映射组件完成流程及业务实体数据增删改查;调用UAAPFRAME组件获取操作用户的所属机构、角色及权限。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 34 页 - - - - - - - - - 第 17 页 共 34 页国家开发银行版权所有5.2.2 业务管理业务管理组件包内部的3 个组件属于业务功能组件,实现主管部门对课题管理业务进行高阶管理统计分析的业务功能。这些业务功能能够帮助主管部门更好地对课题管理业务进行总结、分析,属于本系统的额外增值功能,并不影响主体业务功能。业务管理组件包从展现层接收用户请求,经过处理后调用基础支持类组件,完成业务流程流转及流程附件管理;调用数据映射组件完成流程及业务实体数据增删改查;调用UAAPFRAME组件获取操作用户的所属机构、角色及权限。5.2.3 业务支持业务支持组件包内部的1 个组件属于业务功能组件,是课题管理类组件正常运行的前提,为课题管理类组件运行提供前置条件。主要实现业务参数配置。业务支持组件包从展现层接收用户请求,调用数据映射组件完成系统业务参数增删改查;调用 UAAPFRAME组件获取操作用户的所属机构、角色及权限。5.2.4 合作资源合作资源组件包内部的2 个组件属于业务功能组件,是课题管理类组件正常运行的前提,为课题管理类组件运行提供前置条件。主要实现课题管理组件包中课题相关的合作机构、专家资源的管理。合作资源组件包从展现层接收用户请求,经过处理后调用基础支持类组件,完成业务流程流转及流程附件管理;调用数据映射组件完成流程及业务实体数据增删改查;调用UAAPFRAME组件获取操作用户的所属机构、角色及权限。5.2.5 通用工具通用工具组件包内部的2 个组件属于系统管理组件,是确保系统正常平稳运行的工具组件。系统各业务功能组件均需调用通用工具组件包的组件实现日志记录查询分析、异常捕获及处理。5.2.6 集成平台调用集成平台调用组件包内部的2 个组件属于接口类组件,调用应用集成平台业务流程管理平台( BPM ) 、内容管理平台(ECM )提供的流程管理、文件管理服务。系统各业务功能组件均需调用集成平台调用组件包的组件实现业务流程发起、流转及终止,文件上传下载删除等功能。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 34 页 - - - - - - - - - 第 18 页 共 34 页国家开发银行版权所有5.2.7 UAAPFRAME UAAPFRAME组件包内部的4 个组件属于系统管理组件及接口组件,实现系统登录认证、用户管理、 组织机构管理、 权限管理、 业务数据字典项管理、集成管理等功能。UAAPFRAME组件从 EII 接收用户机构同步信息,与统一授权系统双向同步用户角色权限信息,与 AD 集成进行用户登录认证。5.2.8 系统维护组件包系统维护组件包内部的数据库维护组件属于系统管理组件,实现数据库备份、恢复功能。数据库维护组件主要调用数据库备份、恢复的。5.3 组件接口设计设计编号接口名称接口描述接口提供组件目标组件接口调用方式1 文件管理接口文件上传、下载、查询文档管理组件课 题 过 程 管 理 组 件包、业务管理组件包、合作资源组件包方法调用2、流程管理接口流程创建、 流转、终止、查询流程、查询工作项等工作流组件课 题 过 程 管 理 组 件包、成果管理、信息发布组件方法调用3 异常处理接口捕获程序运行过程中出现的系统异常、业务异常,并记录系统异常时间、描述、所属模块、线程等信息。对于业务异常则统一处理用户反馈页面。异常处理组件所有组件方法调用4 日志管理接口将程序运行过程中的信息按照DEBUG, INFO, WARN, ERROR, FATAL 五个级别记录到日志文件中日志管理组件所有组件方法调用5 合作机构查询接口使用统一的方法对合作机 构 数 据 实 体 进 行 查询,并返回查询结果。机构组件课题过程管理组件包方法调用6 专家查询接口使用统一的方法对合作专 家 数 据 实 体 进 行 查询,并返回查询结果。专家组件立项课题组件、备案课题组件。方法调用名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 34 页 - - - - - - - - - 第 19 页 共 34 页国家开发银行版权所有6 系统部署6.1 网络结构图研发类课题管理系统部署于开发银行内部生产网段,与外联网之间使用防火墙逻辑隔离,内外网之间没有数据访问需求。系统用户(包括总分行用户)均需要使用内网终端访问本系统。与研发类课题管理系统需要进行集成的外部系统,如BPM、ECM、ESB、AD系统也均部署于开发银行内部生产网段,从网络策略上确保可以互相访问。6.2 部署模式依据现有服务器资源,设计了2 套部署模式,其中模式一为单机运行,只使用1 个服务器分区,部署数据库服务器、web 应用服务器( WAS) 、USE 运行环境以及研发类课题管理系名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 34 页 - - - - - - - - - 第 20 页 共 34 页国家开发银行版权所有统应用软件包;模式二为双机运行,设计思路为服务器1 和服务器2 互备运行, 2 台服务器均部署数据库服务器、web 应用服务器( WAS) 、USE 运行环境以及研发类课题管理系统应用软件包, 其中服务器1 上的 web 应用服务器 (WAS) 、USE 运行环境以及研发类课题管理系统应用软件包为运行状态,数据库服务器为待机状态,服务器2 上的 web 应用服务器( WAS) 、USE 运行环境以及研发类课题管理系统应用软件包为待机状态,数据库服务器为运行状态。具体如下图所示。模式一的优点为节省服务器资源,缺点为系统可用性较低,一旦发生服务器故障,系统将无法对外提供服务。模式二的优点为系统可用性较高,一旦发生服务器故障,可利用事先准备的脚本,快速完成服务器切换,确保系统服务正常。考虑到本系统应用场景、重要性以及服务器资源情况,目前采用模式一进行部署。在服务器资源能够满足的情况下,优先考虑采用方案2 进行部署。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 34 页 - - - - - - - - - 第 21 页 共 34 页国家开发银行版权所有7 关键技术及公用机制7.1 关键技术设计7.1.1 SCA 服务面向服务架构(SOA)要求我们将业务需求分解为若干个功能相对独立、可被复用的服务单元,通过服务之间的相互调用完成一定的业务功能。这种架构有利于业务重组,它通过服务的复用加速企业的信息系统开发,达到快速响应企业业务变化的要求。OASIS 组织发布的服务组件架构(SCA)是一组 SOA 编程模型规范,它描述了利用面向服务架构( SOA )来构建应用程序和系统的模型;SCA 装配模型定义了构成一个SCA 系统的各种构件和他们之间的关系,包括:组合构件(Composite) 、构件(Component) 、 服务(Service) 、引用( Reference) 、实现( Implementation )等。系统构件装配是SCA 装配模型的实现。通过可视化的方式定义组合构件(Composite)中的构件( Component)组成,定义构件中包含的服务(Service) 、引用( Reference) ,构件引用所指向的构件服务等。下图是构件装配的概念结构图,从图中可以看出,一个构件由服务(Service) 、引用(Reference) 、实现( Implementation )和属性( Property)四部分组成。一个构件可以有一个或多个服务、引用和属性,但只能有一个实现。服务和引用的接口(Interface)描述了其操作的范围;通过服务绑定(Service Binding )来对外暴露服务的访问;通过引用绑定(Reference Binding )来消费服务。组合构件(Composite)作为构件的容器对构件进行包装和组织,并作为可发布的单元进行部署。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 34 页 - - - - - - - - - 第 22 页 共 34 页国家开发银行版权所有图 7.1 SCA服务构件装配图对上图术语的详细解释如下表所示:术语解释服务( Service )Service是一系列业务功能的集合,将某一个业务功能通过服务的方式暴露出来,供外部应用访问。服务可以用多种形式的访问协议进行访问,比如 Web Service, JMS ,Stateless SessionBean等。引用( Reference )构件的功能由其它构件的服务提供,在构件环境中通过引用来进行指定。在运行时,根据配置找到引用对应的服务,并注入到构件实现当中,类似依赖注入。属性( Property )对构件实现的字段设置默认值,在构件环境运行时,会把值注入到相应的字段中。接口( Interface )接口定义了服务对外提供的功能范围,描述了服务所包含的操作以及操作的参数。 USE 中支持两种接口的描述形式:Java Interfaces和 WSDL PortType 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 34 页 - - - - - - - - - 第 23 页 共 34 页国家开发银行版权所有绑定( Binding )绑定定义了服务的生产和消费的方式,以及访问服务所采用的协议。绑定可以分为服务绑定和引用绑定。服务绑定,描述了客户端可以使用什么样的机制来调用服务。引用绑定描述了采用什么机制来调用外部的服务。实现( Implementation)构件的实现是构件服务功能的具体实现,SCA 规范支持各种各样的构件实现方式,如:Java 实现, C# 实现, Python 实现等等。 USE 目前只支持Java 实现,以及USE 特有的逻辑构件实现。构件( Component )对外提供服务功能的单元,定义了构件的实现方式,以及构件提供了哪些服务,引用和属性。组合构件(Composite )由一组具有业务上相互联系的构件组成,本身也可以定义对外的服务和引用,其实质是一种更大粒度的构件。装配( Assembly )将一组具有业务上相互联系的构件组织到一个组合构件(Composite )中,在这个组合构件中定义构件的服务,引用关系,构件的实现等,这个过程称为装配。构件包(Contribution) 在 USE 中构件包 (Contribution)作为一个部署单元,在其中包含了构件,构件实现以及一些额外需要的资源,比如:页面流、逻辑流、运算逻辑、数据集、 jsp 文件等。提升( Promote )组合构件中可