为什么软件开发周期总是预估的2~3倍?
附文章链接:https://www.sohu.com/a/132411358_355123
文章通过徒步旅行暗喻软件开发,形象的说明了在软件开发过程中可能遇到的各种问题。一开始直接由出发地到达目的地的路线得出旅行周期,就像软件开发一样,直接通过目标需求制定周期;可是在旅途中,会遭遇道路崎岖、线路不通、恶劣天气、补给不足以及身心疲惫等各种小挫败,最终原定计划不得不一而再再而三的推迟。在软件开发过程中,也不能保证每一个功能需求模块都能毫不犹豫的在键盘上飞快的敲出来,正如传言所说,当一只程序猿望着电脑发呆一动不动的时候,编程才刚刚开始。
什么是分而治之?
分而治之,顾名思义即分别管理。在软件设计的过程中,我们也经常会用到分而治之的方法。在解决一个大的问题时,先把它细分成多个规模更小的问题,分别解决每个小问题,最后把各小问题的解答组合起来,即可得到原问题的解答。而小问题通常与原问题相似,可以递归地使用分而治之策略来解决。
了解WBS
转自百科词条:https://baike.baidu.com/item/WBS/9518746?fr=aladdin
WBS:工作分解结构(Work Breakdown Structure), 创建WBS是把项目工作按阶段可交付成果分解成较小的,更易于管理的组成部分的过程。
WBS的基本定义 :以可交付成果为导向对项目要素进行的分组,它归纳和定义了项目的整个工作范围每下降一层代表对项目工作的更详细定义。无论在项目管理实践中,还是在PMP,IPMP考试中,工作分解结构(WBS)都是最重要的内容之一。WBS总是处于计划过程的中心,也是制定进度计划、资源需求、成本预算、风险管理计划和采购计划等的重要基础。WBS同时也是控制项目变更的重要基础。项目范围是由WBS定义的,所以WBS也是一个项目的综合工具。
WBS的分解可以采用以下三种方式进行:
1 .按产品的物理结构分解。
2. 按产品或项目的功能分解。
3 .按照实施过程分解。
4 .按照项目的地域分布分解。
5 .按照项目的各个目标分解。
6 .按部门分解。
7 .按职能分解。