新闻动态

软件开发_手机软件开发_开发一个软件多少钱_深圳金绣科技开发有限公司

2019-01-30 21:40:54 作者:小麦

            不要忽视复杂性:永远保持警惕

我们知道可以利用Scum应对挑战,把握机会。在第一个 Sprint开始之前,通常我们都想知道软件开发项目大概需要多长时间以及成本是多少。我们可以先进行几个 Sprint,然后通过这几个 Sprint得出的数据使用外推法对整个项目的成本有个初步的估计。举个例子,假设我们在头两个 Sprint里分别完成了20个单位的功能,而整个项目大概需要220个单位。也就是说,需要再完成180个单位。以每个 Sprint20个单位的速度来算,还需要9Sprn就可以完成整个软件开发项目。如果在项目进行过程中增加或减少了功能,可以用剩余的工作量除以每个 Sprint可以完成的工作量,就能够得出剩余所需的时间了。

当然,使用历史数据来预测未来需要非常小心。外推法是从已知数据点推算出新数据点的_种方法。内推法和外推法类似,不过推算的是介于已知数据点之间的数据点。外推法得出的数据没有内推法那么具有实际意义,带有更高的不确定性。我们都知道软件开发过程是复杂的,未知的事情比已知的多。虽然我们可以进行外推,但是必须要检验推测的结果。因此,在每个迭代结束的时候,都需要检查实际进展如何,而不是推断进展如何。事实永远比期望更可靠。

软件开发

新的机会会带来全新的问题。要探索新的机会,要么创造全新方法,要么改进老的方法。无论使用哪种方式,我们都需要对很多新事物进行考量,制定解决方案,然后开发或修改软件。传统意义上来兑,我们需要在开发软件前深思熟虑。这个过程叫做需求计划,其产物是一份产品文档或者市场需求文档。然而,这样做的问题是,我们在做计划的时候还不完全清楚到底需要什么。就算已经有了确定的想法,但通常最好的解决方案在软件开发过程中才会涌现出来。复杂问题的定义是,未知的比已知的事情多。因此要提前做计划是非常困难的还会产生错误和遗漏。而使用Scum,我们可以边计划边开发,随着软件开发项目的进行就能够挖掘真正所需。可预测性基于根据实践成果所做出的即时决策。虽然我们在一开始估算了项目的周期和成本,但随着项目的进行需要持续地修正计划。而在传统开发流程里,虽然也是在项目开始前对项目的周期和成本进行估算,但是在软件开发项目完成至少90%,都无法提供任何修正计划所需的有效数据。