总结了以下几个环节:
1、 了解甲方的总体需求及目标,并进行分析,最重要的是确认范围边界及目标;
此过程较为关键,尽管在此还无法了解具体的内容,但一定要明确甲方的实际意图,确定如果项目进展,那最终的目标和所涉及的边界范围。譬如:一个大型的项目,是否会涉及到原有系统的整合集成。一个人事项目是否会涉及到最终工资的核定并与已有财务系统进行衔接,目标是不是要通过现有的人事系统发工资?无论项目的目标是否可行,首先一定要明确甲方的实际意图,即便有些不切实际的内容,但也要了解,在此,如果无法明确目标及范围,宁可自己把甲方的目标定的高一些,把范围定的广一些,但不要私自去试图改变对方什么。
2、 项目的可行性分析及制作项目规划文档
开始进行项目的可行性分析及项目整体规划,要求就是客观、可行、详尽,具备可操作性。
实际制作此文档的过程也是自己思考整个项目的过程,针对需求该如何进行深化调研,那种方式更适合项目开发,技术方案该如何确定,人员组织如何进行,项目的目标是否需要分为分期进行,可遇见风险有那些?等等。但一定要有适用性,不要做一个放之四海而皆准的方案。并对项目整体计划做个初步估算。
在此环节,PM不应该有任何的保留,我曾经做项目规划的时候,有人对我说,你做出来的这个规划应该是别人拿着照着执行就可以了,虽然有点夸张,但应该如此。也不要因为别人拿着你的方案就可以实施项目而故意有所保留。至于对甲方如何提供,该保留那些,那是由领导及商务人员与你共同商定后的结果。
通常情况下,项目是可行的,但也有项目不可行的结论,此时,需要考虑,如果项目不可行,你该如何让其可行,譬如:分期实现?降低目标?缩小范围等等。不要搞出一个不可行的方案就没事了,人家好不容易拿下一个单子,让你一个不可行就否定,你觉得可行么?
3、 清楚的了解自己的职责,及可获取的资源;并根据以上内容及现状分析自己还缺少何种资源或权力及弥补办法,是否可以获取这些缺少的部分;
如果明确你是PM了,并且项目准备启动了,那你就应该和老板“谈判”了,应该需要什么样的资源来完成这个项目,你的责、权、利是什么?也就是你在这个项目中的目标和范围。不要误解,做为PM而言也未必可以是整个项目的负责人,也许只是一个环节,即便你是整个项目的负责人,那也应该知道在这个项目中,你可调动的资源的底线是多少?成本预算是多少?或者是有多少人来配合这个项目,老板给你的支持力度是多大?老板的想法又是什么?会不会和甲方的想法有出入啊?规划文档中遇见的风险老板的答复又是什么?等等,都要明白,并且了解。说白了,就是老板让你干活,你总得知道你自己哪些该干哪些不该干,这些该你干的活你有没有能力完成,最终是谁来考核你,你手里的这些少资源和给你的费用,能完成么?
同时还有个重要环节,对外资源的管理、协调、沟通该如何进行?你管理的边界范围是什么?如果你无法控制外部资源,那谁来管理?沟通协调的方式是什么?你该如何配合?最重要的,可以提提,如果外部资源对项目造成影响,该怎么办?
4、 项目启动准备
如果谈判顺利结束,通常会顺利结束的,因为PM也是打工的,能怎么办?最多就是多要点资源和支持罢了,不过要负责,不要因为老板让你不爽,你就搞个几排项目出来,那真是害人害己啊。根据你制定的项目规划开始项目(如果项目规划当初制定是认真负责的,如果不是,那回头还是重新审阅一遍再说)。首先就是项目启动准备,这个环节需要做的工作就是组建团队、没人怎么干活,细化项目计划,但肯定还是不会太细,但至少知道大家应该现在干什么,是否合理?然后逐步落实项目规划中的内容吧,并按照计划来执行。
如果进入这个阶段,说明项目已经启动了,无论项目内部处于什么样的状态,但至少项目组对外的所有事宜都应该马上开始了,PM应该重点考虑这个方面,譬如组织人手到甲方那里开始实际的需求调研,其它的外部资源配合是否到位了,也是按照计划执行的?
如果团队不是现成的,需要自己组建,那就比较麻烦。但如果真存在这个问题,也不会到此才发现,应该在第三个环节就应该意识到,团队的组建不在此进行说明。但组建工作并不容易,这方面的风险要有充分的思想准备。
5、 构建组织架构,确定技术方案,多条腿走路
组织架构应该要确认,根据项目的规模,确定团队的组织架构,并进一步细化管理模式。最重要的是明确沟通,建立较为畅通的沟通渠道。如果团队是新建的,那一定要先给一个团队的磨合期。项目管理应分为两个层次:项目管理与技术管理。针对这两点都要进行细化,项目管理容易理解,技术管理举例:是否需要自动编译发布的管理等。
此时项目的规模和项目的概况都应该比较了解了,结合自有的技术能力确定采用的技术方案吧,实际这部分在项目规划中有所涉及,但通常是一个放之四海皆准的方案,所以在此应该明确下来,甚至有必要都可以先期开始进行架构的搭建。
在这个时候,针对部分的技术难点,应该提前安排进行技术难点排除,不要等到项目全面展开再进行,那样会有点迟。一般情况下,项目的技术难点有两种:一种就是纯粹的技术难点,譬如:以前没有做过工作流技术的,现在需要做了。第二种是设计难点:譬如:针对流程化的系统数据权限的设计该如何控制,但还要保障性能。针对第一种可以考虑到的,先着手开始吧。
此时需求人员做为对外协调部分应该已经出去调研了,PM也应该考虑这些在外资源的管理,及与内部团队的配合。
针对项目所采用的技术方案,是否需要在团队内部进行培训,其它内容是否需要进行培训,一并考虑,如果允许,开始进行。
6、 项目分析研发
这没什么好说的了,就是需求分析->系统设计->研发->测试。不过测试应该在此环节就应该与项目开发同步进行了。这个步骤不做太多说明了。具体的请参见其它的专业文档。
7、 项目测试优化及验收
此部分的测试已经并不侧重系统本身的功能了,应该侧重系统其它方面的测试,包括系统的适用性、性能、稳定行、可维护行,并根据测试的结果对系统进行优化。
此项目是否存在原有数据迁移的问题,如果有,原有数据质量应在内部分析,提供相应的迁移工具或迁移方案。
如果都没什么问题,就可以考虑交付了。
8、 项目交付
这里的交付是指内部交付。无论是什么项目,只要是软件项目,就可以做成一个setup,而且最好是一个setup。同时需要提供产品手册、系统帮助、系统初始化的说明。如果系统初始化非常复杂,建议此过程在内部完成,到了甲方只需要实施,并进行简单的配置,不要把过于复杂的配置过程都带到甲方那里去完成。容易陷入被动的局面。
如果实施不是项目组的人,那有必要进行培训。
9、 项目实施
项目实施严格来讲是三个内容:系统的安装、系统配置及系统培训。至于这个过程是否可以做好,在于前期的工作是否做好了。如果没有,项目实施将会是一个痛苦的过程。
实施的时候,最好需求分析人员可以参见,毕竟具体的业务转化成了计算机系统,可能会有些差异,并且可能会有新的需求,这些都需要需求人员来解决,不是实施人员可以完成的。
后面写的有点简单了,呵呵