北京师范学校网络教育:谁能提供一些公司规则之类的文件?谢谢!

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/26 16:27:04

近一段时间,公司开始应用自行开发规则系统(面向客户的)。
不过该系统没有提供冲突解决方案,因为现有的冲突解决机制,并不能比较好的解决商业上的问题,通常需要多种手段结合,导致管理上的复杂性,因此干脆不做这个功能,用人来解决(反正规则引擎也是模拟人的推理)。
但是没有冲突推理后的规则系统,看上去更像一个脚本系统。

因为目标是面向客户的,所以就不能像drools那样用java或者groovy写了。
需要用自然语言,当然局限于行业,(或许可以称为DSL,这样商业上可以吸引眼球)。
采用的机制是将java语言映射成自然语言,采用类似ilog的方式,对象就直接映射成业务上的名词,对象的方法映射成业务的动词。看起来不错,但是有问题的。
实际应用时就发现了,有时一个业务动作的用自然语言表述只要一句话。可是对应的java程序可能要好几个语句(中间用上临时变量等等)。
在现有机制下解决它唯一的办法就是加上一个方法wrap这些语句。

由于现有的机制是直接映射,导致严重依赖于现有的java对象体系,如果现有的java对象不适合直接映射时,就需要增加一个wrap方法。但是这样带来的问题很大,无法预知到底要做的什么程度才可以完备。同时,如果java对象体系没有完成,这边的自然语言就无法发展。

于是就想到了JetBrains的MPS和微软的意图编程,才理解为什么它们的设计那么复杂,因为一个真正的DSL与实际的编程语言之间的差距本身是巨大的,他们是两个不同世界的。