免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2010年上半年 信息系统项目管理师 上午试卷 综合知识
  第1题      
  知识点:   信息系统的生命周期   进程   开发阶段   生命周期   维护   系统评价   系统运行   运行与维护
  关键词:   进程   开发   可行性研究   生命周期   维护阶段   系统评价   系统设计   系统实施   信息系统   可行性   维护        章/节:   信息系统及其技术和开发方法       

 
信息系统的生命周期大致可分成4个阶段,即系统规划阶段、系统开发阶段系统运行维护阶段、系统更新阶段。其中以制定出信息系统的长期发展方案、决定信息系统在整个生命周期内的发展方向、规模和发展进程为主要目标的阶段是(1)。系统 调查和可行性研究、系统逻辑模型的建立、系统设计、系统实施和系统评价等工作属于(2)。
 
 
  A.  系统规划阶段
 
  B.  系统开发阶段
 
  C.  系统运行与维护阶段
 
  D.  系统更新阶段
 
 
 

 
  第1题    2009年下半年  
   48%
一般可以将信息系统的开发分成5个阶段,即总体规划阶段、系统分析阶段、系统设计阶段、系统实施阶段、系统运行和评价阶段,在各个..
  第2题    2016年上半年  
   39%
典型的信息系统项目开发的过程中,(2)阶段拟定了系统的目标、范围和要求,而系统各模块的算法一般在(3)阶段确定。
  第1题    2013年下半年  
   24%
信息系统的生命周期可以分为四个阶段:立项、开发、运维、消亡。企业的信息系统经常不可避免地会遇到系统更新改造、功能扩展,甚..
   知识点讲解    
   · 信息系统的生命周期    · 进程    · 开发阶段    · 生命周期    · 维护    · 系统评价    · 系统运行    · 运行与维护
 
       信息系统的生命周期
        信息系统的生命周期可以分为4个阶段:形成(立项)、开发、运维、消亡。4个阶段的内容分别如下:
        .形成(立项)阶段:即概念阶段或需求阶段,包括概念形成过程和需求分析过程。
        .开发阶段:可分为总体规划、系统分析、系统设计、系统实施及系统验收阶段。
        .运维阶段:信息系统通过验收,正式移交给用户以后,就进入运维阶段。
        .消亡阶段:信息系统不可能一劳永逸地运行下去,应当在信息系统建设的初期就注意系统消亡的条件和时机,以及由此而花费的成本。
        根据信息系统生命周期的概念,一般可将信息系统的开发分为5个阶段,即总体规划阶段、系统分析阶段、系统设计阶段、系统实施阶段、系统运行和评价阶段。每个阶段都有其明确的任务,任务完成后都将交付给下一阶段一定规格的文档,作为下一阶段开发的依据。这种开发过程在直观上就像一级一级的瀑布,所以系统开发生命周期也称为“瀑布模型”。如下图所示。
        
        信息系统的开发生命周期
        系统开发生命周期中各阶段工作量可用下图表示,从图中可以看出,系统实施阶段所需工作量最大。
        
        系统开发生命周期中各阶段工作量
        各阶段目标及其主要工作内容:
        1.总体规划阶段
        总体规划的作用可以分成以下几点:
        .指明组织中建立信息系统的范围和目标。
        .指导信息系统开发。
        .合理分配和利用各种资源。
        .通过规划过程找出企业中存在的问题。
        总体规划的内容主要包括:
        .信息系统的开发范围和目标。
        .信息系统开发的约束条件。
        .组织及其管理的现状、问题及解决方案。
        .信息系统的总体结构。
        .信息系统建设计划。
        .相关的信息技术发展预测等。
        2.系统分析阶段
        系统分析阶段的目标是为系统设计阶段提供系统的逻辑模型,系统设计阶段再根据这个逻辑模型进行物理方案的设计。
        系统分析阶段的内容包括组织结构及功能分析、业务流程分析、数据及数据流程分析、用户需求分析、新系统方案等。
        3.系统设计阶段
        系统设计阶段则是根据系统分析的结果,设计一套与改进后的管理体制及管理手段相适应的新的信息系统,为系统实施阶段的程序设计、调试提供依据。
        系统设计阶段的主要内容包括新系统总体结构设计、代码设计、数据库设计、输入输出设计、处理流程及模块功能设计、安全控制点设计等。
        4.系统实施阶段
        系统实施阶段是将系统设计阶段的结果在计算机上实现。将原来文字的设计方案转换成实际可执行的软件系统。
        系统实施阶段的主要任务包括:
        .按总体设计方案购置和安装计算机网络系统。
        .软件准备。
        .人力培训。
        .数据准备。
        .投入切换和试运行。
        5.系统运行和评价阶段
        信息系统在实施阶段结束之后,就进入到系统运行和评价阶段。只要系统正式运行,系统的维护工作就将伴随着信息系统的整个生命周期。维护工作主要是对应用系统、数据、代码,以及硬件和网络设备进行维护。针对软件维护的不同性质,系统维护可以划分成4种类型:纠错性维护、适应性维护、完善性维护和预防性维护。
        .纠错性维护:指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
        .适应性维护:指使应用软件适应信息技术变化和管理需求变化而进行的修改。
        .完善性维护:是为扩充功能和改善性能而进行的修改,主要是指对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。
        .预防性维护:是为了改进应用软件的可靠性和可维护性,为了适应未来的软硬件环境的变化,而主动增加的预防性的新功能,以使应用系统适应各类变化而不被淘汰。
        当系统运行一段时间之后,随着对系统应用的不断深入和应用环境的发展变化,有必要对系统进行评价。系统评价的目的是检查系统是否达到预期目的、是否满足用户要求和系统的各种资源利用效率,提出系统改进和发展方向。系统的评价主要针对两个方面,即系统的性能指标和经济指标。具体地说,就是对系统运行效率、系统运行及维护的费用、系统可靠性、系统的输入输出、系统内信息反馈情况和系统运行平台等进行评价。
 
       进程
        简单而言,一个进程就是一个正在运行的程序。一般来说,一个进程至少应该包括以下几个方面的内容。
        .相应的程序:进程既然是一个正在运行的程序,当然需要有相应程序的代码和数据。
        .CPU上下文:指程序在运行时,CPU中各种寄存器的当前值,包括:程序计数器,用于记录将要取出的指令的地址;程序状态字,用于记录处理器的运行状态信息;通用寄存器,用于存放数据或地址;段寄存器,用于存放程序中各个段的地址;栈指针寄存器,用于记录栈顶的当前位置。
        .一组系统资源:包括操作系统用来管理进程的数据结构、进程的内存地址空间、进程正在使用的文件等。
        进程有动态性、独立性和并发行三个特性。
        (1)动态性。进程是一个正在运行的程序,而程序的运行状态是在不断地变化的。例如,当一个程序在运行的时候,每执行完一条指令,PC寄存器的值就会增加,指向下一条即将执行的指令。而CPU中用来存放数据和地址的那些通用寄存器,它们的值肯定也不断地变化。另外,堆和栈的内容也在不断地变化,每当发生一次函数调用时,就会在栈中分配一块空间,用来存放此次函数调用的参数和局部变量。而当函数调用结束后,这块栈空间就会被释放掉。
        (2)独立性。一个进程是一个独立的实体,是计算机系统资源的使用单位。每个进程都有自己的运行上下文和内部状态,在它运行的时候独立于其他的进程。
        (3)并发性。从宏观上来看,在系统中同时有多个进程存在,它们相互独立地运行。
        下图表示四个进程A、B、C、D在系统中并发地运行。从中可以看出,虽然从宏观上来说,这四个进程都是在系统中运行,但从微观上来看,在任何一个特定的时刻,只有一个进程在CPU上运行。从时间上来看,开始是进程A在运行,然后是进程B在运行,然后是进程C和进程D。接下来又轮到了进程A去运行。因此,在单CPU的情形下,所谓的并发性,指的是宏观上并发运行,而微观上还是顺序运行,各个进程轮流去使用CPU资源。
        
        四个进程在并发运行
        在具体实现上,以CPU中的程序计数器PC为例,真正物理上的PC寄存器只有一个。当四个进程在轮流执行时,PC取值的运动轨迹是先在进程A内部流动,然后再到进程B的内部流动,再到进程C和D。从进程的独立性角度来说,每个进程都有“自己”独立的PC寄存器,即逻辑上的PC寄存器,它们的取值相互独立、互不影响。所谓的逻辑PC,其实就是一个内存变量。例如,在上图中,当进程A要执行的时候,就把A的逻辑PC的值拷贝到物理PC中,然后开始运行。当轮到B运行的时候,先把物理PC的当前值保存到A的逻辑PC中,然后再把B的逻辑PC的值装入到物理PC中,即可运行。这样就实现了各个进程的轮流运行。
 
       开发阶段
               单元测试
               单元测试又称模块测试,是针对软件设计的最小单位——程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。
               . 单元测试的内容。
               在进行单元测试时,测试者需要依据详细设计说明书和源程序清单,了解该模块的I/O条件和模块的逻辑结构,主要采用白盒测试的测试用例,辅之以黑盒测试的测试用例,使之对任何合理的输入和不合理的输入,都能鉴别和响应。这要求对所有的局部的和全局的数据结构、外部接口和程序代码的关键部分,都要进行桌面检查和严格的代码审查。
               在单元测试中进行的测试工作如下图所示,需要在五个方面对所测模块进行检查。
               
               单元测试的工作
               ①模块接口测试。
               在单元测试的开始,应对通过所测模块的数据流进行测试。如果数据不能正确地输入和输出,就谈不上进行其他测试。为此,对模块接口可能需要如下的测试项目:调用所测模块时的输入参数与模块的形式参数在个数、属性、顺序上是否匹配;所测模块调用子模块时,它输入给子模块的参数与子模块中的形式参数在个数、属性、顺序上是否匹配;是否修改了只作输入用的形式参数;输出给标准函数的参数在个数、属性、顺序上是否正确;全局量的定义在各模块中是否一致;限制是否通过形式参数来传送。
               当模块通过外部设备进行输入/输出操作时,必须附加如下的测试项目:文件属性是否正确;OPEN语句与CLOSE语句是否正确;规定的I/O格式说明与I/O语句是否匹配;缓冲区容量与记录长度是否匹配;在进行读写操作之前是否打开了文件;在结束文件处理时是否关闭了文件;正文书写/输入错误,以及I/O错误是否检查并做了处理。
               ②局部数据结构测试。
               模块的局部数据结构是最常见的错误来源,应设计测试用例以检查以下各种错误:不正确或不一致的数据类型说明;使用尚未赋值或尚未初始化的变量;错误的初始值或错误的缺省值;变量名拼写错或书写错;不一致的数据类型。可能的话,除局部数据之外的全局数据对模块的影响也需要查清。
               ③路径测试。
               由于通常不可能做到穷举测试,所以在单元测试期间要选择适当的测试用例,对模块中重要的执行路径进行测试。应当设计测试用例查找由于错误的计算、不正确的比较或不正常的控制流而导致的错误。对基本执行路径和循环进行测试,可以发现大量的路径错误。
               常见的不正确计算有:运算的优先次序不正确或误解了运算的优先次序;运算的方式错,即运算的对象彼此在类型上不相容;算法错;初始化不正确;运算精度不够;表达式的符号表示不正确。
               常见的比较和控制流错误有:不同数据类型的相互比较;不正确的逻辑运算符或优先次序;因浮点数运算精度问题而造成的两值比较不等;关系表达式中不正确的变量和比较符;“差1”错,即不正确地多循环一次或少循环一次;错误的或不可能的循环中止条件;当遇到发散的迭代时不能中止的循环;不适当地修改了循环变量等。
               ④错误处理测试。
               比较完善的模块设计要求能预见出错的条件,并设置适当的出错处理,以便在一旦程序出错时,能对出错程序重做安排,保证其逻辑上的正确性。这种出错处理也应当是模块功能的一部分。若出现下列情况之一,则表明模块的错误处理功能包含有错误或缺陷:出错的描述难以理解;出错的描述不足以对错误定位,不足以确定出错的原因;显示的错误与实际的错误不符;对错误条件的处理不正确;在对错误进行处理之前,错误条件已经引起系统的干预等。
               ⑤边界测试。
               在边界上出现错误是常见的。例如,在一段程序内有一个n次循环,当到达第n次重复时就可能会出错。另外,在取最大值或最小值时也容易出错。因此,要特别注意数据流、控制流中刚好等于、大于或小于确定的比较值时出错的可能性。对这些地方要仔细地选择测试用例,认真加以测试。
               此外,如果对模块运行时间有要求的话,还要专门进行关键路径测试,以确定最坏情况下和平均意义下影响模块运行时间的因素。这类信息对进行性能评价是十分有用的。
               虽然模块测试通常是由编写程序的人自己完成的,但是项目负责人应当关心测试的结果。所有测试用例和测试结果都是模块开发的重要资料,必须妥善保存。
               总之,模块测试针对的程序规模较小,易于查错;发现错误后容易确定错误的位置,易于排错,同时多个模块可以并行测试。做好模块测试可为后续的测试打下良好的基础。
               . 单元测试的步骤。
               通常单元测试是在编码阶段进行的。在源程序代码编制完成,经过评审和验证,确认没有语法错误之后,就开始进行单元测试的测试用例设计。利用设计文档,设计可以验证程序功能、找出程序错误的多个测试用例。对于每一组输入,应有预期的正确结果。
               模块并不是一个独立的程序,在考虑测试模块时,同时要考虑它和外界的联系,用一些辅助模块去模拟与所测模块相联系的其他模块。这些辅助模块分为两种:
               驱动模块(driver)——相当于所测模块的主程序。它接收测试数据,把这些数据传送给所测模块,最后再输出实测结果。
               桩模块(stub)——也叫做存根模块。用以代替所测模块调用的子模块。桩模块可以做少量的数据操作,不需要把子模块所有功能都带进来,但不允许什么事情也不做。
               所测模块、与它相关的驱动模块及桩模块共同构成了一个“测试环境”,如下图所示。驱动模块和桩模块的编写会给测试带来额外的开销。因为它们在软件交付时不作为产品的一部分一同交付,而且它们的编写需要一定的工作量。特别是桩模块,不能只简单地给出“曾经进入”的信息。为了能够正确地测试软件,桩模块可能需要模拟实际子模块的功能,这样,桩模块的建立就不是很轻松了。
               
               单元测试的测试环境
               模块的内聚程度高,可以简化单元测试过程。如果每一个模块只完成一种功能,则需要的测试用例数目将明显减少,模块中的错误也容易被预测和发现。
               当然,如果一个模块要完成多种功能,且以程序包(package)的形式出现的也不少见,这时可以将这个模块看成由几个小程序组成。必须对其中的每个小程序先进行单元测试要做的工作,对关键模块还要做性能测试。对支持某些标准规程的程序,更要着手进行互联测试。有人把这种情况特别称为模块测试,以区别单元测试。
               集成测试
               集成测试也叫做组装测试或联合测试。通常,在单元测试的基础上,需要将所有模块按照概要设计说明书和详细设计说明书的要求进行组装。
               . 组装时需要考虑的问题。
               ①在把各个模块连接起来的时候,穿越模块接口的数据是否会丢失;
               ②一个模块的功能是否会对另一个模块的功能产生不利的影响;
               ③各个子功能组合起来,能否达到预期要求的父功能;
               ④全局数据结构是否有问题;
               ⑤单个模块的误差累积起来,是否会放大,以至达到不能接受的程度。
               因此,在单元测试的同时可进行集成测试,发现并排除在模块连接中可能出现的问题,最终构成要求的软件系统。
               子系统的集成测试称为部件测试,它所做的工作是要找出组装后的子系统与系统需求规格说明之间的不一致。
               选择什么方式把模块组装起来形成一个可运行的系统,直接影响到模块测试用例的形式、所用测试工具的类型、模块编号的次序和测试的次序以及生成测试用例的费用和调试的费用。
               . 模块组装成为系统的方式。
               模块组装成为系统的方式有两种:一次性组装方式和增殖式组装方式。
               ①一次性组装方式(big bang)。
               它是一种非增殖式组装方式,也叫做整体拼装。使用这种方式,首先对每个模块分别进行模块测试,再把所有模块组装在一起进行测试,最终得到要求的软件系统。例如,有一个模块系统结构,如下图(a)所示。其单元测试和组装顺序如下图(b)所示。
               
               一次性组装方式
               在如上图(b)中,模块d1,d2,d3,d4,d5是对各个模块做单元测试时建立的驱动模块,s1,s2,s3,s4,s5是为单元测试而建立的桩模块。这种一次性组装方式试图在辅助模块的协助下,在分别完成模块单元测试的基础上,将所测模块连接起来进行测试。但是由于程序中不可避免地存在涉及模块间接口、全局数据结构等方面的问题,所以一次试运行成功的可能性并不很大。其结果是,发现有错误,却茫然找不到原因。查错和改错都会遇到困难。
               ②增殖式组装方式。
               这种组装方式又称渐增式组装,是首先对一个个模块进行模块测试,然后将这些模块逐步组装成较大的系统,在组装的过程中边连接边测试,以发现连接过程中产生的问题。最后通过增殖逐步组装成为要求的软件系统。
               . 自顶向下的增殖方式。这种组装方式是将模块按系统程序结构,沿控制层次自顶向下进行组装。其步骤如下:首先以主模块作为所测模块兼驱动模块,所有直属于主模块的下属模块全部用桩模块代替,对主模块进行测试。再采用深度优先(如下图所示为自顶向下的增殖方式)或广度优先的策略,用实际模块替换相应的桩模块,再用桩模块代替它们的直接下属模块,与已测试的模块或子系统组装成新的子系统。然后,进行回归测试(即重新执行以前做过的全部测试或部分测试),排除组装过程中引入新的错误的可能。最后,判断是否所有的模块都已组装到系统中。是,则结束测试;否则,转到B去执行。
               
               自顶向下的增殖方式
               自顶向下的增殖方式在测试过程中较早地验证了主要的控制和判断点。在一个功能划分合理的程序模块结构中,判断常常出现在较高的层次里,因而,能够较早地遇到这种问题。如果主要控制有问题,尽早发现它能够减少以后的返工,这是十分必要的。如果选用按深度方向组装的方式,可以首先实现和验证一个完整的软件功能,可先对逻辑输入的分支进行组装和测试,检查和克服潜藏的错误和缺陷,验证其功能的正确性,就为其后对主要加工分支的组装和测试提供了保证。此外,功能可行性较早地得到证实,还能够增强开发者和用户成功的信心。
               . 自底向上的增殖方式。这种组装方式是从程序模块结构的最底层模块开始组装和测试。因为模块是自底向上进行组装的,对于一个给定层次的模块,它的子模块(包括子模块的所有下属模块)已经组装并测试完成,所以不再需要桩模块。在模块的测试过程中需要从子模块得到的信息可以通过直接运行子模块得到。自底向上增殖的步骤如下:首先由驱动模块控制最底层模块的并行测试;也可以把最底层模块组合成实现某一特定软件功能的簇,由驱动模块控制它进行测试。再用实际模块代替驱动模块,与它已测试的直属子模块组装成为子系统。然后,为子系统配备驱动模块,进行新的测试。最后判断是否已组装到达主模块。是,则结束测试;否则,执行B。
               以如下图一(a)所示的一次性组装方式系统结构为例,可以用如下图二说明自底向上组装和测试的顺序。
               
               一次性组装方式
               
               自底向上的增殖方式
               . 混合增殖式测试。自顶向下增殖的方式和自底向上增殖的方式各有优缺点。一般来讲,一种方式的优点是另一种方式的缺点。
               自顶向下增殖方式的缺点是需要建立桩模块。要使桩模块能够模拟实际子模块的功能十分困难,因为,桩模块在接收了所测模块发送的信息后,需要按照它所代替的实际子模块功能返回应该回送的信息,这必将增加建立桩模块的复杂度,而且导致增加一些附加的测试。同时,涉及复杂算法和真正输入/输出的模块一般在底层,它们是最容易出问题的模块,到组装和测试的后期才遇到这些模块,一旦发现问题,就会导致过多的回归测试。而自顶向下增殖方式的优点是能够较早地发现主要控制方面的问题。
               自底向上增殖方式的缺点是“程序一直未能作为一个实体存在,直到最后一个模块加上去后才形成一个实体”。就是说,在自底向上组装和测试的过程中,对主要的控制直到最后才接触到。这种方式的优点是不需要桩模块,而建立驱动模块一般比建立桩模块容易,同时由于涉及到复杂算法和真正输入/输出的模块最先得到组装和测试,可以把最容易出问题的部分在早期解决。此外自底向上增殖的方式可以实施多个模块的并行测试,提高测试效率。因此,通常是把以上两种方式结合起来进行组装和测试。
               在进行集成测试时,测试者应当确定关键模块,对这些关键模块及早进行测试。关键模块至少应具有以下几种特征之一:
               . 满足某些软件需求;
               . 在程序的模块结构中位于较高的层次(高层控制模块);
               . 较复杂、较易发生错误;
               . 有明确定义的性能要求。
               在做回归测试时,也应该集中测试关键模块的功能。
               . 集成测试的组织和实施。
               集成测试是一种正规测试过程,必须精心计划,并与单元测试的完成时间协调起来。在制定测试计划时,应考虑如下因素:
               ①采用何种系统组装方法来进行集成测试。
               ②集成测试过程中连接各个模块的顺序。
               ③模块代码编制和测试进度是否与集成测试的顺序一致。
               ④测试过程中是否需要专门的硬件设备。
               解决了上述问题之后,就可以列出各个模块的编制、测试计划表,标明每个模块单元测试完成的日期、首次集成测试的日期、集成测试全部完成的日期、以及需要的测试用例和所期望的测试结果。
               在缺少软件测试所需要的硬件设备时,应检查该硬件的交付日期是否与集成测试计划一致。例如,若测试需要数字化仪和绘图仪,则相应的测试应安排在这些设备能够投入使用之时,并要为硬件的安装和交付使用保留一段时间,以留下时间余量。此外,在测试计划中需要考虑测试所需软件(驱动模块、桩模块、测试用例生成程序等)的准备情况。
               . 集成测试完成的标志。
               集成测试完成的标志主要有以下几项。
               ①成功地执行了测试计划中规定的所有集成测试。
               ②修正了所发现的错误。
               ③测试结果通过了专门小组的评审。
               集成测试应由专门的测试小组来进行,测试小组由有经验的系统设计人员和程序员组成。整个测试活动要在评审人员出席的情况下进行。
               在完成预定的集成测试工作之后,测试小组应负责对测试结果进行整理、分析,形成测试报告。测试报告中要记录实际的测试结果在测试中发现的问题、解决这些问题的方法以及解决之后再次测试的结果。此外还应提出目前不能解决、还需要管理人员和开发人员注意的一些问题,提供测试评审和最终决策,以提出处理意见。
               集成测试需要提交的文档有集成测试计划、集成测试规格说明和集成测试分析报告。
               确认测试
               确认测试的任务是验证软件的功能和性能及其他特性是否与用户的要求一致。对软件的功能和性能要求在软件需求规格说明中明确规定。确认测试一般包括有效性测试和软件配置复查,确认测试一般由独立的第三方测试机构进行。
               . 进行有效性测试。
               有效性测试是在模拟的环境下,运用黑盒测试的方法,验证所测软件是否满足需求规格说明书列出的需求。为此,需要制定测试计划、测试步骤以及具体的测试用例。通过实施预定的测试计划和测试步骤,确定软件的特性是否与需求相符,确保所有的软件功能需求都能得到满足,所有的软件性能需求都能达到。所有的文档都是正确且便于使用的。同时,对其他软件需求,例如可移植性、可靠性、易用性、兼容性、可维护性等,也都要进行测试,确认是否满足。
               在全部软件测试的测试用例运行完后,所有的测试结果可以分为两类。
               ①测试结果与预期的结果相符。这说明软件的这部分功能或性能特征与需求规格说明书相符合,从而接受了这部分程序。
               ②测试结果与预期的结果不符。这说明软件的这部分功能或性能特征与需求规格说明不一致,因此要为它提交一份问题报告。
               . 软件配置复查。
               软件配置复查的目的是保证软件配置的所有成分都齐全,各方面的质量都符合要求,具有维护阶段所必须的细节,而且已经编排好分类的目录。
               在确认测试的过程中,还应当严格遵守用户手册和操作手册中规定的使用步骤,以便检查文档资料的完整性和正确性。
               系统测试
               系统测试是将通过集成测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际或者模拟运行(使用)环境下,对计算机系统进行一系列测试。
               系统测试的目的在于通过与系统的需求定义作比较,发现软件与系统定义不符合或与之矛盾的地方。
               验收测试
               验收测试是以用户为主的测试。软件开发人员和质量保证人员也应参加。由用户参加设计测试用例。使用用户界面输入测试数据,并分析测试的输出结果。一般使用生产中的实际数据进行测试。
               目前在国内实际软件开发,特别是系统集成的过程中,验收测试往往在系统测试完成后、项目最终交付前进行。验收测试的测试计划、测试方案与测试案例一般由开发方制定,由用户方与监理方联合进行评审。验收小组由开发方、用户方、监理方代表、主管单位领导及行业专家构成。与确认测试及系统测试不同的是,验收测试往往不是对系统的全覆盖测试,而是针对用户的核心业务流程进行的测试;同时,测试的执行人员也不是开发方的测试组成员,而是由用户方的使用人员完成。
               近年来,越来越多的开发方及用户方认识到对项目进行最终验收测试的重要意义,因此,由第三方完成的专业化全覆盖型技术测试得到了广泛应用。由专门从事测试工作的第三方机构,根据系统的需求分析、用户手册、培训手册等,在开发人员及最终使用人员的配合下,完成对系统全面的测试工作。
 
       生命周期
        IT服务生命周期由规划设计(Planning&Design)、部署实施(Implementing)、服务运营(Operation)、持续改进(Improvement)和监督管理(Supervision)5个阶段组成,简称“PIOIS”。
        (1)规划设计:从客户业务战略出发,以需求为中心,参照ITSS对IT服务进行全面系统的战略规划和设计,为IT服务的部署实施做好准备,以确保提供满足客户需求的IT服务。
        (2)部署实施:在规划设计基础上,依据ITSS建立管理体系、部署专用工具及服务解决方案。
        (3)服务运营:根据IT服务部署情况,依据ITSS,采用过程方法,全面管理基础设施、服务流程、人员和业务连续性,实现业务运营与IT服务运营的全面融合。
        (4)持续改进:根据IT服务运营的实际情况,定期评审IT服务满足业务运营的情况,以及IT服务本身存在的缺陷,提出改进策略和方案,并对IT服务进行重新规划设计和部署实施,以提高IT服务质量。
        (5)监督管理:本阶段主要依据ITSS对IT服务质量进行评价,并对IT服务供方的服务过程、交付结果实施监督和绩效评估。
 
       维护
        维护阶段是软件生存期中时间最长的阶段。软件一旦交付正式投入运行后便进入软件维护阶段。该阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。每一项维护活动都应该准确地记录下来,作为正式的文档资料加以保存。
 
       系统评价
               系统评价概述
               系统评价是对新开发或改建的系统,根据系统目标,用系统分析的方法,从技术、经济、社会、生态等方面对系统进行评审。一般分为广义和狭义两种。广义的系统评价是指从系统开发的一开始到结束的每一阶段都需要进行评价。狭义的系统评价则是指在系统建成并投入运行之后所进行的全面、综合的评价。
               按评价的时间与系统所处的阶段的关系,又可从总体上把广义的系统评价分成立项评价、中期评价和结项评价。
               (1)立项评价。指系统方案在系统开发前的预评价,即系统规划阶段中的可行性研究。评价的目的是决定是否立项进行开发,评价的内容是分析当前开发新系统的条件是否具备,明确新系统目标实现的重要性和可能性,主要包括技术上的可行性、经济上的可行性、管理上的可行性和开发环境的可行性等方面。由于事前评价所用的参数大都是不确定的,所以评价的结论具有一定的风险性。
               (2)中期评价。项目中期评价包含两种含义,一是指项目方案在实施过程中,因外部环境出现重大变化,例如市场需求变化、竞争性技术或更完美的替代系统的出现,或者发现原先设计有重大失误等,需要对项目的方案进行重新评估,以决定是继续执行还是终止该方案;另一种含义也可称为阶段评估,是指在系统开发正常情况下,对系统分析、系统设计、系统实施阶段的阶段性成果进行评估,由于一般都将阶段性成果的提交视为系统建设的里程碑,所以,阶段评估又可叫里程碑式评价。
               (3)结项评价。系统的建设是一个项目,是项目就需要有终结时间。结项评价是指项目准备结束时对系统的评价,一般是指在系统投入正式运行以后,为了了解系统是否达到预期的目的和要求而对系统运行的实际效果进行的综合评价。所以,结项评价又是狭义的系统评价。系统项目的鉴定是结项评价的一种正规的形式。结项评价的主要内容包括系统性能评价、系统的经济效益评价以及企业管理效率提高、管理水平改善、管理人员劳动强度减轻等间接效果。通过结项评价,用户可以了解系统的质量和效果,检查系统是否符合预期的目的和要求;开发人员可以总结开发工作的经验、教训,这对今后的工作十分有益。
               系统评价的指标
               可以从以下几方面综合考虑,建立起一套指标体系理论框架:
               (1)从系统的组成部分出发,系统是一个由人机共同组成的系统,所以可以按照运行效果和用户需求(人)、系统质量和技术条件(机)这两条线索构造指标。
               (2)从系统的评价对象出发,对于开发方来说,他们所关心的是系统质量和技术水平;对于用户方而言,关心的是用户需求和运行质量;系统外部环境则主要通过社会效益指标来反映。
               (3)从经济学角度出发,分别按系统成本、系统效益和财务指标等3条线索建立指标。
 
       系统运行
               系统管理分类
               IT系统管理工作主要是优化IT部门的各类管理流程,并保证能够按照一定的服务级别,为业务部门(客户)高质量、低成本地提供IT服务。IT系统管理工作可以按照以下两个标准予以分类。
                      按系统类型分类
                      (1)信息系统,企业的信息处理基础平台,直接面向业务部门(客户),包括办公自动化系统、企业资源计划(ERP)、客户关系管理(CRM)、供应链管理(SCM)、数据仓库系统(Date Warehousing)、知识管理平台(KM)等。
                      (2)网络系统,作为企业的基础架构,是其他方面的核心支撑平台。包括企业内部网(Intranet)、IP地址管理、广域网(ISDN、虚拟专用网)、远程拨号系统等。
                      (3)运作系统,作为企业IT运行管理的各类系统,是IT部门的核心管理平台。包括备份/恢复系统、入侵检测、性能监控、安全管理、服务级别管理、帮助服务台、作业调度等。
                      (4)设施及设备,设施及设备管理是为了保证计算机处于适合其连续工作的环境中,并把灾难(人为或自然的)的影响降到最低限度。包括专门用来放置计算机设备的设施或房间。
                      对IT资产(计算机设备、通信设备、个人计算机和局域网设备)的恰当的环境保护;有效的环境控制机制:火灾探测和灭火系统、湿度控制系统、双层地板,隐藏的线路铺设、安全设置水管位置,使其远离敏感设备、以及不间断电源和后备电力供应等。
                      按流程类型分类
                      (1)侧重于IT部门的管理,从而保证能够高质量地为业务部门(客户)提供IT服务。这一部分主要是对公司整个IT活动的管理,包括IT财务管理、服务级别管理、IT资源管理、能力管理、系统安全管理、新系统转换、系统评价等职能。
                      (2)侧重于业务部门的IT支持及日常作业,从而保证业务部门(客户)IT服务的可用性和持续性。这一部分主要是业务部门IT支持服务,包括IT日常作业管理、帮助服务台管理、故障管理及用户支持、性能及可用性保障等。
                      (3)侧重于IT基础设施建设,主要是建设企业的局域网、广域网、Web架构、Internet连接等。
               系统管理规范化
               系统管理的规范化涉及到人员职责、操作流程等方面标准的制定,并进行有效的标准化。企业IT部门除了IT部门组织结构及职责之外,还应该详细制定各类运作管理规章制度,主要包括:日常作业调度手册、系统备份及恢复手册、性能监控及优化手册、输出管理手册、帮助服务台运作手册、常见故障处理方法、终端用户计算机使用制度等与用户息息相关的IT支持作业方面的规范制度。此外,还包括服务级别管理手册、安全管理制度、IT财务管理制度、IT服务计费及成本核算、IT资源及配置管理、新系统转换流程、IT能力规划管理等由IT部门执行的以提供高质量IT服务为目的的管理流程。
               系统运作报告
               系统运行过程中的关键操作、非正常操作、故障、性能监控、安全审计等信息,应该实时或随后形成系统运作报告,并进行分析以改进系统管理水平。
               是否有流程保证对所有不属于标准操作的操作性问题给予记录(在问题管理系统内)、分析和及时处理?
                      系统日常操作日志
                      系统日志应该记录足以形成数据的信息,为关键性的运作提供审核追踪记录,并且保存合理的时间段。利用日志工具定期对日志进行检查,以便监控例外情况并发现非正常的操作、未经授权的活动、作业完成情况、存储状况、CPU、内存利用水平等。
                      性能/能力规划报告
                      企业需要了解其IT能力能否满足其业务需要,因此它需要了解系统性能、能力和成本的历史数据,定期形成月度、年度性能报告,并进行趋势分析和资源限制评估,在此基础之上增加或调整其IT能力。
                      性能监控工具应该主动地监控、测量和报告系统的性能,包括平均响应时间、每日交易数、平均无故障时间、CPU、存储器等的使用状况、网络性能等,从而可以有预见性地响应变化的业务需求。
                      故障管理报告
                      企业应定期产生有关问题的统计数据,这些统计数据包括:事故出现次数、受影响的客户数、解决事故所需时间和成本、业务损失成本等,可以供管理层对反复发生的问题进行根本原因的分析,并寻找改进的机会。
                      另外,对于每次故障处理应该进行数据记录、归类,作为基础,它应包括以下内容。
                      .目录,确定与故障相关联的领域,比如硬件、软件等。
                      .影响度,故障对业务流程的影响程度。
                      .紧迫性,故障需要得到解决的紧急程度。
                      .优先级,综合考虑影响度、紧迫性、风险和可用资源后得出的解决故障的先后顺序。
                      .解决方法,故障解决的流程、处理方法。
                      这样有利于使用知识管理系统来协助解决问题。
                      安全审计日志
                      为了能够实时监测、记录和分析网络上和用户系统中发生的各类与安全有关的事件(如网络入侵、内部资料窃取、泄密行为等),并阻断严重的违规行为,就需要安全审计跟踪机制来实现在跟踪中记录有关安全的信息。审计是记录用户使用计算机网络系统进行所有活动的过程,它是提高安全性的重要工具。
                      审计记录应包括以下信息:事件发生的时间和地点;引发事件的用户;事件的类型;事件成功与否。常见的审计记录可能包括:活动的用户账号和访问特权;用户的活动情况,包括可疑的行为;未授权和未成功的访问企图;敏感命令的运行等。
                      系统运作报告使对IT的整个运行状况的评价得以实现,IT报告应具备涵盖所有IT领域的关键业绩指标,例如风险及问题、财务状况、系统利用率、系统性能、系统故障时间、服务级别执行情况、安全审计等,这也为IT运作绩效的改进提供了基础。
 
       运行与维护
        维护阶段的关键任务是,通过各种必要的维护活动使系统持久地满足用户的需要。通常有改正性、适应性、完善性和预防性四类维护活动。每一项维护活动都应该准确地记录下来,作为正式的文档资料加以保存。
   题号导航      2010年上半年 信息系统项目管理师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第1题    在手机中做本题