08 软件项目管理

Posted on Wed, 25 Dec 2024 17:02:30 +0800 by LiangMingJian


1.项目管理

1.1 项目

  • 项目是指在既定的资源要求和约束下,为了实现特定的目标,而相互联系在一起的一次性活动。
  • 每一个项目都是唯一的,世界上没有两个完全相同的项目。

1.2 项目管理

  • 项目管理 PM 是指在项目活动中运用相关知识,技能,工具和技术满足项目要求的活动。
  • 项目管理贯穿于整个项目的生命周期, 从项目开始立项到项目整个淘汰都与项目管理有关。
  • 项目管理涉及的领域包括:集成、范围、时间、成本、质量、人力资源、沟通、风险、采购、项目利益相关者。
  • 软件的项目管理可以划分为四个阶段:立项、开发、运维、消亡。

1.3 里程碑

  • 里程碑是一项持续时间为 0 的任务,也就是说这个任务是不需要时间的。
  • 里程碑的主要作用是表示项目取得了一个阶段性的成就。

1.4 项目估算

  • 项目估算是对需求分析、设计、编码、测试、集成交付等整个软件开发过程所花费工作量、时间、成本等的预测。
  • 项目估算是制定合理的项目计划,更好的控制软件开发活动的基础。
  • 软件项目估算涉及人、技术、环境等多种因素,因此很难在项目完成前准确地估算出开发软件所需的成本、持续时间、和工作量。通常使用多种估算方法结合来提高估算精度。

2.项目的进度管理

2.1 PERT 三点估算法

2.1.1 概念

  • 简称网络图,活动图。
  • PERT (Program Evaluation and Review Technique) ,三点估算法,是一种用于统计工期的计划评估和审查技术。
  • 在估算活动工期时,考虑最好,最坏,一般三种情况,得出最乐观工期、最悲观工期、最可能工期,再据此计算期望工期(平均工期)。

2.1.2 图解

  • 事件(Events)表示主要活动结束的一点;
  • 活动(Activities)表示从一个事件到另一个事件之间的过程;
  • 松弛时间(slack time)不影响完工前提下可能被推迟完成的最大时间。
    • 关键路径上的任务松弛时间为 0,松弛时间等于最晚开始时间减去最早开始时间,或关键路径的总时间减去包含该任务的最长路径花的时间;
    • 最早开始时间是在关键路径上,从开始到该任务的最早执行的时间(从开始到目标节点最长的路线);
    • 最晚开始时间是关键路径的总时间减去反向得出该任务的时间(从最后一个节点倒过来向前做差,取最长的路径);
  • 关键路线(Critical Path)是PERT网络中花费时间最长的事件和活动的序列。从开始到结束得所有路径中,所花时间最长的一条为关键路径。

2.1.3 计算

示例:某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天),则完成该项目的最少时间为( )天。活动 FG 的松驰时间为( )天(晚多少天开始)。

  • 完成该项目的最少时间是指活动图中的关键路线耗费时间(保证活动图所有活动都可能完成,所以要最长的路线),即最长的耗费时间;
  • 本题关键路径为ADFHJ(或ADFIHJ)共计37天,经过FG的最长路径为ADFGJ共计28天,所以松弛时间为37-28=9
  • 本题活动FG最早开始时间18(关键路径ADF),最晚开始时间27(关键路径JGF),所以松弛时间为27-18=9

示例:某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(天)。活动 EH 最多可以晚开始( )天而不影响项目的进度。由于某种原因,现在需要同一个工作人员完成 BC 和 BD ,则完成该项目的最少时间为( )天。

  • 总工期为18天,CE执行完为10天,倒推HJ在H点时为18-4=14.EH持续需要2天,则自由时间为14-2-10 = 2
  • BC持续时间3天,BD持续时间2天,由一人完成,则可以把BC持续时间作为5天,BD持续时间也为5天,则关键路径为ABDGFJ(21天),ABCEFJ(20天)。因为 21 > 20 > 18(关键路径),所以综合来看ABCEFJ是20天是最少的路径,符合题干的“最少”要求。

示例:下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,则里程碑( )没有按时完成会影响整个项目的进度。若活动0+2完成后,停止3天才开始活动2+6,则完成整个项目的最少时间是( )天。

  • 关键路径0→2→5→7→8→9。因此如果该路径上的一个里程碑没有完成,就会影响整个项目进度。
  • 活动0+2完成后,停止3天才开始活动2+6,则会影响路径0→2→6→9,该路径的长度为53+3=56大于原来的关键路径,由于0→3→6→9路径需要等待里程碑6完成,所以该路径也将发生变化即由原来的50变为53天,仍然要小于0→2→6→9的56天,而其他路径则不受影响,所以关键路径变为0→2→6→9共计56天。

2.2 甘特图

2.2.1 概念

  • 简称横道图,条状图。
  • Gantt Chart,甘特图,一种通过条状图来显示项目进度和其他时间相关的系统进展的技术。
  • 甘特图以图示通过活动列表和时间刻度表示出特定项目的顺序与持续时间。一条线条图,横轴表示时间,纵轴表示项目,线条表示期间计划和实际完成情况。直观表明计划何时进行,进展与要求的对比。便于管理者弄清项目的剩余任务,评估工作进度。

2.2.2 图解

  • 横坐标:表示完成任务所需的时间。
  • 纵坐标:表示要完成的任务。
  • 横杠:表示任务持续的时间。