用友软件官网小编今天要给各位企业ERP软件选型者分享项目经理如何管理软件产品的知识,其中也会对项目经理用什么软件管理工程进行相关解读,希望能够解决你现在面临的ERP系统问题!
软件项目经理的岗位职责 篇1
1.制定软件项目开发计划,明确软件开发进度
2.负责软件和各个部门的协助和沟通,确保信息及时准确
3.监控软件开发进度,及时跟进软件问题,督促软件工程师解决问题
4.监控软件难点重点问题,组织相关人员解决问题,并跟踪问题状态
5.负责和客户沟通交流,及时反馈给客户软件相关问题,督促客户及时验证问题
6.组织审理客户需求,并制定软件需求开发计划
软件项目经理的岗位职责 篇2
1、领导和管理项目团队,参与项目整体开发;
2、负责项目的技术框架设计和技术方案确定,协调处理项目相关的技术难点问题;
3、负责设计、细化和实施项目开发计划,按时按质完成预定的目标;
4、成功带领项目组成员,完成相关软件的设计、开发、测试工作;
5、根据开发日程,合理安排人员的进度,协调各种资源保证项目的顺利推进;
6、随时把握项目中存在的风险,制定对策。
7、对初中级开发人员提供技术上的指导,有互联网、物联网或即时通信的项目管理经验。
软件项目经理的岗位职责 篇3
1、基本职责就是:对接客户软件需求,保障手机客户软件交付。
2、理解手机软件需求,通过文档或则其他辅助手段完整传达客户需求给工程师和测试;
3、过滤和识别伪需求,优化团队工作量;
4、量化并分配软件需求任务给相应的人员。
5、跟踪软件发布的进度,协调项目组成员之间的合作。
6、监督项目进展各阶段的软件相关文档,并与测试即时沟通,保证文档的完整和规范。
7、向上级汇报项目的进展情况,需求变更等重要项目信息。
软件项目经理的岗位职责 篇4
1、确保项目目标的实现,领导项目团队准时、优质地完成全部工作。
2、与客户沟通,了解项目的整体需求。并与客户保持一定的联系,即时反馈阶段性的成果,和即时更改客户提出的合理需求。
3、制定项目开发计划文档,量化任务,并合理分配给相应的人员。
4、跟踪项目的进度,协调项目组成员之间的合作。
5、监督产生项目进展各阶段的文档,并与QA即时沟通,保证文档的完整和规范。
6、需求变更,项目经理需要跟客户了解需求,进行评估再与客户协商。
7、对严重bug评估,给出方案。及时对项目节点及时汇报。
软件项目经理的岗位职责 篇5
1、站在市场或者客户的角度,分析公司现有软件产品的优势和劣势,并提出完善方案;
2、编写售前方案,给客户演示产品功能,使客户了解产品的优点,协助业务员提供售前支持;
3、参与提供相关技术解决方案的.设计、选型和评估;
4、负责制定项目计划、项目预算和资源调配,以及项目整体的需求分析和方案设计;
5、负责管理项目的全过程,包括进度、质量、成本以及项目风险的控制;
软件项目经理的岗位职责 篇6
1.软件或互联网行业项目的需求分析,设计,开发管理;
2.管理项目的进度、人员的调配,监控质量,组织推进;
3.负责编制、修订项目的进度计划,并控制其变更;
4.负责管理项目成员的工作质量,对项目组成员绩效考核;
5.带领团队参与需求分析评审、技术文档编写的相关工作;
软件项目经理的岗位职责 篇7
1、作为软件项目内部和外部接口人,配合PM做好项目软件部分的研发管理工作,并且与客户和合作方的软件接口人进行对接;
2、负责组织和管理项目前期需求分析和系统设计;
3、负责组织和制定项目软件开发计划并根据计划目标对项目进度进行跟踪和把控;
4、负责项目软件Bug管理和软件风险管理;
5、通过软件项目周报及日常项目报告向内部及客户及时反馈项目状态,并组织相关的项目软件沟通会议;
导语:关于软件项目的管理流程,相关人员来了解一下吧。下面是我收集整理的软件项目管理流程,供各位阅读和参考。
一、 风险评估
软件项目风险是指在整个项目周期中所涉及的成本预算、开发进度、技术难度、经济可行性、安全管理等各方面的问题,以及由这些问题而对项目所产生的影响。项目的风险与其可行性成反比,其可行性越高,风险越低。软件项目的可行性分为经济可行性、业务可行性、技术可行性、法律可行性等四个方面。而软件项目风险则分为产品规模风险、需要风险、相关性风险、管理风险、安全风险等六个方面:
1. 产品规模风险
项目的风险是与产品的规模成正比的,一般产品规模越大,问题就越突出。尤其是估算产品规模的方法,复用软件的多少,需求变更的多少等因素与产品风险息息相关:
(1) 估算产品规模的方法
(2) 产品规模估算的信任度
(3) 产品规模与以前产品规模平均值的偏差
(4) 产品的用户数
(5) 复用软件的多少
(6) 产品需求变更的多少
2. 需求风险
很多项目在确定需求时都面临着一些不确定性。当在项目早期容忍了这些不确定性,并且在项目进展过程当中得不到解决,这些问题就会对项目的成功造成很大威胁。如果不控制与需求相关的风险因素,那么就很有可能产生错误的产品或者拙劣地建造预期的产品。每一种情况对产品来讲都可能致命的,这些的风险因素有:
(1) 对产品缺少清晰的认识
(2) 对产品需求缺少认同
(3) 在做需求分析过程中客户参与不够
(4) 没有优先需求
(5) 由于不确定的需要导致新的市场
(6) 不断变化需求
(7) 缺少有效的需求变化管理过程
(8) 对需求的变化缺少相关分析等
3. 相关性风险
许多风险都是因为项目的外部环境或因素的相关性产生的。控制外部的相关性风险, 能缓解策略应该包括可能性计划,以便从第二资源或协同工作资源中取得必要的组成部分,并觉察潜在的问题,与外部环境相关的因素有:
(1) 客户供应条目或信息
(2) 交互成员或交互团体依赖性
(3) 内部或外部转包商的关系
(4) 经验丰富人员的可得性
(5) 项目的复用性
4. 技术风险
软件技术的飞速发展和经验丰富员工的缺乏,意味着项目团队可能会因为技巧的原因影响项目的成功。 在早期,识别风险从而采取合适的预防措施是解决风险领域问题的关键,比如:培训、聘请顾问以及为项目团队招聘合适的人才等。关于技术主要有下面这些风险因素:
(1) 缺乏培训
(2) 对方法、工具和技术理解的不够
(3) 应用领域的经验不足
(4) 对新的技术和开发方法应用不熟悉
5. 管理风险
尽管管理问题制约了很多项目的成功,但是不要因为风险管理计划中没有包括所有管理活动而感到惊奇。在大部分项目里,项目经理经常是写项目风险管理计划的人,他们有先天性的不足——不能检查到自己的错误。因而,使项目的成功变得更加困难。如果不正视这些棘手的问题,它们就很有可能在项目进行的某个阶段影响项目本身。当我们定义了项目追踪过程并且明晰项目角色和责任,就能处理这些风险因素:
(1) 计划和任务定义不够充分
(2) 对实际项目状态不了解
(3) 项目所有者和决策者分不清
(4) 不切实际的承诺
(5) 不能与员工之间的进行充分地沟通
6. 安全风险
软件产品本身是属于创造性的产品,产品本身的核心技术保密非常重要。但一直以来,我们在软件这方 面的安全意识比较淡薄,对软件产品的开发主要注重技术本身,而忽略了专利的保护。软件行业的技术人员流动是很普遍的现象,随着技术人员的流失、变更,很能会导致产品和新技术的泄密,致使我们的软件产品被它公司窃取,导致项目失败。而且在软件方面关于知识产权的认定目前还没有明确的一个行业规范,这也是我们 软件项目潜在的风险。
7. 回避风险的方式
(1) 以开发方诱导能保证需求的完整,使需求与客户的真实期望高度一致。再以书面方便形成《用户需求》这一重要的文档,避免疏漏造成的损失在软件系统的后续阶段被逐步地放大。
(2) 设立监督制度,项目开发中任何较大的决定都必须有客户参与进行的,在该项目中项目监督由项目开发中的质量监督组来实施。
(3) 需求变更需要经过统一的负责人提出,并且要用户需求的审核领导认可,需求变更应该是定期而不是随时的提出,而且开发方应该做好详细的记录,让客户了解需求变更的实际情况。
(4) 控制系统的复杂程度,过于简单的系统结构,对用户来使用比例会有明显的折扣,甚至造成软件寿命过短。反之,软件结构的过于灵活和通用,必然引起软件实现的难度增加,系统的复杂度会上升,这又会在实现和测试阶段带来风险。适当控制系统的复杂程度有利于降低开发的风险。
(5) 从软件工程的角度看,软件维护费用约占总费用的55%~70%,系统越大,该费用越高。对系统可维护性的轻视是大型软件系统的最大风险。在软件漫长的运营期内,业务规则肯定会不断发展,科学的解决此问题的做法是不断对软件系统进行版本升级,在确保可维护性的前提下逐步扩展系统。
(6) 设定应急计划,每个开发计划都至少应该设定一个应急预案去应对出现突发情况和不可遇知的风险。
二、 成本预算
1. 成本预算方式
(1) 自上而下的预算方法
自上而下的预方法主要是依据上层、中层项目管理人员的管理经验进行判断,对构成项目整体成本的子项目成本进行估计,并把这些判断估计的结果传递给低一层的管理人员,在此基础上由这一层的管理人员对组成项目的子任务和子项目的成本进行估计,然后继续向下一层传递他们的成本估计,直到传递到最低一层。
使用此预算方式,在上层的管理人员根据他们的经验进行的费用估计分解到下层时,可能会出现下层人员认为上层的估计不足以完成相应任务的情况。这时,下层人员不一定会表达出自己的真实观点,不一定会和上层管理人员进行理智地讨论,从而得出更为合理的预算分配方案。在实际中,他们往往只能沉默地等待上层管理者自行发现问题并予以纠正,这样往往会给项目带来诸多问题。
自上而下更适用于项目启动的前期,与真实费用相差在30% ~ 70%之间。
Scrum使用自上而下的成本预算方式,它不会立即精确地确定成本,而是以最大限度容纳客户对未来产品要求所产生的变更。
(2) 自下而上的预算方法
自下而上方法要求运用WBS(Work Breakdown Structure,工作分解结构)对项目的所有工作任务的时间和预算进行仔细考察。最初,预算是针对资源(团队成员的工作时间、硬件的配置)进行的,项目经理在此之上再加上适当的间接费用(如培训费用、管理费用、不可预见费等)以及项目要达到的利润目标就形成了项目的总预算。自下而上的预算方法要求全面考虑所有涉及到的工作任务,更适用于项目的初期与中期,它能准备地评估项目的成本,与真实费用相差在5% ~ 10%之间。
注解:WBS
WBS是面向提交成果对项目的分解,从提交成果的列表可以确定每个提交成果需要执行的活动。Scrum会对WBS进一步细化,把一个迭代分解为一个或多个的工作包,再把工作包分解为细小的开发任务(一般开发任务的开发周期在15个工作小时以内)。
2. 确定项目支出
总体成本预算就是结合下列多个成本预算方式综合计算的开发成本:
(1) 零基数预算
在成本预算的初期应该使用零基数的计算原则,而不可以使用类似于:以上一年总体费用加上20% 这样粗略的方式计算项目成本。
(2) 软硬件成本、物品成本
物品成本是指类似于:服务器(RAM 硬盘 CPU NIC卡 RAID簇)成本、维护成本、机房租金、光纤通讯成本、软件成本等的成本。
计算成本时需要考虑组装硬盘需时的长短,技术人员需要具备的质素,产品供应商能否提供保证质量,管理时是否需要额外的管理人员这些多方因素。
(3) 软件许可证成本
(4) 外包成本
当使用类似:视频、短信、移动电信类服务、门户网站等子项目时可以考虑以外包形式完成,以降低开发成本。
(5) 人力资源成本
计算人力资源成本时应该使用以最高和最低的工作效率估算平均效率的方式,计算出人力资源的平均成本。
(6) 维修保养成本
三、 客户沟通的过程
从客户沟通的方向出发来看,软件项目可分为:需求识别、方案定制、项目实施、项目结束等4个不同的阶段,各个阶段都具有不同的沟通重点。
1. 需求识别阶段
(1) 文本沟通
在需求识别的前期,应该通过问卷、原型展示、界面展示、逻辑处理展示、准化文档模板等方式进行全方位多角度的分析,随时将不明确之处反馈给客户,以期待客户解答。并以文本记录的方式建立需要分析书,并要求客户审核需求分析书,以达到需要分析与客户的真实期望高度一致的结果。
(2) 业务逻辑沟通
在进行业务沟通时,应该了解客户的行业语言,以促进业务分析的过程,越过应用需求和开发之间的鸿沟。沟通过程提倡以草图或者可视信息化的方式进行, 针对不同层面的企业用户提供最适合的操作界面。以多角度的方式思考问题,要抓住需求重点,尤其是客户方领导所关注的创新类和实用类需求。
(3) 需求变更的规范化管理
需求变更在软件开发类项目中是可以理解的,但必须对需求变更做好规范化的管理,以避免出现需求无止境变更的风险。需求变更必须由统一的负责人提出,并且由用户需求的审核领导者认可。需求变更的提出应该是定期而不是随时的,开发方应该做好详细的文本记录,让客户了解需求变更的实际情况和开发方为之所付出的成本代价。
2. 方案定制阶段
该阶段项目的主要任务是与客户共同制定一个以前期明确的需求、双方的资源、项目开始的阶段、实施的时间约定、项目费用限制等为基础的具有可操作性的项目计划,从本阶段开始争取客户全面参与项目的管理,并以双方的共同利益考虑项目实施的具体计划与风险规避。
3. 项目实施阶段
在该阶段,软件项目团队应该与客户共同领导项目的实施。同时,项目团队应实时评估客户满意度,并通过持续改进的方式提高客户满意度,还应要求客户参加必要的培训,以及在必要时检查项目产品。在出现客户的需求变更前,应主动与客户沟通交流,使客户充分了解项目的每个环节,以及变更带来的影响,减少需求变更。如果出现客户需求变更,应与客户一起共同解决由变更引起的成本、进度、质量变化。
4. 结束阶段
该阶段主要进行项目成果的移交,并把系统交付给维护人员,帮助客户实现商务目标,结清各种款项。完成这些工作后应该进行项目评估,审核此项目的成果并总结项目经验。
5. 售前人员注意事项
在产品型项目作为开发成果时,相关销售人员应该注意:对产品的推销不应该过分承诺。如果过分承诺,会给后续的项目实施带来困难;一旦承诺没有兑现,也会降低客户满意度,影响今后合作。如果有附加承诺,一定要以文本形式记录,让实施项目经理知晓并传达给项目组成员。
注解:在软件项目中,需要明确以下四种客户角色
A. 要明确最终使用部门和用户,要去了解他们现有的工作方式,要让他们知道项目的目标框架,知道项目要解决他们的哪些困难,但绝对不是全部困难,这样可以较好的控制项目范围。
B. 要明确需求的提出者,他或者他们要能够代表最终客户群体。提出产品需求的这类客户要具有一定的技术、业务能力和权威,能够真正代表最终客户团队的意愿和想法,最好有IT基础,能够用IT语言描述问题和需求,以利于双方的沟通、协作,避免产生歧义。
C. 要明确做需求确认的中层领导,他要把握方向。软件开发项目是解决实际生产或者管理问题,同时 也是领导系统建设的具体实现,做需求确认的客户领导,既要了解高层领导的系统建设要点和方向,又要谙熟具体业务和生产管理实际。如果是这样的客户领导来把 握和决策,对企业软件开发项目的顺利进展作用非凡。
D. 要明确谁来对成品提意见,谁来验收。项目验收环节,是项目的收尾环节,如果验收的人对项目初期的需求目标不了解,会从态度和产品实际使用效果上对验收产生负面的影响,对提供产品的企业关闭项目非常不利。根据实践总结,由需求提出人和确认人来做项 目的验收工作,能够促进项目的顺利完成,避免延期。
四、 需求分析
1. 需求分析的过程
需求过程包括需求开发和需求管理2个部分:
(1) 需求开发就是对开发前期的管理,与客房的沟通过程,可以分为4个阶段:需求获取、需求分析、编写需求和需求验证。
(2) 需求管理:就是软件项目开发过程中控制和维持需求约定的活动。包括:变更控制、版本控制、需求跟踪、需求状态跟踪。
2. 需求的层次
需求的层次包括:业务需求、用户需求、功能需求、非功能需求等4个方面。
3. 需求开发阶段的重点
(1) 提取业务对象
业务对象是指系统使用的真实对象,例如一个供应链管理 (Supply Chain Management ,简称SCM) 业务对象主要包括:生产批发商、零售商、送货商、顾客多个层次。
(2) 提取业务流程
在了解业务逻辑的过程中,应该列举出所开发软件模块的各自职能,并细化每个工作流程,深入分析业务逻辑。
(3) 性能需求
在分析的前期应该注意客户对所开发软件的技术性能指标,如存储容量限制、运行时间限制、安全保密性等。
(4) 环境需求
环境需求是指软件平台运行时所处环境的要求,如硬件方面:机型、外部设备、数据通信接口;软件方面:系统软件,包括操作系统、网络软件、数据库管理系统方面;使用方面:使用部门在制度上,操作人员上的技术水平上应具备怎样的条件。
(5) 可靠性需求
对所开发软件在投入运行后发生故障的概率,应该按实际的运行环境提出要求。对于重要的软件,或是运行失效会造成严重后果的软件,应提出较高的可靠性要求。
(6) 安全保密要求
在需求分析时应当在这方面恰当地做出规定,对所开发的软件给予特殊的设计,使其在运行中,其安全保密方面的性能得到必要的保证。
(7) 用户界面需求
为用户界面细致地规定到达的要求。
(8) 资源使用需求
开发的软件在运行时和开发时所需要的各种资源。
(9) 软件成本消耗与开发进度需求
在软件项目立项后,根据合同规定,对软件开发的'进度和各步骤的费用提出要求,作为开发管理的依据。
(10) 开发目标需求
预先估计以后系统可能达到的目标,这样可以比较容易对系统进行必要的补充和修改。
4. 需求分析的任务
需求分析的主要任务是借助于当前系统的逻辑模型导出目标系统的逻辑模型,其流程如下:
(1) 确定对系统的综合需求(功能、性能、运行、扩充需求)
(2) 制作产品需求文档 (PRD)
(3) 分析系统的数据需求(概念模型、数据字典、规范化)
(4) 导出目标系统的详细的逻辑模型(数据流图、数据字典、主要功能描述)
(5) 开发原形系统
(6) 从PRD提取编制软件需求规格说明书(SRS)
注解:SRS格式
1.引言 2系统概述(项目背景、系统目标、核心业务流程) 3.术语说明 4.系统结构(架构图、功能图)
5.主体功能与业务逻辑(重点) 6.接口需求(内部、外部接口、) 7.网络总体设计(拓扑网络、主机、组网)
8.运行环境(Linux、Windows、IIS、 WebLogic、Tomcat、OLAP、OLTP、JDK 8.0 、.NET Framework 4.0等)
五、 面向对象程序设计(略)
1. 设计原则
(1) SRP单一职责链
每个类都应该只负责做一件事。
(2) OCP开封闭合原则
软件的实体(类、模块、函数等)应该是可以扩展的,但是不可修改的。
(3) LSP替换原则
子类必须能替换他们的基类型。
(4) DIP依赖倒置原则
高层模块不应该依赖于低层模块,二者都应该依赖于接口与抽象类。抽象不应该依赖于细节,细节应依赖于对象。
(5) ISP接口隔离原则
不应该强迫客户依赖于并未使用的接口,而应该把胖接口分离。
2. 实现UML建模
(1) 业务对象的提取
(2) 根据SRS、CRC等实现用况建模
(3) 实现业务顺序图
(4) 建立类图,根据用况图建立对象之间的关联
(5) 绘制活动图、实现协作图、状态图
六、 开发管理
1. 建立项目计划
(1) 设计总体架构
针对系统的实施需要,采取适当的且成熟的框架结构。
(2) 控制可扩展度
扩展度过大,将提高系统的复杂程度,延长开发时间;扩展度过低,会直接影响系统的二次开发与维护。控制系统的可扩展性,能提高开发效率,降低系统维护的难度。
(3) 建立基础设施
合理分配部署软、硬件等基础设施所需要的时间与成本(例如:服务器的订购安装、光纤接入、软件平台订购)。
(4) 划分开发任务
利用WBS(Work Breakdown Structure,工作分解结构)对可交付结果进行分类与划分。每个项目都能划分为多个不同阶段,每个阶段又可以分为多个工作包(Work Package),工作包是WBS里最小的可交付结果,最后从工作包中分解出多个开发任务列表。
(5) 部署开发进度
一个项目应该按进度划分为多个开发阶段,每个阶段的开发周期一般在30~60个工作日以内。在此阶段内应该与客户举行协商会议,制定产品路线图,在开发过程中邀请客户积极参与并提出反馈意见。然后把该时段内的开发任务按照开发难度,依赖性,重要性等多方条件划分为多个迭代周期。
在Scrum 敏捷软件开发原则中,应该把每个迭代任务进一步细分为多个开发任务列表,再开发任务分配给组员各自负责,而开发时间应该控制在15个工作小时以内。如果开发时间超出15个工作小时,应该考虑把开发任务再度细化。开发任务建议应该由组员自主选择,而不要使用强制分配的方式。
(5) 测试项目成果
每个工作包都应该同步部署测试工作,提高项目的质量。对出错BUG的工作包应该由测试人员以文本方式记录,向开发人员展示错误所在,让开发人员及时进行修改。
2. 管理开发团队
(1) 组建团队
按照工作任务与项目时间的前提条件建立团队,按团队职责分配人员,一般团队人数应该控制在8~12人之间。当团队人数超过15人时,应该考虑把团队分解成2个独立团队,负责不同的开发任务。
(2) 分配开发任务
在每个迭代周期内(一般是15~30个工作日),应该把每个工作包进一步细分为多个开发任务,再开发任务分配给组员各自负责,开发时间应该控制在15个工作小时以内。如果开发任务的开发时间超出15个工作小时,应该考虑把任务再度细化。而开发任务应该以自由选择的方式分配给每个组员。
(3) 监督开发进度
在迭代的前期举行一次会议,让组员了解开发的进展及流程,并以自主选择的方式分配开发任务。期间可使用Microsoft Project等工具记录开发流程的进展,在每个工作包完成开发后应该进行性功能的测试,并以文本方式记录测试结果。
每天举行一次15分钟的站立会议,让组员交待昨天已完成的开发任务,当天将要做的任务,与开发过程中所遇到的问题。并在每周末举行一次例行会议,交待总体进程。
在迭代末期举行一次冲刺会议,总结项目的进展,交行已完成的任务,回顾该迭代周期内所遇到的问题,为下一个迭代做好准备。
(4) 系统测试
对每个已完成的工作包进行适时的测试,保证系统质量与性能。对测试结果进行文本的记录,并把测试结果与绩效工资收入挂钩,并以真实数据计算组员的绩效收入。
(5) 解决开发中所遇到的问题
对开发人员进行前期培训,可适当按工作能力分配任务,指导组员的开发。当遇到问题时应该在当天的站立会议时即时提出,并在15个工作小时内解决所遇到的问题以防止问题进一步扩大。
3. 监管产品质量
(1) 质量需要的是计划、设计而并非审查的。在产品建立的初级,必须与“质量保证”(QA)的部门进行协商,以正式文档的方式,决定恰当的质量策略和标准。
(2) 在开发过程中使用TDD(测试驱动开发)的模式,提高开发质量。测试人员应该以文本方式记录bug,并与开发人员共同工作的,把突出的缺陷演示给开发人员,以提高修改的效率。
(3) 在每个迭代的结束时进行一次产品效果的演示,从客户、使用者、高层领导中收集反馈信息。在团队内部举行评审会议,分析测试结果,了解产品性能,为下次迭代所需要做的改进做好计划。
4. 修改项目计划
(1) 在产品需要识别阶段,应该以文档形式记录产品功能与开发流程,在开发计划需要修改时,应该与客户共同探讨,让客户了解计划修改对项目进度所造成的影响。
(2) 项目计划的修改应该由统一的负责人提出,并且由用户需求的审核领导者认可。需求变更的提出应该是定期而不是随时的。
(3) 计划的变更应该做好详细的文本记录,让客户了解需求变更的实际情况和开发方为之所付出的成本代价。
七、 产品交付
1. 项目的后期审核
在项目开发最终完成后,对开发人员来说可算是放下工作的重担,但对项目经理来说这往往是项目的关键时刻。前期的风险评估、成本预算、需求分析、软件设计都是为了引导项目走向这一时刻,此时所有的目光都将投向项目管理人员。你可能发现大量而琐碎的工作将要在几个小时内完成,此刻项目经理更需要保持清醒与镇定,把最后的工作视为微型项目来对待。细致地对项目进行后期的审核,分析项目成果、项目团队的效率、可交付产品的价值,以此审核结果可作为项目管理经验总结的一部分。
2. 质量评审
在项目交付前,应该把项目交给相关的“质量保证”(QA)部门进行质量评审,并邀请典型用户感受产品的质量。
3. 项目的最终交付
正常情况下在项目的前期就会订立项目交付的协议,项目交付方式分为非正式验收与正式验收两种。一般在项目完成后都会先进行非正式验收,让客户体会项目的质量并提出反馈意见,最后在客户肯定产品质量后再以书面协议的形式进行正式的产品验收。
4. 项目的最终报告
在项目的最后,应该制定项目的最终报告,此报告可以视为是对该项目一个记录,但报告不必包含项目的所有方面。一般最终报告应该包含以下方面:
(1) 最初引进项目时的初期项目视图
(2) 对该项目的价值评估及支持性信息
(3) 项目的范围
(4) 项目的开发流程及WBS
(5) 项目的会议记录
(6) 项目变更的报告及变更的理由
(7) 与项目相关的沟通过程文件
(8) 项目的审核报告与客户验收报告
(9) 项目成员的表现报告
(10) 项目的最终成果
兄弟,你说的问题的前提是不是软件已经开发完毕了,或者本身就有现成的软件,只是去用户现场做实施,像金蝶,用友那样?
1. 如果用户是新客户的话,首先要做需求调研的(不论软件是否开发完毕),了解用户的现有的业务流程,以及用户需要做的改进,跟用户敲定实施范围,并要以实际文档形式确定下来,防止用户届时变卦,抱怨系统不好用。
2. 范围确定好后,就要在确定的实施范围之内,做细化的调研了,包括:用户需要的数据项,操作人的角色,相关报表样张等等具体细化的内容。产出物就是业务过程说明书,数据字典等文档,不同的公司,文档形式可能不一样,但内容应该大同小异。但这些文档也要用户确认,并打基线。意思是用户要的东西都在这个文档范围内,如果将来变更,就要另外估算工作量,另外收费的。
3. 接下来,如果软件尚未开发,就要提交给研发中心,设计开发软件了。如果有成品软件,肯定也要在现有成品基础上做一些调整,或二次开发,使得软件符合研发用户要求。
4. 符合用户的软件出来之后,接下来就要到用户现场实施了。先是搭建软件运行环境、部署软件。
5. 软件部署完毕后,要进行用户培训。培训过程也是跟用户沟通的一个过程,实际肯定会出现用户不满意的地方。一般会将用户不满意的地方先收集记录下来,并进入下一个阶段:试运行。
6. 试运行过程中,是用户切实使用软件的一个过程,也会提出一些优化建议和变更的。这点不可避免,但接纳不接纳这些优化和变更,要看公司商务策略了。
7. 试运行结束,如果没有重大的缺陷,接下来就是验收(收款)。
8. 验收过后,应该都有一段时间的质保期,过后,应该就可以收全部款项了。
实施过程中,不可避免要出现各种各样的问题的。只要关键节点守得住,剩下的就是兵来将挡了。
---------------------------------------------------------------------------------------------------------------------
软件验收完后,接下来就是对软件的运维了。
如果在软件实施合同中没有包含后续的运维,那就要单独签订运维合同了,包括运维的范围,问题响应方式,紧急事件处理方式,需求变更如何处理等。
如果前期需求做的好,符合用户现有的业务流程,运维过程可能会比较轻松。但需求做的不好,用户就会不断的提出需求变更。最终导致的结果就是接受或者终止项目(最坏的情况)。
最后,当用户现有业务发生较大变化,或者技术更新换代了,那么当前的软件就要结束了,意为软件生命周期的结束。
软件项目管理是项目管理的分支,致力于软件和网络项目的计划、调度、资源分配、执行、跟踪和交付。
与传统的项目管理不同,软件项目有独特的生命周期流程,需要多轮测试、更新和客户反馈。为了跟上业务增长的步伐,大多数IT相关的项目都采用敏捷方式进行管理,并基于客户和利害关系人的反馈进行迭代。
软件项目经理的角色和责任
软件项目经理需要完成以下任务中的任何一项:
1-规划
这意味着把整个项目从构想到实现的蓝图放在一起。该任务将定义范围,分配必要资源,提出日程表,描绘执行计划,制定沟通策略,指出测试和维护所需的步骤。
2-领导
软件项目经理需要组建和领导项目团队,该团队可能由开发人员、分析人员、测试人员、平面设计师和技术文档工程师组成。这需要优秀的沟通能力、人际交往能力和领导能力。
3-执行
项目经理参与和监督项目各阶段的成功执行,包括监督进度、频繁的团队登记和创建工作进度表。
4-时间管理
按计划行事对于成功完成任何项目至关重要,但涉及到管理软件项目,这尤其具有挑战性。因为随着项目的发展,对原始计划的变更几乎肯定会发生。
软件项目经理必须是风险管理和应急计划方面的专家,确保在障碍或变更出现时能够向前推进项目。
5-预算
和传统的项目经理一样,软件项目经理的任务是为项目制定预算,然后尽可能严格地执行预算,调整支出,并在必要时重新分配资金。
6-维护
软件项目管理通常鼓励持续的产品测试,以便尽早发现和修复故障,调整最终产品以满足客户需求,保持项目瞄准目标。软件项目经理负责确保测试、评估和修复正确和始终如一。
如何成功管理软件项目?
有8种方法可以优化和简化软件项目管理流程:
—移除团队中的非开发性工作,让团队专注于开发—通过分享他人的成功故事来激励团队,比如科技巨头的成功故事,这会激励你的团队—分配任务后避免更改任务—坚持计划(除非计划需要变更)—通过提高效率来鼓励条理性—通过有效授权来提高生产力—了解你的团队,建立融洽的关系—分解计划,给团队成员具体的日常任务
特别建议:利用技术优势
知道了优化软件项目管理流程的方法,如何成功实施也很重要,利用技术优势可以帮你达成目标。8Manage PM项目管理系统具备关于软件项目经理和团队成员应该做什么的内在知识,能够指导项目团队做正确的事。
为了使软件项目能够按照预定的成本、进度、质量顺利完成,项目经理可以使用8Manage PM对项目成本、人员、进度、质量、风险和文档等进行分析、管理和控制的一系列活动。
软件项目管理的目标一般包括以下几项:如期完成项目;保证项目质量;用户需求得到确认和实现;妥善处理用户的需求变动;项目成本控制在计划之内;保持对项目进度的跟踪;顺利实施系统配置管理。这些目标都能通过8Manage PM来实现。
此外,选择面向交易的项目管理工具,比如8Manage PM,能够强化政策、控制流程,使人们保持诚实,这些对于成功管理软件项目至关重要。成功的软件项目管理能够产生优质的软件产品,而优质的软件项目管理能够使企业拥有满意的客户。因此,项目管理是企业获取满意客户的关键。有效的项目管理能保证软件的正常运行,给企业、工作带来最大化的效率提高。
当IT项目经理应该做哪些事情?
项目经理是具体项目工作的管理者,他们在工作中不断提升自己的领导才华,同时该职业又是一个权利与责任并存的职业, 他们主要对项目进行背景调查,收集整理项目相关资料,进行需求策划,撰写项目调查报告和信息综述,对项目组成部分或模块进行完整系统设计,联系项目相关单位和相关技术专家,制定项目可行性研究报告,协同配合制定和申报立项报告材料,组织项目团队完成项目任务,保证项目的完成时间和完成质量。下面是我为大家整理的IT项目经理应该做什么,欢迎阅读!
IT项目经理应该做什么
经常看到这样的项目经理,一副整天忙得团团转的样子,电话不停地作响,一个小时之内要发出几十个指令,好像他所领导的团队离开了他就一天也活不下去。然后他还会说:"我很忙"或"我很累","我需要增加人手"。这样的项目经理经常事无巨细都要亲自过问,即使旗下有人,你说他能不累吗?
甚至还有这样的事列发生,研发部门经理亲自参与项目软件的编码工作,如果只有一、两个项目,也许这样还可以,试想,如果有十几个项目你能都参与具体的技术工作,另外是否考虑过部门经理参与具体项目后所带来的其他问题,部门日常事物务无处理,部门人员无人关注,部门的其他项目得不到项目经理的协助,更是无人为部门的未来作打算。类似的项目经理的行为很多:譬如善于销售的经理就对自己的销售人员总是不放心,觉得下面的人出马总是不那么牢靠;文笔较好的项目经理总是要亲自起草文件,因为秘书起草的东西总是叫他看不上眼,如此等等。
由此造成的结果是经理整天搞得手忙脚乱,管理效率很低。做经理者没有时间考虑部门发展的问题,做下属者觉得自己得不到信任,做事小心翼翼,不敢越雷池半步,没有积极性。
由此想到刘备,文不如诸葛亮,武不如关张赵马黄,但是他会用人,会笼络人。做项目经理人的恐怕都需要学习一下刘备的做法,即便你是在某些方面非常地出色。你可以把你的经验传授给你的下属,不要怕他们犯错误。"用人不疑,疑人不用",虽然很难做到而且有时也不一定非要做到,但是你既然给了一个人那个位置,那份薪水,就应该让他们充分地发挥,你不能替他们做事,你不能"抢"你付给他们的权力。记得有次记者采访CA公司总裁汪嘉廉先生时,汪先生说他到目前还没有个人email地址,记者很惊诧的问他为什么时,他说“没有必要,我有很好的业务总监们,他们会处理好公司的日常事务,我要有充足的时间考虑公司的发展战略,我不希望被一些琐事打扰”。汪嘉廉是一位好的管理者,所以CA才有今天的地位。
做得好的项目经理可能看起来每天的工作并不是那么紧张。所以有些下属就可能提出这样的问题:"我们忙,你在干什么?"
项目经理,对于一个团队履行它的使命和发展负责的人。因此创造出一个大于其各组成部分的总和的真正的整体,创造出一个富有活力的整体,应该是其第一使命。即人们经常谈论的管理,通过管理则可以把在自然界1+1〉2的不可能转变为可能。为履行这一使命,项目经理应该做什么呢?
一、一个项目经理首先要制定目标,即确定团队的目标,只有知道往哪走,才能到达那里。确定目标是什么,而且目标要能够有效的支撑团队的责任,有助于团队的发展。而且要将目标传达给团队的每一位人员,让他们认识到他们在实现目标过程中的责任和重要性。
二、一个项目经理要进行组织工作,即如何安排工作,需要分析所需的各项活动、决定和关系,他需要对工作分类,确定作业任务的主次和轻重缓急,并为作业分配适当的执行的人员。
三、一个项目经理要进行激励和信息交流工作。他把担任各项职能的人组合成为一个团队,它需要通过对下属的激励,以及同上、下、同级间的相互信息交流,协调完成工作。
四、一个项目经理需要进行衡量考核,衡量团队的绩效和个人的绩效。首先需要确立衡量的标准,这个标准不但要专注于团队的绩效,而且还要求专注于个人的工作并帮助他做好工作。一个项目经理把衡量的意义和结果通报给他的下级、上级和同级。
五、一个项目经理要培养人,也包括他自己。项目经理比其他人更了解其下属的长处和短处、更清楚下属的培训需求,也常常拥有帮助其下属改进工作绩效所必需的技能,只有下属的技能提高了,整个团队的效率才可能提升,只有团队的成员有发展,他们才会在执行工作时投入热情和责任。 经理需要制定培训计划并部署。
在我们这个行业,好多项目经理是在业务或者说技术方面有过硬的能力后才被赋予经理这一责任的,他们可能没有受过管理学的教育,希望此文能够给与他们思考与认识自己责任。
项目经理该做什么,不该做什么
1.以目标导向来做事情
首先要明白该做什么,其次才是如何做。目标是项目管理的重要特征,项目经理做事原则都是围绕项目目标展开,对于有利于项目目标达成而又不违背项目经理职业道德和行为准则的事情都是该做的事情。
目标有短期目标和常用目标,把当前项目按目标完成可能是短期目标,通过一年时间带出一个高效的团队可能是一个长期目标。对于非临时项目的项目经理,更加应 该着眼于项目长期目标,而不是太在意于当前项目的短期利益。只有意识到这点,才能够认识到培训,教练,团队,自发,团队语言和规则等在整个项目中的重要 性。
2.对自己定义的目标进行分解
对于软件项目,项目经理根据商业或用户需求会定义软件产品发布后的故障率小于0.5个/KLOC代码。要达到这个目标就需要结合项目的时间过程分析影响该 目标的要素,各个阶段交付物的质量,缺陷的泄露,测试的水平,需求的变更和稳定性,前期的需求设计和开发规范,团队规则,开发人员的责任心多方面因素都可 能影响到该目标的实现。
一个总体目标的达成绝对不是简单的改善一项影响要素就可以达成的,而且各个要素间还存在这正反作用,必须要综合性的系统思考。确定出期望的各个要素的区间 水平,然后将这些期望值列入到计划中进行跟踪和控制。这一系列的过程要表明的都是你做的每一件事情都是有目的的,都是为了实现当初定义的目标而服务,绝不 是无中生有。
3.具体实际操作的关注点
首先对于风险和危机的重视度远大于对问题的重视度。不是说问题解决不重要,而是项目经理应该更多的管理风险和消除隐患,不让风险转换为真正的问题。项目经 理必须有足够的问题前瞻性和敏锐的洞察力,发现各种征兆和危机,危机发生前应对往往仅仅是项目经理找成员谈谈心,或者说组织一次关于规程的培训,但危机如 果发生造成的损失会远远大于风险应对的成本。
项目经理应该更多的取做教练,而不是去做领导。管理者要懂得授权,但项目经理更关注的是授权不会影响到进度和质量,因此项目经理绝对不是越俎代庖啥事情都 自己做,也不是盲目授权后啥都不管,而是充当好教练的角色。让项目成员有能力的全完成事情,而且是有责任心的去完成事情。如果自己做只花1个小时,而教会 团队成员做需要一天,从团队常用的角度必须花费这一天时间教会成员如何正确的做事情。
PMBOK九大知识体系内容都是项目需要考虑做的内容。里面有个关键词是项目管理组,项目管理组是由项目核心成员共同组成的。必须要分清楚哪些是项目经理 做,哪些是项目管理组做。另外一个关注点是做事情的粒度,项目任务的跟踪是项目经理要做的,但项目经理应该根据项目目标确定自己跟踪任务的粒度,粒度太细 的可以由项目成员或小组负责人跟踪。项目经理该做什么不能简单项目经理人与项目成员的实战指南
在一个团队中,作为一名团队领导,将:
1) 避免团队目标向政治问题妥协
2) 向团队目标显示个人承诺
3) 不用太多优先级的事物冲淡团队的工作
4) 公正、公平的对待团队成员
5) 愿意面对和解决与团队成员不良表现有关的问题
6) 对来自员工的新思维和新信息采取开放的态度
作为团队成员,要将:
1) 展示对个人角色和责任的真正理解
2) 展示目标和以事实为基础的判断
3) 和其他团队成员有效地合作
4) 使团队目标优先个人目标
5) 展示投身于任何项目成功所需的努力的愿望
6) 愿意分享信息、感受和产生适当的反馈
7) 当其他成员需要时给予适当的帮助
8) 展示对自己的高标准要求
9) 支持团队决策
10) 以为团队的成功而奋斗的方式体现带头作用
11) 对别人的反馈做出积极的反应的理解为二元问题,更多的是跟项目目标和管理粒度相关的做事情的粒度问题。
IT项目经理的经验总结
本人做项目经理工作多年,感到做这个工作最要紧的就是要明白什么是因地制宜、因势利导,只有最合适的,没有什么叫对的,什么叫错的,项目经理最忌讳的就是完美主义倾向,尤其是做技术人员出身的,喜欢寻找标准答案,耽误了工作进度,也迷茫了自己。以下是本人一些做项目的个人体会,写出来供大家指点,在讨论过程中共同提高水平。
项目开始阶段是一个最重要的阶段。项目经理在接手一个新项目的时候,首先要尽可能地多从各个方面了解项目的情况,如:
1.这个项目是什么项目,具体大概做什么事情,是谁提出来的,目的是解决什么问题。在国内很多客户都很不成熟的情况下,千万不要根据项目的名称望文生义地去想象项目的目标。一个名为“办公自动化”的项目很有可能在你进场以后一个月才发现客户其实需要的是一个计算机生产管理辅助信息系统系统。前期了解情况的工作越详细,后面的惊讶就越少,项目的风险就越小。
2.这个项目里牵涉哪些方面的人,如投资方、具体业务干系方、项目建成后的运营方、技术监督方等等,很多项目里除了业主单位的结构很复杂以外,还有一些其他单位也会牵涉进来,如项目监理公司、业主的行业主管机构等。项目经理需要了解每个方面的人对这个项目的看法和期望是什么。事先了解各个方面的看法和期望,可以让你在做项目碰到问题的时候,就每件事情分析哪些人会在什么方面支持你,哪些人会出于什么目的反对你,从而提前准备联合朋友去对抗敌人,让事情向你所希望的方向发展。没有永远的朋友,也没有永远的敌人,只有一致的利益,这句话作为项目经理是一定要记住的;
3.基本了解了客户的情况后,下面的事情就是了解自己公司各方面对这个项目的看法。首先是高层领导是否重视,这个决定了你在需要资源的时候,公司是否会根据你的要求提供最有力的支持。领导口头肯定是说支持的,你需要做的是了解公司对这个项目的实际期望,是想把项目越做越大还是想赚钱?是想做样板工程还是干脆想敷衍了事,公司领导对项目的态度决定了你做这个项目的战略,而这个战略方针将对你做项目计划产生直接的影响;
4.在做整体项目计划前,还要大致计算一下你手上的资源。首先是时间,现在市场竞争激烈,往往很多项目要求在几乎不可能的时间范围里完成。对于这一点,你在做项目的风险控制计划的时候要充分考虑。其次是人员,根据项目预算和已往经验,大致计算一下未来的项目小组有多少种角色,每个角色目前公司是否有人,是否能完全归这个项目使用,是否需要另外招聘一些人员,招聘的准备工作要尽早启动。最后就是一些设备的准备,项目所需大件关键设备要尽早预定,以后不管发生设备等人还是人等设备的情况,浪费的都是你的时间;
5.现在是做项目说明书的时候了。一份好的项目说明书不仅将要做的事情描述得很清楚(主要是讲做什么,而不是说怎么做),而且把如何检查也说明得很透彻。也就是说它不仅说明白了要做哪些事情,也让客户的业务人员(一般不懂技术)知道项目做成什么样就算完成了。简单地说,项目说明书描述项目做哪些事情和每件事情做到什么程度以及如何检查每一个结果。
6. 是到做总体计划的'时间了吗?不,你现在已经知道了客户的目标和你手上的资源,那么做计划以前,你还需要和你的经理和客户充分沟通资源的问题。因为很多资源是还不明确的,你需要写一份报告,详细分析这个项目的风险以及对资源的需求情况。如果一些问题不能得到解决的话,将发生什么样的后果。如果资源不够,就要高层改变策略,增加对这个项目的投入。甚至在条件许可的情况下,有些公司会放弃这个项目。总之,没有人能完成一个不可能完成的任务,如果项目经理不能尽早发现风险,那么就只能去当烈士了。
7.明白了要做哪些事情和你手上的筹码以及你做这个项目的总体策略,现在是成立项目小组的时候了。很多项目经理都没有自己选择组员的权利,那么,就尽量发挥你的影响力去寻找那些你想要的人吧。成员的组成根据项目不同,相差较大,很难有什么具体要求,但是,一定要有精通客户业务的人,很多小项目里,这个人就是项目经理本人,大项目里会配备行业专家(Industry expert),这样和客户沟通起来才不会鸡同鸭讲,双方才可以相互理解。我经常看到的情况是我们的技术人员和客户交谈时满口的专业术语,结果搞得客户一头雾水,反过来,他还指责客户不懂技术。其实,明白自己想做什么的客户已经是很好的客户了,不知道自己要做什么,更不懂怎么做还要指手画脚的客户到处存在,但是要明白,是客户选择了你,而不是你选择了客户,有了客户你才有工资拿,心平气和一点吧。
8.现在你要面对三群人:你的领导、你的组员和你的客户,和这些人沟通,让他们知道你打算怎么做,什么时候要他们做什么准备这些事情将是你的主要工作。既然沟通这么重要,那些事先定义一下沟通的原则也是一件很要紧的事情。很多沟通原则都是潜规则,如果你在一个部门时间做长了,对这些规则的运用觉得是一件理所应当的事情,但是,你现在面对的是多个部门甚至多个单位,不把沟通规则说清楚,你以后就会吃亏。下面的东西看起来无聊,其实还是很管用的:第一个是规定信息的流动方式和介质,是推还是拉。推的意思就是项目经理将主动发布信息,不管通过电话、邮件还是书面方式,保证将信息传达到每个人。这种情况适合小项目,人少;拉的意思就是项目经理就是一个类似web服务器,你自己需要什么信息就去问他。当然,没有项目经理把自己搞得那么累,他会用发布信息到公共介质的方式公布信息,简单的是白板,复杂一点的是项目的公共信息交互区,潜规则就是我发了你没去看就不要说我没告诉你。说这些看似很无聊,其实里面牵涉信息传达不完全的责任问题。当然,这些都是指一般的方式,而且不要绝对化,一般情况下,主动沟通和被动访问是同时存在的,尤其是对领导,项目经理更加应该主动去和领导沟通。第二个问题就是文档问题,很多人怕写文档,但是项目经理一定要牢记“好记性不如烂笔头”的道理。有理有时候为什么会说不清呢?就是因为没有证据。所以项目经理开始就要和客户说清楚有些文档是必须签字的,比如项目经理的项目日志,每个星期至少让客户签字,另外所有达成共识的东西,比如会议纪要,甚至领导的讲话记录,都要写成文档,双方签字,这样以后扯皮的时候,就能做到有据可查。记住:说了的就和没说一样,只有写下来大家签字后才算真正发生了的。还有一些问题,比如你提交的报告,给领导(包括本方领导和客户领导)做一个选择题,结果领导压住不批,让你无所适从,结果拖延了进度。这时候,你可以等,但是注意要留记录,标明是谁的责任;另外,如果你在开始阶段就和领导商定:如果批示提交三天后没有得到领导答复就算对方同意,这样你就会主动很多。再比如不同事件的审批流程问题:什么等级的事情记录在项目日志里、什么等级的事情要双方项目经理专门签署备忘录、什么等级的事情要双方领导出面签署合同附件等等。事先想得越周到,以后的工作就越主动。
9. 好了,做了很多前期工作,定义了一些游戏规则,现在是坐下来做计划的时候了。这一节,任意找一本项目管理的书都会说得比我好,所以我就少写一点,说一些自己的体会就是了。首先是找几个关键组员,比如客户业务专家、系统分析员等等,做一下项目模块划分工作。项目分成几块去做,每一块完成什么,模块之间的信息如何交换等等。需求定义的是做什么的问题,而这里说的是怎么做的问题。这里要强调一点:完成一个目标有很多种方式,你要选一种你最熟悉的,而不是看上去最完美的,这个思路会让你的项目减少很多风险。有时候客户会被某种新技术打动,坚持要你采用那种新技术,你就应该告诉他:你选我做这个项目,就应该容许我采用自己最喜欢的方式做事情,新技术之所以有诱惑力,就是因为吃亏的人还不多,我不希望你成为第一批受害者。采用一个计划会让你的工作更加明确,比如用微软的Project软件,你填写完表格以后,就可以知道这个项目有多少件事情要做,每件事情需要什么资源,他们之间的前后关系如何,消耗的时间有多长,完成后有什么标志等。所有的结果最后用一个叫做甘特图的形式表现出来。你做完这个表以后会惊奇地发现,甘特图上项目的结束时间会远远落后于你的计划结束时间(签合同的人永远不会先征求你的意见的)。当然,学过项目管理的人会大谈什么WBS、优化路径之类的东西,但是我的经验是你再优化也不可能把这些东西安排到计划的时间结束。如果你没碰到这个问题,在我恭喜你挑了一个轻松活之前,请你再去确认你是否罗列了所有要做的事情和正确评估了他们所需要的时间。这时候,你就要考虑牺牲一些任务的时间(也意味着质量)了。按照什么标准牺牲?这个项目的战略!我们在第三节提到过的战略。我的经验是如果你什么都赶进度,其结果可能就是十件事情你一件也没做好,想想多么失败啊。所以,把资源投到你熟悉和有把握的事情上,最后的结果是十件事情,你有三件做成了精品,三件完成,还有四件因为某些原因延误,成绩单是否靓丽了很多呢?战略决定优先级,而正确排列事情的优先级是一个项目经理能力的主要体现。
好,现在项目已经完成了前期工作,了解了项目的目标、搞清楚了手上的资源,制定了项目的策略,然后编制了项目的整体计划,项目进入实施阶段。进入这个阶段反而是项目经理比较空闲的时候,不像前期的时候项目经理要象记者一样到处和不同的人接触,搞清楚他们在说什么,努力猜测他们在想什么和他们的真正目的,那才是最累人的事情。当然,小项目的项目经理往往自己也是一个资源,要做很多事情,这时候反而比谁都苦。项目经理这段时间的主要工作是保持和客户领导以及自己领导的沟通。和客户领导沟通时特别要注意,除非你需要对方给你支持,那么你才需要讲得具体一点,否则,告诉他一切正常就可以了,而且态度要积极一些,千万不要说一些领导不懂的细节,比如:“王局长,最近项目进度还算正常,就是JVM经常发生一些内存泄漏的情况…”王局长:“(*$@@”。和自己的领导汇报也要注意这个问题,除非他是一个技术高手,你需要他的技术经验,否则一般就汇报进度是否正常以及有问题时你的对策和打算就可以了,有些需要他支持的地方,比如资源调用需要说详细一点。
和组员开会,除了一些项目进度跟踪会议以外,还有很多讨论会,需要大家用头脑风暴方法给出解决问题。与会人员很多都是技术人员,他们的特点是注重细节、缺乏大局观、有点消极悲观、自尊心强(如果总结得不对,欢迎大家拍砖),所以,你作为会议的主持人,只要负责提出问题和记录下他们的观点,千万不要做评判者的角色。一个问题,有很多方面,从不同的角度看,现象是完全不同的,想想盲人摸象的故事吧。这些技术人员,他们往往精通一个方面,就自己的角度发表见解,除非一些很特别的情况,你都应该认为,他们提出的方案,从他们的角度来看是最合理的。你的长处是掌握事情的优先级,评估各个方面的轻重缓急,从而根据他们的意见得出一个合适的(而不是正确的)方案。所以,在会议上,你要充分尊重每一个人和他的意见,夸奖那些意见提得比较好的人,千万不要把会议带入无休止的争论(你要让大家知道事情不是非黑即白的,而是多元的,唉,我们的教育惹的祸…)。会后,你自己写文档,做决定。会议上大家的面子都被照顾了,自然实施起来的阻力就小,如果还有意见的,你就私下找他聊,如果还不能说服他,你就要让他明白,因为你负责这个项目、你担当风险,所以,这个优先级应该你来判断。组织中的高层,并不见得水平会比一般的成员高,但是,他要承担组织的风险,加之信息的不对称性,所以,对事情的优先级的判断肯定比下属强。
在开发过程中,内部管理还要注意的一点是时刻强调以验收为目的的思想,每个任务的最终可交付成果一定要是可以被检查的,比如,【界面要求:美观大方、简洁明快】,这个要求我就不知道如何检查。所以,给开发小组布置任务的时候就要考虑如何检查结果,比如我见过一个计划,里面有一个任务【开发人员熟悉EJB编程】,这个任务,除了让这些人去参加一些专业认证考试,否则,结果很难被检查。所以,时刻考虑如何检查结果、如何向客户交付是项目经理一直要注意的事情,我听说有些老项目经理拿到项目是倒排计划的,即首先看如何验收和验收标准,然后决定工作计划。很多项目开始了很久,还不知道如何验收,那么这个项目出问题的可能性就很大了。做项目就是为了验收,我们的角色不是研究机构,我们的目的就是在付出那么多劳动后得到结果。另外我插一句:我是极其不主张到客户现场开发的。尤其是一大群技术人员直接和客户交流,很容易引起冲突和矛盾(技术人员的本性决定的)。我的做法是项目经理和项目实施人员到现场,软件开发人员还是在公司做项目。项目实施人员就是初级项目经理,他们了解自己的产品,懂得一些客户的业务,关键是在于他们具有良好的沟通能力,俗称“皮厚”。他们是客户和研发人员的桥梁,其职业方向也是很机动灵活,以后可以有很多方向可以转,比开发人员的路要宽得多。
接着,我们再谈谈最让人头痛的需求变更问题。变更通常分为两种:一种是部分更改了原先的目标,即需求变更;另一种是没改变目标,但是客户不满意目前的实现方式,大到流程的实现,小到界面的布局,都是属于这类。碰到这种情况是难以避免的,主要是事先沟通的不够充分和客户随着项目的进展,慢慢想清楚了问题,改变了以前的思路。这时候,如果需要改并且你的战略是容许这种情况的,那么注意下面几点:
1.确保以前的文档,就是记载着以前的结论的东西,客户是否签过字,如果没有,赶紧把你的工作停下来,赶快再和客户自己确认一下你的方案,然后让他签字,避免以后说话没有凭据;
2.和客户坐下来,自己探讨他修改的根本目的是什么,是不是有同样能达到相同目的,但是对你来说有代价更小的选择?
3.(项目初期的工作)明确更改流程,一般是客户指定一人签字(否则客户每个领导都有权力来插一杠子,你就废了),以正式项目文件的方式提交给你,然后,你做评估分析,分析对成本、进度的影响,在你的领导同意后,出相应意见书,主要是要说明更改设计的原因和指出由此带来的不确定后果(这个东西先写出来,后面如果真的发生了,至少不是你的错)。然后再让客户在上面签字。见过医院给病人做手术以前让家人签的免责条款吗?对,就学习那个,让大家都意识到任何的更改都有成本和代价。
;
用于软件研发的项目管理系统应包括5个基本功能:
1. 项目计划和调度
计划和调度项目流程是基本。用重要事件填写日历、对任务进行排名以及与团队分享所有内容至关重要。
2. 团队协作
支持团队沟通的渠道对于促进协作是必要的。让每个人都在同一页面上,每个人都可以通过简单地查看项目来保持更新。
3. 文件管理
软件研发项目有很多文档,在一个地方访问这些数据会很方便,最好能够实现快速访问。
4. 报告
项目经理必须了解每个任务完成或发生的问题。要了解你在项目中所处的位置,需要一个良好的报告系统或 KPI 仪表板。
5. 资源管理
资源管理包括维护项目开发中使用的其他资源,还有项目预算管理。还需要跟踪资源使用情况以了解它们对项目的价值。
技术每天都在不断改变团队的工作方式,研发管理系统使用得当最终可以使软件开发团队的生产力达到顶峰。
8Manage PM软件项目研发管理系统,能够切入软件研发流程的各个影响成功的因素,覆盖进度、计划、范围、风险、资源、成本、需求、时间、沟通等研发管理全流程,同时也应用四眼原理和实时直通处理来提供及时、准确和完整的项目数据,并提供各种可视化报表,全面推动项目实施成功。
hyc.bjufida.com 在上述内容中已对项目经理如何管理软件产品和项目经理用什么软件管理工程的内容作出了详细的解答,内容对于您解决ERP软件相关问题一定有帮助。