新闻动态

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

2019-01-30 22:39:51

                             4.1实践可能性艺术

经验主义的指导思想是利用手上的资源做到最好。过去,软件开发都是从做计划开始的。无论现实中遇到什么事情,开发人员都必须严格按照计划执行。

经验型软件开发的计划是适时制订的。一旦确定了目标,团队就以迭代的方式向着这个目标前进。有必要的话,会根据经验修改计划。也许实现目标的途径与预期有所不同,但是会根据实际情况进行调整和优化。当投资回报达到最优的时候,项目就完成了。有时候,项目侩会比预期结束得早。例如,在两个迭代之后,如果你发现目标无法在合理的成本内完成,可能会决定终止项目。其实这也是一种成功,因为你成功地避免了浪费更多的金钱。

让我们来进一步探讨。如果 F-Secure(一家芬兰的安全软件公司)坚持完成整个产品的开发,那么花费在最后几个迭代上的资金就白白浪费了,因为产品已经超期了。团队只能尽力而为,估算能够将多少需求转化成软件增量。这是一种估计或者预测,无法得到保障和确定。因为在迭代中,团队成员可能生病,一些技术有可能行不通,开发的软件有可能比预期棘手。软件开发是很复杂的过程。在每个迭代结束时,你都会经验性地检查有多少功能完成了。实际完成的数量有可能比预期多,也可能比预期少。无论如何,你都清楚地知道有多少功能已经完成,然后根据完成情况确定下一步计划。经验主义并不会带来确定性,只会让你明白各种可能性。

F-Secure是一家面向全球开发计算机病毒检测及安全防护软件的芬兰公司。有一个合伙人要求他们进入杀毒软件的一个细分市场,但是 F-Secure没有答应。最后,他主动提出资助产品开发。于是,FSecure的开发人员要为其公司开发额外的功能,然后将新产品作为其品牌推向市场。

F-Secure使用经验型软件开发流程已经好几年了。他们知道开发团队每个迭代一般可以完成多少工作量。基于这样的经验,他们和合作伙伴商议,在即将到来的发布会之前完成部分功能,并在之后不久完成第一个版本并推向市场。但不幸的是,在前三个迭代结束后,他们发现开发团队并没有完成计划的工作量。然而,现在距离发布会只剩四分之一的时间了。他们显然无法完成约定的任务了,实际上距离完成还相差甚远。

软件开发

F-Secure的管理层及合作伙伴都注意到了目前的进度比原定计划要慢,于是决定停止所有的工作,因为他们发现,虽然投入了资金却没有创造任何有价值的东西,也就是说没有达到他们的目标。他们取消了会议的准备工作,取消了市场和销售活动,也避免了在市场中的尴尬。这个项目的价值就在于減少损失并且不错失机会。

很多人在采用经验型流程时都有过不悦的经历。有时团队开发出的东西并不是他们想要的,有时开发的功能没有他们希望的多。我们认识的一位风险投资家有过非常不愉快的经历。他知道自己在每个迭代需要什么,然后将需求告诉团队,让团队进行估算。如果团队不按照他的要求去做,他就会说:“我真的对你们非常失望。”他确信他的愿望总有一天会实现,创造出他想要的东西。但结果却打击了团队的士气,影响了团队的效率。

经验主义是可能性的艺术。利用手上所有的资源尽可能地完成最多的事情,包含了无限可能。但是,如果你认为自己能够决定需要什么,并竭尽全力去得到它的话,你就已经将其他可能性排除了。这时候你所做的不再是面对现实,而是企图把你的想法变成现实,随心而行。在简单的情况下这也许是有可能的,但是遇上复杂的情况,就会让人非常灰心和沮丧。

管理者最重要的职责就是帮助下属,给他们设定一个目标,让他们开始工作。为他们扫清一切障碍,尽一切可能更高效地工作。然后,组织就可以收获他们的工作成果了。