版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、杭州旗正信息技术有限公司施坚强大纲背景信息化现状通用问题通用突破现存问题尝试突破旗正解决方案规则引擎比较价值体现设计技术趋势设计思路基本原理总体架构接口设计实现要点技术特点产品优势应用设计用途应用范围最终用户工作变更数据处理应用输出程序变更预期效果后续扩展背景信息化现状通用问题通用突破现存问题尝试突破旗正解决方案规则引擎比较价值体现信息化现状基于数据库的信息化管理系统已渗透到企业运营的各个方面信息化系统需快速适应企业业务发展的变化,否则逐渐成为企业发展的障碍excel表格数据在企业中大量使用单一系统难以支撑企业的全部业务需求,分布式的独立小系统成为企业信息化的现实通用问题需求是目前信息技术面临
2、的最大问题需求沟通不畅。客户、管理人员、开发人员、测试人员理解可能不一致,容易误解。需求变更反应缓慢。客户理解上的小的需求变更,技术实现上可能影响巨大。对技术开发人员依赖过大。最详细的、精确的需求最终在程序员脑中或者在代码中。技术寄希望于限制需求或者预先封装变化点,但却总是对需求变化力不从心。通用问题-困惑及抱怨业务人员技术人员很难沟通技术老容易出问题需求变动总是被拒绝、或者被推迟技术人员需求总是要变动需求总是要求很急需求变动工作量太大当业务系统正式上线后,当业务需求变化时,业务部门总是希望技术可以马上实现业务需求的变化点,如果技术事先已经设计好并预留这种变化点,则可以很快对应。否则技术人员的
3、工作量非常大,而且也容易出错。通用突破-原因及探索业务需求业务逻辑描述容易想当然采用excel进行数据处理操作简单业务需求逻辑描述不够严谨技术实现程序语言与业务语言的差距太大技术需要多人分工处理数据层、逻辑层和界面层的实现技术人员容易误解业务1.采用尽可能和业务语言接近的方式来实现业务逻辑,采用技术人员、业务人员、管理人员都可以看得懂工具来定义规则。2.将数据层、逻辑层基础框架、界面层的实现自动化,技术人员只需要关注业务逻辑的实现,使得技术人员实现业务逻辑的工作量接近业务人员描述业务逻辑的工作量。3.让业务人员、管理人员也可以参与或负责业务逻辑的实现4.让技术人员可以减少做重复、琐碎、技术含量
4、低的工作通用突破-优秀框架解决方法优点优点不足不足利用复用技术,重用了很多代码和组件。减轻了大量开发工作。充分利用设计模式中封装变化点的技巧,能快速适应预想的需求变化采用优秀的框架能制作出非常好的效果。业务组件的设计并实现,可以简化大量的工作。对框架的依赖大,框架的设计影响其适用面对架构师要求高,需要全面了解框架才能进行优秀的设计对业务熟悉要求高,需要预先设计并封装变化点设计模式的目的是为将来世界的模型提供变化点、处理变化的需求。好的系统设计必须考虑可扩展性、灵活性和可插入性。通用突破-工作流解决方法优点优点不足不足实现业务上对工作流程的控制和管理。简化了流程控制逻辑的实现。简化了表单的设计和
5、制作。粗粒度的流程图难以定义复杂的逻辑处理对于流程节点的逻辑处理,仍然需要编写代码实现用xxx开发应用软件,会具有前所未有的高效率、高质量、高适应性。其目标是让每个应用软件开发人员成为优秀的系统分析员,而不是代码的奴隶。不用写代码便能生成各种各样的应用程序。通用突破-传统规则引擎解决方法优点优点不足不足实现业务逻辑的可视化定义,增强了业务逻辑实现的可读性。实现了业务规则的独立管理,真正实现业务逻辑的分析。实现了业务逻辑的快速变更,与office的配合使得业务人员可以参与业务逻辑的变更。rete算法的复杂性决定了配置规则的学习曲线很高需要优秀的系统分析师规划设计实现规则的结构需要优秀的架构师来优
6、化并考虑规则执行性能对数据结构的变化无能为力人工智能人工智能(ai)机器人视觉语音人工神经系统自然语言专家系统专家系统rete算法现存问题客户客户bpo对需求变更响应速度慢it系统不稳定, 差错率很高(尤其是新产品上线时);对客户业务或规则不够了解测试的时间长、联测的效率低。没有规范全面的业务规则文档、文档和程序不同步人员变动频繁(it、运营服务都存在这样的情况),新的人员在短时间内很难对规则进行详细的了解。每个客户的规则差异大,需求变更技术改动工作量大没有统一业务规则处理流程文档,运营、开发、测试部门理解的客户业务规则不一定一致尝试突破尝试突破尝试突破仍需改进仍需改进从delphi转到c#语
7、言用设计模式思想采用新的系统结构采用新的分布式架构设计采用开源规则引擎来处理理赔规则采用新的工作流引擎业务规则实现仍然不够透明业务规则的规范化、标准化工作仍需强化保险行业数据结构和规则的共性分析仍需加强基于开源规则引擎和工作流引擎的性能仍成问题开源规则引擎实施工作量大,适用范围小旗正解决方案-实现目的业务业务技术技术将业务逻辑的实现白盒化,采用业务语言来展现业务逻辑的实现实现业务规则的完全配置化(无编码)实现增强对系统中应用的业务规则的控制和管理业务人员可以清晰了解已实现的规则,并且清楚变更规则所需要的时间和工作量实现业务逻辑和数据结构描述与实现一一对应。实现业务逻辑变更和实现变更基本同步。强
8、制分离业务逻辑、数据存储、界面表单、流程控制简化琐碎的处理业务逻辑开发工作,减少沟通时间可以将精力集中在架构设计、数据结构设计、算法设计、高层业务分析等更有技术含量的工作1. 业务和技术分管更加明确。将程序员从琐碎的业务逻辑编码中解放出来。2. 业务人员可以掌控全面完整的业务规则、技术人员可以专心于提高技术水平旗正解决方案-改良规则引擎支持变化不光支持业务规则处理逻辑的动态变化支持调用接口数据结构的变化。支持数据库源结构变化支持xml结构变化支持excel源结构变化适用面支持批量数据处理和传递支持数据字典等定义支持常量结构定义支持子规则、循环类规则性能顺序执行:配置阶段确定执行路径静态化:编译
9、成静态可执行代码运行引擎最小化:减少占用资源,提高稳定性易用性支持所有结构复制、粘贴可视化处理数据简化自动化测试流程图方式展现规则流程最终执行java代码实时展现11/12/2021杭州旗正信息技术有限公司15规则引擎比较比较点开源drools其他商用引擎visualrules特点算法采用reta算法进行规则匹配采用reta算法进行规则匹配保持传统逻辑处理思路,顺序执行容易理解和跟踪错误执行采用解析执行的方式解析执行或者静态化运行编译规则包后,动态加载执行速度最快数据库引用hibernate等orm库引用数据库操作对象动态or映射,捆绑到规则包中数据库结构也可配置变化接口传入java对象,支持
10、jsr94传入java对象或xml,支持jsr94支持任何对象和数值,不支持jsr94规则包对外数据接口可动态变化数据处理直接调用外部定义java类外部java类映射成bom调用内置支持表格、数据字典、树结构、xml、soap等基本无需编程支持2021年11月12日16价值体现价值体现业务规则实现透明化管理行业规则标准化可供客户追溯和稽核业务规则实现加快业务规则变更的响应速度缩减业务规则变更所需要的人手减少业务规则技术实现的错误设计技术趋势设计思路基本原理总体架构接口设计实现要点技术特点产品优势技术发展趋势语言的简化汇编-面向过程语言-面向对象语言php、jruby等快速开发语言的出现c# j
11、ava都在不断的精简语法复用技术组件并配合可视化配置界面的大量使用soa、spring等技术的出现ext、开发平台框架等基础平台的使用生成技术uml生成代码、mda等技术的使用hibernate、xdoclet等根据xml生成代码适应变化设计模式的广泛应用工作流支持业务流程的变化和管理规则引擎支持业务规则的变化和管理设计思路语言上的简化业务语言定义数据对象和处理方法中文语言描述程序语法隐藏并自动化异常、日志、调用等的实现利用复用技术数据库表、查询、存储过程对象的实现表格、字典、树结构等对象的实现xml、soap调用的实现生成技术根据配置的数据对象以及规则,生成对应的程序语言代码根据表单的配置,
12、生成表单的界面代码适应变化动态加载根据规则生成的代码,“零时间”响应业务语言描述并配置规则。实现业务逻辑与程序逻辑的一一对应,同步支持业务变化。流程图方式展现规则流转控制。适应流程变化设计思路-取长补短借鉴借鉴摒弃摒弃借鉴规则引擎的业务语言表述逻辑的特点,制作易用性强的业务规则配置界面借鉴hibernate、ibatis等ormapping技术,实现对象化方式操作数据库。并改进使其支持动态加载。同理以对象化的方式来操作xml结构,soap数据源以及excel数据源。借鉴excel操作数据的灵活性,设计实现动态的表格、字典、树结构。借鉴工作流的特点,实现规则流转的流程图展现。借鉴junit等自动
13、化测试的实现,简化规则包测试借鉴配置管理工具,实现规则包的版本控制摒弃传统规则引擎必须在外部定义数据结构的局限,实现数据接口动态化摒弃传统规则引擎不能定义子规则以及不能定义循环规则的特点。实现规则的嵌套调用。摒弃传统规则引擎采用rete算法来决定规则执行顺序。通过设定固定的执行顺序,并将逻辑静态化,实现性能最优、消耗资源最低。摒弃传统规则引擎条件中只能定义数据对象,而不能定义操作等局限。并且内置表格循环、异常处理等操作。摒弃传统规则引擎不能直接在规则中操作数据库,并且不支持数据库结构的动态变化基本实现原理代码实现代码实现规则实现规则实现变量定义date xiaofei ;/消费时间double
14、 tonghua ; /通话时间double feiyong ; /费用逻辑代码if ( xiaofei. gethours() =22 feiyong = tonghua*0.3 ; if ( xiaofei. gethours() 7) & xiaofei. gethours() 22) feiyong = tonghua*0.6 ;变量定义常量定义规则配置2021年11月12日21实现原理-开发思路编程方式编程方式规则配置方式规则配置方式1.变量定义2.编写hibernate类3.编写dao类4.编写action类5.编写dataset类6.编写界面1.定义规则包接口变量2.导入
15、数据库结构信息3.定义计算表格4.定义规则集和规则5.定义页面模板6.生成界面代码1. 全配置方式实现业务规则相关的编码工作2. 保持传统编码方式的思考逻辑3. 非空、异常、日志、轨迹自动处理2021年11月12日23总体结构规则引擎规则配置器规则管理系统数据库配置器页面配置器规则服务操作界面业务逻辑数据存储web应用框架数据库操作类htmlajaxjsp规则包规则引擎xml操作类excel操作类表格操作类规则服务页面配置器规则配置器数据库配置器pojoejb业务规则管理系统公共类2021年11月12日24接口设计业务逻辑规则引擎业务逻辑规则引擎业务逻辑规则引擎规则服务java客户端c#客户端
16、ajax客户端jar类接口规则编辑器brms编辑规则测试规则审核规则发布规则各种业务规则(算法、流程、公式、政策、策略等)应用socket接口soap接口实现要点-数据接口目的目的实现实现外部程序可以直接将值传递给规则包处理执行。至少支持数值型、字符型、日期型、list、map等类型,并且取得返回结果支持将类直接传递给规则包执行规则中可以直接调用类中所包含的公共属性和公共方法可以直接从外部的静态类中导入一些功能方法实现可以在规则包内部定义变量可以定义常量对照支持数值型、字符串、日期等常见结构以及常规的判断和累加操作支持数据对象与业务描述的对应,并支持用组分类支持外部调用程序可以将值传给规则执行
17、,并且取得返回的处理结果。支持内部设定临时的变量、支持常量定义支持从外部的java代码调用公共操作方法支持java类对象的传递支持类对象的属性和方法的定义和调用对象库变量定义实现要点-数据库操作目的目的实现实现数据库结构的变化动态适支持对表的增、删、改、查等基本操作支持自定义的sql语句来返回所需的结果集支持调用存储过程支持多种数据库支持开发环境、测试环境、运行环境下数据库链接自动切换自动检查表结构的变化,自动检查sql语句的合法性从数据库直接取得表的结构信息,并生成操作该表的增、删、改、查等操作方法根据sql语句,取得返回结果集的信息,自动取得操作该结果集的方法根据存储过程名,从数据库中取得
18、存储过程的参数信息以及返回结果集的信息,并生成操作该结果集的方法数据库对象定义实现要点-计算表格目的目的实现实现像excel一样方便的操作数据规则以及规则集可以直接对表格进行列操作可以方便进行汇总数据、匹配数据操作简化批量数据处理支持数据配置制作一个表格的类对象实现可以直接设置表格的列信息缺省提供对表中数据进行汇总、匹配等操作规则包测试运行后,可以看到运行后的数据支持从excel中导入数据实现要点-其他结构目的目的实现实现用树状结构定义数据支持重复树节点的定义对象化处理xml实现数据字典功能处理excel数据源,处理表格以及纵横表格从数据库中取常量信息可以自定义函数实现支持树状结构的类采用数组
19、方式来存储树状数据制作xml处理接口类实现数据字典类,可视化维护数据运行阶段调用excel数据源根据数据库定义常量表java函数编辑器xmlxml结构定义结构定义树结构定义树结构定义数据字典定义数据字典定义配置表格数据定义配置表格数据定义实现要点-规则配置目的目的实现实现支持规则的初始化、条件、动作、否则如果、异常处理等操作支持规则的轨迹跟踪支持子规则、循环规则支持规则流程图支持决策表支持测试运行规则在规则中设置了初始化、条件、动作、否则如果、异常处理等不同操作设置在每个规则执行时记录变更数据状态,并且处理异常的位置通过规则集,并且可以设置规则集的进入条件通过规则树的设置同时生成流程图直接可以
20、在配置界面时测试运行业务规则配置2021年11月12日34技术特点将业务逻辑完全编译成二进制代码执行,是目前运行速度速度最快最快的规则引擎统一了trl和brl,bom中集成了or mapping,提供了目前最简便易用简便易用的规则编辑器规则服务接口接口支持数值等非对象的传递,解决了传统规则引擎变更规则传递参数传递参数必须重新由技术人员修改并编译对象类的问题。并且可以配置并生成生成对应的用户操作界面界面通过规则树规则树来描述规则的流转控制结构,解决了传统规则引擎难以在规则编辑阶段控制规则的流转规则引擎基于动态动态or映射映射的机制,无缝集成了数据库操作层,规则中可以直接操作数据库中的数据,并且让
21、数据库结构和规则一样,可以随时变化支持在编辑器中就可对规则进行执行测试测试、支持规则执行执行轨迹轨迹跟踪,解决了传统规则引擎必须由技术人员才能运行和调试规则的问题产品优势灵活旗正规则平台不光使得业务规则可以适应需求变化,包括数据结构、数据源结构等也能适应需求变化规则引擎内置批处理数据对象,适用面更广易用性旗正规则编辑器是目前最方便使用的配置器,学习曲线很低性能旗正规则执行的速度和所占用的系统资源和手写代码基本一致,不存在传统规则引擎所面临的性能问题应用设计用途应用范围最终用户工作变更bpo应用输出程序变更预期效果后续扩展设计用途将业务规则从程序中独立出来实现业务规则透明化、可监管稽核适用于需要
22、业务规则随时适应变化的系统对批量数据处理有优势2021年11月12日38应用范围b/s结构系统中替换业务逻辑层实现通过规则服务,为其他系统提供统一的规则控制和处理。在工作流系统中,通过编写逻辑调用脚本,在工作流外部控制节点逻辑通过规则执行器实现独立的数据处理程序最终用户业务人员整理业务规则,整理相关数据和文档参与规则设计和开发。可负责调整部分规则技术人员相关数据结构设计以及永久数据存储设计业务流程算法设计以及规则结构设计协助规则执行纠错测试人员组织测试数据和测试用例执行测试用例,并反馈问题审核并发布规则管理人员查看已应用规则监控实施进度规则设计优化技术工作变更编程开发方式编程开发方式规则开发方
23、式规则开发方式采用编写代码的方式来实现采用类和方法调用的方式来实现逻辑的流转采用类的方式来实现数据结构的定制采用变量来定义数据,采用编程语言来定义逻辑采用鼠标选择的方式来实现采用规则集和规则以及设定优先级的方式来控制流转采用树状结构、表格等方式来定义数据结构采用业务语言定义数据和逻辑1. 简化了在数据库中定义数据以及提取数据的开发工作2. 简化了业务逻辑的开发工作3. 简化了批量数据处理工作4. 简化了自动化测试工作cdg应用场景场景实现方式实现方式预计效果预计效果1新契约输出模块替换现有的输出模块的程序。通过配置实现读取数据、处理数据以及生成xml文件。减少编写输出模块的开发工作,降低错误率
24、,加快测试进度。3保险理赔将原先采用编码实现理赔规则的代码,采用调用规则引擎的代码替换掉,理赔规则采用规则配置器进行配置。规范理赔规则,实现理赔规则的实时变更,加快变更时间。4信用卡处理规则将原先采用编码方式实现的信用卡规则代码,采用调用规则引擎的代码替换掉,信用卡规则采用规则配置器进行配置。规范信用卡处理规则,实现规则的实时变更,加快变更时间。5嵌入工作流将工作流中的节点的处理逻辑编写采用规则引擎方式替换可以进一步增强工作流的检验强度等功能,可以增加工作流的灵活性6数据分析对于企业运营数据,进行后期数据分析,或者决策分析,采用规则方式来配置分析逻辑,并且自动生成统计图表等更方便的从现有的数据
25、中,整理出规律或者结果等。输出程序变更模块模块现有方式现有方式解决方案方式解决方案方式优势优势1运行环境在windows 2003下,以exe的形式启动。在jdk1.5的环境下,以shell程序或者服务的形式来进行启动。可在多种操作系统下发布应用2 调用方式exe启动后,程序内容完成轮循以及处理数据的操作。sheel程序完成轮循操作,规则包完成处理逻辑。可选择多种调用方式3 数据库处理在程序中,根据需要执行sql语句来取得数据,sql语句比较零散。统一提取数据库数据,之后放到内存中处理,不再重复读取数据库。数据库操作集中管理,提高处理性能4 银行代码等表格数据以数据库表的形式加以维护,读取时通
26、过sql语句得到。从excel中直接导入内存表格,在内存中进行处理。便于维护,提高性能5 规则分类管理写在程序中,以类名或者包名对所处理的规则进行分类,平面结构可以通过定义子规则的方式来分类规则,可采用树状结构描述。便于阅读和定位,便于修改,6 xml处理在处理逻辑的过程中,对xml进行处理集中将处理完的表格数据,统一的进行xml处理简化工作原先采用c#语言编码实现输出程序,现在采用规则配置实现预期效果内容内容现有方式现有方式解决方案方式解决方案方式优势优势1险种规则需求分析运营部分分析保险公司险种需求,整理word文档以及excel表格与保险公司确认。通过事先设计标准化的规则处理流程以及规则术语,以图形、excel表格、word文档等多种方式确认。规范规则处理流程,节约沟通时间2新险种程序开发由程序员,采用c#程序进行编写,编写之后,通过测试部门进行测试。出现问题,根据测试报告,程序员通过调试解决问题。由程序员通过规则配置器配置规则,运营部门直接参与设置以及确认规则的正确性。测试人员可以直接在测试阶段发现问题,并协同程序员和运营部门加以解决。多人同时参与规则的配置和测试工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 历史北宋的政治同步课件- -2025-2026学年统编版七年级历史下册
- 2026年排球垫球技术稳定性训练研究
- 2026年施工现场安全事故处理方案
- 2021-2022学年浙江省宁波市象山港书院、蛟川书院九年级(上)期中数学试卷-带答案详解
- 詹姆斯火箭交易达成协议书
- GB46768-2025《有限空间作业安全技术规范》解读
- 学生宿舍楼施工组织设计模板
- 五洗活动策划方案(3篇)
- 烟草展销活动方案策划(3篇)
- 营销全年活动策划方案(3篇)
- 婚礼当天详细流程
- 热工与流体力学基础习题集(答案)
- GB/T 8629-2001纺织品试验用家庭洗涤和干燥程序
- GB/T 33598-2017车用动力电池回收利用拆解规范
- 电视节目导播-串讲课件
- 配网设计基础知识培训88课件
- 《教育管理学》课件
- 2023年湖南生物机电职业技术学院单招综合素质考试笔试题库及答案解析
- 每日食品安全检查记录、安全排查治理报告、安全调度会议纪要(示例)
- 包头医学院临床麻醉学教案
- DB33-T1240-2021《建筑幕墙工程技术标准》
评论
0/150
提交评论