系统设计中业务规则与系统规则的应用

AI编程助手Trae的进阶玩法:如何用自然语言设计复杂业务逻辑 本文探讨了AI编程助手Trae在复杂业务逻辑设计中的高阶应用,展示了如何通过自然语言实现从需求描述到系统架构的智能转换。文章详细介绍了Trae在状态机设计、微服务拆分、业务规则表达、遗留系统重构和性能优化等方面的实战技巧,帮助开发者提升AI驱动开发的效率与质量。 阅读详情

系统设计中业务规则与系统规则的应用

        在面向商业应用开发系统的时候,常常会遇到业务规则的说法。这些商业规则也可称之谓策略,对业务流程起到了限制和约束的作用。在传统的应用系统开发和实施过程中。业务规则(Business Rules)是在需求分析阶段由用户提供,内嵌在程序代码中的。应用系统一旦开发完成业务规则便相对固定不易改动。然而业务规则充斥在应用系统的各个方面和角落,并且往往需要频繁的变更.应用系统的每一项策略、规则的变化都需要开发人员对源代码进行修改.限制了应用系统的灵活性和生命力。因此目前有许多商业或开源产品用来支持将业务规则从IT应用中分离出去,以提高应用系统的灵活性。例如IBM的business process server等。这些新产品都使用了业务规则引擎技术。使用规则引擎可以在系统开发中更好的管理规则,避免代码随规则的改变而修改。

         举个例子来了解什么是业务规则,大家都买过书,书店对于不同级别的会员实施不同的折扣,如果是金牌会员折扣为9折,白金会员折扣为8折。这两个不同折扣就是业务规则,它可能是易变的,可能在不同节假日调整这个折扣。

         看完这个例子,我们再讨论业务规则对系统设计的影响。假如我们要开发一个会员管理系统,这个系统需要对不同级别会员在结算时实施不同的折扣。如果我们这些规则内嵌到代码中,可以相像,代码发布之后将会成为一场恶梦,一旦商家的折扣策略发生变化,我们都需要重新修改代码、重新编译和部署。没有人愿意为这种系统买单。最理想的作法是把这些业务规则都集中管理并且和应用系统分离,当应用系统需要使用的时候访问规则引擎,规则引擎负责查找匹配规则,并执行相应规则的操作,将操作的结果返回给应用系统。而业务规则引擎可以独立于应用系统,业务规则可以独立变化,从而使用系统可以从容应对商业变化。

         我们开发的系统可能没有过多复杂的业务规则,没有必要使用重量级的规则引擎产品,但具备分析和管理业务规则的思想对于开发系统也是有益的。我们可以把业务规则集中在文档中记录,由某个组件专门处理这些业务规则,使得这些外部约束不会分散在整个系统中而难于维护。即使是做不到集中和自动管理,也要在尽量把规则的约束参数化,通过外部配置来支持最大的变更。比如在上面的会员系统中,如果商家确定只会有这两种会员,且不需要过于灵活,可以把不同的折扣写入到配置中,允许商家通过相应的接口来配置这两个折扣。

        当我们开发的商业应用到一定程度时,我们还会遇到系统规则,系统规则是指当我们用计算机系统实现这些商业应用时,为了保证商业应用的正确和有效等,对计算机系统施加的限制,系统规则并不是来源于业务规则。例如上面的系统中,如果系统要支持会员在线订购,为了保证系统正常有效,必须限制并发访问量,比如如果并发访问会员达到5000时,需要限制会员的登入。然而多数时候业务规则和系统规则是难于分辨出来的。例如:如果用户输入密码失败超过5次后,即冻结用户帐户。这个规则很难说清楚是业务规则还是系统规则。那么如何来区分二者呢?

        评价一个业务规则需要从三个方面来进行:

       1 可执行性。即一条规则可以让人知道做什么或不做什么。例如不用身份证就不能修改帐户密码符合此要求,而用户身份必须合法则不符合此要求。

       2 业务适用性。即一条规则适用于业务,而不是适合于业务的支撑系统或系统的运行平台。

       3 业务描述性。即一条规则是可由业务语言描述的,而不是只能由系统语言或平台语言描述。

       有了这三条再看上面的例子,就容易得出它是个系统用例,而非业务用例。其不符合需求2。业务规则在系统实现时表达为系统语言形式,但其只是表述形式发生变化,其仍然是业务规则。

        按照业务规则相同的思想,系统规则也是可以考虑集中管理的,由“系统规则引擎”来实施相应的规则匹配和执行。我们可以在系统中实现自己的规则管理器,如果规则变化不大规则也可以实现自己的规则配置管理。

         简单的规则管理有两种层次,一种是把规则和规则执行编码到应用中,但规则的条件边界通过配置可变化。更高层次是规则和规则执行以及边界条件都抽离到单独的组件来管理,个人能力有限,不能详细描述,这里只抛砖引玉这么多。

    


16、业务流程与系统设计综合解析 本文详细解析了业务流程与系统设计中的多个核心内容,包括基础术语、BPMN流程建模、问题框架分析、需求类型、用例场景、产品分解结构、甘特图与看板应用,以及Fizzit.com的业务规则与流程。通过具体案例和图表,全面阐述了如何规划和管理业务流程,提高系统性能与可靠性,适用于业务运营和系统设计的相关实践。 阅读详情

相关推荐

基于AI的电商运营报表系统设计方案

在当今竞争激烈的电商市场中,运营者需要及时、准确地掌握业务数据,以便做出明智的决策。传统的电商运营报表系统通常依赖人工手动收集、整理和分析数据,不仅效率低下,而且容易出现错误。基于AI的电商运营报表系统旨在利用人工智能技术,自动化地处理和分析电商运营过程中的各类数据,如销售数据、客户数据、商品数据等,生成全面、准确且具有前瞻性的报表。本方案的范围涵盖了系统的整体设计,包括数据采集、数据预处理、数据分析、报表生成和可视化展示等各个环节。

AI架构全栈开发实战笔记 360

需求用例分析之四:业务规则

在雅各布森用例分析方法和科伯恩用例分析方法中其实都没有“业务规则”的属性,在科伯恩方法中有个相近的属性是约束条件。但是业界使用中常常会给用例加上这个属性,这是为什么呢?为什么两位大师没有加上,是大师们疏忽了?而为什么不少人加上了呢? 从时间和传播上很容易推断,业务规则的来源是传统的需求规格说明书。在传统的需求规格说明书中,整理提炼业务规则或称业务逻辑是其中核心的分析产物。受到传统需求规格说明书的

高效软件开发 2万+

创新驱动:AI应用架构师的智能金融系统设计新突破

回顾本文,我们拆解了智能金融系统设计中的四大核心突破数据架构:用联邦学习解决“数据隐私”与“多源整合”的矛盾;决策架构:用自适应决策替代静态规则,实现“动态优化”;交互架构:用主动预测替代被动响应,让系统“懂用户”;运维架构:用实时可观测替代静态监控,实现“自我修复”。这些突破的核心不是“用更先进的AI技术”,而是**“用AI解决传统架构解决不了的问题”**——比如数据隐私、决策灵活性、用户需求识别、运维效率。

AI智能探索者的博客 820

软件开发中描述用例的书写规约

 描述用例规约应该避免这样一种误解――认为由参与者和用例构成的用例图就是用例模型,用例图只是在总体上大致描述了系统所能提供的各种服务,让我们对于系统的功能有一个总体的认识。除此之外,我们还需要描述每一个有例的详细信息,这些信息包含在用例规约中,用例模型是由用例图和每一个用例的详细描述――用例规约所组成的。RUP中提供了用例规约的模板,

wanwanwan123的专栏 6107

Java实时业务风控系统设计与实现

大数据技术的产生和发展,是伴随着互联网以及移动互联网用户数量的快速增长,以及社交网络、物联网、云计算等技术的普及与进步。其核心在于利用各种工具和平台,对海量数据进行存储、分析和处理,从而提炼出有价值的信息。从早期的批处理系统到现在的流处理技术,大数据技术经历了如下几个发展阶段:Hadoop的出现:Hadoop的出现是大数据技术发展史上的一个重要里程碑。它提供了一个可扩展的、可靠的分布式存储和计算平台。NoSQL数据库。

weixin_33816734的博客 1385

NC6.X数据字典详解及应用实践

数据字典作为信息系统设计的核心部分,不仅定义了系统内部的数据结构,而且在系统设计与维护中扮演了至关重要的角色。它是数据库设计的基石,为开发团队提供了一个共享的、标准化的参考文档。在信息技术的初期阶段,数据字典主要是用来定义和存储数据结构信息的一组文档或数据库。早期数据字典的主要功能集中于为数据和数据库元素提供元数据(关于数据的数据)的存储和管理。它允许数据库管理员(DBA)和开发者追踪数据库中的表、字段、数据类型、关系和约束等信息。

weixin_42181686的博客 1012

WMS系统各业务环节规则及功能设计

导语大家好,我是智能仓储物流技术研习社的社长,你的老朋友,老K。知识星球*原创电子书*深海社区*微信群WMS(Warehouse Management System) 仓储管...

nickelwang的博客 8377

信息系统业务规则的设计模式

信息系统业务规则的设计模式 来自互联网 供大家参考

业务规则入门简介

引言 业务规则,通常被人们描述为业务逻辑的外部化或业务自动化,是一种实现和强制实施业务策略的方法;而业务规则管理系统(BRMS )则是加速变更过程的方法。在我作为业务规则架构师的经验中,帮助确定业务规则一直是最具挑战性的任务之一,因为业务规则一向难于理解。但是,如果理解了业务规则是如何构成的,则理解业务规则也不是那么困难。本文通过研究一个来自保险行业的实际示例,尝试揭开能将结构化逻辑分类成为

OR家园-howard 4617

用户存续期价值评估(CLV) 一

用户存续期价值评估(CLV) 1 一. 定义 ​     用户存续期价值(Customer Lifetime Value),也可称为CLTV、LCV或者LTV,是企业对未来一个客户与其的关系所带来的净收益的预测。这个预测模型可以有不同水平的复杂度和精确度,从一个直观感觉到使用复杂的预测技术。CLV可以被简单理解为客户关系的价值,也就是未来由于与客户的关系所带...

weixin_43171270的博客 8024

SAP BO系统启用邮件发送功能

目录 背景 维护邮件目标 启用邮件功能 背景 为了将BO报表或BO预警信息发送给特定的收件人,需要启用SAP BO系统的邮件发送功能。 维护邮件目标 1. 登录BO系统的中央管理控制台(CMC): http://<bo server name>:<port>/BOE/CMC 2. 点击“Organize”底下的“Servers”按钮进入BO服务器界面: 3. 点击“Servers List”进入服务器列表界面,右键点击JobServer&lt.

guowenming001的博客 1962

数据库设计 Step by Step (6) —— 提取业务规则

引言:数据库设计 Step by Step (5)中我们通过多种方法来理解客户的需求并撰写了需求文档。本文我们将回答三个问题。1. 为什么业务规则非常重要。2. 怎样识别业务规则。3. 如何修改关系模型并隔离出业务规则。 什么是业务规则 业务规则描述了业务过程中重要的且值得记录的对象、关系和活动。其中包括业务操作中的流程、规范与策略。业务规则保证了业务能满足其目标和义务。 生活中的...

weixin_30468137的博客 431

原创_新魔百和CM201-1鸿蒙架构当贝乐家语音安卓9线刷固件包刷机教程可救砖rom刷机包

不用担心变砖,因为系统内核会自动判断分区及CPU等级,假设你CPU是高于S905L3的那么。7.adb功能支持,系统增加开机自启功能,添加老人桌面模式,默认为年轻化桌面;所以我发的这个固件可适用于_cw_ys_zg_zn代工上生产的盒子进行刷机;5.CPU及GPU算法更改,当观看4K片源时,AI智能会自动优化系统后台进程,正如我所说,本固件是采用安卓公版镜像制作而成,那么代工厂也是使用的公版镜像,1.移植鸿蒙架构代码,完美融合安卓系统,增加系统的稳定性;刷机的时候 他会自动短接链接,所以不存在变砖。

a138088150的博客 1万+

从技术到业务过程

同时,扩展到那些将会涉及的、各种关键的或很少讨论到的业务规则。另外,在编写过程中,他们也应该编写一些概要用例和业务用例来展示整个需求之间的联系。换句话说,作为系统需求实践的一部分,应产生一份简略的业务过程文档。讨论执行者同新系统在不同环境下怎样进行交互的同时,应用专家已经在他们的头脑中对新系统进行了建模。准备好,与开发小组相比,他们会提出更多建议(这正好拓宽了技术人员的视野)。首先,召集一批经验丰富的应用专家,他们可能热心于改进团队的技术和工作习惯,并确保在系统涉及的每个业务领域找到两个代表。

技术日常 324

固件测试工具选型需要考察的功能点汇总

通过专业的固件测试工具可以帮助我们提高测试效率、提升测试的覆盖度、确保测试的准确性,保障产品的安全和质量。本文我们讲固件测试工具的功能点进行梳理和汇总,方便大家在采购固件测试工具时进行选型比对。

daopuyun的博客 2109

NU1680无线充电接收器在TWS耳机中的应用实战:I2C调压与QI协议适配

本文详细解析了NU1680无线充电接收器在TWS耳机充电仓设计中的应用实战。重点阐述了其无固件设计、I2C接口动态调压功能如何解决不同QI协议发射器的兼容性难题,并分享了硬件设计、PCB布局、与发射端联调及安全测试等关键环节的实践经验,助力开发者快速实现稳定高效的无线充电方案。

weixin_28432777的博客 231

PowerDesigner-2(业务处理模型-BPM)

业务处理模型(BPM):        主要任务是理清系统的功能,系统分析员在与用户充分交流后,应得出系统的逻辑模型BPM用于从业务员的角度对业务逻辑和规则进行详细描述,并使使用流程图来表示从一个或多个起点到终点间的处理过程,流程,消息,和协作协议。

不抛弃不放弃 1151

UG NX二次开发基础篇-外部模式与DLL内部模式(二 DLL内部模式)

通常情况下,我们希望我们的外挂,在UG启动的时候,就自动加载我们的外挂,并以菜单和工具条的方式,显示在UG上面。当然,这也是市面上所有外挂的操作,因为您不可能要求你的用户,以手工加载的方式,去调用你的外挂吧。在上一篇中,有粉丝留言说,启动 bat 文件,启动EXE外挂,会提示无法找到DLL的错误,这是因为UG的环境变量设置有问题,这里,我们把BAT文件作一个修改,直接改为实际目录。EXE外部模式,还有很多部分需要添加的,如参数的传递、输出消息的显示、UG操作的消息显示,等等。Dll执行结束后,会调用。

u014657217的博客 1653

全面掌握:AI应用架构师与智能金融系统设计的核心要点

当AI技术与金融业务深度融合时,AI应用架构师成为连接技术与业务的关键角色——他们需要将复杂的AI模型转化为稳定、合规、可扩展的金融系统,同时平衡“模型性能”与“金融安全”的矛盾。本文结合10个真实金融场景案例(如智能信用评分、实时反欺诈、量化交易),拆解智能金融系统从需求分析到落地的全流程,重点讲解架构设计的核心原则数据处理的关键技巧模型部署的最佳实践,以及合规性与风险控制的必做事项。无论你是刚进入智能金融领域的架构师,还是想优化现有系统的开发者,都能从本文中获得可落地的指导。示例规则。

项目管理的博客 1119

高通平台 Android T 蓝牙技术全解析:架构、代码与实现原理

协议栈、配置文件和服务都运行在一个独立的用户空间进程。

专业开发者的博客,一个从事Android WiFi和蓝牙的工程师 99

CATIA文件的网页预览方案

CATIA是工业设计中广泛使用的专业软件,产出`.CATPart`或 `.CATProduct`等文件类型,当资产数量较大时,我们希望快捷预览这些文件,就有了`CATPart`文件网页预览的需求 但我们知道,网页上无法直接渲染`CATPart`这种复杂的文件, CATIA生成的文件(如 `CATPart` 和 `CATProduct`)不仅包含三维几何信息(例如点、线和曲面),还涵盖了丰富的元数据与专业设计特征。 那有没有办法,能实现CATIA文件在网页上的便捷预览?

weixin_44211633的博客 1447

面向接口编程与自上而下的系统设计艺术

本文探讨了面向接口编程和自上而下系统设计在构建灵活稳定软件系统中的重要性。首先介绍了面向接口编程如何通过依赖抽象而非具体实现来降低耦合度,并通过Java示例展示了接口隔离原则的应用。随后,文章聚焦于面向业务编程,指导如何识别业务中的变化点并将其抽象化,以定价策略为例,演示了如何通过接口和策略模式实现灵活的价格计算规则。这些实践方法能有效提升系统的可维护性和扩展性,为应对业务变化提供了可靠的技术保障。

m0_65159391的博客 1013

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

[转载]规则与自由

规则与自由欢迎光临有关 Java 和 CORBA 技术的这一定期栏目。此第一期将概述 Java 和 CORBA 技术,并帮助您决定如何最有效地让它们为您工作。以后的栏目将提供 Java 和 CORBA 编程的内行指导和代码。在 ...

congji3817的博客 359

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

23 | 实战一(上):针对业务系统的开发,如何做需求分析和设计?

本文介绍了业务系统开发中的需求分析和系统设计,强调了技术人员在整个开发过程中的关键作用。通过积分兑换系统的开发实例,文章详细展示了从需求分析到上线维护的全流程。作者建议技术人员应积极参与产品设计,借鉴其他产品的经验,并细化业务流程。在系统设计阶段,文章强调了面向对象设计的四个步骤,并探讨了模块划分、交互关系设计、接口、数据库、以及业务模型设计。整体来说,文章突出需求分析和系统设计对业务系统开发成功的至关重要性。

想起来就更新 1226

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

从商业目标到技术实现:通用系统设计的四层逻辑框架

从商业目标到技术实现:通用系统设计的四层逻辑框架

hiliang521的博客 987

多流量模式下的系统设计

流量这个互联网最大的变量,在信贷界也主导一切,有流量是爹,是王。流量除了要开源还需要节流,今天我们就聊聊信贷领域流量的开源和节流在系统上的设计。一、业务模式信贷流量之所以有很多玩法,在实际上是因为一个客户,不同的机构的风险识别能力不一致,客户张三在机构A可能不能通过,但是在机构B就能通过。同时互联网平台有足够的流量,但是缺资金、金融机构有资金,但是缺资产,这样造成:一个客...

chenxuetao的专栏 346
上一篇: 面向对象设计之四 类型一致性和闭合行为原则
下一篇: 面向对象设计之五 继承与多态的危险性
zzulp
博客等级 码龄19年 464粉丝 176原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值