需要咨询么?

如果您有任何问题,可以在下面提问或者输入您需要咨询的内容!

如何管理软件定制项目的技术债务?

软件项目定制开发和软件产品研发通常会采用不同的流程、管理方法、合同条款缔约设计及售后服务模式。

软件产品研发流程周期会更长,通常会持续很多年。软件定制项目开发流程相对比较简单,通常在1年以内。根据项目类型、创新程度、可接受风险程度、可接受的质量等级,可采用2种项目管理方法或者2种方法的裁剪、变体及组合:(1).敏捷迭代(以Scrum为代表,但不局限于Scrum);(2).瀑布固定流程(以CMM/CMMI为代表,但不局限于CMM/CMMI)。

如使用敏捷迭代方法,一般1.5个月为一个周期,如何使用1个月以内的小周期则无法充分进行项目管理,项目功能列表、项目范围可能会失控,项目影响性(冲击响应)分析无法进行,项目质量等级会下降,项目风险等级会上升,项目的技术债务会变大。在数据模型已经稳定,设计框架不再变更的情况下,仅仅简单业务逻辑的变更迭代与验收调整时,可适当短期缩短迭代周期到2周。如果特殊情况需要降低到更短到1周的,在从1个月逐步缩短到1周的过程中,可能会逐步忽略项目管理职能、项目影响性(冲击响应)分析、模块代码质量,通过增加技术债务的方法实现短周期交付,有些技术债务可通过后续流程填补改进,但成本通常会比长周期正常流程的要高。但考虑到有些“高风险等级”项目本身可能就是想要用低成本做些小的尝试,交付物不会100%被采用,大部分技术债务也会同部分交付物被放弃掉,这时可采用一些短周期来完成一些高技术债务的高风险项目。

软件项目定制开发周期短,很难在有限的时间内做出详细的资产负债表量化分析,因此无法精确地管理技术债务,一般需要项目管理者参考各方面的咨询顾问、专家与项目涉众的信息输入粗略地评估和管理技术债务。

技术债务通常来源于多个不同地方,比如:

(1).领域流程知识的缺乏和误解

(2).软件依赖数据接口设计和知识的缺乏和误解

(3).软件内部依赖数据模型设计和知识的缺乏和误解

(4).软件输出数据接口及格式的设计和知识的缺乏和误解

(5).软件与用户交互设计和知识的缺乏和误解

(6).软件与第三方系统或者依赖环境交互设计和知识的缺乏和误解

(7).项目管理领域的知识和经验的缺乏

(8).不稳定和正在发现阶段的需求

(9).软件设计、编程、测试和沟通方面的知识和经验

(10).系统集成方面的知识和经验

项目成员需要对上述场景做好评估和应对策略,才能大致的了解项目的技术债务结构并控制好技术债务扩大和失控的风险。

(0) Comments

回复留言

您的电子邮箱地址会被隐藏。*为必填字段 *

您可以使用这些HTML标签和属性 <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

验证码