赞
踩
没入行之前,经常听说“瀑布型开发”、“敏捷型开发”,这是在说什么呢?其实这是程序员公司中项目管理的概念。一起来看看“瀑布型开发”、“敏捷型开发”都有哪几种项目管理吧。
结果明确,过程清楚。
比如建一幢大楼,没开始动土前售楼部就能把未来张不成的样子给你画出来(结果明确),开造的每一天都知道今天明天昨天前天建的是什么样子(过程清楚)。
IT行业中的瀑布型开发就是这一类。
如图~
可以理解为增量型开发就是把一个需求分成几部分依次完成,而迭代型开发就是逐渐清晰一个需求,每次都力求完成这个需求。
需要根据需求和其他因素,随时调整项目安排的项目类型。
比如需求库的出现。简单来说,就是用户想起来有什么要求,就写进“需求库”。而程序员看准上周末写好的需求库,挑几个能够实现、重要性也比较大的需求,放入这周的计划安排,开始敲代码。
用户可能随时想起有其他需求,然后继续写入需求库;程序员也不断在上一个工作周期结束时,总结挑选需求库中下一个周期要实现的。
如果需求明确,技术实现简单可行,那么就用预测型开发。比如之前所提到的建大楼的例子。(技术可行,是说土木中的技术标准都很明确,流程都很规范哦)
需求很明确,但技术实现起来很麻烦,那么该用迭代的思维去思考这种项目。比如无人驾驶,国内国外近20、30多年甚至到上世纪初都一直有研究,需求很明确:就是要不用人来驾驶,在开的汽车。但技术实现一直是难题。直到最近深度学习技术的爆发式成长,无人驾驶的成功的希望变得很大了。
技术实现没问题,但需求很模糊,这时候说清楚一部分就完成一部分,这样的开发就是增量型开发。很多程序项目就是这样开发出来的。
需求和技术都不明确,这样的项目难度实在太大了,在项目管理中很难控制。作为一般的项目管理者,还是绕道而行。如果你很有上进心,那就继续钻研项目管理的领域吧,相信有一天你可以的。
除此之外,需求和技术实现都有一部分难度,不过大致还可以接受的,就使用敏捷型开发吧。想清楚一部分,能实现一部分,就完成一部分,修改以前的部分。通过合理管控,实现项目的落地吧。
看了上述的文章,敏捷型开发服务的客户对象,可能自己也说不清楚项目具体的需求。他可以思维敏捷,快速想好项目大致的需求,不过可能也有一段时间,苦恼于项目的细节之处、其他功能。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。