关于软件的维护_编程开发_Heero's Blog

昨天在博客园看到了两篇文章。这两篇文章虽然标题不同,但讨论的主题都与软件维护有关,阅后颇有感触。

技术债务

原文地址:

作者把程序员开发时留下隐患称为技术债务。技术债务又分为代码债务文档债务

代码债务是指为了快速地解决问题,而采取的不规范的方案。比方说把某个条件写死,或者是把特殊情况写在了通用代码中。如果不尽快偿还,一旦基于该代码进行二次开发,影响范围将越来越大。

文档债务是指修改了代码后,没有修改相关的文档,造成文档和实际代码功能上的不一致。一段时间后,大家就会发现文档根本就不可靠,不仅对代码、功能的了解没有丝毫帮助,还会造成误导。

在我看来,很多公司(特别是非IT公司)都把重心放在新项目的开发上,经常忽略了旧项目的维护。因此,欠下技术债务的人往往不是不想还,而是没时间去还。直到欠债的人离职了,接手的人甚至不知道债务的存在。

发展危机

原文地址:

作者举了一个典型的例子:假设某人每天能完成10个功能点。刚开始他一无所有,5天就完成了50个功能点。可是问题也来了,每10个功能点会带来1个维护点。而维护的时间和开发一个功能点的时间是一样的。这导致他发展越来越慢。当他艰难地奋斗到100个功能点后,就达到了瓶颈,因为他每天必须去处理10个维护点。

大公司业务多,产品也多,这种现象尤为严重。公司员工的数量在一定时间内是固定的,公司不断地研发新产品,但旧产品的维护往往也是同一批技术员负责。久而久之,随着旧产品的数量的增长,旧产品的维护会影响新产品的开发进度,甚至于无暇开发新产品。

个人认为,解决这种发展危机的方法不外乎下面几种:

  • 人员招聘:人员不足,那就再招,但是这导致成本增加。
  • 产品重构:分析现有的产品,去粗取精,进行重构整合,开发出新的产品。
  • 淘汰旧产品:一些几乎没人用的产品就丢掉吧,就算不丢也是xxx。

原文地址:

郑重声明:资讯 【关于软件的维护_编程开发_Heero's Blog】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——