该项目是四川省第六建筑有限责任公司面对庞大的建筑项目,在人员管理,工程施工管理,财务管理,物资管理,权限管理,进度管理,各项设备的管理焦头烂额,可以说极其混乱,面对多个系统,各种数据误差,不匹配的状况,决心重新研发一套新系统替代以前的系统,实现报表清晰,数据清晰,流程管理清晰,财务清晰,设备租用借用不混乱,人员在岗,绩效与效率能清晰展示的目标
面对该局面,团队无人理解建筑业,开发只有两人,项目要求三个月完成,面对大约100个业务模块。无论什么办法,都无法实现,团队两人开发讨论,决定抛弃目前市面上所有工具与教条,重新梳理一套实现逻辑,另辟蹊径方可实现。
1、首先,将数据运转过程归纳成aduq,即增删改查,将数据库关系分为三类,主子,主从,独立。
2、将用户视角归纳为表格性,树形,散形
3、将操作行为归纳为根据数据呈现的形态点选单项,复选多项与上述糅合,单个必要数据与整套必要数据
4、将数据库映射出来,将一个界面中隐藏的,显示的所有信息理解为无非对用户显示隐藏而已,但对系统是全知的,即两种状态而已,用户知道过多数据不是好事,用户有过多行为也不适合。
5、根据以上推论,其实什么行为都可归纳为两方面,从系统角度看,我们是引导用户看到必要的数据,进行填写或选择,给系统足够清晰的充要数据为系统的继续运转提供足够的支撑。而用户需要看到的,需要操作的所有数据都不应该让用户自行选择或想办法加载,而应该实现自动化,系统是全知的,用户只有选择必要数据,填写必要数据,看到重要数据的做出选择的行为,系统是根据数据的流动自动运转,自动生成前后端代码提供给用户,以便于操作,于是,我们设计了一套前后端代码自动生成器,以适应用户的庞大基础需求和可变需求。。当时,没有ajax,也不知道这个东西,我们封装了一套完整的ajax,便于前后端通讯,在css时代实现了bs效果,完成了系统开发,在面对业务不通,错漏百出的状况,我们有新增了面向业务人员的伪代码,可随时调整界面布局与业务逻辑,上百业务模块完整重构只需要一周左右,完整达到了目的