西西河

主题:【原创】闲聊敏捷开发——SCRUM(一) -- 哈酷

共:💬141 🌺325 新:
分页树展主题 · 全看
/ 10
上页 下页 末页
                • 家园 回答一下

                  传统模型对待需求变更的解决方案是--“商务谈判”,在开发前你得把需求定下来,如果中途有变更,要么排到下一版本开发,要么加钱加时间(这里的钱和时间会让客户有肉痛的感觉,呵呵)。

                  对,这也是一种平衡,只是效率很低,遇到大量频繁的改动,不可能频繁的谈判。

                  但在一些规模稍大的项目中,如果用户的需求变更影响到架构需要重新设计或做大的修改怎么办?

                  无论如何分解,都无法避免这种修改的成本很高,这种成本将以point的形式直接让客户看到,客户有权力选择进行或者不进行,如果执意进行,那么要么追加工作人员或者工作时间来‘充实自己的钱包’,要么踢掉其他优先度低的需求。除此别无他法。(当然也可以逼迫员工加班,这个后果就不说了,大家都知道)

                  国外那种几个人十几个人完成个比较大的项目或创意的团队,那更是个人能力的体现

                  能力是不可能通过管理方式来短期提高的,能力差的就做的差点,能力好的就做的好点。这是无法回避的。但能力好和差只是个程度词,在能力范围内如何把事情做的更好,才是要讨论的问题。

                  而需求变化是项目环境恶化的因素之一,而同时创意就是以需求变化的形式产生的,如果好的创意都能是在项目一开始就能做出,那么就不存在需求变化,那么不在我的讨论范围之类。我一开始就已经说过既然要讨论,就要把项目环境考虑的糟糕一点。

                  在需求变化很多的状态下,极容易出现一种情况,就是原本可以干更多更重要的事情,却被不那么重要的事情耽误了时间,这才是SCRUM要解决的。

        • 家园 估计在一开始就不会允许一个人参与所有item的报价

          个人感觉,这个报价在面对PO的时候其实开发组内分工已经完成了.对PO的报价只是讨价还价,并让PO了解一些细节的困难程度,更好的评估他自己的决定而已.

          • 家园 有点要澄清

            在报价会议上(poker-plan),TEAM还不知道这些story里哪些会被PO挑选,哪些不会被PO挑选(其中经常有些story是PO拿出来试探价格的)。更加不知道谁的优先度更高(没价格哪里来优先度)。

            所以即使大家心理猜想将来如何分配story,也都是徒劳的。因为在优先级被排出,以及story最后进入sprint之前,都是未知数。

            我稍后会讲sprint。

        • 家园 经济学上的比较优势啊

          这种情况下自然就会出现经济学中的比较优势了。同样时间下总有赚点最多的项目。不过原则上讲,简单任务就会过度竞争了。呵呵。

          关键词(Tags): #比较优势
        • 家园 但是进度上的限制令你不得不找其他人啊
          • 家园 找了其他人,那出价就要按其他人的来了

            比如牛人出价5POINT,但他没空做,另一个人有空,但他的出价是10POINT,SM就必须给PO报价10POINT了,显然这对PO是不公平的。

            • 家园 报价不因人而异

              STORY一旦进了sprint,无论谁接都是这个价格。

              我稍后讲sprint

            • 家园 非也

              报价是平均值,而不是最低值, 牛人报价比较低的情况,要向大家做出解释,为什么会这么低,别人也会做出解释,比如这个技术我不熟悉,我估计一般人要多花多少时间云云。自然就把这个价格抬上去了。 而且有些agile的做法,这个报价是谁做谁报的,就算我觉得100天做完一个helloword,只要我坚持,别人也不有异议。

              另外在planning game上选择task是整个团队的任务,而不是某个牛人的事。scrum不以个人的velocity作为考核标准,所以有些牛人在这种agile过程中要么转变,要么就很难生存。

              传统开发模式中,往往是以1,2个牛人为核心的金字塔结构,然后带着一般小的打杂,强调发挥牛人的工作能力,不是太注重菜鸟们的感觉,这和agile团队是不一样的。agile强调参与感,所以这方面考虑,效率确实不咋地,但是人际关系会比较容易相处,团队气氛会比较好。

              打个比方,不做agile的时候,做不完任务,你要是不自觉加班,老大就会鄙视你。 做agile了,要是你完不成任务,你做不完在那加班,老大还要过来劝你。然后还不可避免分析一下,是不是任务分配的不合适,是不是评估工作量过重等等。或者你个菜鸟选了个超难任务,也不可以说,哦,你搞不定,谁谁更好。要让你去搞,你搞不定的时候团队其他人还要想办法来帮你。这样其实某方面是牺牲了强人的利益来帮衬弱者。 但是长远的看,这种工作环境又容易造就机会,大家都没什么压力,可以随着自己喜好做事。

              另外这方面老外和中国人差别很大,我接触老外的牛人性格方面都还比较好,对白痴程序员一般都比较耐心,不想中国人,解释第二遍就不高兴搭理你了。agile背后其实真正难以操作的是这种程序员文化的差异。

              • 非也
                家园 先花,但结论我们再讨论讨论?

                即使采用积点考评,看似竞争更加残酷了,实际上团队会更加合作。

                因为很多story会出现合作完成情况,这种情况下积点得平分了,于是老鸟菜鸟在一起,老鸟即使处于自己利益也要帮一下菜鸟了。

                而且,即使老鸟帮助菜鸟完成和他自己无关的story,那么这种帮忙也是非常明显的‘送钱’行为。事情更加上台面,菜鸟就更加珍惜和老鸟的关系。

                • 家园 你的中式思维没完全转过来

                  在agile团队里,不存在老鸟和菜鸟的说法,大家地位都是平等,这是和传统团队很大的区别。甚至说一些打杂的成员,我们也是都算在团队成员里,每天也跟我们一起开会,参与所有的讨论和重大决定。

                  而最大的问题在于,积点考评的目的是通过竞争,利用利益驱动去鼓励团队成员多做事,做好事。而这点在我看来是agile不关心的。 agile并不鼓励你多做事,只提倡大家适度做事,所以你可以看到,所有的agile过程都反对加班。如果一个迭代,你做的velocity太多,这个时候老板不会奖励你,反而会找你谈话,分析原因, 是加班太多?还是评估过低等等,总之就不会有好果子。

                  agile强调的是适度工作,快乐工作,让程序员快乐起来,做自己喜欢做的事,而不是以利益诱惑为驱动力。不过中国人惟利是图,你这样玩,确实有比较现实速成的功效,但是在我看来和agile本意是背道而驰的。

                  以前在国外的时候,不同团队的成员,老鸟往往乐意花费自己1天甚至2天的时间帮你解决一个和他无关的问题。任何人都不会也不能拒绝别人的帮助要求,这里面根本就没有任何利益关系了。这种环境下,新手往往都有勇气去挑一些比较难的任务来做,所以成长相对来说比较容易一些。

                  至于这种环境是否容易导致大锅饭倒是不用担心,其实你个人是否能跟的上团队,能力如何,在沟通交流非常普遍,代码也是集体所有的情况下,是很难有例外的,人人都会知道你,你的优点会被放大,缺点也一样人人皆知。而在一个人人为善的环境下,人都会有潜意识的去展现自己优秀的一面。

                  我们在没有任何考核和奖金的情况下,程序员经常都需要你逼着下班才肯结束工作。这其实拼的是一个短期还是长期的行为了。

                  • 家园 切不可教条啊

                    在agile团队里,不存在老鸟和菜鸟的说法,大家地位都是平等,这是和传统团队很大的区别。甚至说一些打杂的成员,我们也是都算在团队成员里,每天也跟我们一起开会,参与所有的讨论和重大决定。

                    老鸟=水平高,菜鸟=水平低,不能因为agile不分老鸟菜鸟,我们就否认老鸟和菜鸟的存在,这里你误解了这两个词的初衷,这两词的运用不代表我不知道agile不分老鸟菜鸟。其实你看看我的poker-plan,多么平等。你们把‘打杂’的成员也算在团队里,这是对的,我也是这样做的。

                    而最大的问题在于,积点考评的目的是通过竞争,利用利益驱动去鼓励团队成员多做事,做好事。而这点在我看来是agile不关心的。 agile并不鼓励你多做事,只提倡大家适度做事,所以你可以看到,所有的agile过程都反对加班。如果一个迭代,你做的velocity太多,这个时候老板不会奖励你,反而会找你谈话,分析原因, 是加班太多?还是评估过低等等,总之就不会有好果子。

                    agile强调的是适度工作,快乐工作,让程序员快乐起来,做自己喜欢做的事,而不是以利益诱惑为驱动力。不过中国人惟利是图,你这样玩,确实有比较现实速成的功效,但是在我看来和agile本意是背道而驰的。

                    你有点……怎么说呢?agile是谁?他凭什么‘强调’让程序员快乐?我不太喜欢强调这个词,因为必须给出‘强调的主语’到底是谁?公司的老板说,“我强调员工快乐工作”,于是大家就快乐了?我们真正需要的一套管理方法来使员工真正快乐起来。怎么才能让你快乐?惟利是图的情况下就不快乐了?商品经济大家惟利是图,人间就不快乐了?搞公社‘强调’大家生活快乐,于是大家就真的快乐了?

                    只有大家干得多,干得快,项目也干得漂亮,奖金也多多,这才是真正的快乐啊。

                    还有,群众感觉公平公正的分配奖金,那也是另一类快乐。

                    关于加班,这个问题我本来打算后面要写的,您再想一想agile和加班的关系,agile少加班的原因究竟是什么?新手勇敢的接了一个困难的story,他预计在‘价格时间’内完不成,那么他自己加班搞,当然可以。老鸟做完一个story,还想做更多的,当然可以。大家工作积极性那么高,老板笑死了,跑出来谈话?那么这个老板绝对陷入教条主义里了。

                    同理,在我的agile里只是没人逼你加班而已。为什么没人逼你加班?原理很简单?我做多做少是自己的事情,多劳多得,少劳少得,都是我这个程序员自己的事情,这才是真正的自主权下放。

                    两面性:没有人逼你加班,也没有人不允许你加班。无论你加班不加班,都不会因为你‘加班’这件事得到任何额外的好处或者坏处。

                    收获只与你能积的点有关。

                    还是那个考评问题,必须找到合适的考评办法,我的办法就是积点,没看出什么不好,如果有更好的考评办法可以提出来讨论。

                    还有,我的队伍里好多老外和中国人混在一起干活,没发现老外有普遍高于中国人的地方。也许特别好的老外没来而已。当然咯,我的评判就是指从干的点数上来看。相反,很多老外自以为是的脾气倒是很重,我虽然不喜欢,但我也不管他们,反正看他的活,什么脾气随便,在制度上,老外中国人平等。

                    • 家园 谈不上教条吧

                      我觉得以利益为驱动的管理模式只能维持短期的繁荣。比如一个task,可能有1天完成和10天完成的方案,短期内对po都是一样的,效果只有进入到维护期才能看得到。那么考虑短期利益,大部分人肯定会选择最快实现方式,这恰恰是对公司利益最不利的。

                      我也承认,以利益驱动的方式,短期内最容易见到直接效果。

                      另外请别误会,我个人并不反对考评,但是反对太细致,太量化的考评,特别是那种直接利益驱动,奖惩分明的做法。

                      以前一个同事在华为,基本上没做错一件事就是罚款,可想这种环境下心理压力多大,干了半年他就辞职了。另外一个去华为的朋友,也是不到1年就一身毛病。人长期在压力下工作,是有违身心健康的。

                      不客气的说,如果现在公司还是以前那种绩效考核方式,我在项目里根本不可能化很多时间在做某些事。我们是为利益做事,老外是为兴趣和成就感做事,这个高低就决定了我们的产出差异。

分页树展主题 · 全看
/ 10
上页 下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河