“计划式研发”试水纪念

来源:互联网 发布:mac 解压 编辑:程序博客网 时间:2024/06/03 16:36

前记

在上海评工程师职称需要参加上海市组织的继续教育考试,所以去上海静安区参加了上海的工程师公需课培训。其中有一门是项目管理,笔者虽是技术人员,但是从业以来几个项目都是靠自觉,感觉自己的研发进度混乱无比。
评价体系是个好东西。但是对于研发人员来说,项目的进度往往难以预期。无计划就无评价、无参考,导致无进步。研发跟生产不一样,生产可以很容易的进行管理,一堆砖在那里,砖数一定,人员搬砖能力稳定,即便中间有人请假,项目的进度也仍然是可控的,不会有太大的跳动。而研发相对难管理些。做管理的大多就不是技术,而做技术的大多做不了管理。且,研发,具有明显的技术性和不确定性,充满未知。技术性导致的问题是把非技术型项目管理人员架空在很尴尬的位置:如果插手,会消耗掉部分技术研发精力,还很可能会打破技术的纯洁性;如果不插手,又怎么能参与到项目中去。研发的不确定性带来的问题是,即便是技术型管理人员,管理协调消耗掉部分精力后,由于研发的强未知性,很难对产品研发中的突发情况做出提前的预判。
基于前瞻性考虑,由放养式研发转向管理式研发是十分必须的。2017年八月二十八号,一个新的小型项目到手,决定粗试一下。
不试不知道,一试吓一跳。到今天为止(2017年9月22),项目算是以半吊子状况结题。
笔者一者不懂管理,二者技术差到不行。请读者在评论区尽情嘲笑挖苦。在此推荐两本书:《PMBOK指南》(现最新第五版)《软件项目管理》(机械工业出版社 廖彬山&周卫华译 原书第五版)
现将粗略的项目情况记录如下,仅供参考和对初试计划式研发的纪念。

项目描述

此项目为超小型项目,将原基于labview开发的小型上位机改为C#平台。
原界面:
这里写图片描述
后台程序框图如下:
这里写图片描述

项目拆分

经由分析得出工作流程如下,其中紫色为细分到可以定量的工作包,也是实际的具体工作:
这里写图片描述

工作包确定后,开始分析工作量,为每个工作包打时间标签。经分析后,重绘流程如下:

Created with Raphaël 2.1.0通用控件粗绘(周一)UDP接收(周三)/UPD发送(周四)数据处理(周五)综合调试(周一) 仪表盘重绘(周三)/波形图重绘(周四) 综合调试(周五)交货

实际进度

按照规划,此项目应该在两周结束。实际用了四周且以半成品不合格形式交货。
下面逐条进行项目总结分析。
1.通用控件粗绘。- - -按时完成
2.周二既定请假,为预期事务,本就在规划中。- - -无影响
3.UDP发送/UDP接收本应两天完成,实际一天完成。- - -超前1天
4.数据处理,接上上级任务,九月中旬开始全力辅助Petr。
5.数据处理,去4S店取班车。- - -延期0.5天
6.数据处理,Petr办公室网坏了,给Petr修复网络。- - -延期1天
7.数据处理(9.5),labview代码分析,并据此修改了部分界面。 - - -延期1天
8.数据处理,分析labview代码,继续修改了部分界面,并开始敲数据处理的C#代码。- - -延期1天
9.数据处理,labview代码已读透,全力敲代码。—延期1天
10.数据处理,九月八号,早上上班看了一眼进度表,本应今天结题,但实际进度连一半都不到,顿时胸闷气短,伤心欲绝,连煮两杯咖啡,喝了N杯水,去厕所放水N+M次,蹲坑3+次,把办公室的花都浇了一遍,鱼喂了三遍,中午还趁着出去给Petr修手机的时间散了散心,状态还是不好。- - -延期1天
11.数据处理/综合调试,早上结束数据处理,可以测试整体软件部分,发于美国进行测试。对已做工作进行整理优化,着手界面重绘。下午去工厂给Petr物色新车间(好像是这天)- - -按时完成
12.界面重绘,(9.12)接到命令,去工厂给十米无人艇接电台。- - -延期1天
13.界面重绘,继续去工厂接线。 - - -延期1天
14.界面重绘,去医院做胃镜,麻药打爽了,整个人都轻飘飘的,请假一天。 - - - 延期1天
15.界面重绘,又去工厂了。。。忘了去干什么了,好像还是接线。 - - -延期1天
16.界面重绘,去宁波验收165。周日,不算延期。
17.界面重绘,在宁波验收165。- - -延期1天
18.界面重绘,在宁波验收165。 - - -延期1天
19.界面重绘,胃痛请假1天。 - - -延期1天
20.界面重绘,(9.22)以神一般的速度糊弄完了界面,巨丑无比,刻度、数值未关联,波形图未重绘,半成品未发布安装文件。数据处理算法未验证。以极无工程师职业道德的厚颜无耻的方式强行结题。 - - -以严重技术负债形式结束

C#重写版(界面部分):
这里写图片描述

对比总结

总结:
1.非研发人员考虑部分,不予置评。
2.项目经验不足,许多领域初次涉及,所以预算进度不准,延期、提前时有发生。
3.初期分析不到位,例如labview源程序分析这一工作包一开始就未能考虑到,不是进度问题,是遗漏。
4.提前已知的请假未写入进度,例如胃镜八月份就已预约好,但是忘记写入进度,致使算入延期。
5.对公司临时插入的中断事件没有一个概率性的思考与估算。不是难预测,而是没有进行。

原创粉丝点击