如何快速设计业务架构?

作者 : 开心源码 本文共2483个字,预计阅读时间需要7分钟 发布时间: 2022-05-12 共134人阅读

如何快速设计业务架构?

之前详情过,应用业务架构模型可以快速对新需求进行企业级分析,那就讲一个实际发生过的例子供大家参考。

以前做企业级项目的时候,曾经接到一个紧急设计业务架构方案的通知。因为当时公司还处于企业级转型项目的施工期间,所有业务需求都要经过业务架构分析,出具业务架构方案,再落实到具体项目组。鉴于当时有 50 多个项目组同时施工,这样的企业级分析过程是非常必要的。

该需求是与某宝合作的实物贵金属在线销售业务,当时,另一家竞争对手与某互联网巨头刚刚合作了此类项目,受市场形势所迫,必需快马加鞭,紧急施工。所幸业务部门已经连夜写出了业务需求,需求共计 15 页,将近 9000 字,涉及 11 个大的需求项,要马上根据业务需求文档形成业务架构方案。

需求的主要内容包括:为用户建立虚拟账户,用于记录用户买卖交易、持仓等;支持使用某宝黄金发送红包(黄金份额);红包的账务性解决、红包资金的支付结算及划转;支持黄金实物兑换;支持黄金转赠;销售数据提取、报表统计、实物提取配送数据交互以及相应的核算规则等。

当时公司早已经完成了企业级的业务架构和业务模型建设,并使用模型驱动企业级开发近四年时间,工具使用已经没有问题。公司的企业级业务模型包含上百个组件和数十个大型应用,其中,该需求所属的业务领域自己包含十余个应用,业务活动近三十个,任务超过一百多个,涉及多个核心组件及公共类支持组件,需求牵涉的只是其中一个应用。在有业务架构和业务模型的情况下,业务架构人员的工作就是识别新业务流程与原有业务流程的差异,以判断涉及的模型范围,包括识别出需要使用的活动、任务、涉及的组件,以及需要新添加那些内容,新添加的应该归属给哪个任务和组件,进而,应用架构人员会根据分析结果给项目组指派具体承接的需求。当然,这不是简单的对号入座,架构设计最重要的就是理清结构和关系,要说清楚各部分的具体分工和协作,给出明确的设计理由,否则,项目组会质疑任务分工。

经过对文档的仔细研读,最终理出了“签约”、“产品查询”、“交易(含红包)”、“对账”、“结算费用”这几个主要工作流程,涉及 9 个现有业务组件,现有业务模型基本支持该需求的实现,部分任务需添加业务规则。

业务架构关系图如下:

如何快速设计业务架构?

?

大致流程和组件分工形容如下:

  1. 签约。用户向某宝提出建立购买我司贵金属的合约申请,某宝将相关信息及用户在某宝的 PID(用户在某宝的身份标识)传给我司,因为一个用户可能有多个 PID,因而需要分别为其建立账户,该过程的解决,由我司与某宝新添加的渠道负责信息传输,用户信息及用户关系组件负责识别能否应为我司新添加用户,记录用户在某宝的 PID 信息,并与我司用户信息进行关联;XX 交易组件则负责为每个 PID 建立单独的交易合约和账户。考虑到未来可能与某宝有更多产品合作,因而,PID 应该在用户信息组件作为企业级信息管理,方便各组件查询并保持唯一性。
  2. 产品查询。产品信息由产品目录的统一管理平台——产品研发组件负责提供;报价涉及 7*24 小时实时人民币黄金报价,并允许在账户金报价、金交所报价、交易对手报价等各个报价来源之间切换,允许买入价、卖出价、中间价等多种形式报出,因而,由投 X 与 XX 交易组件支持的企业级定报价平台负责。
  3. 交易。交易涉及贵金属买卖和对红包转账的支持,由 XX 资金交易组件负责账户金交易、贵金 XX 组件负责实物金交易、经营 XX 组件负责库存和配送管理,核算由财会组件完成,都有现有业务活动和任务可以支持。
  4. 对账清算和手续费扣收。这两项都由 XX 资金交易组件基于交易记录发起,清算结果和扣收都是在某宝在我司的存款账户和内部账户之间转账完成,也有基础的业务活动可以支持。
  5. 报表。报表因为都是基于该组件的交易记录,因而可以由该组件负责提供支持。

上述方案从阅读需求到设计,再到跟领导请示汇报,发出方案,总共花了四个多小时。由于会议紧急,所以方案出的也比较简要,只搞了一页 PPT,其实,这样也不错,假如一页 PPT 能说清楚问题,干嘛非得搞上一大堆文稿呢?这方面敏捷宣言非常值得赞叹。

这个方案的制作过程表现了以下几点:

  1. 对原有业务架构和模型的充分复用。方案最终只是在原有的业务模型中添加了部分步骤和规则,就一个笼统业务模型而言,不需要再添加活动、任务这些较大的元素了。
  2. 模型化的业务架构工具对企业级需求分析的加速作用。该方案涉及的用户信息管理、交易、核算、经营配送等,都是由不同业务条线负责管理的,是典型的企业级方案,因为有模型化的架构分析工具,就能够快速识别需求的归属,并为跨条线的协调提供客观依据。
  3. 业务架构师必需经常熟习项目情况。该方案能够快速形成也得益于刚刚完成的产品设计重检工作,设计者对模型与实施之间的实际映射情况非常理解,方案设计乃至后续项目组对分工的接受都很顺利。因为分工的起因,企业级业务架构师可能会与项目之间有肯定的“距离”,因而务必时刻注意补充自身对项目的理解,防止“距离”变成“疏离”。

因为之前业务上已经准备了较为详细的需求文档,因而业务架构设计工作少去了少量理解过程,但是,从上面的例子可以看出,假如业务架构人员从需求梳理就开始介入,也可能会进一步提高需求分析的效率,推动一种基于业务模型的敏捷过程。所以,一开始建立企业级业务模型肯定会是一个漫长的过程,由于要解决大量的标准化整合,也会触动少量深刻的利益关系,一旦完成了这个过程,建立了企业级业务架构,即可以向敏捷过程看齐,这种有企业级参照的敏捷过程,好于没有“篱笆”的快速开发,有清晰的边界总是开发人员愿意看到的。看似“笨重”的业务模型方法,其实提供了一个“扎实”的下盘,好像练武术一样,没有扎实的马步,怎样能够“飞檐走壁”呢?

中台和组件化一样,都是通向快速响应的方式,单就快速响应而言不能简单比较孰优孰劣,基于企业级业务架构的组件化设计,其实优势还是在于有效连接战略与开发,实现上下贯通的一体化设计,这方面不是单纯追求中台的技术实现可以取得的。

获取更多Java高级架构最新视频,

直接点击链接加群。https://jq.qq.com/?_wv=1027&k=5lXBNZ7

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 如何快速设计业务架构?

发表回复