重构 10 年历史的 B 端产品,我的一些经验体会
sisisi于2022-01-13发布在灵感
我目前在一家传统医疗企业,为实现信息化转型,领导期望将使用多年的旧系统进行升级。因系统扩展性不高,只能推翻重做。我司和德勤有战略合作,所以请他们团队来协助重构系统。在重构的过程中,我在德勤的需求分析师身上学到了很多做事方法,受益匪浅。因此,把这个关于重构系统的实例分享出来,希望对大家有启发。一、重构老系统我们碰到的三大问题
早期的系统没有专门的产品经理规划,一味图快,有需求就加功能,留下了非常多问题。比如:流程复杂:旧系统存在非常多的不必要流程,导致使用者为了达成业务目标,经常要在系统里操作多次,这严重影响实际工作效率。展示复杂:现在的系统包含 900 多个页面,页面之间的重复度高。本可将信息整合为一个页面,实际却用多个页面展示。有的页面有 50-60 个按钮,且每个按钮都会触发不一样的场景。培训难度大:使用者很容易忘记功能的作用和操作顺序,导致学习成本巨大。经调研,刚入职的同事要熟练使用系统,一般要 2-3 个月。旧系统没有完整的需求说明文档,概要设计,更不用说详细设计了。文档更新不连贯,最新的文档还是几年以前的,这几年新增的业务功能则完全没有记录。且文档内容都非常简单,无法呈现完整的业务流程和核心细节,很多地方都是简单带过。文档不全,我们还寄希望于有“活文档”,但是这个希望也落空了。老系统的使用角色有近 20 个,因为功能复杂,每种角色只会操作跟自己业务相关的几个页面,但也只了解主流程,对于细节部分还是模棱两可。系统运行了 10 多年,一直有开发工程师在维护。但因为公司人员不断有变动,文档、交接程序都不完善和规范,经过几手传递,公司内没有一个人了解系统全部功能。二、面对挑战必须要有整体且细致的规划
经验尚浅的产品经理面对这种场景,可能会急于动手,在还没有思考清楚工作流程的时候,就直接研究系统功能,看旧系统如何设计,然后在这基础上做部分优化。但是这种工作方式并没有大局观,只知道要做但不知道要做哪些,且需求梳理完的截止时间也不确定,无疑不利于整个项目的落地。有一阵子,工作进入了停滞期,一时找不到入手点,不知该如何处理工作。后来,在德勤的协助下,我们并没有着急开始动手,而是先思考再做!在动手前会认真讨论和思考怎么做更有效率,并且能达到一个最好的效果。毕竟我们不可能花几年时间才把需求全部整理出来,到时候竞争公司早走在前面了。2.1 确定工作的目标,范围,截止时间
目标已经很明确,就是需要把需求全都整理一遍,然后重新进行产品设计。而工作的范围即梳理全量需求:系统里的功能都需要我们全部梳理。截止时间我们是倒推的,因为新系统计划年底上线,所以需求梳理的时间要早于上线几个月。开始动工前,梳理这三个事项非常重要。梳理完还要和领导做同步和确认,这样才能明确工作方向和重心。2.2 量化需求梳理工作
确定第一步的内容后,第二步是对接下来的工作进行量化。安排几个同事把系统的所有菜单都用 Excel 整理出来,包括一级菜单,二级菜单,三级菜单等,最后统计下来有 900+ 页面。因为涉及页面太多,有的页面功能甚至高达 100+ 个,如果按功能整理就需要花费大量时间,但我们得严格控制需求梳理的进度。且我们对功能不了解,也不了解实际的业务含义,所以前期整理的颗粒度就仅仅按照页面划分。有的伙伴可能会有疑问:为什么需要列一个这样的Excel表格去整理页面菜单呢?对于后台产品,前期不应该直接进行业务调研吗?因为这是个重构系统的项目,上层领导只知道要重构,却并不知道重构的难度有多少。前期制定的系统梳理至上线时间为 6 个月。但梳理完以后,我们对工作量和工作难度有了新的认知,6 个月是绝对完成不了的。有了这样的梳理和量化的结果,我们和领导汇报工作难度并且调整重构时间为 12 个月。2.3 确定页面梳理优先级
完成第2步的量化工作,我们是不是就开始着手梳理这 900+ 页面了?梳理那些没人用的页面,根本就是浪费时间。我们要搞清楚用户到底常用哪些页面,压根不用的页面就不梳理。于是,我们继续梳理页面优先级。将之前整理的页面菜单Excel的列后,再加上目前主要使用系统的各大用户组。用户组是由业务负责人提供,大概有近20个用户组,每个用户组都有对应组长。所以,我们前期就和各大业务组组长进行沟通,逐个询问当前所有页面的使用情况,是否使用以及使用的频率。统计下来:高频使用的页面有200+,中频使用有100+,低频使用100+,几乎不用页面 500+。不过,业务发生频率和需求优先级还有一定区分,经常使用的页面肯定是需要优先梳理的,但业务不经常使用的页面不一定优先级低。因为低频使用的页面,可能也会涉及到一些核心流程的流转。不过不要紧,深入调研的时候去了解详情即可,初期阶段就优先梳理把高频使用的页面的需求。2.4 进行需求梳理
需求梳理我们大概分为三步:需求调研,需求梳理,需求分析。前期业务负责人给我们提供了15个用户组的组长资源,于是我们就以用户组作为突破口,采取线下逐个调研用户组的方式来了解需求。因为不同用户组在系统中都承担着各自的职能,所以我们只要满足各个用户组的核心需求,那么整个系统就相当于是调研成功了。