V2EX 10月22日 08:31
需求变更才是“技术债”的根源
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文探讨了“技术债”产生的深层原因,指出“需求变更”才是其核心驱动力。作者以养宠物为例,生动说明了当最初的需求(养仓鼠)与实际交付(来了一头大象)发生巨大偏差时,原有的良好架构将面临被破坏的困境。技术债的产生,既可能是需求变更的渐进积累,也可能是突发离谱需求的直接后果。开发者常限于设计最初需求下的合理架构,难以预知未来多变的需求。文章提出,既然需求变化是常态,那么应对之道在于寻找一种能够灵活适配变化、又不损害现有代码的稳定性方法。

🐾 需求变更被揭示为技术债的根本原因:文章认为,以往普遍认同的“技术债”并非源于技术本身,而是由不断变化的需求所驱动。以养仓鼠和来了一头大象的类比,形象地说明了当实际需求与初始设计发生巨大脱节时,原有的系统架构会因此承受巨大压力,甚至被损坏。

⚖️ 技术债的产生机制:技术债的形成可以分为两种情况:一种是需求在迭代过程中缓慢、渐进地发生变化,累积而成;另一种则是突发性的、不符合逻辑的离谱需求,导致现有架构无法适配,不得不进行大的改动甚至推倒重来。

💡 开发者面临的挑战与应对策略:开发者通常只能根据项目启动时的需求来构建合理的架构,而无法预知未来的不确定性。鉴于需求变更的常态化,文章提出,解决之道并非要消除需求变更,而是要寻找一种能够适应多变需求,并能在变化中保持原有代码稳定性的方法。

🔄 拥抱变化,寻求稳定性:文章暗示,代码的“腐败”是由于需求的持续变化。因此,应对之道在于开发一种始终具有稳定性的方法,这种方法能够灵活地适应不断变化的需求,而不是被动地承受其带来的破坏。

以前只是人云亦云地附和“技术债”,没细想,最近发现“需求变更”才是根源。

例如,领导说我们养个动物吧,比如仓鼠,然后你搭了一个小窝,结果领导牵来一头大象,你要么把窝改得不伦不类,要么拆了重盖。

这种需求与架构的不匹配,就会把原本良好的架构拉扯得稀碎。

浅聊一点技术债是怎么产生的?它可能是需求变更中一点点积累的,也可能是突然离谱需求导致实在没法适配的。

开发者面临的困境是,只能设计出符合项目最初需求的合理架构,没办法预知未知需求,但“需求变更”既合情合理也是常态。比如领导可能有一天会把大象换成鲸鱼。

所以,代码是注定会腐败的吗?

按常规思维来说是的,因为需求会一直变。但这也刚好暗示了应对方法:既然需求肯定会变,那么找到一种能适配需求多变,并且不会破坏已有代码的方法就好了,一种始终具有稳定性的方法。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

技术债 需求变更 软件架构 敏捷开发 代码腐败
相关文章