




免费预览已结束,剩余58页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本本 科科 毕毕 业业 论论 文文基于上海移动运营支撑系统满意度调查基于上海移动运营支撑系统满意度调查模块设计与开发模块设计与开发Shanghai Mobile Operations -based Satisfaction Module Design and Development姓 名:学 号:学 院:软件学院系:软件工程专 业:软件工程年 级:校外指导教师: 校内指导教师: 年年 月月 摘要随着计算机网络和分布式软件的发展,OMG 提出了 CORBA 规范进行分布式软件的开发,由于 CORBA 能够解决跨平台、跨操作系统、跨语言、跨协议、跨版本等兼容问题,因此基于 CORBA 的分布式业务管理系统成为了很多大型管理系统的首选,基于 CORBA 的业务支撑系统能够稳定有效地满足大型业务支撑系统的需求广泛应用于银行管理系统、通信管理系统等。CORBA 是为满足 Internet 上集成应用软件的需要,实现软件全方位集成而设计的。上海移动业务支撑系统基于 CORBA 实现系统的分布式开发和部署,上海移动业务支撑系统分为前端和后端,前端基于 WINDOWS 平台,由JAVA 编程语言实现,后端基于 NUIX 平台,由 C+编程语言实现,CORBA解决了前后端之间跨系统跨语言的问题,通过符合 CORBA 规范的 VisiBroker中间件进行交互,大大提高了系统的灵活性,为兼容不同系统提供了基础。基于 CORBA 的业务支撑系统是很多大型系统的解决方案,有着广泛的应用。本文通过对上海移动业务支撑系统的深入分析,希望能够为我们构建大型业务支撑系统提供一个可行的方案及参考;另外,在上海移动运营支撑系统上针对一个具体的需求做了详细的开发过程及开发过程中的文档资料。关键词关键词:管理系统;CORBA;分布式AbstractAs computer networks and distributed software development, OMG proposed norms CORBA distributed software development, CORBA can be solved as a result of cross-platform, cross-operating system, cross-language, cross-protocol, cross-version compatibility issues and so on, its based on the CORBA Distributed Service Management System has become a lot of choice for large-scale management systems, business support CORBA-based system to a stable and efficient to meet the large demand for business support system is widely used in bank management systems, communications management system. CORBA is the integration of Internet to meet the needs of application software, software designed for all-round integration. Shanghai-based mobile business support systems distributed CORBA systems to achieve the development and deployment, Shanghai mobile business support system is divided into front-end and back-end, front-end based on the WINDOWS platform, to achieve by the JAVA programming language, back-end platform based on NUIX from C + + programming language, CORBA resolved between the before and after the end of cross-language cross-system issues, the adoption of norms in line with the CORBA middleware VisiBroker interact, greatly improving the flexibility of the system, compatible with different systems to provide the foundation. CORBA-based system is a lot of business support solutions for large-scale system, with a wide range of applications. Based on the Shanghai mobile business support system in-depth analysis, we hope to be able to build a large-scale business support system to provide a feasible solution and reference, In addition, mobile operators in Shanghai to support the system requirements for a specific detail of the development process and development process documentation.Key words: Management system; CORBA; distributed目录目录第一章第一章 引言引言.11.1 系统应用背景系统应用背景 .11.2 系统的目标和意义系统的目标和意义 .11.3 论文选题背景及研究目标论文选题背景及研究目标 .11.4 论文主要内容论文主要内容 .2第二章第二章 现有系统介绍与分析现有系统介绍与分析.32.1 系统采用的技术介绍系统采用的技术介绍 .32.1.1 CORBA 中间件简介.32.1.2 AppFrame 简介.52.1.3 OpenBroker 简介.62.2 系统总体介绍与分析系统总体介绍与分析 .82.2.1 系统总体架构介绍 .82.2.2 系统架构特点分析 .92.2.3 系统模块解耦情况分析 .102.3 系统详细介绍系统详细介绍 .112.3.1 Web UI 层.112.3.2 Svr 层.112.3.3 App 层 .122.3.4 Mgr 层及 Kernel 层.132.4 系统开发介绍系统开发介绍 .152.4.1 系统前端开发介绍 .152.4.2 系统后端开发介绍 .17第三章第三章 满意度调查功能需求与总体设计满意度调查功能需求与总体设计.203.1 满意度调查功能需求描述满意度调查功能需求描述 .203.1.1 菜单名称及路径 .203.1.2 功能 .203.1.3 业务流程 .203.1.4 界面视图 .223.1.5 界面流程说明 .223.2 满意度调查功能总体设计满意度调查功能总体设计 .233.2.1 数据模型 .233.2.2 模块设计 .24第四章第四章 满意度调查功能详细设计满意度调查功能详细设计.284.1 数据表设计数据表设计 .284.1.1 短信发送表 .284.1.2 组织信息表 .284.1.3 用户评价信息表 .294.1.4 用户评价记录表 .294.2 Mgr 层详细设计层详细设计.304.2.1 查询组织信息接口设计 .304.2.2 查询短信发送记录接口设计 .304.2.3 发送短信接口设计 .314.2.4 保存满意度调查短信发送记录接口设计 .314.2.5 保存评价信息接口设计 .324.2.6 满意度调查短信处理接口设计 .324.3 App 层详细设计层详细设计.334.3.1 数据结构设计 .334.3.1 接口设计 .33第五章第五章 结束语结束语.34参考文献参考文献.36致致 谢谢.37附录附录.38ContentsChapter 1 Introduction.11.1 System background .11.2 System objectives and significance .11.3 Discourse background significance .11.4 Discourse main content .2Chapter 2 Introduction and analysis of existing systems.32.1 introduced the use of technology.32.1.1 CORBA Middleware .32.1.2 AppFrame About.52.1.3 OpenBroker About.62.2 Introduction and Analysis of System.82.2.1 The overall structure of the system introduced.82.2.2 Analysis of system architecture.92.2.3 Analysis of decoupling module.102.3 System Details .112.3.1 Web UI layer.112.3.2 Svr layer.112.3.3 App layer.122.3.4 Mgr layer and Kernel layer.132.4 System Development Introduction.152.4.1 introduced the front-end development.152.4.2 introduced the back-end development.17Chapter 3 Functional requirements and design.203.1 Requirement.203.1.1 Menu name and path.203.1.2 Function.203.1.3 Business Process.203.1.4 Interface view .223.1.5 Interface Process Description .223.2 Design.233.2.1 Data Model .233.2.2 Modular Design.24Chapter 4 Detailed design and implementation of system.284.1 Design Data Sheet.284.1.1 SMS Table.284.1.2 Organization Information Sheet .284.1.3 User Information Table.294.1.4 User rating record .394.2 Mgr layer detailed design and implementation of.304.2.1 Organize information query interface design .304.2.2 SMS Query Interface Design record.304.2.3 Send SMS Interface Design.314.2.4 Add Satisfaction Record Interface Design.314.2.5 Add Satisfaction Info Interface Design .324.2.6 Satisfaction surveys to deal with SMS Interface Design.324.3 App layer detailed design.334.3.1 Data structure design r.334.3.2 Interface Design.33Chapter 5 Conclusion.34References .36Thanks.37Appendix .38 8基于 CORBA 的上海移动运营支撑系统的模块设计与开发1第一章第一章 引言引言1.11.1 系统应用背景系统应用背景近年来,随着通信技术的发展,移动通信得到了快速发展。在我国,移动通信业务由中国移动、中国联通和中国电信运营,由于人们的生活水平的提高和移动通信资费的降低,移动通信已经普及,形成了庞大的用户群。各个运营商之间竞争也日益激烈,他们不断推出新产品,产品资费及活动也是不断变化,这些对业务管理系统都提出了更高的要求。上海移动用户早已经超过1000万,目前平均每天通过营业厅办理的业务大约为150万笔,这对上海移动运营支撑系统在性能及稳定性上都提出了严格的要求。另一方面,上海移动为适应市场的需求,经常有新功能需要立即上线使用,因此对上海移动运营支撑系统的快速开发提出了很高的要求,系统功能必须开发周期短,能够应对复杂的业务逻辑,易于维护。1.21.2 系统的目标和意义系统的目标和意义为了满足上海移动的需要,亚信科技(中国)有限公司上海分公司为上海移动设计并开发了上海移动运营支撑系统,主要包括营业厅系统(BOSS30)和客服系统(CCS)两大系统,其中营业厅系统主要包含账务受理、营业受理、活动受理、信息查询等功能模块,包含了移动营业厅办理业务的全部功能。基于CORBA的上海移动运营支撑系统能够提高系统的性能和稳定性,适应快速开发的要求,对于业务逻辑复杂,性能要求高,稳定性要求高,开发周期短,易于维护的其它大型系统的构建也提供了参考。1.31.3 论文选题背景及研究目标论文选题背景及研究目标本文所介绍的上海移动运营支撑系统是由亚信科技(中国)有限公司上海分公司为上海移动设计并开发,通过对该系统的深入分析,全面的介绍并分析了上海移动运营支撑系统的构架特点以及在此系统上的开发情况。希望通过对该系统的介绍和分析,对于构建类似的系统提供参考。基于 CORBA 的上海移动运营支撑系统的模块设计与开发21.41.4 论文主要内容论文主要内容第一章,简要介绍了上海移动业务支撑系统的应用背景和本文的选题背景及研究目标。第二章,具体介绍并分析了上海移动业务支撑系统采用的技术,系统构架,系统特点和系统开发等相关内容。第三章,介绍了在上海移动业务支撑系统基础上的新功能项目需求和总体设计。第四章,描述了项目的详细设计和实现情况。第五章,介绍了对项目的测试方法,及测试情况。第六章,分析了上海移动业务支撑系统的几点不足的地方,提出了一些解决方案,希望能够为其他系统的设计带来一些参考。基于 CORBA 的上海移动运营支撑系统的模块设计与开发3第二章第二章 现有系统介绍与分析现有系统介绍与分析2.12.1 系统采用的技术介绍系统采用的技术介绍.1 CORBACORBA 中间件简介中间件简介为了解决分布式计算环境(DCE,Distributed Computing Environment)中不同硬件设备和软件系统的互联,增强网络间软件的互操作性,解决传统分布式计算模式中的不足等问题,对象管理组织(OMG)提出了公共对象请求代理体系结构(CORBA)以增强软件系统间的互操作能力1。作为面向对象系统的对象通信的核心,CORBA为当今网络计算环境带来了真正意义上的互联2,3。公共对象请求代理体系结构(CORBA)是对象管理。近年来公共对象请求代理体系结构(CORBA)已在商业的分布式计算环境中得到广泛应用,因为它允许分布式环境下的应用程序通过传递对象进行交互而不受操作系统、网络协议、程序语言的限制,CORBA 的本质是透明化的C/S模式4,5。CORBA的客户端与服务器端的交互是通过对象请求代理(ORB)实现的,CORBA的简化表述如图2-1 所示:图图2-12-1 CORBACORBA的简化表述图的简化表述图6CORBA 的最终目的是分布式软件集成。CORBA 即代表了一种软件开发模式、基于 CORBA 的上海移动运营支撑系统的模块设计与开发4一种软件开发标准,也提供了软件开发必须的服务、可以使用的工具集合7。因此,CORBA整体上是由“对象请求代理”、“CORBA服务”、“CORBA 工具集”与符合CORBA标准的各种应用程序、对象一同综合形成的8。CORBA的体系结构如图2-2 所示:图图2-22-2 CORBACORBA完整体系结构图完整体系结构图VisiBroker Edition 提供了完整的 CORBA 2.4 ORB 运行期和支持开发环境,用于构建、部署和管理开放、灵活和可互操作的 C+ 和 Java 分布式应用。使用OMG 互联网内部 ORB 协议 (IIOP) 标准通信的基于 Web 的应用可轻易访问使用VisiBroker Edition 构建的 Java 和 C+ 对象,从而可以通过互联网和本地内联网在分布式对象之间进行通信。VisiBroker Edition 具有可确保获得高性能和互操作性的 IIOP 内置实现功能9,10。VisiBroker Edition 的结构如图2-3 所示:图图2-32-3 VisiBrokerVisiBroker EditionEdition结构图结构图基于 CORBA 的上海移动运营支撑系统的模块设计与开发5.2 AppFrameAppFrame简介简介AppFrame 是亚信公司南京研发中心开发的基于 J2EE 的业务开发平台,主要由 WebFrame(UI 管理框架)、BLFrame(业务逻辑管理框架)、OPFrame(数据操作管理框架)、TLFrame(系统配置管理框架)四个部分组成。AppFrame 的结构如图 2-4 所示:图图2-42-4 AppFrameAppFrame结构图结构图OPFrame(数据操作框架):APPFrame 为了降低数据存储结构改变对业务逻辑的影响,在数据持久化管理层实现了 O/R Mapping,将所有的数据以对象的方式提供给开发人员使用。所有数据存储相关的代码由配置工具自动产生;同时对标准的O/R Mapping 进行了扩展,提高了大数据量查询的性能,提供了数据展现的多样性。同时数据连接池管理、Corba、Tudex 的调用封装、统一对象标识管理的功能。WebFrame(界面管理框架):是应用系统同最终用户交互的层,提供了各种界面组件的封装;提供了前台界面与后台数据对象的自动转换功能;提供了界面流程的定义和控制;提供了界面元素与数据的对应管理,以及数据的显示方式、编辑方式、基于 CORBA 的上海移动运营支撑系统的模块设计与开发6校验方式以及数据可选项等信息的定义管理。所有的界面逻辑都由定义自动产生,降低了业务逻辑改变对前台界面的影响。DBGrid, DBForm, DBTree, DBPopmenu, DBListBox, DBEdit,套打组件、数据的图表展现组件等实用组件,降低了前台界面编码工作量。BLFrame(业务逻辑管理框架):是构建松耦合应用系统的业务生成环境,借助业务逻辑管理框架的设计思想和设计工具,可以帮助应用设计和开发人员迅速构建符合 SOA 体系架构的松耦合应用系统,从而轻易获得松耦合、易维护、可扩展、健壮的应用系统。TLFrame(配置管理工具框架):提供了整个 Appframe 的配置管理 IDE 环境。包括 BO 管理、自动数据操作代码、提供了增强的 JSP 编辑器,流程配置管理Studio、系统性能监控等。Appframe 的设计思想来自于 SOA 体系架构,继承了 SOA 的标准,使得基于Appframe 设计和开发的应用系统自动获得了 SOA 架构系统的优点和特性,主要优点在于系统的松耦合和组件的复用性。松耦合:一点是它的灵活性,另一点是,当组成整个应用程序的每个服务的内部结构和实现逐渐地发生改变时,接口能够继续存在。组件复用:经过专业分工的组件,功能单一化、性能稳定可靠化的特点使得组件的复用性大大提高。.3 OpenBrokerOpenBroker简介简介OpenBroker 的原理:OpenBroker 本质上是一种接口模式,通过接口的提取和抽象(成为专门的 OBD 接口) ,减小系统间的耦合;这些接口的应用范围从不同的中间件接口,到 socket 接口、动态库接口、甚至 Web 服务的接口。OpenBroker 是由客户端调用,然后通过 OpenBroker 调用 CORBA 中间件,通过中间件的调用过程如图 2-5 所示:基于 CORBA 的上海移动运营支撑系统的模块设计与开发7服务端业务逻辑实现Windows/Java 客户端企业 Intranet/InternetCICS,Tuxedo,VisiRroker clientCICS,Tuxedo,VisiBroker serverOpenBroker FrameworkOpenBroker marshallingOpenBroker 客户端 API服务器处理控制、数据库访问OpenBroker unmarshalling图图2-52-5 OpenBrokerOpenBroker通过中间件的调用过程图通过中间件的调用过程图OpenBroker 采用多层结构,整个应用被定义为:数据库/核心层(完成数据库访问) 、业务原子层(完成基本和原子性的业务逻辑) 、应用层(实现完整的业务逻辑,即实现一个完整业务) 、服务层(将业务映射到中间件的服务) 、表示层(分为 Windows 和 Web 两种客户端,完成数据收集、校验和展示的功能) 。基于 OpenBroker 的后端开发流程:(1) 使用 OBD 语言描述业务数据,并定义相关操作函数(2) 通过 obd2cpp,产生各种 stub 代码(3) 在 obd_i.cpp 中实现业务代码基于 OpenBroker 的前端开发流程:(1) 通过 obd2cpp/obd2java 产生 stub 代码(2) 通过调用后端服务实现业务接口,调用后端服务如图 2-6 所示:基于 CORBA 的上海移动运营支撑系统的模块设计与开发8主程序中,初始化 OpenBroker 客户端声明 obd2cpp 产生的 interface 类的对象绑定到 OpenBroker 对应的 Server 端调用 Server 端的方法主程序中,关闭 OpenBroker 客户端在对象析构中自动取消绑定图图2-62-6 OpenBrokerOpenBroker ClientClient调用后端服务流程图调用后端服务流程图2.22.2 系统总体介绍与分析系统总体介绍与分析.1 系统总体架构介绍系统总体架构介绍上海移动运营支撑系统基于 B/S 构架,前端基于 WINDOWS 平台,使用 AppFrame框架(亚信公司南京研发中心开发的基于 J2EE 的业务开发平台)由 JAVA 编程语言实现,后端基于 UNIX 平台,采用 OpenBroker 框架(亚信公司杭州研发中心开发的基于传统 UNIX 平台和 C+语言的业务开发框架)由 C+编程语言实现,使用 ORACLE数据库;前端与后端之间通过支持 CORBA 规范的中间件 VisiBroker 交互,前端包含WebUI 层,后端由 Svr 层、Mgr 层、Kernel 层及数据库组成。如图 2-7 所示:基于 CORBA 的上海移动运营支撑系统的模块设计与开发9Datac接触渠道客服操作员营业厅操作员其它渠道AppMgrWeb UISvr由OpenBroker发布CORBA 服务由OpenBroker发布Web Service营帐数据库JSP 页面数据 modelJava ActionJava BeanOpenBroker Java Client各类到外部系统的接口例如资源、帐务其它数据库Mgr业业务务规规则则配配置置App业业务务规规则则配配置置新新开开户户业业务务变变更更换换卡卡权权限限管管理理其其它它Appkernel客客户户Mgrkernel定定购购Mgrkernel帐帐户户Mgrkernel权权限限Mgrkernel其其它它Mgr业业 务务 视视 角角数数 据据 视视 角角图图2-72-7 上海移动运营支撑系统总体架构图上海移动运营支撑系统总体架构图.2 系统架构特点分析系统架构特点分析引入接口模式,屏蔽和降低模块之间的接口,是架构设计的最大特点。传统的 C+基于头文件和动态库(或者静态库)的模块接口方式,由于强类型和静态类型的特征,容易导致较深的模块依赖层次,也不利于在业务代码上添加很多系统功能,比如管控、服务的自动封装、回归测试等。这些不利因素在规模不大的系统中并没有什么问题,但是在像 BOSS 这样大规模以及需求变化频繁的系统里,就其影响就需要慎重考虑了。基于 CORBA 的上海移动运营支撑系统的模块设计与开发10相对而言,引入接口模式最主要的变化,是用接口来规划大的系统中各个模块间的关系,用接口数据来定义系统中的业务要素;每个模块就是对这些接口数据进行处理,通过组合这些模块的功能来搭建系统的业务功能11,12。接口模式隐藏了内部细节,使系统依赖于高度抽象的接口及其数据13,而非数据库的表结构,后者对于业务数据而言只是一种存储形式。这种设计思维的变化,要求在进行业务设计的时候,以刻画业务的接口定义先行,然后才是数据库的设计以及代码编写。此外,在设计接口的时候,要避免设计大而全的接口,因为这样的接口往往不容易稳定,一个修改往往导致大范围的调用者都修改。接口设计应当具有一定的针对性,服务于特定的功能,即首先针对业务,特定的业务其接口也容易固定;其次要针对接口调用者的特点,比如用于外部接口的协议往往比较简单,只需手机号码就可以办理很多操作。.3 系统模块解耦情况分析系统模块解耦情况分析各模块的调用依赖关系是:App 层各模块间不能互相调用,只能调用 Mgr 层,App 层每个模块都可以调用 Mgr 层的任意模块,Mgr 层只能调用相应的 Kernel 层,不能跨越数据域,如图 2-8 所示:图图2-82-8 模块的调用依赖关系图模块的调用依赖关系图基于 CORBA 的上海移动运营支撑系统的模块设计与开发11从上图可以看到几个清晰的关系:(1)每个 Mgr 管理特定的数据域,彼此之间没有调用关系和数据域的重叠,因此整个系统的 Mgr 模块依据数据域实现了一个正交划分;(2)DB 层的表结构变化,不会穿透到 App,因为 Mgr 向 App 提供的 OBD 接口(即接口凭证 A)起到了防火墙的作用;(3)Mgr 层的 OBD 变化,也不会透传到前台,因为 App 向前台提供的 OBD 接口(即接口凭证 B)也起到了防火墙的作用;(4)每个 App 完成特定的业务,它组合 Mgr 完成业务逻辑,彼此之间也没有调用依赖关系,因此整个系统的 App 模块依据业务实现了一个正交划分;(5)前台、App 层、Mgr 层都只依赖于其下层模块,没有同层依赖和跨层依赖。2.32.3 系统详细介绍系统详细介绍.1 WebWeb UIUI层层使用AppFrame 4.0开发,实现基于浏览器的用户界面,并将管控功能添加进来;其底层采用 OpenBroker Java Client,连接后端的 VisiBroker CORBA 服务。.2 SvrSvr层层Svr层不需要开发人员进行编码(因此不存在任何业务逻辑) ,而是由OpenBroker将App层的业务逻辑(从物理上)封装为完整的服务,提供给各种类型的客户端,由此做到业务逻辑的收敛和重用。Svr层的主要功能:功能描述服务的初始化和反初始化完成配置文件、日志、数据库连接、Cache 设置、OpenBroker、管控等模块的初始化和反初始化事务控制根据 App 层是否抛出事务的异常,来决定当前事务需要作 commit 还是 rollback,即没有事务异常且没有任何更改数据的操作就提交当前事务,否则回滚当前事基于 CORBA 的上海移动运营支撑系统的模块设计与开发12务数据库连接池管理提供 dbpool 类对数据库连接池进行管理,功能包括连接的分配、回收、断连检查;此外,还提供数据库连接个数动态伸缩的功能管控规则的判断和处理如果在每个需要管控的环节都对管控规则进行判断和处理,会影响业务的执行效率,因此将管控规则的判断收拢到 Svr 层进行集中处理,将规则结果直接交给各个管控环节进行处理预埋服务功能对 VisiBroker CORBA 服务,有时需要对进行各种管理,比如判断服务是否正常、动态调整日志级别、动态修改数据库连接数、动态修改管控规则、获取每个服务的运行情况等服务的重新组装和发布从服务部署的角度,可以组合多个 App 形成一个单独的服务;也可能将 App 层的服务以其它的名称进行发布和管理这些功能都由 Svr 层完成动态使能和禁止服务的功能有时需要临时禁止某些服务(比如数据库倒数据) ,如果此时发生调用则向前端返回指定错误消息,稍候重新使能服务自动切换数据库(比如备份库)的功能对类似客服这样的系统,需要提供 724 的服务,但营帐数据库难免需要的更新和维护,这时可在 Svr 层自动将数据库连接切换到 BCV 这样的备份库,继续向前端提供查询类的服务.3 AppApp层层App层是主体业务逻辑层,对外提供基于OBD的业务接口。该层采用OBD语言对接口进行重新定义,禁止将数据库的表结构作为模块间(比如前端和后端间)的接口。通过这样的操作,使得App层提供的接口是基于业务的,其运算主体也是基于业务数据的,App层之间不能互相调用,只能调用Mgr层接口,最终由Mgr层完成将基于 CORBA 的上海移动运营支撑系统的模块设计与开发13业务数据转换为数据库表中的数据。App层的特点:特点描述抽象的接口定义方式采用 OBD 接口语言定义模块间接口,每个 App 模块对应一个动态库形式的物理接口面向业务定义接口契约App 层不允许将表结构透传到前端,而是要求用业务要素定义前后端的接口减小了前后端的依赖除了剔除了表结构变化造成的前后端接口依赖外,还提供了未使用的数据变化不造成影响的功能,从而从数据层面减小了模块间的依赖App 层功能的单一化在 App 层只完成业务逻辑运算,不能进行任何数据库操作;数据库运算通过 Mgr 层完成App 层之间不互相调用通常每个 App 对应系统中的一类业务,系统内业务的增删对应各个 App 模块的增删;定义 App 层的模块不能互相调用虽然这种定义损失了部分 App 层上的业务逻辑复用,但由此可以带来更好的模块稳定性、降低了模块间的依赖程度,并且业务逻辑复用可以由 Mgr 层的共享和业务规则配置化进行补偿业务规则的配置化可以使用业务逻辑规则配置化功能使业务实现更灵活的业务处理逻辑不能进行事务控制的操作事务控制交由 Svr 层完成,默认情况下在 App 层执行完毕后 Svr 进行事务提交,如果需要进行事务回滚则在 App 层抛出指定异常即可.4 MgrMgr层及层及KernelKernel层层Mgr层使用OBD语言定义接口,向App层提供数据域中的各种基本操作。Mgr层实现一个数据域中原子的业务逻辑和业务数据、数据库数据间相互转换基于 CORBA 的上海移动运营支撑系统的模块设计与开发14的功能(即将Mgr层定义的OBD接口数据保存到数据库(也可以是文件系统或者某个服务)中,或反之)。因此,表结构的定义在Mgr层就停止了向上传递,表结构的变化不一定影响到App层和Client。Mgr层的特点:特点描述抽象的接口定义方式采用 OBD 接口语言定义模块间接口,每个 Mgr模块对应一个动态库形式的物理接口实现一个数据域中原子的业务逻辑的功能通过 kernel 层提供的数据对象完成本领域中的基本业务逻辑操作实现业务数据和数据库数据间相互转换的功能由于 Mgr 向 App 提供的 OBD 接口是基于业务数据的接口,因此 Mgr 需要完成业务数据和数据库数据间相互转换的功能Mgr 之间不互相调用每个 Mgr 模块都根源于其数据域,而数据域在系统中是不互相重叠的,因此 Mgr 模块也不能互相调用私有的 kernel 层每个 Mgr 模块都有一个私有的 kernel 层,完成本数据域中的 ORM 功能;配合在 Mgr 层中的otl 操作,可以完成本数据域中的各种数据库操作业务规则的配置化可以使用业务逻辑规则配置化功能使业务实现更灵活的业务处理逻辑不能进行事务控制的操作同 App 一样,Mgr 的事务控制最终交由 Svr 层完成,如果需要进行事务回滚则在 Mgr 层抛出指定异常即可每个Mgr模块内部有kernel层,kernel层使用autogen产生,为简化常用的增删改查等数据库操作,允许在kernel层实现ORM的功能,同时提供kernel类到接口类的数据转换功能。基于 CORBA 的上海移动运营支撑系统的模块设计与开发152.42.4 系统开发系统开发介绍介绍.1 系统前端开发介绍系统前端开发介绍前端开发目录结构如图 2-9 所示:图图2-92-9 前端目录结构图前端目录结构图图2-9 的简要说明:(1) config:配置文件目录,该目录下主要包含相关的配置文件;(2) src:java源代码目录,按模块划分,每个模块目录下分web和service,分别存放Action和Service类;(3) lib:项目使用的lib库;(4) obd:OBD文件存放目录;(5) doc:文档目录;(6) webroot:jsp页面存放目录;基于 CORBA 的上海移动运营支撑系统的模块设计与开发16前端开发流程首先是根据OBD生成客户端代码,实现相应的功能,具体流程如图 2-10 所示:获取后台OBD定义文件OBD2JAVA生成OBD的CLIENT代码AppframeConfigTool根据OBD文件生成BO文件(不用再生成Bobean文件)AppframeConfigTool生成Set,DS文件创建Action单元测试开始结束编制JSP文件创建JavaBean图图2-102-10 前端开发流程图前端开发流程图基于 CORBA 的上海移动运营支撑系统的模块设计与开发17.2 系统后端开发介绍系统后端开发介绍后端开发目录结构主要包含 svr、app、mgr、tools、baselib 等目录,其中svr、app、mgr 分别对应 svr 层、app 层、mgr 层的代码,tools 目录下是系统的常用工具软件,baselib 目录下是系统需要的基础库,如图 2-11 所示:基于 CORBA 的上海移动运营支撑系统的模块设计与开发18图图2-112-11 后端目录结构图后端目录结构图后端开饭流程:(1) Kernel 层开发:Mgr 模块中的 kernel 层包括一个 db 文件。编写Makefile,编译并生成 .so 库文件,并安装到指定文件下;(2) Mgr 层开发:编写 Mgr 层的 OBD 文件,一个接口定义文件 _mgr.obd 一个结构体定义文件 _mgr_def.obd 编写 Makefile 并预编译生成 _i.h 和_i.cpp 文件。实现 _i.cpp 文件的接口编译生成 .so 库文件,并发布到指定的位置;(3) App 层开发:建立 OBD 文件,包含 _app.obd 和 _app_def.obd 编写Makefile 文件,并预编译生成 _i.h 和 _i.cpp 文件。实现 _i.cpp 文件的接口,并编译生成 .so 库文件,发布到指定位置;基于 CORBA 的上海移动运营支撑系统的模块设计与开发19(4) Svr 层开发:编写 .cfg 进程配置文件,配置进程包含的 app 层的库,配置数据库连接。然后便可以通过统一启服务的文件启后台 CORBA 服务,到此就完成后端的开发工作;基于 CORBA 的上海移动运营支撑系统的模块设计与开发20第三章第三章 满意度调查功能需求与总体设计满意度调查功能需求与总体设计3.13.1 满意度调查功能需求描述满意度调查功能需求描述.1 菜单名称及路径菜单名称及路径菜单名称为“满意度调查” ;受理的路径是“营业受理基本功能满意度调查” 。.2 功能功能客户在营业厅、客服热线(10086 和 12580)接受服务后,进行满意度调查,收集客户在各服务渠道办理业务的评价信息。客户在营业厅办理业务后,系统自动触发双屏/小键盘上的满意度评价内容。如客户未进行评价直接离开,则营业人员触发短信满意度评价,则系统自动下发评价短信:“感谢您前来 XX 营业厅办理业务!请直接回复数字对我们的服务进行评价:1 非常满意,2 满意,3 一般,4 不满意,5 非常不满意。不愿意收到此信息请回复 0。 ” (XX 为该员工工号所在的营业厅) 。对于选择“非常满意”和“满意”的客户,在收到客户发送的评价短信后回复:“感谢您的满意评价,希望我们的优质服务能给您带来愉快,祝您身体健康。中国移动上海公司” ;对于选择“一般” 、 “不满意”和“非常不满意”的客户发送:“感谢您对我们工作的支持,我们将努力提高服务质量,希望下次能够让您留下满意的评价,祝您生活愉快。中国移动上海公司” 对于选择“不愿收到”的客户加入到黑名单库中,不再下发此类信息;每用户号码每天下发不超过一次,下发后 6天以内不再发送同样短信。.3 业务流程业务流程客户在营业厅办理业务后,系统自动触发双屏/小键盘上的满意度评价内容。用户开始对服务进行评价,系统保存用户的评价信息。如果用户没有进行评价直接离开,则营业人员触发短信满意度评价,则系统进入短信进行评价方式,首先查看基于 CORBA 的上海移动运营支撑系统的模块设计与开发21该用户是否需要发送短信,如果该用户在 6 天内收到过同样的短信或者该用户是黑名单用户,则不需要发送短信,系统直接显示“评价短信已成功地发送给用户” ;如果需要发送,则开始发送短信“感谢您前来 XX 营业厅办理业务!请直接回复数字对我们的服务进行评价:1 非常满意,2 满意,3 一般,4 不满意,5 非常不满意。不愿意收到此信息请回复 0。 ” (XX 为该员工工号所在的营业厅) 。对于选择“非常满意”和“满意”的客户,在收到客户发送的评价短信后回复:“感谢您的满意评价,希望我们的优质服务能给您带来愉快,祝您身体健康。中国移动上海公司” 并保存用户评价信息和评价记录;对于选择“一般” 、 “不满意”和“非常不满意”的客户发送:“感谢您对我们工作的支持,我们将努力提高服务质量,希望下次能够让您留下满意的评价,祝您生活愉快。中国移动上海公司”并保存用户评价信息和评价记录;对于选择“不愿收到”的客户加入到黑名单库中,不再下发此类信息,保存用户评价记录。业务流程图如图 3-1 所示:图图3-13-1 业务流程图业务流程图基于 CORBA 的上海移动运营支撑系统的模块设计与开发22.4 界面视图界面视图界面视图如图 3-2 所示,其中业务办理类别包括:充值缴费、新入网和过户、更换品牌套餐、积分兑换、买手机、VIP 业务、综合业务,满意度评价类别分为营业厅服务满意度评价和近期服务评价,功能按钮包括一个系统评价按钮和一个短信评价按钮。图图3-23-2 界面视图界面视图.5 界面流程说明界面流程说明营业员给用户办理完业务后,针对某个客户的业务需求满足情况进行调查,首先进入满意度调查主页面,选择办理的业务类型和评价类别后,点击开始评价,双屏展示评价选项供客户评选,如出现用户不满意情况,则需输入不满意信息并提交,反馈评价结果并入库。如果用户没有进行评价便离开,营业员需要点击短信评价按钮,触发系统进行短信评价模式,系统反馈评价结果并入库。基于 CORBA 的上海移动运营支撑系统的模块设计与开发233.23.2 满意度调查功能总体设计满意度调查功能总体设计.1 数据模型数据模型满意度调查功能用到的数据模型包括组织信息数据模型、发送短信数据模型、满意度评价信息数据模型和满意度评价记录数据模型,如图 3-3 所示:图图3-33-3 数据模型图数据模型图基于 CORBA 的上海移动运营支撑系统的模块设计与开发24.2 模块设计模块设计为实现满意度评价的功能需要分别在营业模块和短信模块增加新内容,营业模块的包图如图 3-4 所示:UI 层WebSVR 层APP 层MGR 层BusiOtherBusiRecordmgr_smsmgr_busirecordmgr_queryinfoKERNEL 层smsbusirecordqueryinfo图图3-43-4 满意度评价营业模块包图满意度评价营业模块包图基于 CORBA 的上海移动运营支撑系统的模块设计与开发25短信模块是一个独立的后端进程,每隔10秒会自动扫描短信接口表,如果发现有数据会实时处理。为实现满意度评价的短信发送和处理功能,短信模块需要增加以下内容,短信模块的包图如图3-5 所示:KERNEL层MGR层APP层SVR层SMSSatisfieldCommentsmsSendsmsReadsmsSendInterfacesmsReadInterfaceBusiRecord图图3-53-5 满意度评价短信模块包图满意度评价短信模块包图smsSend 和 smsRead 各有一个每隔10秒就自动扫描相应的短信接口表的线程,发现数据后可以调用相应接口来实现业务逻辑。例如在 SMS_SEND_INTERFACE 表中发现数据的时候,就需要将表中对应的信息以短信的方式发送给表中指定的用户基于 CORBA 的上海移动运营支撑系统的模块设计与开发26。基于 CORBA 的上海移动运营支撑系统的模块设计与开发27UI层是由前端开发;SVR层是进程配置层,不需要添加实现方法,只需增加进程的配置信息即可;KERNEL层是调用基础库的接口,也不需要实现;因此,后端开发的主要内容是实现APP层和MGR层的类和接口,营业模块的APP层和MGR层的类图如图3-6 所示:CIQueryInfoImp+get_orgNameById()CIBusiRecordImp+commit_satisfiedComment()CISmsImp+select_satisfiedCommentUser()+insert_smsSendBusi()+send_sms()+insert_satisfiedCommentUser()CIBusiRecordImp(MGR)+insert_satisfiedCommentRec()CSatisfiedCommentRecMgr+insert_satisfiedCommentRec()图图3-63-6 营业模块营业模块APPAPP层和层和MGRMGR层的类图层的类图 其中 CIBusiRecordImp 类属于 APP 层,CIQueryInfoImp、CI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030年中国线条型回风过滤网市场现状分析及前景预测报告
- 2025至2030年中国空调页面市场现状分析及前景预测报告
- 2025至2030年中国神奇疗肤水市场现状分析及前景预测报告
- 运动健康好处多课件
- 运动健康课课件
- 气管切开术并发症及防治策略
- 电影《长城》英文介绍课件
- 脑震荡的护理常规
- 幸福城建筑工程施工承包协议书
- 脑病诊断案例分享
- 人员异地办公管理办法
- 2025年新修订治安管理处罚法课件
- 提高服务意识培训课件
- 贸易公司员工职业操守行为准则制度
- 护理50项操作考核评分标准
- 22J403-1楼梯栏杆栏板
- GB/T 45792-2025专题地图地理底图编制规范
- 慢性阻塞性肺疾病急性加重(AECOPD)
- 2025-2030年中国固体氧化物燃料电池(SOFC)行业市场现状供需分析及投资评估规划分析研究报告
- 2025至2030年中国氟化磷腈橡胶行业市场现状调查及发展趋向研判报告
- 2025-2030中国微创仪器行业市场发展趋势与前景展望战略研究报告
评论
0/150
提交评论