1、Quora精选:为什么软件开发周期总是预估的2~3倍?
理论上的软件开发周期是忽视很多细节的预估,软件开发周期的预估是理论上的分析得出的。而现实中的开发周期往往与现实有着差异。这些差异就是软件开发周期总是预估的2—3倍的原因了 。就好比“从旧金山出发,沿着西海岸徒步旅行,到洛杉矶的纽波特沙滩和朋友聚会”前期计划非常完美,但是在实际行动起来会出现各种各样的问题,导致我们原先计划的改变。古人云:计划赶不上变化。我们无论做什么事情,有计划是好,但是我们不可能全部想到所有突发因素,这个时候我们就必须给我们的计划留有余地。回归软件开发也是如此,在软件开发周期预估的2~3倍,才能顺利完成目标。
2、什么是分而治之?
中文的意思是:分别治理,利用手段使国家、民族或宗教等产生分裂,然后对其进行控制和统治。分而治之是我国古代治理国家的一种理念。
在软件工程专业术语中,分治法是基于多项分治递归的一种很重要的算法范式。字面上的解释是“分而治之”,就是把一个复杂的问题分成两个或多个相同或相似的子问题,直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。
3、了解WBS
WBS,即工作分解结构,是以项目的可交付结果为导向而对项目任务进行的分组,它把项目整体任务分解成较小的、易于管理和控制的工作单元,工作分解结构的每一个细分层次表示对项目可交付结果更细致的定义和描述。WBS其实是为实现特定目标或成果的所有工作定义的层次化结果。WBS跟因数分解是一个原理,就是把一个项目,按一定的原则分解,项目分解成任务,任务再分解成一项项工作,再把一项项工作分配到每个人的日常活动中,直到分解不下去为止。即:项目→任务→工作→日常活动。