摘要: 我们公司是做离岸软件外包的,虽然大部分项目是以ODC的方式在跟客户合作,但固定报价项目也做了不少。我们明显感觉到在固定报价项目中,很难达到一个良好的客户满意度。很多时候我们的开发人员付出了不少额外的劳动,却无法获得客户的满意。这一问题无疑对双方的合作产生了不小的负面的影响,那么有没有什么办法可以应对呢?今天跟一位朋友沟通了此问题,有点心得跟大家分享下。 首先,我们认为整个团队要建立正确的认识客户的期望是可以调整的,并非一成不变的;让客户越多了解实际情况,就越有助于建立合理的期望;环境或者实际情况的变化,是导致期望调整的重要原因; 然后,在这些认识的基础上,实施以下策略有助于对客户期望的管理 . 阅读全文
posted @ 2011-07-14 21:18 CavenRan 阅读(438) 评论(7) 推荐(0)
摘要: “客户的需求在一开始就能被定义好,并且描述清楚,并且在相当长一段时间内保持不变”,这种情况只存在于理想中,现实世界并不是这样。现实是:只有非常少的客户能在项目开始时就清楚地知道自己想要什么并定义好细节,绝大多数客户(也许90%以上)只是对项目的需求有个模糊的概念,而且无法想像最终想要的产品长什么样;即使客户清楚地知道自己想要什么,其中很多人也无法明确地把这种需求表述出来;即使他能够清楚地表达自己的要求,也无法确保自己的想法不会在未来发生改变;在整个开发过程中,新的想法会不断冒出来,尤其是在客户看到软件界面时可能会立刻产生N个Idea;整个开发过程,对客户而言可能是个不断学习的过程,他对相关年领 阅读全文
posted @ 2011-07-07 18:37 CavenRan 阅读(348) 评论(0) 推荐(0)
摘要: 6月25号经历了四个多小时的鏖战,终于把PMP给考完了,从报名至今,经历了将近三个月的学习和备考周期,特在此做一总结,希望对后来者能有所帮助。首先谈谈个人收获,考PMP对自己有什么用?说实话,这个问题在报名时我压根没有想清楚,只是因为自己一直在做项目管理,面对的客户也大多都在欧美,所以觉得可能这个考试会对自己的工作有所帮助,就去报名了。经过这几个月下来,有了很多感触,现在认为考PMP大概有以下几个用途:第一,在这三个月中,如果你真想Pass,那么必须投入大量时间和精力去学习PMBOK的项目管理体系,几乎是天天都要研究PMBOK这本书。如果你对项目管理比较陌生,这个考试会使你在项目管理方面打下一 阅读全文
posted @ 2011-07-05 21:22 CavenRan 阅读(724) 评论(0) 推荐(1)
摘要: 在我们的工作和日常生活中,充斥着各种各样的项目,软件开发也好,工地建设也罢,都是由一个个项目的形式构成的。然而在所有这些项目中,往往是失败的比较多,成功者寥寥,这是为什么呢?为什么一个项目会失败?如何才能提高这个项目的成功概率?我认为这是很有意义的问题,所以想跟大家交流下。 既然谈到一个项目的失败和成功,那我们必须对何谓“项目失败”,何谓“项目成功”有个界定,免得在这点上争论不休,这就失去了进一步探讨的意义。另外我还想把这个讨论的范围缩小到软件项目这块,虽然很多问题都具有普适意义,但毕竟个人视角有限,不敢以偏概全。 任何一个项目,都必然会涉及到一些人的利益和需求,我们称之为“项目干系人”,简. 阅读全文
posted @ 2011-06-29 18:35 CavenRan 阅读(3548) 评论(0) 推荐(1)
摘要: 精益制造的第十三条原则为 "不急于作决策,以共识为基础,充分考虑所有可能的选择,并快速执行决策"。说的是不要因为时间紧迫或者人多难以协调,就采取武断式地决策方法比较“快”地做出决策来。而应该在决策前尽量找到所有可能的方案,充分讨论、沟通、评估、甚而试验每种选择,以此达成团队的共识,在共识的基础上再进行最终决策,以确保做出最佳的决定 - “决策”慢。另一个层面是,一旦决策制定了,整个团队就齐心协力地快速执行和落实- “执行”快。 阅读全文
posted @ 2011-06-28 21:54 CavenRan 阅读(714) 评论(2) 推荐(0)
摘要: 现状 美国的研究者分析了大量软件开发项目的数据之后,告诉我们,任何时候这个世界上都有超过50%的软件开发项目正在步向失败。实际上我记忆中最近看到的确切数据是73%的项目最后都是失败的,失败意味着最终提交的系统要么在满足市场需求上已经失效,要么在时间和金钱投入上都大大超过了最初的预计,这还没有包括由于某些原因而被迫中止的项目。 连软件开发领域处于世界最前沿的美国都如此,其它地方的情况可想而知;也许这正是为什么软件开发项目管理会成为一门专门的学问之原因。原因 言归正传,也许我们可以从他人的教训中吸取一些经验教训,以下几点原因是在一些软件工程著作中经常被提起的项目失败原因,它们大多都在我的工作经验中 阅读全文
posted @ 2011-06-05 12:33 CavenRan 阅读(4205) 评论(0) 推荐(0)
摘要: 越早解决质量问题,代价越低人们的经验和一些研究机构提供的数据都告诉我们:越在软件开发周期的后期修改Bug,付出的代价将会越高。这个不难理解:后期随着系统规模和复杂性的增加,发现问题和定位问题的难度明显提高;根据学习曲线理论,隔得时间越久,人们对事物所存留的印象越少;在后期回过头来重新思考问题,会比开发刚完成时付出更多的时间;在软件生命周期收尾阶段的每次修改,都会需要大量的重新测试来保证其不会导致新的问题;所以质量管理工作不应该是在最后时刻才进行的,在后期才进行质量工作是成本最高的做法;故而第一条质量管理策略就是尽早开始质量保证工作,尽早开始测试和验收。质量不仅仅是质检员/测试员的工作有不少开发 阅读全文
posted @ 2011-06-03 21:24 CavenRan 阅读(1306) 评论(0) 推荐(0)
摘要: 什么是站立会议?站立会议是敏捷软件开发方法论Scrum的相关技术之一,亦可称之为Scrum的最佳实践。具体形式为每天的同一时间,一个敏捷开发团队的所有成员面对面站在一起,进行一个为期15~20分钟的短会。在会议上,每个人要依次回答以下三个问题:1)从上次站立会议到现在,你完成了什么?2)从现在到下次站立会议,你将要做什么?3)你遇到什么阻碍,需要其它人如何帮你?站立会议的意义和作用是什么?1)创造团队成员相互沟通的条件,了解彼此的工作进展和工作成效;2)可让项目经理及时发现阻碍项目进展的问题并解决,提高项目的成功几率;3)为经验的交流和分享提供机会;4)Team Building;5)团队成员 阅读全文
posted @ 2011-05-29 23:27 CavenRan 阅读(862) 评论(0) 推荐(0)
摘要: 1. 额外的功能特性根据Standish Group的调查报告,传统的软件开发过程制造了大量人们不需要的功能特性(7% always used,13% often used,16% sometimes used,19% rarely used,45% neverused)。每个功能的实现,都要经历软件开发的整个生命周期:需求分析、设计、编码、测试、发布和维护,这需要耗费大量的人力、物力和财力,如果最终人们将不会用到这些功能,那么所有的投入都变成了浪费。而这还没有考虑过多的功能特性带来的系统复杂度所增加的开销。所以额外的功能特性是软件开发过程中最大的浪费。2. 部分完成的工作(存货)在Lean 阅读全文
posted @ 2011-05-28 22:49 CavenRan 阅读(1825) 评论(0) 推荐(0)
摘要: 通过阅读《Lean Thinking》这本书,对精益软件开发的七条原则有了进一步的深入了解,根据自己理解结合实际工作经验,从个人角度对精益的七条原则进行阐述。 阅读全文
posted @ 2011-05-26 22:21 CavenRan 阅读(1089) 评论(0) 推荐(0)