项目启动时,客户给出的需求是「把 11 个 Excel 台账搬到系统里」。42 张表单、约 180 个字段,按常规估算需要六到八周。实际交付用了三周,节省的时间几乎全部来自一件事:先统一语义,再建表。
三个「学期」
教务处按自然学期划分,学生处按军训与实习周期划分,财务处按收费周期划分。三套口径在 Excel 时代各自成立,一旦进入统一系统就产生冲突:同一个学生在同一时间可能属于两个学期。
我们把学期抽象为一个带起止时间与归属部门的时间实体,业务表单引用它,而不是各自存一份字符串。这一步花了四天,占整个项目周期的五分之一,但后续所有表单都不再需要处理口径转换。
表单之外的收益
42 张表单中有 27 张可以通过字段复用自动生成:报名、审批、归档三类模板覆盖了大部分结构。真正需要定制的是权限——谁能看到哪个班级的成绩,在不同部门之间的答案并不相同。我们用对象级的授权规则替代了逐表单配置,把权限条目从约 900 条压缩到 60 条。
上线两个月,教务处的月度统计从三天缩短到两小时。客户最满意的一点并非速度,而是统计口径终于可以被追溯:每一个数字都能回到它引用的学期实体与数据版本。