Killua님의 프로필小狼窟블로그리스트 도구 도움말

shen yancheng

小狼窟

嗷嗷
9월 20일

工作量那点事

我想大家都遇到过这种情况:
    需求不是很明确而且肯定会变化;
    还没有开始做分析设计,对工作量心里没谱;
    上面给了最后期限,却不给资源……
 
    这种情况下,你心里知道风险极大,却必须接受这个工作。
    
    记住,你是开发人员,你的本分是系统实现——你只应该承担开发的风险。
    怎么样更好地“坚守本分”,不干预你职责外的风险呢?
    其实有很好的办法, 本文给出一些建议。
 
 
1. 关于工作量
    工作量是一个概率!
    对于每个工作项,其完成所需的工作量(人天)都是一个概率分布
    有最小值(但概率几乎为零)
    有可靠值(最可能的情况,概率在80%左右)
    没有最大值(最大值为无穷,其概率同样为零)
 
    如果估算工作量时只估算了最小值,并且把这个值最为依据,那么对不起,你死定了——大家根据这个值盯着你的工作,而你按照这个时间表完成的概率几乎为零。那么项目延期的风险完全由你承担。
 
2. 关于累计工作量
    关键路径上概率的累计是每个工作项概率相乘!
    比如关键路径上有3个认为,其最可能完成的工作量和概率分别为(10人天,70%),(15人天,80%),(9人天,75%)
    则使用10+15+9=34人天整个完成的概率是:70%×80%×75%=42%!
    通常关键路径上会有10个以上的工作项,即使每个工作项按照概率90%来估算工作量,整个完成的概率也只有0.9^10=53%!
3. 概率来自哪里?
    概率来自风险!
    风险主要来自需求变化!
4.如何应对
    工作量的估算不是简单的数字!
    工作量的估算还要考虑风险。最简单的办法是定一个风险系数。风险系数取决于需求不明确,需求可能变化,开发人员会生病等等。
    比如,
        情况                                    风险系数
        ========================
        需求不明确                          0.5
        需求可能发生很大变化                1.5
        需求会增加很多                      2--3
 
    等等。因为让你报工作量的时候通常没有给你充分的时间,所以可以只从需求的确定程度来风险系数。
 
    最终,最可能的工作量为最小工作量×(1+风险系数)
 
 
    整体工作量要加保险系数。
    由于概率累乘,整体风险还是很大。如果要保证85%以上的可靠性,还要在整体上进行调整。
    比如,最后汇总的工作量为200人天,而关键路径上计算出的概率为50%,为了保证总体有85%的概率,则
    需要的工作量还要增加一个保险量,大体上是(å可靠值-å最小值)×0.8
            (根据概率分布曲线导出,不是很精确,也没必要精确)。
5.注意事项
     使用人天作为工作量的单位
            2人月很可能被砍到1人月,但40人天通常被砍到30人天。
            记住每个月只有22个工作日。遇到法定假日更少。
       单个工作项,工作量估算一定要客观。
            单个工作项的工作量很容易估算,不要让别人挑出问题。
            如果有问题在风险系数上做文章。
       工作量估算和项目计划要随时更新
            已完成的工作项,不再存在风险,同时实际完成时间已经确定。
            需求在逐步确定,风险在逐步降低。
            有新需求时,加上新的工作项。
            随时估算新的风险可能。
 
 
 
6. 讨价还价
    上面在工作量上讨价还价时,其实是在帮我们逐渐确定需求,减少风险。
         比如,
        甲:这个为什么要用这么长时间?
        乙:如果需求能够确定,那么用的时间还是很少的,但是现在不确定,风险系数比较高。
         甲:是吗?我看看,嗯,这个功能我们就不做了。
         乙:这样啊,风险系数降低到XXX,最可能完成的工作量是XXX。这个功能不做了吗?我们签字确认一下?
 
7.实例
    以后有时间给出一个实际的例子。包括快速分析设计,工作量估算表模板,实际进度中对工作表的更新等等。
 

别人眼里的高手~

 你是主力!

你是高手!

你是大侠!

这事很紧急!

这事非你莫属!

 

然后你兴奋或无奈地接了这个活,为了赶进度也没办法让别人配合(因为某些情况下你做设计再给别人讲清楚,所用的时间比你自己开发还要多)

你在加班加点,一群人为你加油助威,呵呵……

 

最后,你累个半死,完成了任务。结果呢:

对你,是简单重复,无聊;

对别人,觉得没学到该学的东西,而且会很依赖你;

对老板,觉得这样做很对,下次还可以这样做。

 

 

我们真的需要高手吗?

其实,一个项目需要一个团队来做;

其实,把一个“高手”当作“快速开发机器”会影响整个团队的士气;

也会影响“高手”的情绪;

其实,没有发挥“高手”的作用,不是别人的错——别左顾右盼,说的就是你:PM

没有“人尽其才”,绝对是你的问题,你把问题简单化了,把资源同质化了。

把将军当士兵去打仗,充其量以一当十;让将军指挥战斗,可以以一当万!

 

高手在项目中,到底应该发挥什么作用呢?

1。总体设计:包括系统的架构,层次和模块的划分;

2。技术指导:详细设计应该由各模块的开发人员来设计,高手可以指导;

3。技术咨询:开发中的任何技术问题,也可以找高手咨询解决;

4。核心代码:对于最核心部分(比如难度较大,对质量和效率要求较高的模块),由高手来开发,能有效降低项目风险。

 

 

答案已经很清楚了:

高手应该作为核心

高手不应该作为“主力(苦力)”! 

2월 12일

万能的js啊,我赞美你

js其实内置了Unicode和UTF-8的编码解码函数了。
Unicode编码:escape
Unicode解码:unescape
UTF-8编码:encodeURI
UTF-8解码:decodeURI
哇咔咔,具体有什么用,大家慢慢摸索吧。。。。。。
1월 30일

万峰同志是个人物啊

好久前无意中看到万峰同志,就觉得小伙是个热血小青年,没想到网上还有同好,还有他到语录。摘抄几段:
> 听众:万老师我现在有个难题。我二十多岁了,现在想谈个对象。
> 万峰:那很好啊,有什么问题?
> 听众:问题是我觉得我的职业影响了我的爱情。
> 万峰:姑娘你是做什么的?
> 听众:我在殡仪馆工作。
> 万峰:(怒了)殡仪馆怎么了?殡仪馆还不是我们人人要去的地方!



> 听众:万老师,我爸爸今年54 岁,和我妈离婚了,找了个19岁的女朋友。
> 万峰:呃,等一下。姑娘你今年几岁?
> 听众:我18 岁。
> 万峰:我说你爸爸是不是有点糊涂啊。
> 听众:是的,我觉得他很糊涂,而且这个女的是理发店工作的,我觉得她已经骗了我
爸爸很多钱了。
> 万峰:你赶紧劝劝你爸爸呀。
> 听众:劝了没用,他不听,还骂我是嫉妒那女的。
> 万峰:那你就告诉爷爷奶奶。
> 听众:也说了,也没用。我爸说我奶奶是神经病。我现在不知道该怎么办。
万峰:(为难)那这样吧,你去告诉你妈。



听众:万老师,我今年已经 48岁了。我跟我丈夫也都是再婚,中间经过了很多艰
难才在一起。但是他现在又跟别人好上了。我们前一段时间离婚了。
> 万峰:那你现在想怎样?
> 听众:我想跟他复婚。因为我是这样想的,既然我也已经失去他了,还不如拖住
他,也不让他跟别的女人好。
> 万峰:这样吧,我介绍你去读一本书,是万峰最近在读的。XXX 出版社出版的《XX
婚姻现状报告》。现在万峰再也不劝人去心理咨询啦,因为老有人说万峰给心理咨询的
地方打广告。其实万峰从来没有收过红包。




> 听众:万老师,我和我的初恋男朋友是因为他不肯结婚分手的。第二个男朋友去年
3月分手的,也是因为他不肯结婚。分手后我父母就给我介绍了一个男人, 12月我就
他结婚了。
> 万峰:听起来你特别想结婚,你多大?
> 听众:我28 岁。
> 万峰:那现在有什么问题?
> 听众:结婚后三天,第二个男朋友来找我了,说当初没有真的跟我分手,只是想在
事业上继续努力争取配得上我。他准备在12月 12日跟我求婚。
> 万峰:那又怎么样?你已经结婚了呀。
> 听众:我知道。可是他要求我离婚。
> 万峰:姑娘你今天是故意来气我的是吗?
> 听众:万老师,后面您会更生气的。因为我离婚了。
> 万峰:(强忍怒气)好,那你预备跟他结婚罗?
> 听众:但是刚刚过完元旦他又跟我说,他仔细想了想,觉得受不了我已经结过一次
婚的事实,想再考虑一年。
> 万峰:(崩溃 大吼)你这个男朋友是吃粮食长大的吗?!
1월 5일

jsp白板、备忘

    代码发布,输入地址,回车、紧张…………然后页面一片空白,咣当、口吐白沫。
    环境jdk1.5.0.5、tomcat5.5.17,结果jsp白板
         jdk1.5.0.5、tomcat5.0.28,结果一切正常。
    原因代码中有jar包与5.5.17中common/lib中jar冲突。
    具体解决方法,删除发布代码中jsp-api-XXX.jar、servlet-XXX.jar。
    jsp-api是本次的罪魁祸首,servlet网上据说会有冲突,但是没有碰到。