技术人员应尽量向前多想一步,考虑未来会有什么样的新需求出现,哪些参数可能会改变,哪些模块可以整体配置。
疫情防控中,北京大学自主研发智慧抗疫系统,包括核酸检测登记、历史、进展以及校园出入、轨迹台账等29个项目功能,全面构筑了北京大学疫情防控数字防线。谈及疫情期间的系统研发,计算中心副主任李庭晏表示,“若想实现业务功能的快速开发与功能迭代,必须充分利用敏捷、低代码的开发框架。同时,合理运用建设经验与提前预测管理需求也十分重要。”
信息化手段赋能疫情防控
《中国教育网络》:疫情对高校信息化工作提出了诸多挑战,也给信息化工作带来了很多启示,您如何总结学习这三年的信息化支持?
李庭晏:疫情三年,是对学校信息化工作的挑战,也是信息化建设快速成长的机遇。自2020年1月24日接到首个疫情相关的开发任务起,北京大学计算中心就开足马力,跑步开发,跑步支援。
在信息化手段赋能疫情防控方面,计算中心自主研发了智慧抗疫系统,全面构筑了北京大学疫情防控数字防线,智慧抗疫系统全方位覆盖抗疫工作的方方面面,满足了师生个体、管理部门等不同角色人员的需求。
北京大学智慧抗疫系统
同时疫情期间,数据的关键性毋庸置疑。几乎每一个应用都要以坚实、准确的数据为基础,像校内人员轨迹台账、一键核查、大数据指挥平台等,这些应用集成了不同类别的多项实时数据,聚焦精准防控,科学研判,在7×24小时全天候校园数据的加持下,精准构建了北京大学疫情防控战线,守护平安校园。
然而,虽然疫情防控促使数据精准度有了质的提升,但在未来,高校数据本身的收集、管理、应用还有很艰难的一段路要走。
《中国教育网络》:高校数据治理一直是难点与痛点问题,从疫情场景来看,您认为难点与痛点主要反映在哪些方面?
李庭晏:数据对于高校的重要性显而易见,但与其他行业相比,高校本身的数据治理起来也更难。就拿最基础的数据语义界定来说,高校许多数据在语义上的界定相当复杂,对于同一个数据名称,在不同业务人员的要求下,它可能有多种含义和多种理解方式。
以北京大学的“在校生人数”这一数据为例,在疫情中,我们常常要确认在校学生的数量,从而确定是否完成了全员核酸、全员疫苗。虽然这一数据名称听上去简单,但是其内涵实际上异常复杂,不同业务人员所指代的数据也往往不同。
例如,在校生指的是学籍学生还是非学籍学生?外校进修的人员是否算入其中?北京大学有多个校区,不同校区的学生如何计算?京外学院的学生又是否包括在内?所以,针对不同的时间,不同的用处,“在校生人数”的解释其实并不一样。因此,数据的描述和定义非常重要,如果数据的定义模糊,那么数据高效能的应用或进一步拓展就会受到限制。
但是到目前为止,还缺少一种相对标准化地、抽象、科学地描述高校数据的方法,按照这种方法一步一步地做,数据的内涵就能清晰地固定。
当下,很多时候还需要人根据经验、依循习惯与传统去处理数据,面对定义较为细致的数据时,经过多重复杂的组合、拼凑后,才可能把最终数据确定下来。在校生只是一个简单的例子,我们在现实中经常碰到类似问题,业务人员要求的数据貌似很简单,但我们却无法立刻将数据给出。因为数据的定义不清,所以技术人员没有办法确定所需的是哪一个特别含义的数据,如果相关数据没有细致到这个程度,那么技术人员就要经过复杂的条件组装后,才能得到最终数据。
如果有一种科学的方法指导我们,在前期采集时,我们就能把数据严谨地描述出来,那么到后期,不管业务人员需要怎样的数据,都能有一种快速、科学的模式将其组装匹配出来,就像在系统中选择“2022级”“学籍学生”这样直观查询条件后显示相关数据一样,到那时,绝大多数数据都可以靠严谨的元数据描述得出,使数据的获取更便捷、直接,同时也能减轻技术人员的负担。
疫情期间的应用系统建设
《中国教育网络》:疫情防控期间,计算中心在系统开发上有什么心得?后疫情时代,您认为哪些因疫情而诞生的成果可以延续、升级,继续为学校服务?
李庭晏:严格说来,没有哪个系统是完全容易实现的,不同系统各自有其难点或挑战。有的系统要求数据精准,有的系统涉及复杂的业务流程,还有的系统接触的用户面广,对包容性要求较高。
当然更有系统集这几个特点于一身,加大了开发复杂度,比如出入校管理系统。三年疫情期间,这个系统由计算中心和多个管理部门一起不断打磨、动态调整,使之不断适应管理需求。
2020年4月起,学校校门取消凭校园卡的出入方式,全员刷脸出入校,严格防控疫情。而疫情常态化后,简单划一的刷脸出入模式已渐渐不能满足多样化的实际需求。
比如,假期在校学生非必要不出校,返校学生经审查合格后才可以返校出入等,这些需求单纯依靠人脸识别产品本身的权限管理操作已经无法满足,急需将刷脸出入校的策略与对应的审批审核系统进行联动。
在多次的实践中,计算中心逐渐摸索建立起一套技术方案,实现了多套应用系统与人脸识别系统的对接,通过权限的动态调整,适应多种出入校管理方式。不同的管理策略结合出入校权限及时下发到了11个校门的100多部刷脸设备。疫情期间的出入校管理系统已经在申报审批制、自主备案制、参与重大活动、亲友预约、职工家属出入校等多种管理场景中得到应用,实现了刷脸出入校的智能化管理。
细致梳理后可以发现,疫情期间做的大部分工作还会在疫情后持续发挥作用。例如,在疫情期间为了减少人员聚集,不少职能部门审批备案事项逐步迁移至线上进行,加快打开了“让数据多跑路,让群众少跑腿甚至不跑腿”的工作局面。这些线上审批系统在疫情后必将持续服务师生。
又比如,虽然核酸检测系统中的登记、催办等功能会在疫情后停止使用,但在系统开发应用过程中,对各类人员的数据进行了全面梳理和规范,这些数据及管理方式仍可在今后的工作中继续发挥作用。
需求预测:提前一小步 方便一大步
《中国教育网络》:信息系统的开发是疫情防控中的一项重点工作,回顾疫情防控期间的工作,您认为疫情对高校应用系统的开发提出了哪些挑战?
李庭晏:疫情变化如风起云涌,形势变化速度快且难以预测,校内的应对政策也在随时调整,而这就带来了抗疫系统开发中最关键的要求:迅速迭代,速度至上。为了满足这一要求,在技术人员尽心尽职地全力付出之下,北京大学信息化部门实现7x24小时在线应答,有效缩短了系统开发与上线的工作周期。因此,技术人员的艰苦付出和埋头苦干无疑是抗疫系统开发成功的基础与关键。
同时,需求的快速满足也离不开北京大学充沛完备、实用日常的技术储备。早在2019年7月,北京大学就上线了可信电子成绩单,实现了采用国密算法和国际加密算法相结合的双重数字签名,确保电子证书可信和不可篡改,使其与纸版证书具有同样功效。
2020年的毕业季,突如其来的疫情席卷全国,所有毕业生无法返校。因此,为了第一时间解决学生就业、升学等迫切需求,在前期的技术储备和经验积累下,计算中心与业务部门通力合作快速提出解决方案,迅速将可信文件扩展到毕业证和学位证等证明材料,使毕业生顺利无碍、安心无忧地度过毕业季。
《中国教育网络》:要想快速响应系统构建的需求,您认为需要注意哪些问题?
李庭晏:若想实现业务功能的快速开发和功能迭代,必须充分利用敏捷、低代码的开发框架。比如借助现有的流程平台,快速构建网上申请审批业务。同时,北大计算中心在实践中也构建了一组基于spring+vue开发体系的核心功能模块和关键组件,最大程度保障基础功能的可复用性、动态信息的可配置性,满足需求动态变化下的快速响应和及时部署要求。
不可忽视的是,在系统建设中,合理运用建设经验与提前预测管理需求也十分重要。在开发系统的过程中,技术人员应主动、提前考虑哪些模块在未来可能得以复用,并将其封装起来,这样在后续需要时便可以对相应模块直接进行复用。
此外,在系统建设时也要留下后续配置的余地,同时这些配置也交付给用户去完成,非特殊情况则无需要求技术人员从系统内部进行修改。以北京大学出入校系统为例,每天可预约访客人数的上限或比例,这些数字在系统中都是可变的参数,管理部门可以在使用时依据现实情况直接调整,无需再与技术人员进行对接、协调与修改,这样就大大提高了工作效率,也减少了琐碎、反复的非建设性工作。
除了可调整的参数,为应对复杂多样、各不相同的业务情形,我们还在系统中加入了“开关”,即在不同的模块上安装“开关”,这样就可以选择开放哪些模块,关闭哪些模块,方便技术人员较为快速地依据需求调整程序。
因此,在对接需求、开发系统时,技术人员应尽量向前多想一步,想到未来会有什么样的新需求出现,想到哪些参数可能会改变,哪些模块可以整体配置,非必要时“关闭”,必要时再“打开”。如果能提前考虑到未来需求,并在首次开发时一次性同时解决,那么,之后就不用再做大幅度地调整,只需在现有系统上进行微调,这样便有利于后续工作,节省未来的工作量,工作效率也会更高。
虽然在现实工作中,有些系统所给予的开发时限极短,一些细节性工作来不及完成,但是我们一旦有时间或者对系统要求不是特别紧迫时,我们就宁肯多花一点功夫,根据自身经验把底层代码尽量做一些拆分,夯实系统基础。这样即使系统上线了,业务部门如果再有任何新的需求和改动,技术部门修改起来也更为方便。
编撰:王雅静