10.3案例三:网络应用系统
阅读以下关于信息系统项目管理过程中综合性问题的叙述,回答问题1至问题4。
10.3.1案例场景
某地区政府部门建设一个面向综合性网络应用系统,对现有的分布在各个服务器上的多个管理系统和服务平台进行重组和整合,整个项目由政府的信息部门负责统一规划、分期建设,由各个共建单位的主要领导组成了领导小组,招标选择了某IT技术公司负责承建该应用系统。
项目采用整体规划、分步实施的方式进行,第一期重点建设了社保、协同办公和民政三个应用系统。建设过程中由于机构改革、职能需要重新定位等原因,《需求规格说明书》始终找不到最终用户签字,在项目经理的一再努力下,
只有一个共建单位的主管领导在该项目的需求分析上签字确认,为了赶进度该公司项目经理决定先行设计和实施。
在实施中,项目经理制定了如图10-1所示的单元测试进度计划,图10-1中已标出每个节点的最早开始时间和最迟开始时间。监理工程师在第5天进行检查时,发现工作A已经完成,工作B已经实施3天,工作C已经实施了1天,工作D已经实施1天。
工程竣工验收时,项目经理向建设单位提交了验收申请,并将竣工验收所需要的全部资料报送建设单位的项目经理,随即向项目监理方的总监理工程师项目申请竣工验收的报告。监理方总监理工程师认为系统已经过初验和3个月的试运行,并且运行情况良好,随即对验收申请报告予以签认,并进行后续的验收工作。
【问题1】(6分)
根据案例的描述,请用400字以内的文字描述在本项目的建设前期出现的问题,该项目经理应该如何处理这些问题。
【问题2】(6分)
根据对单元测试进度检查的结果,请确定:(1)工作B、C、D的进度是正常还是延误(给出延误的天数):是否影响工期并说明为什么。(2)在项目总工期允许拖延的情况下,请重新计算网络时间参数并填入图10-2的空(1)-(30)中。总工期是正常还是延误?若延误,请给出延误天数。
【问题3】(8分)
请用200字以内的文字描述单元测试,以及项目团队应该产生的单元测试工作成果。
【问题4】(8分)
请用400字以内的文字描述竣工验收时,甲乙双方的项目在执行验收程序方面的做法正确吗?如果正确,请说明理由;如果不正确,请说明正确的做法。
10.3.2案例分析
本案例描述了信息系统建设需求分析、单元测试、进度控制,以及项目验收方面的工作。属于一道综合性考察的题目。
【问题1】
需求分析阶段的工作成果是产生经过认可的《需求规格说明书》,需求分析大致可分成三步来完成。
(1)需求信息的收集。
(2)需求信息的分析整理,对收集到的信息要做分析整理工作。
(3)需求信息的评审。
开发过程中的每一个阶段都要经过评审,确认任务是否全部完成,避免或纠正工作中出现的错误和疏漏。需求评审通过,产生规格说明书是需求分析阶段结束的标志,‘评审可能导致需求分析过程回溯,甚至会反复多次。但是,一定要使全部的预期目标都达到,才能让需求分析阶段的工作暂告一个段落。
从客户角度而言,识别需求是项目启动过程和整个项目生命周期的最初活动,客户通过识别商业或市场需求、机会、确定投资方向和项目机会,在这个过程中,将给项目的目标确定、可行性分析和项目立项提供直接、有效依据,为需求建议书的撰写提供基础。
从承建方的角度而言,识别需求是得到客户的需求建议书,或只是得到客户初步需求意向后,项目团队从技术实现、应用和项目实施角度识别客户的实际存在的问题、基本意图和真实想法,从而达到与客户有效的沟通,准确分析需求和问题,为制订可行、合理、正确的技术及实施解决方案提供依据。
在软件项目开始启动的初期,用户会向开发方提交需求描述,内容包括:目标产品的工作环境描述及用户对目标产品的初步展望,其目的仅在于向开发人员解释其需求。
需求规格说明书与需求描述完全不同,它是由开发人员经需求分析后形成的软件文档,其内容更为系统、精确和全面。
在结束需求分析阶段之前,必须形成《需求规格说明书》。
本题中,项目需求分析的成果并没有经过评审,没有得到用户方的认可。
而作为用户也没有充分意识到《需求规格说明书》的重要性。因此,项目经理需要积极协调,让甲乙双方达成需求上的一致认识。
【问题2】
本题涉及到时间管理中的网络图。首先根据题目的意思可以计算出表10-2中所示的数据。
根据表10-2中数据的计算,可以计算出C工作延期2天,由于C工作的延期,随机导致了后续的F工作的延期,因此(5)的最早开始时间产生变化,从而导致了(6), (7)的最早开始时间产生变化。
【问题3】
软件测试是有计划、有组织和有系统的软件质量保证活动,而不是随意、松散、杂乱地实施过程。为了规范软件测试内容、方法和过程,在对软件进行测试之前,必须创建软件测试计划。
软件测试计划是指导测试过程的纲领性文件,包含了产品概述、测试策略、测试方法、测试区域、测试配置、测试周期、测试资源、测试交流、风险分析等内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。
测试阶段的划分应该与开发阶段划分相对应,如需求分析相对应的是确认测试,与概要设计相对应的是集成测试,与详细设计相对应的是单元测试。
单元测试也就是模块测试。通常被放在编码阶段,由程序员完成这个模块后对他自己写的模块内代码进行测试,检查它是否实现了详细设计说明书中规定的模块功能和算法。单元测试是验证详细设计(各个模块)正确性的测试,通常由开发组成员的自测和交叉测试完成。一般的测试流程为:编写软件单元测试说明,执行软件单元测试,编写软件单元测试报告。
除了单元测试,还有集成测试和确认测试。集成测试又称组装测试,是在开发环境下,验证概要设计正确性的测试。集成测试按照测试计划和用例,由测试组成员完成。确认测试是在运行环境下,由用户参与验证需求规格说明书的正确性的测试,主要测试软件功能与用户需求是否一致。
【问题4】
项目的验收主要包括了项目质量和项目文件的验收。不同的项目有不同的验收方式,有的按生命周期分阶段性验收,有的按照整体交付成果进行一次验收,有的按照项目验收的范围和特点制订验收方式。但不论哪种验收方式,质量验收和文件验收都是项目验收过程中必要的、不可分割的重要组成部分。
本题考核工程验收方面的知识,考生要熟悉相关的验收程序,如验收的几个前提条件,确认工程验收的基本条件、验收的程序等。在工程验收的准备阶段,应完成以下工作:
(1)督促承建方制订验收方案,整理竣工图纸及相关资料。
(2)协同业主、设计单位进行技术资料整理。
(3)组织人员编写竣工决算,起草工程验收报告的各种文件和表格。
(4)初验。
初验是在承建方自检的基础上,由业主、承建方、监理方组成项目初验小组,对工程各项工作进行全面检查,合格后才提出正式的竣工验收申请。
正式验收前,竣工申请和竣工验收报告均要经过评审,符合条件才可组织正式验收,正式验收的一般程序包括了8个步骤。本题中,竣工验收申请没有经过负责验收的单位的评审,总监理工程师根本没有权力在竣工验收申请上签字。
对于软件项目的验收,提交验收的软件项目必须具备以下的条件:
(1)已通过计算机软件确认测试评审。
(2)已通过系统测试评审。
(3)合同或合同附件规定的各类文档齐全。
(4)软件产品已经置于配置管理之下。
(5)合同或合同附件规定的其他验收条件。
对于信息网络的验收,必须符合以下几个条件:
(1)所有建设项目按照批准设计方案要求全部建成,并满足使用要求。
(2)各个分项工程全部初验合格。
(3)各种技术文档和验收资料完备,符合集成合同的内容。
(4)系统建设和数据处理符合信息安全的要求。
(5)外购的操作系统、数据库、中间件、应用软件和开发工具符合知识产权相关政策法规的要求。
(6)各种设备经加电测试运行,状态正常。
(7)经过用户同意。
10.33参考答案
【问题1】(6分)
项目建设前期中最主要的问题是《需求规格说明书》没有获得用户的认可就开始项目建设。如果刚开始的需求规格没有定义清楚,或未达成一致,则最终交付产品或服务时将很容易发生纠纷,造成不必要的损失。
《需求规格说明书》是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解而编制成的说明书,是需求分析阶段的成果,是整个开发工作的基础。项目经理应该充分与建设方项目经理进行协调,让甲乙双方达成需求上的一致认识。只有当《需求规格说明书》被确认后才能继续下一步的工作。其项目网络图如图10-3所示。
【问题2】(6分)
工作C的进度延期2天,总工期延期2天。
【问题3】(8分)
单元测试也就是模块测试。通常被放在编码阶段,由程序员完成这个模块后对他自己写的模块内代码进行测试,检查它是否实规了详细设计说明书中规定的模块功能和算法。单元测试是验证详细设计(各个模块)正确性的测试,通常由开发组成员的自测和交叉测试完成。一般的测试流程为:编写软件单元测试说明,设计测试用例,执行软件单元测试,编写软件单元测试报告。
单元测试成果有《软件单元测试说明》、《单元测试用例说明》、《软件单元测试报告》等。
【问题4】(5分)
不正确。项目监理方无权对验收申请予以签认,也无权进行后续的验收工作。应由上级主管部门或负责验收的单位收到竣工验收申请和竣工验收报告后,经过评审、确认符合竣工验收条件和标准,才可组织正式验收。