积木式开发体系

“如何快速交付”的问题一直伴随着软件行业的发展。在多年的摸索和实践中,软通不断推进技术架构的演进,建立了由一套工程实施方法论、一个应用架构和一组辅助工具集共同构成的 “积木式开发体系”。该体系有效帮助软通在保证质量的前提下快速响应、快速迭代、快速交付,在提高开发效率的同时, 实现降低各方面的成本。

积木式开发体系是什么

工程实施方法:

和传统体系相似,整个过程也由 分析 >> 设计 >> 开发 >> 测试和交付 这四个阶段构成,积木式开发体系在分析和开发两个阶段做了少量的调整,在分析阶段更注重差异分析,在开发阶段将常规的开发变成了配置开发,将约定、声明、配置提到了特殊的高度。

应用架构:

是积木式开发体系的基础,这套应用架构允许我们通过简单的声明 / 配置的方式实现,并跟其他方式开发的软件呈现出一样的外观和用户体验。这种应用架构主要包括“界面堆叠体系”和“逻辑堆叠体系”两个部分。

配套工具:

这是积木式开发体系在快速交付的重要手段,开发工具的支持是积木式开发体系落地的重要一环,是从coding到configuration 的重要手段。


积木式开发平台的设计理念


应用架构是积木式开发体系的重要基础

界面堆叠体系:

软件界面是工程实施过程中的主要组成一部分,积木式开发体系将界面分为最终交付的 “成品”、组件化的 “零件” 及管理组件布局的 “界面装配车间” 三个部分。

逻辑堆叠体系:

逻辑是工程实施过程中另外一个重头戏,积木式开发体系在逻辑组织方式上引入事件系统形成 “逻辑流水线”,和数据访问控制、安全、缓存、消息队列及 Workflow 构成的 “基础控制模块” 共同形成逻辑堆叠体系。



建立事件代理体系

事件:

将所有的业务逻辑处理都封装在一个个“事件”中。应用 AOP 的思想将所有逻辑过程都分为 “事前”、“事中”、“事后” 三个阶段,贯穿前后端。同时将逻辑分为界面相关和界面无关两层。由此形成从界面 Applet 中的点击开始到后端 Business Component 执行逻辑再到最后界面 Applet 响应的事件闭环。

代理:

将事件的 “事前”、“事中”、“事后”三个阶段又分为 11 个小的步骤,一些以硬编码的形式书写业务代码;另外一部分我们实现事件逻辑的代理,以便我们能够进行二次开发和随时应变。这11 个点为我们的逻辑验证测试提供了统一的检查点,友好地支持更细粒度的自动化测试。

声明:

以最方便的声明方式配置这些代理,便于分离产品固有逻辑和企业个性化逻辑,取得行业通用化和企业个性化之间的平衡。



积木式开发体系的成绩

“业务”方面:

统一了工程实施范式,规范了团队思维模式,建立了从行业通用模式到企业个性化的渐进式逻辑体系

“效率”方面:

统一了组件化粒度,建立了标准组件库,提高了复用性

“质量”方面:

统一了逻辑堆叠体系,编程思维和代码书写方式,提高代码质量的同时统一了用户体验,降低跨模块使用门槛,降低用户学习难度



积木式开发体系特点汇总:

平台式开发方式
可视化开发、拖拉式开发 缩短40%开发时间 迭代周期短 交付速度快
功能丰富
控件种类丰富 可设计各式表单、数据列表、统计报表、图表分析 支持工作流、批量导入、高级导出等
支持多系统多平台
支持PC、手机、平板各种终端 同时支持C/S、B/S系统、手机APP、企业微信、手机浏览器
安全稳定
权限矩阵,控制严谨 数据库隔离,无法侵入 硬件或IP绑定,保障数据安全
支持多种外设扩展
支持PDA、刷卡器、扫描枪、小票打印、二维码、微信、短信、电子邮件等
可集成其他系统
与用友、金蝶集成:扩展功能,节省费用 与其他数据库集成:数据共享,集中管理
灵活扩展
可随时扩展系统功能 可随时修改系统功能 可随时进行二次开发