软件项目管理

软件项目管理的主体是软件开发团队。一个软件项目管理的好坏,很大程度就体现在软件开发团队的建设和管理上。
  对美国软件工程实施现状的调查结果表明,软件研发的情况仍然很难预测,大约只有10%的项目能够在预定的费用和进度下交付。软件开发团队的建设和管理依然是软件项目管理中一个十分主要的问题。 软件项目管理的主体是软件开发团队。一个软件项目管理的好坏,很大程度就体现在软件开发团队的建设和管理上。软件开发团队是软件项目实施的基础,它直接影响和制约着软件项目管理的最终效果。 一个高效的软件开发团队是高质量软件项目或产品的保证。建设高效的软件开发团队,是实现软件项目管理目标的前提和保证。具体的建设措施有以下六点:
  1 、选拔或培养适合角色职责的人才
  软件项目是由不同角色的人共同协作完成的,每种角色都必须有明确的职责定义,因此选拔和培养适合角色职责的人才是首要的因素。 软件项目开发经理要熟悉各种设计方法,愿意听取其他人的意见,并且要很客观地把自己的思想与其他人的意见相比。此外,还要掌握激发团队成员积极性的方法。 系统分析员要熟悉需要的设计方法,掌握系统分析和设计的原则,要拥有完成职责所需的技能和丰富经验。 选拔或培养适合角色职责的人才,特别是合适的软件开发经理是建设高效软件开发团队的最重要的因素。
  2 、增强软件开发经理的领导才能
  软件开发经理是项目的负责人,负责整个软件项目的组织、计划及实施的全过程,在项目管理过程中起着关键作用。 增强和发挥指导作用 软件开发经理必须以身作则,严格要求自己,起到榜样和示范作用;要明确具体的软件项目质量、范围、工期、成本等目标约束;明确各软件开发团队成员的角色和责任分工,充分发挥团队成员各自的作用。 充分发挥激励作用 在软件开发过程中,由于严格的目标约束及多变的外部环境,软件开发经理必须运用各种激励理论对软件开发团队的成员进行适时的激励,鼓励和激发团队成员的积极性、主动性,充分发挥团队成员的创造力。 灵活授权,及时决策 灵活的授权,一方面显示了软件开发经理对团队成员的信任,有利于充分发挥项目团队队员的积极性和创造性,使得团队成员在自己的授权范围内可根据内外部环境的变化及时决策。 另一方面,通过灵活的授权,软件开发经理逐渐将工作重点转向关键点控制、目标控制和过程监控,工作重心由内转向外,侧重于处理软件项目与企业或社会之间的关系,从外部保障了软件开发团队的运作。
  3 、营造良好的沟通氛围和交流环境
  与IT项目成功有直接关系的三个主要因素分别为:用户的积极参与,明确的需求表达,管理层的大力支持。这三要素全部依赖于良好的沟通技巧。要营造良好的沟通氛围和交流环境,具体来说应该: 加强团队成员之间的沟通 成员之间由于价值观、性格、处世方法等方面的差异会产生各种冲突,人际关系往往会陷入紧张的局面,甚至有可能出现敌视情绪以及向领导者挑战等各种情况。 为此,软件开发理要进行充分沟通,引导团队成员调整心态和准确定位角色,把个人目标与项目目标结合起来。 促使团队成员尽快熟悉工作环境 团队成员与周围环境之间也会产生不和谐,如对软件开发团队采用的信息技术不熟悉等。软件开发经理要帮助团队成员熟悉工作环境,学习并掌握相关的技术,以利于软件项目目标的及时完成。 加强软件开发团队与其他部门之间的沟通 在软件开发过程中,开发团队与其他部门也会产生各种各样的矛盾冲突,这需要软件开发经理与这些部门的管理者进行很好的沟通和协调,为软件开发团队争取更充足的资源与更好的环境。
  4 、充分发挥软件开发团队的凝聚力
  团队凝聚力是无形的精神力量,是将一个团队的成员紧密地联系在一起的看不见的纽带。一般情况下,高团队凝聚力会带来高团队绩效。 设置较高的目标承诺 团队凝聚力在外部表现为成员的团队荣誉感,而团队荣誉感主要来源于项目目标。因此,应当设立较高的项目目标,并使团队成员对项目目标形成统一和强烈的共识,激发成员的团队荣誉感。 同时,引导团队成员个人目标与项目目标的统一,增大团队成员对项目团队的向心力,使项目团队走向高效。 创建良好的人际关系 团队凝聚力在内部表现为团队成员间的融合度和团队士气,良好的人际关系是高效团队的润滑剂。 因此,必须采取有效措施增强软件开发团队成员之间的融合度,让成员在短期内树立起团队意识,形成对团队的认同感和归属感,形成高昂的团队士气,提高团队的工作绩效。
  5 、建立共同的工作框架、规范和纪律约束转自项目管理者联盟
  软件项目的开发是创造性的工作,但要有必要的开发纪律。建立共同的工作框架使团队成员知道如何达到目标,建立规范使各项工作有标准可以遵循,建立一定的纪律约束可以保证计划的正常执行。
  6 、学习国外成功经验
  学习统一开发过程(RUP)的一些实践,可以归纳适合自己的合理开发过程;学习先进的系统分析和设计的思想,可以完成更高质量要求的软件项目;学习各种体系结构优缺点及适应情况,可以设计出满足系统需求的软件体系结构;学习国外成功的设计模式,可以使代码的编写满足更高质量的需求。

你可能感兴趣的:(摘抄)