软件开发交付表_具有时间表的可持续软件交付能力

软件开发交付表

在我之前的文章《 杀死最后的期限 》中,我对( 假的 )最后期限如何激励人心,降低质量和烧伤开发团队感到不满。 但是,如果您考虑人们为什么使用截止日期,那就是及时交付软件项目。 尽管我不赞成使用假的截止日期来推动开发人员,但在产品开发过程中,有一个确定要发布产品的时间范围非常重要。

敏捷软件开发具有良好的工具和方法论,只要您做得正确并且不会盲目地遵循流程,就可以帮助您快速交付产品,但是您了解自己的工具库中的工具并选择对您有用的工具并进行调整即可。您的需求和文化。

尽管很难(即使不是不可能)准确地预测一个软件项目将持续多长时间,但是必须为产品发布设定时间表,以使团队保持专注并确定优先级。

发布内容

一个项目包含许多功能:有些需要很长时间才能实现,有些则需要很短时间才能实现。 虽然产品经理会预想一整套功能,但是在发布之前实施所有功能将花费很长时间,并且可能永远不会发生,或者产品永远不会启动,因为您总想添加更多或更多功能。抛光您想要做的产品。

设定时间表

为了使每个人都专注并能够及时发布产品,我们需要在要发布产品时设定时间表。 时间线由每个功能所需的时间估算组成。 基于这些估计,我们可以构建一个发布内容列表,其中包含我们要在此版本中启动的所有功能。 设定时间表时,我们会强迫自己考虑要加入此版本的功能。 版本中的功能列表应根据其提供的业务价值来确定。 例如,我们可以拥有一个具有大量价值的大型功能,或者拥有两个较小的功能,而每个小型功能的价值都较小,但是同时发布其中的两个对一个大型功能的产品具有更大的价值。

时间轴应具有检查点或里程碑,您可以在其中评估进度。 在时间/质量/内容的轴上,我倾向于保持质量不变(您应该始终努力生产高质量的软件),现在您将不得不花费时间和内容。 给定一个时间表,这些里程碑是您了解如何及时发布初始功能列表的好点,或者您必须仔细看一下,看看可以为下一版本保留哪些内容。 当您被迫应对延长时间表或削减功能的决定,这将有助于您更快地交付产品时,您会惊讶于“关键”功能可能变得“不太关键”并被削减。

同步公司

时间轴可帮助您同步公司内部的不同部门。 由于发布产品还需要公司其他部门的参与,例如市场营销,支持,内容编写,质量检查等,因此,有一个公开的时间表可以显示并传达给整个公司,这有助于同步所有部门并帮助他们相应地计划以准备发布。 您可以通过定期的电子邮件更新,公共公告板,墙上的海报,在办公室的监视器上公开显示的信息或其他任何可以使时间轴透明并可供所有人访问的方法来传达时间轴。

那么什么是时间表?

时间轴是您要运送产品的大致时间范围。 时间轴不是最后期限,并且可以灵活地进行更改和延迟(不幸的是,大多数情况下,时间轴将被推迟,但是您应尽量将其保持在最低限度)。
根据工作时间的长短,应以一周,一个月或一个季度的分辨率为单位。

有时由于业务限制,时间表成为一个艰难的期限。 这不是您设置的任意日期,而是业务限制的直接结果。 例如,一项特殊功能需要在假期之前发布,或者需要对更改或添加到系统的某些产品进行严格的限制。 在这种情况下,真正的原因需要清楚地传达给团队。

当时间轴被延迟时,应该将其作为讨论的一部分,以了解延迟的业务影响是什么,因为您可能会得出这样的结论:也许可以选择减少范围(内容)而不是延迟时间轴,而不是延迟时间轴此版本,并保持时间不变。

因此,如果时间轴是一个大概的估计,那么发布日期是什么时候?
发布日期,也就是AKA截止日期,应该在时间表的结尾处设定, 以便您了解所有未知因素,并且您可以放心地准备开始发布(以及所有其他依赖项)。 在流程的后期设置截止日期将使截止日期基于REALITY,而不是假的。 是的,您可能需要敦促团队按时完成任务,但这将是他们能够联系,理解而不牺牲质量并发布不良产品的能力。

连续的提高

敏捷软件开发正在谈论将回顾作为改进开发过程的一种工具,在许多组织中,回顾是在冲刺之后进行的,不幸的是,回顾是为了改善估计而进行的,这导致开发人员采取缓冲措施只是出于安全方面的副作用。 。 这不应该是回顾的重点。
回顾应被视为持续改善发展速度的工具,而不应被视为改善估计的工具。 为了提高速度,您应该不断获得有关可以帮助您更快地交付软件的反馈。
以下是开发人员应指出的一些示例问题,这些问题会使他们更快地完成任务:更少的上下文切换,更快的构建时间,太多的生产警报,我在等待质量检查,预配登台计算机需要很多时间,会议太多,等等。 相对于我估计一个任务需要花费3天的时间,我意识到我选择的初始数据库架构是错误的,因此我不得不重做它,这会导致延迟,或者我认为这是一个简单的任务,并且意识到我必须首先做一个大工作重构,然后才能实现它。 获得这些反馈后,您将开始确定模式并确定开发过程中的瓶颈,然后您可以解决这些瓶颈并提高开发速度。 (仅在我们之间,作为此过程的副作用,您还将获得更好的估计,但这是偶然的,而不是此操作的真正目的)

摘要

为了有效地发布产品,您可以使用敏捷的软件交付实践,设置粗略的时间表和检查点,以查看您是否按计划进行。 万一您迟到了,您应该重新评估可能要剪切或切换某些功能的版本内容。
沟通时间线并使公司中的所有人都可以看到时间线,这样每个人都可以保持同步,并且当您觉得可以实际制作一个发布日期并且基于实际进度时,才可以设置实际日期,最后有一个过程可以不断提高您的开发速度。

翻译自: https://www.javacodegeeks.com/2016/09/sustainable-software-deliverability-timelines.html

软件开发交付表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值