技术开发 频道

迭代式开发进度控制

    代码实现包括组件代码编写和前端页面编写、组件调用,6名程序员分为3个小组。

    单元测试由2名测试人员(非专职测试)在项目后期逐步完成,系统联调为项目组9人最终分担测试完成。

    人员组织中值得强调的经验是,“龙生九子,各不相同”,核心工作必须花大力气安排项目核心人员完成。EC项目中人员分工非常精细,设计人员无须编码,但他们的设计文档极其详尽,使编码工作变得简单、纯粹,大大减轻了工作量。设计人员同时又是功能实现的原始驱动,他常常要牵头主动与页面人员、组件实现程序员协作沟通完成工作。

    激励

    项目管理是软科学,不是简单依据前面生硬的“三段论”就可以顺利把握,软件开发活动必须有良性的反馈。随着项目进程的展开,我琢磨出的经验是,阶段目标要设立明确,阶段成果要显而易见,不能模糊、抽象、泛泛而谈。这样才能真正激发人们的成就感,加强完成项目的信心,使对软件已完成部分的修正不至于寸步难行。

    以需求分析阶段举例来说。

    对定制型软件来说,客户需求调研、分析阶段的工作事实上是极其难以把握的。需求分析太深入,时间耽误太多影响后面工作,而且分析的结果还未必能用上,后期客户需求的改变会令对前期分析工作自信满满的系统分析员吐血。需求分析太浅薄,自然后期工作捉襟见肘,不说人们也知道有多少坏处。

    我对需求分析阶段的最终成果的定义是完成类似于SAP实施的业务蓝图,统一图例。而此业务蓝图是在三天的小组成果报告会议中接受全体项目组成员质询,讨论通过。而此份业务蓝图经过修饰,格式规范,简洁明了,转呈营运总监签字时获得好评。最令大家得意的是,营运总监在大区会议上要求各大区经理规范业务时,就是拿着我们的业务蓝图在做演示。

    事实上,需求分析的真正成果是大家都成为某方面的“业务专家”,成为项目中活跃的一份子,能够积极从客户的角度参与后来的项目沟通。

    领导

    项目管理者必须完成领导的职责,我对此的理解是:1决策;2保证决策意图的顺利执行。

    性能和成本永远是一对矛盾,项目经理因此常常陷入两难的境地,这种状况下常常能体现出项目经理出色的对大小、轻重、缓急判断的均衡感。决策能力来源于项目经理的实践经验,是管理者厚积薄发的功力体现。

    对于第二项,人们最常说的是“领导是一门艺术”。艺术是发散的,与严谨的二进制逻辑是格格不入的,这常常构成了程序员向管理方向发展的恐慌。虽然作为EC项目的主管对我来说是硬着头皮上,但我始终是抱着学习的态度去面对困难,我一直的心态是“让暴风雨来得更猛烈些吧!”。

    以我的经验来看,作为项目经理,一个半年的项目下来不吵个20、30架是不称职的,说明项目的沟通存在极大的问题。我没有天生的领导魅力,依靠的只是自己琢磨的两件法宝:1坦诚对待工作上的沟通;2任务本位,区别于官本位。

    坦诚就是管理过程中坦率指出别人错误,同时也准备让别人指出自己的错误。这是解决问题变得简单,在项目组中一旦形成传统,大大有益于项目的进行。

    我始终没有试过威势压人、软硬兼施的领导手段,对其效果难以提出中肯的意见。我觉得交流的目的只是解决一个具体的问题时,交流就会变得简单,当然,经过开始阶段的磨合,我认识到立刻要求别人和自己的思路合拍是不现实的,作为管理者应当宽容。

0
相关文章