阅读以下关于以快速原型模型开发网管软件系统时的项目进度管理的叙述,回答问题1至问题5。【说明】 某网络程序软件开发公司承接某项网络工程的网络流量统计管理软件开发任务。在进行可行性研究时,需要估算完成项目的时间进度。由于该软件公司近年来已经为采用快速原型法开发软件提供了较好的规范、工具和辅助环境,并已有一定的网络管理软件的开发经验。公司的谢工程师在开发此项目中准备采用如图7-14所示的快速原型开发模型。基于图7-14所示的快速原型开发模型,谢工程师在分析本项目的进度时,列出了以下3个方面的任务。 (1)网管软件开发主线任务,即快速原型法开发时的每一个主线任务的工作步骤及其时间量估计,如表7-7所示。表7-7中B1至B3阶段还将要继续循环反复,根据经验,谢工程师估计最少还需要循环3次,其中快速原型生成分别需花费3天、2天、1天时间,用户试用分别需4天、1天、1天时间,修改需求分析分别需2天、1天时间(最后一次已无修改意见)。最多还可能需循环7次,前3次的循环各阶段所花费的时间同理想情况,但在最后4次循环中,每次循环中快速原型生成、用户试用、修改需求分析都只需要1天时间就可以了。  同样,E1和E2阶段也将可能要继续反复循环,根据经验估计最少还需1次,其中需运行调整测试2天时间(如果无调整意见,则不需要维护性优化执行)。最多可能还需2次,这时运行调整、维护性优化执行各需加上2天时间。  (2)文档生成任务。该软件开发公司十分强调加强对快速原型法开发软件时的文档工作。谢工程师认为需求分析文档、原型及用户修改意见文档、有效需求分析文档、高效执行源程序文档、调整意见文档、用户生效意见及正式运行系统的文档等都应在表7-7中A至F阶段内相应同时完成。但还需要考虑以下文档的生成;  G.用户使用说明书,约需12天完成。  H.用户操作与维护说明书,约需12天完成。  (3)用户培训任务。在开发的过程中,必须随时加强对用户的若干环节的培训,如表7-8所示。
问答题 请用100字以内的文字说明该网管软件项目采用快速原型开发方法的优缺点。
【正确答案】正确答案:优点:关注满足客户需求,减少由于软件需求不明确带来的开发风险 缺点:可能导致系统设计差、效率低、难以维护
【答案解析】解析:这是一道要求读者掌握快速原型开发方法在系统软件开发中应用的简答题。本题的解答思路是,题干的图7-14描述了快速原型模型的开发过程。即第一步是建造一个快速原型,实现客户或未来的用户与系统的交互,用户或客户对原型进行评价,进一步细化待开发软件的需求。通过逐步调整原型梗其满足客户的要求,开发人员可以确定客户的真正需求是什么。第二步则在第一步的基础上开发客户满意的软件产品。可见,快速原型方法关注满足客户需求,可以克服基于文档驱动的瀑布模型的缺点,减少由于软件需求不明确带来的开发风险,但也可能导致系统设计差、效率低、难以维护。表7-12给出了几种常见的系统开发模型的优缺点。
问答题 根据试题的描述信息分析,在最理想的情况下,需要多少天才能完成此网管软件开发任务?如果按保守的估计,则需要多少天才可完成此开发任务? (请列出简要的计算过程)
【正确答案】正确答案:①最理想情况82天完成 TB=(TB1+TB2+TB3)=(5+10+3)+(3+4+2)+(2+2+1)+(1+1+0)=34(天) TE=(TE1+TE2)=(8+2)+(2+0)=12(天) 路径IJKLEF需花费12+10+28+14+12+6=82天 ②保守估计97天完成 TB=(TB1+TB2+TB3)=(5+10+3)+(3+4+2)+(2+2+1)+(1+1+0)+4×(1+1+)=34+12=46(天) TE=
【答案解析】解析:这是一道要求读者掌握PERT图在系统软件开发中应用的计算题。本题的解答关键是熟练查找出 PERT图中的关键路径。本题的分析思路如下。 1)项目评估与评审技术(PERT)图是一种常用的安排软件开发进度、制定软件开发计划的项目管理工具,它采用网络图米描述一个项目中任务与任务之间的依赖关系,是一种图形化的网络模型。 2)与普通的PERT图相比,本试题因为涉及采用快速原型模型开发该网管软件,存在循环和迭代的过程。根据题干信息的描述及图7-14所给出的任务间的流程关系可知,本题存在着两个循环过程,分别是步骤B1至B3的循环和步骤E1至E2的循环。 3)根据图7-15的示意,将B1、B2、B3的时间估计值之和作为B阶段的总时间,把E1、E2的时间估计值之和作为E阶段的总时间。 4)在理想情况下,根据题干关键信息“B1~B3阶段……最少还需要循环3次,其中快速原型生成分别需3天、2天和1天,用户试用分别需4天、2天和1天,修改需求分析分别需2天和1天”,结合表 7-7中第一次B1至B3阶段所花费的时间可求解出B阶段的总时间TB: TB=(TB1+TB2+TB3)=(5+10+3)+(3+4+2)+(2+2+1)+(1+1+0)=34天 以上式子中,“0”表示最后一次已无修改意见的修改需求分析阶段所花费的时间。 5)同理,在理想情况下,根据题干关键信息“E1和E2阶段也将可能要继续反复循环,根据经验估计最少还需1次,其中需运行调整测试2天(无调整意见,不需要维护性优化执行)”,结合表7-7中第一次E1、E2阶段所花费的时间可求解出E阶段的总时间TE: TE=(TE1+TE2)=(8+2)+(2+0)=12天 6)通常将关键路径定义为PERT图中最长的路径,也可以说是完成项目的最短的可能时间。如果关键路径上的任何任务停滞下来,则整个项目也将会停滞下来。 根据题干给出各个阶段所花费的时间及TB、TE计算结果得到理想情况下该网管软件的双代号任务进度图,如图7-20所示。图7-20中存在ABCDEF、ABCDM、ABCGH、ABLEF、ABLM、IJKCDEF、IJKCDM、IJKCGH、IJKLEF、 IJKLM等10条路径。假设图7-20中箭头上的时间量是确定性的估计值,那么路径ABLEF需花费 15+34+14+12+6=81天,而路径IJKLEF需花费12+10+28+14+12+6=82天。根据关键路径的定义可知,路径IJKLEF是图7-20中最长的路径,是理想情况下该软件开发任务进度的关键路径。 由以上分析过程可知,在最理想的情况下,需要82天才能完成此网管软件开发任务。 7)在保守情况下,根据题干关键信息“B1至B3阶段……最多还可能需循环7次,前3次的循环各阶段所花费的时间同理想情况,但在最后4次循环中,每次循环中快速原型生成、用户试用、修改需求分析都只需要1天就可以了”可求解出此时B阶段的总时间TB: TB=(TB1+TB2+TB3=(5+10+3)+(3+4+2)+(2+2+1)+(1+1+0)+4x(1+1+1)=34+12=46(天) 由题干关键信息“E1和E2阶段……最多可能还需2次,这时运行调整、维护性优化执行各需加上2天时间”可求解出保守情况下E阶段的总时间TE: TE=(TE1+TE2)=(8+2)+(2+2)+(2+0)=16(天) 8)根据题干给出各个阶段所花费的时间及保守情况下TB、TE计算结果得到保守情况下该网管软件开发任务的双代号任务进度图,如图7-21所示。
问答题 请指出图7-15可能存在的关键路径是什么? (请用英文字母序号列出)
【正确答案】正确答案:在最理想的情况下关键路径是IJKLEF 在保守情况下关键路径是ABLEF
【答案解析】解析:本题的分析思路请参考以上[问题2]的要点解析,在最理想的情况下图7-15的关键路径是IJKLEF;在保守情况下图7-15的关键路径是ABLEF。
问答题 在最理想和保守的估计中加速开发进度要着重抓的共同环节是哪些?请用50字以内的文字加以说明。
【正确答案】正确答案:要着重抓的共同环节是L、E、F,即用户各类操作和使用方面的培训、优化调整源程序循环阶段、用户确认生效这3个阶段
【答案解析】解析:这也是一道要求读者掌握项目关键路径作用的分析推理题。本题的解答思路是,为了加速项目开发进度,需抓紧最理想和保守的估计中的共同阶段任务的时间安排。最理想的情况下图7-15的关键路径是 IJKLEF,而其保守情况下的关键路径是ABLEF,在这两种情形的共同阶段任务是L、E、F(关键路径的交集),即用户各类操作和使用方面的培训、优化调整源程序循环阶段、用户确认生效这3个阶段。
问答题 项目管理就是以项目为对象的系统管理方法,通过一个临时性的专门的柔性组织,对项目进行高效率的计划、组织、指导和控制,以实现项目全过程的动态管理和项目目标的综合协调与优化。除了本题涉及到的项目进度管理之外,对于软件项目的开发还需关注哪些方面的管理?
【正确答案】正确答案:项目范围管理、项目成本管理、项目配置管理、项目质景管理、项目风险管理、开发人员管理等
【答案解析】解析:这是一道要求读者掌握系统开发中项目管理基础知识的识记题。本题的解答思路如下。 1)理解题干给出的“项目管理”的概念,该定义中需重点理解两个短语,即定义中“实现项目全过程的动态管理”是指在项目的生命周期内,不断进行资源的配置和协调,不断做出科学决策,从而使项目执行的全过程处于最佳期的运行状态,产生最佳的效果。另外,定义中“项目目标的综合协调与优化”是指项目管理应综合协调好时间、费用及功能等约束性目标,在相对较短的时期内成功地达到一个特定的成果性目标。 2)一般来讲,项目管理是按任务(垂直结构)而不是按职能(平行结构)组织起来的。项目管理的主要任务一般包括项目计划、项目组织、质量管理、费用控制、进度控制等5项。日常的项目管理活动通常是围绕这5项基本任务展开的。项目管理贯穿于一个项目的整个生命周期,它是运用既有规律又经济的方法对项目进行高效率的质量考核,并注重将当前的执行情况与前期进行比较。 3)对于软件项目的开发,项目进度管理、项目范围管理、项目成本管理、项目配置管理、项目质量管理、项目风险管理、开发人员管理等7个方面的管理工作极为重要,项目开发的每个阶段、每个过程都要重视这几个方面的管理。