业务架构平台的设计与实现要比普通业务系统困难很多。一个核心难点在于如何建立普遍有效的应用程序模型,如何控制各种偶然性的业务需求对系统整体架构的冲击。大多数现有的业务架构平台都是提供了一个庞大的万能性产品,它试图预料到了所有可能在业务系统开发中出现的可能性,并提供了相应的处理手段,结果业务系统开发人员的能力被限定在业务架构平台所允许的范围之内。如果业务架构平台的复杂度为A+,则我们最多只能用它来开发复杂度为A的业务系统。一个典型的特征就是使用业务架构平台的功能配置非常简单,但是要开发相应的功能特性则非常困难,而且必须采用与业务系统开发完全不同的技术手段和开发方式。
采用业务架构平台来开发业务系统,即使看似开发工作量小,最终产生的各类配置代码量也可能会大大超过普通手工编程产生的代码量,这意味着平台封装了业务内在的复杂性,还是意味着平台引入了不必要的复杂性?很多业务架构平台的卖点都是零代码的应用开发,低水平的开发人员也可以主导的开发,但是为什么高水平的程序员不能借助于这些开发平台极大的提高生产率?
一般的业务架构平台无法回答以下问题:
1) 业务系统可以通过使用设计工具来重用业务架构平台已经实现的功能,但是业务系统内部大量相似的模型配置如何才能够被重用?
2) 特定的业务领域中存在着大量特殊的业务规则,例如“审批串行进行,每一步都允许回退到上一步,而且允许选择跳转到任意后一步”。这些规则如何才能够被引入设计工具,简化配置过程?
3) 已经开发好的业务系统作为产品来销售的时候,如何应对具体客户的定制化?如果按照客户要求修改配置,则以后业务系统自身是否还能够实现版本升级?
Witrix平台提供的基本开发模型为
App = Biz aop-extends Generator<DSL>
在这一图景下,我们就可以回答以上三个问题:
1) 业务模型通过领域特定语言(DSL)来表达,因此可以使用语言中通用的继承或者组件抽象机制来实现模型重用。
2) 推理机对于所有推理规则一视同仁,特殊的业务规则与通用的业务规则一样都可以参与推理过程,并且一般情况下特殊的业务规则更能够大幅简化系统实现结构。
3) 相对于原始模型的修改被独立出来,然后应用面向切面(AOP)技术将这些特定代码织入到原始模型中。原始模型与差异修改相互分离,因此原始模型可以随时升级。
Witrix平台所强调的不是强大的功能,而是一切表象之后的数学规律。Witrix平台通过少数基本原理的反复应用来构造软件系统,它本身就是采用平台技术构造的产物。我们用复杂度为A的工具制造复杂度为A+的产品,然后进一步以这个复杂度为A+的产品为工具来构造复杂度为A++的产品。
分享到:
相关推荐
举个实例,假设我们正在开发一个电商系统,六层架构下,表现层负责展示商品信息,业务逻辑层处理购物流程,数据访问层与数据库交互。抽象工厂可以用来创建支付接口,具体工厂类可以分别为支付宝和微信支付提供实现。...
这种架构将应用程序分为三个主要部分:表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL),以此实现良好的代码组织和职责分离。 1. **表现层(UI)**: 表现层是用户与系统交互的部分,负责接收用户输入并展示...
然而,这种架构仍然存在一些问题,比如增加了资源消耗和网络开销,同时单点问题依然没有得到有效解决。 #### 缓存的作用 随着用户量的增长,访问频率的提升使得缓存技术变得尤为重要。缓存可以分为本地缓存和远程...
这种架构通常包括表示层(Presentation Layer)、业务逻辑层(Business Logic Layer)和数据访问层(Data Access Layer)。以下是关于这个主题的详细解释。 1. 表示层:这是用户与应用交互的部分,通常由Web界面或...
3. **推动业务转型**:构建大数据平台有助于广电从传统媒体向新媒体转型,实现内容和服务的个性化定制,增强用户体验。 #### 二、广电大数据平台构建的必要性 1. **提升内容质量与收视率**:通过大数据分析观众...
为了更好地支撑业务增长,提高生产环境的效率、安全性与稳定性,应对金融行业的快速变化,对数据中心进行重新规划与建设成为必要之举。 - **业务挑战**:面临的主要挑战包括快速响应新业务需求、提高数据处理能力和...
作为一名Java架构师,制定一个月的跳槽计划是明智之举,特别是在意识到自己当前的工作环境和职业发展不匹配时。从描述中可以看出,这位架构师从机械自动化转行,并通过培训进入Java领域,首先在一家大型外包公司积累...
本资源摘要信息主要关注基于微服务架构智慧门诊建设提升医院医疗服务质量,旨在解决医院医疗服务质量问题。该资源通过对现状和问题的分析,对于医院医疗服务质量提出了具体的解决方案。 1. 背景与现状 随着社会和...
随着业务的发展和技术的进步,从 ES6 升级至 ES8 成为了必要之举。此次升级不仅要解决旧版本中存在的性能瓶颈和安全性问题,还需要确保新版本能够更好地支持未来的业务需求。在此背景下,团队面临着一系列挑战: - ...
Parlay X Web服务是下一代网络(NGN)中一种关键的开放业务架构规范,旨在加速和简化增值业务的提供。Parlay X是在原有的Parlay规范基础上发展起来的,旨在克服Parlay规范过于复杂的问题,使其更适合不具备专业电信...
如今大数据在各行业的应用越来越广泛:运营基于数据关注运营效果,产品基于数据分析关注转化率情况,开发基于数据衡量系统优化效果等。美图公司有美拍、美图秀秀、...如图1所示,左起第一张是美图自研的数据可视化平台
此时,将Web应用和数据库服务物理分离,部署在不同的服务器上成为必要之举。 **关键技术点:** - **服务器分离**:将Web服务和数据库服务部署在独立的服务器上。 - **资源分配**:根据实际负载情况合理分配服务器...
**标题:“几个基于MVC架构的小例子”** **描述:“一个用JSF+Servlet+DAO实现的一个小的登入系统,体现了MVC架构思想,存档以备后用。”** 在这个项目中,我们主要探讨的是MVC(Model-View-Controller)架构模式...
通过全员举绩,可以促进业务规模的持续增长和组织规模的扩充,提升经营品质和管理效率,同时维护公司形象,增强市场竞争力。此外,它有助于组织架构的稳固,人力结构的优化,以及团队文化的塑造,激发营销员的创富...
1. **提高开发效率**:由于平台内置了大量的预设模板和组件,开发人员可以将更多精力集中在业务逻辑的实现上,而不是基础架构的搭建。 2. **降低开发成本**:利用成熟的开发框架和技术栈,可以显著减少开发时间,...