稳敏双态融合架构--架构师的练就
加班赶进度就是敏捷开发!
十人十个工作日的工作量,六个牛马六天干完就是敏捷开发!!
不规范屎山代码快速交工了事就叫敏捷开发!!!
---码农对“敏捷开发”的最切身体会!
闲聊IT忽悠大师Gartner
其实,IT界忽悠大师Gartner早在2014年就提出过关于数字化转型中敏态与稳态双模IT架构:
①稳态适用于传统核心应用系统,更多强调对于核心系统背后的稳定、安全、合规!
②敏态适用于创新业务,关注架构的灵活和敏捷,主打二开高效率。
ERP无疑是管理软件中复杂的核心系统,而超大型集团和跨国集团的高端ERP更是最复杂的核件之一!
每个庞大的系统或许终将沦为“屎山代码”,根据码熵规则,如果架构未搭好,屎💩山几乎无可避免!
没有系统性的架构方法、规范、流程,大型软件产品注定会沦为屎山悲剧!
一.软件开发理论
(1)软件系统架构理论
从架构上看国产ERP的差距(应用架构-第二篇 闲扯续)
企业架构(EA)包括企业战略、企业组织、管理职能、业务流程、IT系统、数据等完整的一体化的全面描述!EA最常用又便捷的是TOGAF,TOGAF架构理论完美适合大型管理软件(注意大型和管理两词)!小软件可以先干,干了再说,边干边想,象哥20多年前写个小软件比如简单的电话计费呀、资产管理和考勤系统,从建表到编码三两周全搞定!就是干,哪管啥狗P理论!但是,这种单打独斗蛮干行为在开发大型软件必定惨败! 所以,凡是说架构不重要,不了解架构者,充其量只是一枚低认知码农,就不用浪费时间同其扯软件产品了!
程序员出身的过来对比下自己的技术水平!
即使你已经精通编码,熟悉架构,也只是了解到方向,在具体落地细节上还有太多关注地方!
当然方向是前提,细节才是成功保障,方向引领细节,细节决定成败!
如果仅从单纯的软件开发模大式上看架构,常见的10大软件架构方式如下图!另外,架构分层也是很重要,将表示层、业务逻辑层和数据访问层分开。表示层负责与用户交互,展现界面;业务逻辑层处理具体的业务规则;数据访问层则负责与数据库交互,获取和存储数据。分层使得各层职责清晰,修改其中一层时不容易影响到其他层。
(2) 软件开发方法论
除各式架构理论外,软件开发方法论是指导软件开发过程的一系列原则、方法和实践,旨在提高开发效率、质量和可维护性。以下是一些常见的软件开发方法论:
-
瀑布模型
- 特点:线性顺序开发,前一阶段完成才能进入下一阶段,结构清晰但灵活性差,修改成本高。
- 适用场景:需求明确、稳定的项目,如传统企业级系统开发。
-
敏捷开发
- 特点:以用户需求为核心,拆分项目为小单元迭代开发,强调团队协作、客户反馈和快速响应变化。
- 常用框架:Scrum、Kanban等。
- 适用场景:需求频繁变化的项目,如互联网产品开发。
-
DevOps
- 特点:整合软件开发与运维过程,促进各部门沟通协作,实现快速、可靠的构建、测试和发布。
- 适用场景:需要持续交付和快速迭代的项目,如云原生应用开发。
-
面向对象方法
- 特点:将现实世界抽象为对象,通过类和对象的交互实现功能,强调复用性和可维护性。
- 适用场景:复杂业务逻辑的系统,如企业资源规划(ERP)系统。
-
原型法
- 特点:通过快速构建原型验证需求,分为抛弃型原型和演变型原型。
- 适用场景:需求不明确的项目,如新产品的探索阶段。
-
螺旋模型
- 特点:结合瀑布模型的线性和原型法的迭代性,通过风险分析逐步推进开发。
- 适用场景:大型、高风险项目,如航空航天系统开发。
这些方法论可根据项目需求、团队特点和业务场景灵活选择或混合使用。
本文着重聊下敏稳融合架构!
稳态IT架构是一种基于传统的软件开发方法论和架构思想构建的系统。它注重系统的稳定性和可靠性,通过精心设计和规划,保证系统在各种情况下都能正常运行。
敏态IT架构是一种强调快速响应业务变化的架构。它可通过敏捷开发方法论和微服务架构等技术,使系统具备快速迭代和扩展的能力。敏态IT架构在开发过程中注重团队的协作和沟通,强调迭代开发和持续集成。它能够快速响应业务需求变化,快速交付可用的软件产品。
双模IT架构的融合
双模IT架构将稳态和敏态相结合,取其所长。它既注重系统的稳定性和可靠性,又强调快速响应业务变化的能力。
在双模IT架构下,将一个庞大软件系统划分为两个部分:一个部分负责稳态系统的维护和演进,稳定核心功能,构筑稳固核心,提供标准的共性的功能!另一个部分负责敏态系统的开发和迭代,快速定制满足个性需求。 两个部分之间可以通过API接口和消息队列等方式进行通信和数据交换。这种架构适合那些既需要保证系统稳定性,又需要快速响应业务变化的场景。最核心的是,稳定的内核定住乾坤!敏捷的定制满足个性需求,二者互不干扰又协同工作,这才是天才式的架构设计!
后面哥会总结写一篇:架构完善,即使屎💩山代码,也能快速解决问题!
二.大厂稳敏双态实例
(1)蚂蚁集团稳敏双态开发:SOFAStack
早些时候去杭州大致听了蚂蚁的云原生PaaS平台SOFAStack4.0的报告, 其号称打破敏态架构与稳态架构的界限,融汇贯通!能够帮助企业快速构建云原生架构,应对IT架构升级转型中遇到的成本、效率、稳定性和弹性等问题。
SOFAStack ( Scalable Open Financial Architecture Stack )源自 蚂蚁集团 内部沉淀的金融级分布式架构技术,经过十多年在 支付宝 等关键金融交易系统的实战验证,其核心组件如 SOFA中间件 、 运维管理 等均经过蚂蚁集团严苛的金融场景测试,银行的IT系统将面临诸多挑战。一方面为了合规、业务连续性和灾难恢复,银行大多采用传统IT架构确保核心业务的稳定运行;另一方面,为了打造金融创新应用,银行需要采用云架构打造数字化生态系统。
SOFAStack向上支持的异构应用,意味着客户的应用系统无论是单体式应用还是分布式架构,无论是用何种开发语言来进行编写、何种开发框架来进行组装、何种协议来进行通信,背后所有这些异构应用都可以在SOFAStack4.0这个统一的PaaS平台上进行统一的管理和治理。
生态圈的形成不仅仅是技术,还是商业模式甚至社会伦理的合作共赢!这要求架构师的格局要极大,眼界要极高,长期真正深入研究世界最顶尖同行的底座!
惜乎,这种人比熊猫还珍贵,好消息是我发现一个超级大佬,坏消息是此人“廉颇老矣”! 🐶🐶
(2)用友稳敏融合:iUAP 数智底座 + NC Cloud+BIP
曾有网友相互讨论:"看着用友天天喊转型,总裁频繁更迭,结果转来转去还是老王自己亲自上阵。"
“用友居然不能赚钱了,做财务软件的难道对自己公司的财务反而不清楚了。核心就是制造业不行了,制造企业自己都在艰难挣扎生存,地主家本身都没有余量,谁还有钱买其管理软件?”
……
这些评论可谓杀人诛心啊!不知王总听到咋想?身居高位后的王总还能听到实话吗?
争论吵架画PPT没有意义!
管理软件可不仅仅是搭积木,AI时代,还要用AI重构?All in AI?
用友BIP的雄心:助力大型企业构建“敏态+稳态”的数智企业
在多变的商业环境下,与时俱进的进行业务创新与管理变革,是企业得以保持活力与增长的必备能力。
大型企业由于组织庞大,业务繁多,无论转型还是创新,相对中小企业而言都相对困难。他们既要保持财务、供应链、生产制造等需求明确的基本业务的稳定运营。同时,也需要在营销、采购等不确定性较强的业务方面,更加敏捷应对。
看看用友的稳敏双态架构实现思路
①iUAP为数智底座,提供多中台服务,包括低代码开发平台、连接集成平台、业务中台和数据中台等。
②NC Cloud聚焦稳态,根据前端业务需求,推动财务、人力资源、共享服务、企业绩效等企业内部管理变革,从而转变业务经营和管理方式,业管融合发展,并与生态伙伴完成全栈国产化联合解决方案建设。
用友NC Cloud:稳态经营管理,强健企业内核
创新固然重要,稳定的业务经营更是创新的基础保障。用友NC Cloud传承了用友20年、15000+中国大型企业服务经验,具有丰富的企业经营管理实践经验。
③YonBIP聚焦敏态,是企业与客户交互的直接触点,能够快速响应市场客户需求,推动营销、采购、研发生产、服务等核心业务的迭代创新,驱动业务增长;YonBIP按照云原生、元数据驱动、中台化和数用分离的新一代技术架构设计。
YonBIP所提供的场景化应用已覆盖营销云、采购云、制造云、供应链云、财务云、人力云、协同云、资产云等八大核心SaaS领域,30+角色化工作台,150+场景化应用。
这些SaaS服务本质上是微服务的组合,可以聚合多个服务的最小业务闭环。
前些天快速体验了下用友BIP,刚过去的周末又整了大半天。
YONBIP平台体验快评
一言难尽,尚需打磨!
(3)Sap的稳敏双态融合:
标准配置、BTP(PO)、BAPI/接口/增强
从②技术(Technology)底座角度的BTP的各项技术服务组件
PO值得一提(从XI、PX到PO)
SAP PO最早版本称为SAP Exchange Infrastructure(XI),后来改名为SAP Process Integration(PI),后来与SAP Composition Environment整合为SAP Process Orchestration (SAP PO)。
BTP vs PO
SAP PO(Process Orchestration)当前已是SAP BTP(Business Technology Platform)平技术台中 集成与自动化领域的重要服务之一!
-
BTP是平台,PO是其服务组件
SAP BTP是一个综合性的业务技术平台,提供应用开发、集成、数据分析、人工智能等多类服务。SAP PO属于BTP的集成与自动化服务范畴,专注于业务流程编排和系统间集成,帮助企业连接本地系统、云应用及第三方服务。 -
PO的功能定位
SAP PO通过图形化界面和预置连接器,简化复杂系统的集成工作,支持API管理、数据转换和流程自动化。它与BTP的其他服务(如数据管理、AI等)协同,实现端到端的业务流程优化。 -
BTP为PO提供基础支持
BTP的运行时环境(如Cloud Foundry)为PO提供部署和运行的基础,确保其与平台其他服务的无缝集成。同时,BTP的身份认证、安全策略等通用服务也适用于PO,保障集成流程的安全性和一致性。
总结:SAP PO是SAP BTP平台中用于集成和自动化的核心工具,依托BTP平台的资源和服务,为企业数字化转型提供灵活的流程编排能力。
PO vs Bapi
SAP PO(Process Orchestration)和BAPI(Business Application Programming Interface)是SAP系统中用于实现系统集成和业务流程自动化的重要技术,二者存在以下关系:
-
功能互补
- BAPI 是SAP提供的标准业务接口,用于封装特定业务操作(如创建采购订单、销售订单、创建会计凭证等),HANA相对Ecc版本,这种封装能力更加给力,几乎做到一切业务皆可封装!外部系统可通过调用BAPI实现与SAP系统的交互。
- SAP PO 是集成中间件平台,负责协调不同系统间的流程和数据转换。它可调用BAPI来执行具体业务操作,实现跨系统流程自动化。
-
技术关联
- BAPI本质上是基于RFC(Remote Function Call)的函数模块,而SAP PO支持多种通信协议(如RFC、IDOC、Web Services等),可通过这些协议调用BAPI。
- 例如,外部系统通过SAP PO发送请求,SAP PO解析请求后调用相应BAPI完成业务处理,再将结果返回给外部系统。
-
应用场景差异
- BAPI适用于直接针对Sap的业务操作调用,如创建或修改单个业务对象,把Sap作为一个背后的业务中心,Sap 主打一个内核稳定!前台你随意使用什么开发工具!
- SAP PO更适合复杂的跨系统流程集成,涉及多个系统协同操作、数据转换和路由规则配置。
总结:BAPI是具体业务操作的接口,SAP PO是集成平台,二者协同工作,实现SAP系统与其他系统的高效集成和业务流程自动化。
看看人家,稳打稳扎,正是有强大的内核,AI时代,分分钟切换频道!而国内一班胡涂之人居然还在讨论AI原生ERP?!醉了,连大型软件复杂度都毫无意识!而用AI原生玩出小ERP又有啥用?无非一个包裹AI噱头的低端产品耳,垃圾产品中的一个精致点的垃圾耳!
AI自然语言编程幻想还是现实:复杂度守恒定律(正方)
前期写了篇复杂度守恒,结合稳敏双态,只有稳住复杂的内核,前端用户层才能敏捷,包括用自然语言交互(自然语言编程),没有稳,就没有敏!
我曾讲过,Sap其实也大量二开,才可满足甲的阿爸要求,但开发不咋费力呀,关键开发人员想用屎💩山代码整跨Sap也不行,更况还有技术规范严格约束 !对了,业务人员胡乱操作也很难玩瘫sap!🙈🙈
原因就在于Sap强大稳定的内核!将稳态和敏态的完美融合发挥到极致!
基础不牢,地动山摇,应该是当下所谓国产高端ERP的致命弱点!希望可以快速迭代弥补,真正融合稳敏双态开发!