学习理财博客空间

理财鱼

您现在的位置是:理财鱼 > 理财方法 >

理财方法

旧系统重构路上的一些经验与反思(一)

发布时间:2022-03-11 16:46理财方法 评论

理财鱼小提示:旧系统重构路上的一些经验与反思(一)

编辑导语:在互联网的高速发展下,很多传统企业的旧系统已经跟不上时代的发展,重构系统可以说是势在必行。本篇文章作者分享了在旧系统重构路上的经验与反思,一起来学习一下吧。

 旧系统重构路上的一些经验与反思(一)

随着互联网技术的飞速发展,开发语言和技术架构的不断创新。

有许多传统企业的老系统需要推倒重来,迎合新时代的发展,向信息化、数字化和智能化转型。

这几年微服务架构和中台架构的兴起,有许多传统企业所使用的系统还是十几年前的单体架构,功能通常聚集在一个系统上,功能繁杂混乱,导致新功能开发上受到限制。

性能上也会遇到瓶颈,这些问题都将影响到业务的发展,所以重构是势在必行。

有幸这几年我参加过几个旧系统的重构,有的项目从头到尾跟进负责,有的项目是中途才加入,项目有大有小。

接下来通过几篇文章来分享一下重构路上的经验和反思,主要以内部系统的重构为主,希望对大家有所帮助。

重构,也就是重做。这对于产品研发团队,甚至运营,各个系统的用户来说简直是噩梦,这相当于所有的东西都需要重头开始。

所以在重构开始前我们需要弄清楚为什么需要重构?

一、为什么需要重构?

1)旧系统的开发语言或框架不再维护和更新,一些由底层技术或框架引起的问题无法修复,特别是影响到核心功能。

2)老板、高层领导和业务方有各种各样的新需求,但因旧系统的技术受限而难以实现。

新业务或功能通过旧系统的技术和框架无法实现,或者开发起来难度较高,耗费时间较长。如果继续在旧系统开发可能无法达到预期,并且投入的成本会较高。

3)系统遇到性能瓶颈,因为旧系统的底层技术和框架问题,难以再进行优化。

像电商系统,当做促销活动时,如618、双十一等活动,并发量较大,超出了平时的流量甚至翻倍,那就可能导致系统无法承载。

这时候只能通过增加服务器来临时解决。要把问题从根源上解决除非能优化现有的代码,不然就只能通过重构来解决。

4)旧系统的功能需求和交互体验上不能满足用户的使用,甚至会导致用户降低工作效率。

5)有些公司在刚成立,或者刚开始启动一个新项目的时候,业务和产品缺乏体系化的规划。

为了尽快投入使用,追求快速、简单、高效的落地,经常在收到一个业务方需求的时候只是简单判断就开始设计并开发落地。

为了追求速度,没有在前期做好充足的准备,导致产品缺少足够的可扩展性,当用户需求在未来升级迭代的时候,现有的底层设计就没有办法跟上业务的发展。

最终导致重构的出现。这也是许多小公司不断做大后无法避免的,毕竟互联网时代都是小步快跑,在一开始无法面面俱到。

总结

其实总结起来主要是旧系统的技术和框架阻碍了业务的发展,特别是影响到业务部门的销售额、产能和工作效率等的因素。

所以这时候我们就需要通过重构,重新整理各个系统的功能和职责,用适合公司的新技术来搭建新的系统。

通过新的系统来满足各用户的需求,让业务跑得更快,提升各个岗位的工作效率。

虽然我们已经知道重构是势在必行,但也不能老板一拍板就立马去干,我们需要做足充分的准备和整体的规划,这样重构之路才会走得更顺畅。

那接下来就说说我们的准备工作。

二、开始准备工作

企业为什么需要对现有系统进行重构,老板听完之后可能已经宠宠欲动,想立马就开工。

让大家能够尽快使用,工作效率和业绩都提升起来。

但这时候我们需要按住老板激昂的情绪,因为在开工前还有许多东西需要考虑清楚和准备,不能盲目开工。

1. 梳理需要重构的系统

首先我们需要明确重构的系统,梳理清楚到底有多少个系统需要进行重构,因为系统的多少将直接影响到整个重构项目需要的时间和人力。

所以我们要梳理清楚是少部分几个系统,还是公司的整个业务线相关的系统都需要重构。

公司在不断发展的同时,业务也在不断拓展,有些新系统是最近才开发完成的,在开发语言和技术框架上可能已经用上了最新、最流行的东西,那这些系统就可以考虑不用再去重构。

但有可能在重构的过程中,这些系统同样需要对接口、数据库等改动,所以对应的开发人员也要有这个准备,去配合整个重构的项目。

2. 与用户表达愿景

明确了需要重构的系统后我们就要与相关系统的用户表达重构后的愿景,这是非常重要的一步,因为他们是重构后的受益者。

不管是可以给他们提高工作效率,还是提高他们的销售额、提高他们的业绩,都要给他们一个美好的愿景。

这样做的目的是让他们有一个共识,公司或部门将要做的事情,大家一起朝着同一个目标去努力,这样他们才会在后续的工作中更愿意帮助我们,更好的开展后续的工作。

3. 找到系统干系人,梳理每个功能

需要重构的系统清晰了,与用户也表达了愿景。

接下来就是梳理每个系统里面的功能,这时候再一一与不同功能的用户沟通收集资料就顺畅多了。

产品可以与开发、测试先将各个系统里面的功能都清晰罗列出来,可以通过excel或者思维导图列出,然后找对应系统的用户去统计整理哪些功能正在使用,哪些功能已经不用了。

这一步将是漫长的过程,要看系统包括的功能多少,还有涉及不同岗位的用户有多少,对于每个功能都要有一个初步的了解。

有一点需要注意的是一些少用的功能,对于用户来说他们不是不去用。

而是在特定的时候或场景才会使用,这些功能在重构的时候也是需要去完成,所以这些功能也不可缺少。

4. 排列优先级

把系统和功能点都明确下来后,我们就需要讨论优先级的问题,还有再次明确哪些功能需要完成。

如果需要重构的系统和功能比较多的时候,在原型设计、开发和测试的工作量就会相应较多,所使用的时间也会较长,最后导致的就是系统迟迟不能上线使用。

为了重构后的新系统能够尽快上线,我们需要对功能进行优先级排列,哪些功能可以延后开发,哪些功能可以砍掉或者放在后续版本迭代时完成的,我们把重要紧急的先完成。

这就要通过组织主要干系人进行讨论,这时候可以继续细化我们的excel或者思维导图,一起对所列出的功能标记重要性和优先级。

共2页: 上一页下一页

>相关《 旧系统重构路上的一些经验与反思(一)》内容:


1、 美国发布新规:自动驾驶汽车不再要求人工控制系统

财联社(上海 编辑 牛占林)讯, 美国国家公路交通安全管理局(NHTSA)美东时间周四(3月10日)发布了一项最终规定,不再要求自动驾驶汽车制造商为全自动汽车配备手动驾驶控制系统,以满足碰撞标准。 (来源:NHTSA官网) 因为几十年前制定的安全标准规定,自动...【继续阅读】


2、 App Store崩了上热搜!苹果回应:系统维护 正加急处理

今日下午,不少iPhone用户表示,苹果App Store打不开, 进入App Store后,会一直出现载入界面,随后页面提示无法连接App Store。 相关App Store相关话题迅速冲上热搜,引起网友热议。 同时,也有用户反馈,除了App Store打不开外,包括自带的音乐、天气等...【继续阅读】


3、 全国人大代表李秀香:以系统观念落实“双碳”目标

“实现碳达峰碳中和是一项复杂工程和长期任务,不可能毕其功于一役,目标上要坚定不移,策略上要稳中求进。”全国人大代表、江西财经大学环境贸易与环境研究中心主任李秀香说。 李秀香代表介绍,近年来,江西坚持绿色低碳发展,江西省人大常委会通过《关于...【继续阅读】