软件项目经理怎么做?
|
1项目经理个人品质我们这里说说的个人品质,不是指人品,而是指作为项目管理者所应该具备的品质。比如不能冲动、要稳重、不能好发脾气,懂得妥协的艺术等等。不能冲动,稳重,这牵涉到个人的性格问题,但在做项目的过程中,应尽量避免这些因素对项目的影响,比如,有了问题,应先通过分析确定问题的原因,再根据原因确定出解决问题的办法。而不是冲动的去做某个决定。作为任何一个人来讲,都希望能和一个心理素质好的人打交道,这样他们心里有谱,比较容易建立彼此之间的信任关系。永远要记住,所有的问题不是通过发脾气所能解决的,发脾气也解决不了任何的问题。在项目管理或者项目组成员管理时,很多时候需要项目经理做为协调人的身份出现,所谓协调也就是一个妥协的艺术,切忌毫无原则的让步,也不能不负责任的抗拒。原则问题决不能妥协,非原则性问题可以在一定的基础上进行妥协,以方便管理和沟通。当然作为管理者来讲,还有很多品质需要具备,比如:l具备领导魅力l充分展现自己的能力l凡事以身作则l信守诺言l学会比用户和下属更老练2项目经理和项目关系的描述项目经理和项目的关系,听起来很奇怪,其实很多项目没有做好,就是因为没有把这个关系搞清楚。作为项目经理,能接到一个项目,表明公司很信任你。从工作的角度上看作项目是工作的一部分,是为了赚钱,但其实完成项目也是为了实现自己在公司和社会中的价值。也就是给用户创造一个产品的同时,给自己创造了一个认识世界和接触世界的机会。每一个项目都有很多需要学习的地方,尤其是定制开发的项目。每当看到自己的产品给用户带来了应有的效果的时候,那种感觉不是钱所能衡量的。所以说的更明白一点,项目就像自己种的一颗葡萄树,如果成长的不好,不但结不出好的果子,可能连乘凉的目的都达不到。我觉得项目经理对于项目,应该把它看成自己的孩子,想尽一切办法让它成长好,而且要迅速的成长起来,而不是其他的想法,比如怎么样减少工作量,怎么样糊弄用户和公司。所以归结到一点,对于项目必须有高度的责任心。3项目经理和用户的关系描述项目经理和用户的关系,说起来很复杂,因为大家站的角度不同,所代表的利益放不同,所以很多时候可能搞成水火不相容的关系,这个往往在不成功的项目中尤为明显。那么项目经理和客户的关系应该是怎么样的呢?很多用户都说,找一个软件公司做项目其实和赌博没有多大区别,说得对也说的不对,对的一部分呢,我认为软件本身就是个良心活,我们可以把软件做的很好,也可以在别人不知道的情况下糊弄用户和公司。所以说,如果用户挑到一个不负责任的,那么就是赌博输了。很多人也说,软件公司和用户的关系是结亲家的关系,我比较认同这个观点。软件公司和用户就好像是双方父母,项目就好像是两家的儿女。这样描述的话,就说明一个问题,大家的共同目标是一样的。既然大家的共同目标是一致的,那么问题就好办多了。往往在项目进行的过程中大家会因为一些问题有不同的看法,比如项目经理认为用户不懂系统,或者不懂技术,只是给项目开发找不应有的障碍。而用户则认为项目人员不了解他们的需求,只是想偷懒等等。如果真的是这种情况,那么问题就比较严重了,因为彼此都感觉对方对于项目的出发点有问题了。作为项目经理一定要仔细的了解和分析用户提出的问题,首先要站在用户的角度分析和处理问题,其次要站在项目的角度去看问题,比如用户提出的问题是否能促进项目更好更快的完成。所以项目经理和用户是一个紧密合作完成项目的关系。4项目经理和领导的关系总的来说,项目经理对于领导来说,是公司委派的负责完成项目的人员。所以在项目进行的过程当中,领导需要及时准确地了解项目的进展情况,以及项目进行过程中出现的问题。对于一个项目来讲,要顺利地完成,中间需要商务上的协调,需要开发人员努力的工作,需要客户很好的配合,所以单单凭开发人员是保证不了项目的顺利进行的。这样对于领导来讲,就需要及时地了解项目进行过程中出现的各种问题,以便和用户协调有关问题。从另一个角度讲,作为项目经理,就需要实事求是地反映项目进行过程中的各种问题,以便领导把握,是不是需要和用户就有关问题进行协调。不能对项目中出现的问题隐瞒,或者不负责任的草率处理。领导是什么?对于项目经理来说,领导可以理解为一种资源,而且是很有效的资源。公司内的、公司外的资源的调动,有时候领导的出马,会起到意想不到的效果。但是,项目经理切忌把领导当牛马使用,也不要当用户和领导之间简单的传声筒。要知道,领导是资源,而不是工具。5项目经理和项目组成员关系的描述对于项目经理来讲,项目组成员就是完成项目具体工作的主体,项目经理就是管理项目组成员,按照计划顺利完成项目的开发工作。项目经理对项目组成员负有领导和管理的职能。l项目经理需要对项目所用到的一切技术向项目组成员阐述清楚l项目经理需要对项目组成员阐释清楚项目的目标l项目经理需要对项目组成员在项目中所担任的角色,或者工作阐释清楚,并保证项目组成员清楚地理解了每个人所需要达到的工作目标l项目经理需要根据项目的具体情况,对项目的计划、质量、进度做一个详细的符合实际的计划,并能清楚地分配工作到人l项目经理需要根据已有的计划,对每一个成员的工作进行监督、核查l项目经理有责任对每一个组成员的工作进行分析和评价l项目经理有责任对每一个组员工作过程中遇见的各种问题掌握,并协助项目组成员处理l项目经理需要向项目管理部门负责,和QA、CM等项目相关人员紧密配合,完成项目度量,控制项目进程,因此,也需要对项目组成员贯彻质量意识、成本意识,以及传授自我管理和计划的能力。项目组成员对于项目经理所分配的任务要及时地完成,并对所负责的工作的进度以及质量负有直接的责任l理解项目有遵循的技术路线l理解项目要达到的整体目标l理解项目的整体的进度和项目质量要求l对于工作中所遇到的各种问题,如果处理不了或者有难度,或者有不明白的地方,需要及时地向项目经理汇报,并应跟踪项目经理对问题的回复l有义务接受项目经理和项目其他干系人对所做工作进行监督和跟踪l有义务遵守公司和项目的所有要求6项目分阶段分析这部分主要阐述项目进行过程中的各个阶段项目经理所要注意的问题。6.1项目的调研项目启动后的第一个任务就是调研,主要完成的工作就是搞清楚用户的需求,以及项目最后要达到的目标。必须调研清楚用户在每一个业务功能的需求,如果有些不能完全确定,也应该确定具体的范围。项目调研首先要了解清楚项目干系人,以及每个干系人在项目中所起的作用,尤其是要了解哪个项目干系人对项目有最终的决定权。比如,哪些干系人能最后确定系统的功能,以及详细要求,哪些项目干系人只是使用系统,以及各项目干系人之间的关系。尤其要确定哪些项目干系人对项目负有最终责任。为了顺利完成项目调研,需要做好以下的工作:l确定项目用户方的组织结构l确定甲乙双方项目的负责人,也就是技术和商务的联络人l确定项目的组成人员,主要是用户方的项目组成人员l和用户制定详细的调研计划l按照计划提前通知有关人员进行调研l尽量挖掘用户的需求,并进行仔细分析,对于确实不能完成的功能,要明确告诉用户是什么原因,理由一定要充分,不能以工作量太大,价钱太低作为理由l整理用户的需求,不要漏掉任何可能的需求,写用户调研报告,并得到用户的确认l形成系统分析报告,详细阐明系统所要完成的功能,对于需求报告中不能完成的部分,应详细阐明原因,并得到用户认可。形成分析报告的时候,一定从项目和用户的角度考虑问题l在调研的过程中,一定要注意收集用户的一些原始资料,包括政策、相关的文件、表格等等需要调研报告的格式收集的资料的清单6.2项目设计项目设计包括几个方面,功能设计、界面设计以及数据库设计。每一个阶段的设计应该最后都要通过用户的确认,数据库设计可能由于用户并不是专家,不一定通过用户的确认。下面我们就这几个方面的问题做一个详细的阐述:功能设计功能设计是整个项目设计的基础,其主要依据就是用户的需求调研报告,根据用户的需求,对用户所要求的功能进行分类分析形成功能设计报告,其主要步骤如下:l确定系统整体的技术框架l确定用户所提的功能l确定系统管理或者运行方面必须的功能l对功能进行分析,整理,归类l划分出模块,并确定模块的具体功能和目标,根据业务和权限l对功能进行分类,那些是必须的,哪些是不一定需要的,也就是2、8原则,对于功能应按照必须功能、非必须功能分类,同时按照常用功能、非常用功能、很少用功能进行分类,分类完成后就可以确定哪些是要着重注意的功能,那些不是了l在系统功能设计时,要遵循以下的原则:方便性,实用性,安全性。功能设计完成后,一定要通过用户的审查,让用户了解我们的具体思路和设计结果。界面设计是在功能设计完成后,所进行的工作就是根据功能设计和用户需求分析报告,进行设计:根据功能,确定界面,遵循方便性,实用性,安全性原则,界面应该大方、明了、简洁。界面设计完成后根据实际情况也需要让用户进行参与,发表意见,降低项目过程中的风险。界面设计完成后,最好可以出来原始的系统界面模型,让用户有直观的感觉。尽量用用户专业领域的语言来描述需求,少使用计算机领域的术语,因为你是在描述你对用户系统要求的理解,而不是卖弄学识。在用户对需求进行了确认之后,项目经理要组织公司内的行业领域专家进行需求评审工作,再次落实项目的范围,和用户进行反馈,对于确实难以实现的功能,可以和用户协商分批实现或者变通解决,总之不能抱侥幸心理,期望客户会忘记该需求。在功能和界面设计完成后就进入到下一个阶段,数据库设计,有关数据库设计的方法和原则我不在这里阐述,因为很多书本已经阐述的很清楚了。总之一句话,项目设计过程中尽量也让用户参与,同时尽可能的让用户了解你的设计思路。6.3项目开发到了项目开发阶段,项目经理需要做的事情就是管理方面的工作,就这些问题,见仁见智,不可一概而论,但有几点需要注意:l开发的进度及时和用户沟通l需要开发团队了解项目的开发计划和目标l调动起开发团队的积极性l一定要有,计划,检查,完善的过程,包括对工作结果和计划l坚决不能采取放羊式的方法,工作分配下去后,不闻不问,必要的周报和日报,是了解和掌握各项目成员工作状态、及时发现项目问题的好办法。l作为项目经理,一定要掌握项目开发中的各种问题,包括进度,技术以及人员对项目开发的一些看法l制定项目开发的周计划,具体到每一天,同时不多于三天检查一次,甚至可以每天上班之前开个短会,讨论一下项目的进度和情况l对开发中发现的问题,及时解决,不能拖延l使用版本控制工具,以及严格版本控制规程(如角色权限、问题提出和修改流程、文档和代码版本的及时归并等)6.4项目实施项目的实施对于项目的成功与否也是很关键的。在项目实施进行前,需要做以下的工作:l对于做好的系统,用户必须认可后才能实施,否则的话,会出现很多问题l用户手册是否写好,或者是用户在使用过程中的注意事项是否写好l用户的运行环境是否具备l如果需要培训人员,是否有培训场地l对于培训的人员,是否需要考核,最好能有考核方法,比如考试等,并有惩罚措施l和用户指定详细可行的实施计划,保证用户放配合到位l对于实施中所出现的问题,及时反映给用户,协商解决l对于系统功能问题,一定要给用户讲清楚什么原因,解决方法,解决的时间,并及时解决l同时注意,必要的签名必须进行,比如培训记录,会议纪要等等,对于实施过程中需要大的改动的地方也要进行文字记录,对于和用户达不成一致的地方,一定要有用户认可的记录l及时记录项目的变更(包括需求的变更、计划的变更等),在第一时间和用户达成一致意见并经双方确认。l加强风险管理,及时分析项目风险,以及对风险的规避措施等。6.5项目服务项目实施并验收完成后,所要进行的工作就是后期服务,服务期的长短一般都是根据合同规定。后期服务要注意的问题主要有以下几点:l服务一定要及时l对于大的系统变动,要给用户讲明白,最好能给用户说清楚工作量l每一次服务要有记录,方便后面对项目的后期服务量进行量化l尽量创造条件进行远程维护,如果不行,也应该培训用户,可以达到用户根据我们的指示可以进行系统的维护,比如简单的SQL的执行,问题的排查方法等等l最好能在维护的过程中,形成一个问题总结记录,以便用户在遇到同样的问题后可以自己处理,也方便我们处理问题l对于系统管理员,一定要有系统运维指南,或者管理员手册l和用户方规范服务流程,比如要求用户方确定一个问题接口人,负责汇总和整理用户使用的问题,并和项目制定的维护接口人联系处理问题。应避免出现用户方其他操作人员都直接寻找公司维护工程师的情况。7项目需求变动需求变动是一个项目不可避免的问题,从项目开始一直到项目的生命期结束,所以如何控制变动是项目的一个大的方面。l变动是不可避免的l对于变动要提前有一个思想准备,也就是提前预计要变动的部分l对于用户提出的变动,首先要考虑的是是否影响系统的框架,是否对项目进度影响很大,这个变动是否是用户确实需要的l对于对系统框架或者进度影响较大的变动,一定要和用户说明影响那些部分,会对进度有多大的影响
| |