提纲:

  1. 保险业务与资源界面全部相似,但又有字段的修改。
  2. 保险需求变动不定。
  3. 流程图 切图缺失,直接在疫苗的基础上做改动。
  4. 是选择界面代码抽取 or 代码全部隔离
    最终目的是保证疫苗和保险业务绝对隔离。

由于公司主业务发展不理想,公司考虑拓展其他业务。7月公司接了个保险公司的外包。便和保险公司需求合作,在自己 APP 做疫苗推广竞标业务之外引进保险竞标推广业务。
给了 20 天的开发周期,需求就是在原来疫苗的基础上加个 if else 的判断把保险加进去就行了(老板原话)。

疫苗和保险毕竟不是同一性质的对象,技术领导在考虑到需求的不定变动之后,要求所有的代码全部拷贝独立出来,防止后期需求更改时,代码复杂度 耦合性太高.同时也将疫苗和保险代码全部隔离.不会污染到疫苗业务代码.

刚做出决定时,安卓端还不停地吐槽代码冗余太高了,代码写的太非人类啊.没办法,自己作为一个搬砖工,实际上是没有太多的话语权的.与其做无谓的抗争,还不如踏踏实实把手里的代码尽量弄得条理些.事实证明,说什么开发完成后对代码进行抽取重构都是一句空话.小公司开发就几个人,你抽取代码没问题.谁来做测试,谁来保证抽取后不会出问题.出了问题谁来负责.这在小公司都是头疼的问题.

一开始动手时,由于没有现成的切图 和流程图 接口文档也没有.好几个页面的跳转 字段的取值 布局 全都要靠自己摸索.甚至展示列表上显示那些字段,字段放什么位置都需要我们开发自己决定. 这就严重造成了安卓与iOS端的不统一. 整个开发过程就十分蛋疼.甚至在给老板展示汇报的时候,还出现了财富金额安卓和iOS显示不统一的插曲 (安卓保险总金额显示的是可提现的总金额).

代码全部独立拷贝
优点:

  1. 快速开发,
  2. 可以应对不停变化的需求.
  3. 代码隔离性好,拷贝出来份代码随便怎么搞,不会影响到原来的业务.
    缺点:
  4. 代码冗余度高
  5. 需求文档 接口文档 切图全部缺失,项目可维护性变差,
  6. 为之后的业务升级,人员接手,埋下了巨坑
    到最后,敏捷开发是节约了时间呢,还是为以后维护耗费了大量时间呢,自待时间来看