《郝杰辉-软件研发困境与X-Series落地实践.pdf》由会员分享,可在线阅读,更多相关《郝杰辉-软件研发困境与X-Series落地实践.pdf(32页珍藏版)》请在三个皮匠报告上搜索。
1、软件研发困境与X-Series落地实践主讲人:赫杰辉领域驱动设计启发下的AI视觉分析引擎构建主讲人:戴 昊演讲嘉宾介绍赫杰辉 可视化低代码框架X-Series作者 信也科技研发中心架构研究员 运维研发团队负责人 主导研发:资源管理系统RMS 微服务框架Radar 中间件私有云 开源ORM框架信也DAS 开源ORM框架携程DAL目录CONTENTS研发困境与无效办法1234真正的问题与答案X-Series设计思路与简介X-Series落地效果与最佳实践研发困境与无效办法1研发困境需求理解偏差美好的设计与代码总是轻易被破坏系统快速腐化系统难以理解可维护性差研发效率低难以验证耦合严重祖传代码没有文档
2、流程?文档?框架?方法论?语言?原因何在道 法 术 器的全链条的缺陷难少繁正经的研发一直都是一项复杂智力活动真正理解研发难题的管理者和研发人员都非常稀少真正的问题与答案1真正的问题需求理解偏差美好的设计与代码总是轻易被破坏系统快速腐化可维护性差研发效率低难以验证耦合严重祖传代码没有文档快速理解快速构建持续健康简单易学答案快速理解快速构建持续健康简单易学低代码似乎不是我的菜普通低代码前端 后端 后端 数据库前端*数据库期待现实后端文艺低代码X-Series是后端程序员写给后端程序员的用于研发后端程序的框架支持Eclipse和IDEA可视化模型驱动无外部依赖!不生成代码!非特定平台!X-Serie
3、s设计思路与简介1X-Series设计思路大而全?X-Series设计思路xUnitxDecisionxState执行顺序可视化决策判断可视化状态变迁可视化小而精!xUnit流程图构建工具Xross Unit功能 可视化流程构建 预定义常见流程结构 流程节点绑定到代码,支持组件配置 支持嵌套,并发与关联优势 难度低:无需精通设计即可快速构建系统结构 负担低:无需阅读代码即可快速理解系统结构 速度快:快速定位关键节点,直接跳转代码 代码少:无代码生成,消除粘合代码 低耦合:模型代码分离,消灭系统腐化 高内聚:程序员只需专心写单元逻辑xDecision决策树构建工具Xross Decision T
4、ree功能 可视化创建决策树 自定义变量,决策 支持自定义类型,枚举和常量 支持多种自动布局 支持生成测试代码框架优势 无代码:决策树模型可直接使用,无代码生成 易理解:纯图形化模型展示 易维护:模型与应用代码独立维护,降低耦合度 易验证:测试框架代码方便验证xState状态机构建工具Xross State Machine功能 创建状态机 自定义事件,状态 支持自定义事件触发器 支持多种连接线型优势 无代码:状态机模型可直接使用,无代码生成 易理解:纯图形化模型展示 易维护:模型与应用代码独立维护,降低耦合度X-Series落地效果与最佳实践1场景多个认证场景中,有相同的处理逻辑效果 清晰:业
5、务逻辑通过流程图可以清晰的表达 复用:组件可以在多个流程中使用,方便代码复用 轻量:组件调用关系无需代码,配置或数据库落地案例与效果信也科技用户认证实践落地案例与效果场景判断用户是否登录后,对后继节点并发处理效果 方便:原串行执行接口调用很直观的转变为并行 轻量:仅需两个通用可配置组件就可完成所有工作 HttpProcessor,ExpLocator信也科技KOO BFF场景简单的工作流处理场景,不希望引入太重的工具效果 轻量:xState是经过技术选型后最轻量级的 方便:使用也最方便方便 强大:靠谱,清晰,易懂,功能全面的状态机工具落地案例与效果信也科技用户认证实践都是简单案例,逗我玩呢?复
6、杂落地案例与效果场景简单的工作流处理场景,不希望引入太重的工具携程金服业务流程效果 轻量:无需数据库,只需引入 jar 包就可直接使用 简单:通过文档和 sample 即可快速了解运作机制 快速:能快速搭建一套包含各个业务节点的工作流用户反馈支持群留言 xSeries三件套确实是抓住了大型系统构建的核心问题,复杂度怎么沟通,沟通完了怎么确保往代码转换的时候不走样复杂的卡状态处理 通过InfoQ看到X-Series,正是我找了很久的工具 今天才发现x-series 庆幸呀,虽然有些晚用户反馈产品对比用户反馈使用感受总结快速理解可视化模型降低理解成本从宏观到微观的自然切换让产品和测试也可以参与快速
7、构建预定义接口减少设计环节将系统构建效率从天提高到分钟持续健康可视化模型容易定位和维护模型与代码独立演化简单易学不需要学习新语言,新概念不需要熟悉新平台X-Series最佳实践Xross Unit新项目从顶层开始使用,老项目从最复杂模块开始改造适用于后台系统与分布式服务编织积累个人,小组,部门,公司的组件库并提供单元测试Xross Decision Tree核心逻辑判断条件变量=3个变更活跃的逻辑判断规则库与版本控制Xross State Machine非线性状态流转,推荐一开始就用80/20原则:分别创建通用状态模型与特殊状态模型参考资料G i t h u b:h t t p s:/g i t h u b.c o m/h e j i e h u iE c l i p s e 安 装 包:h t t p s:/g i t h u b.c o m/h e j i e h u i/x r o s s-t o o l s-i n s t a l l e rI D E A 安 装 包:h t t p s:/p l u g i n s.j e t b r a i n s.c o m/a u t h o r/h e j i e h u i低代码工具选项难题浅析提高单测质量的低代码思路THANKSK+峰会北京站官网AiDD峰会北京站官网