文档介绍:标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]
互联网项目管理心得
互联网项目管理心得
# 项目经理应该有这样的认识:
互联网项目,会定一个计划发布日期,然而这个项目有个隐藏的万是不可取的。你当这个项目经理的目的并不是管人,指使这人做什么那人做什么。你的目标只是把项目快速推进完成。
# 控制需求
在所有因素当中,需求对项目的影响力,至少占50%以上。能够控制好需求,项目就成功了一半。控制需求,有如下几点:
1. 必须有人能够当好产品经理这个角色
一个项目组当中,其实人人都可以影响需求。但是管理需求的,是产品经理这个岗位。如果你的项目组当中已经有一个很好的产品经理,恭喜你,项目经 理可以轻松很多。但是世间事不会如此幸运,因为现实生活中,并不是所有的产品经理都这么棒。作为一个对项目完成负责的项目经理,当你们组没有一个好的产品 经理的时候,你必须意识到,你至少要扮演好一半的产品经理,除非你本身对项目的完成也没什么责任感。
2. 管理需求的人要平衡工期和功能友好程度
需求其实有两个极端,一个是尽善尽美,尽可能的让功能更友好,用户体验更佳;一个是尽早交付,一切改善性的需求都可以牺牲。
只满足前者,项目工期可能会不断的拖延,因为很多功能的工作量其实是在细节的优化,而不是主要流程的完成。只满足后者,很可能会出现一个让用户很不满意的产品。
一个有经验或者产品意识很好的产品经理,可以很好的平衡好这两点。如果产品经理不能平衡好,那只好依赖项目经理来平衡。这点,如果产品经理或项目经理不是天才的话,只能通过经验来学习。
比如我们在做一个注册的页面,里面有个城市的输入框。城市的输入框可以做得很友好。如果要项目尽早完成,那么这个输入框我们只要让用户自己输入 就行。一个比较好的设计就是两个下拉环框,一个选择省份,然后再选择城市。但是一个更好的设计是让用户既可以选择,也可以自由的在这个输入框里面输入拼音 首字母,汉字,然后系统就会自己显示相匹配的城市让用户选择。后两者的改进肯定会花时间,但是如果这两种改进都不做,让用户只是自由输入的话,后期维护的 时候就会出现用户输入不标准的城市数据,如果我们需要用户的城市数据做一些其他功能,就会有错误数据的风险。
3. 懂得对不重要的需求说不
如果你不能平衡好工期跟功能改进的话,有一点你一定要意识好,就是你一定要懂得对不重要的需求说不。这很简单,你对一个需求说不,只要这个需求 不是一个会造成其他功能依赖的核心需求,就算这个需求后面发现必须实现,你可以补上,总体工作量并没有增加。但是如果你花资源去完成了这个需求,后面却发 现这个需求是不重要的或者可以简化的,那你已经浪费了一些工作量。两者的代价相比,明显前者的代价比较小。
4. 理好需求优先级
需求的优先级应该满足如下几点:
a. 确定不变的需求应该先完成,如果项目组去完成了一些功能,结果后面发现需求要改,那前期的一些工作量已经浪费了。
b. 被其他需求依赖的需求应该先完成,只有这样,才能不挡住依赖它的需求的开发。比如登录功能,很多登录后的页面都需要当前登录的用户信息。
c. 主流程,或者核心需求应该先完成,改善性的需求应该后完成。比如信息列表页面,很多功能需要用户在信息列表里面选择要操作的记录。因此信息列表是核心需求。而在信息列表页里面一个列显示格式的美化,这属于改善性需求。
# 风险管控
风险管控是项目经理一个非常重要的技能。一个好的项目经理应该尽量在早期把所有的风险都列出来,一个一个解决。一个流畅的项目,从前期到后期风 险点应该是倒三角形的,就是前期风险很多,后期风险越来越少。而项目管理不畅的,则是一个正三角形,上面风险少,到后期风险就多了。
项目经理应该尽可能的找出所有的风险点。假设有一个点,你不确定他是不是有风险的,那即使我们把早期把它当做一个风险点重视起来,带来的代价也远远小于在后期等它爆发出来的时候再处理。
我们现实中就有一个很适合的例子。我们有一个功能是SSO,让合作方去调用我们的接口实现免登录直接从他们的站点跳转到我们的站点继续使用。因为关系到第三方,所以我们前期就有些担心到时候这一块会不会出现什么东西不可控。不过大家也就是想想而已,没有太在意。
在项目后期的时候,需要跟第三方站点联调,通过他们的站点来测试我们的SSO接口和接下去的流程是不是可用的。结果这时候发现,因为第三方安全 管控很严格,外部人员无法访问他们的站点。于是我们的测试工作就停滞在那边。后面弄得鸡飞狗跳,两个公司的IT以及架构组的人讨论来讨论去看这个问题怎么 解决。发布时间最终还是因为这一点拖延