免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2017年上半年 信息系统项目管理师 上午试卷 综合知识
  第12题      
  知识点:   软件质量保证及质量评价   分析技术   开发标准   评审   软件工程   软件工程术语
  关键词:   静态分析   开发   评审   信息技术软件工程术语   软件工程   软件工程术语        章/节:   信息系统及其技术和开发方法       

 
依据GB/T 11457-2006《信息技术软件工程术语》,()是一种静态分析技术评审过程,在此过程中,设计者或程序员引导开发组的成员通读已书写的设计或者代码,其他成员负责提出问题,并对有关技术风格、风格、可能的错误、是否违背开发标准等方面进行评论。
 
 
  A.  走查
 
  B.  审计
 
  C.  认证
 
  D.  鉴定
 
 
 

 
  第9题    2017年上半年  
   57%
软件工程中,()的目的是评价软件产品,以确定其对使用意图的适合性。
  第48题    2009年上半年  
   37%
软件质量强调三个方面的内容:(48)是测试软件质量的基础;(49)定义了一组用于指导软件开发方式的准则;(50)间接定义了用户..
  第50题    2009年上半年  
   60%
软件质量强调三个方面的内容:(48)是测试软件质量的基础;(49)定义了一组用于指导软件开发方式的准则;(50)间接定义了用户..
   知识点讲解    
   · 软件质量保证及质量评价    · 分析技术    · 开发标准    · 评审    · 软件工程    · 软件工程术语
 
       软件质量保证及质量评价
        软件质量定义
        软件“产品质量”国际标准ISO 9126定义的软件质量包括“内部质量”、“外部质量”和“使用质量”三部分。此质量模型中又将内部质量和外部质量分成6个质量特性,分别为功能性、可靠性、易用性、效率、可维护性和可移植性;将使用质量分成4个质量属性,分别为有效性、生产性、安全性、满意度。
        McCall质量模型是1979年由McCall等人提出的软件质量模型。它将软件质量的概念建立在11个质量特性之上,而这些质量特性分别是面向软件产品的运行、修正和转移的,如下图所示。
        
        McCall质量模型
        软件质量管理过程包括质量保证过程、验证过程、确认过程、评审过程、审计过程等。
        软件质量保证
        软件质量保证是指为保证软件系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的一组活动。
        验证与确认
        验证是确定软件开发过程中的一个给定阶段的产品是否达到前面阶段确立的需求的过程。
        确认是指在软件开发过程结束时对软件进行评价,以确认它和需求是否相一致的过程。
        评审与审计
        评审与审计过程包括管理评审、技术评审、检查、走查、审计等。
        管理评审的目的是监控进展,决定计划和进度的状态,确认需求及其系统分配,或评价用于达到目标的管理方法的有效性。
        技术评审的目的是评价软件产品,识别其和规格说明及标准的差异,并向管理提供证据,以表明产品是否满足规格说明并遵从标准。
        检查的目的是检测和识别软件产品的异常。一次检查通常针对产品的一个相对小的部分。发现的任何异常都要记录到文档中,并提交。
        走查类似于检查,但通常不那么正式,走查主要由同事评审其工作,以作为一种保障技术。
        软件审计的目的是提供软件产品和过程对于可应用的规则、标准、指南、计划和流程的遵从性的独立评价。审计是正式组织的活动,识别违例情况,并产生报告,采取更正性行动。
 
       分析技术
        在整个项目生命周期中,干系人的参与对项目的成功至关重要。应该比较所有干系人的当前参与程度与项目成功所需的参与程度,通过分析识别出当前参与程度与所需参与程度之间的差距,以便制订行动和沟通方案消除差距。
        干系人的参与程度可分为如下类别:
        .不了解:对项目和潜在影响不了解。
        .抵制:了解项目和潜在影响,抵制变更。
        .中立:了解项目,既不支持,也不反对。
        .支持:了解项目和潜在影响,支持变更。
        .领导:了解项目和潜在影响,积极致力于保证项目成功。
 
       开发标准
        软件工程的开发标准包含三个,分别是《GB/T 8566—2007信息技术软件生存周期过程》《GB/T 15853—1995软件支持环境》和《GB/T 14079—1993软件维护指南》。下面对这三个标准分别进行简要说明。
               软件生存周期
               《GB/T 8566—2007信息技术软件生存周期过程》为软件生存周期过程建立了一个公共框架,以供软件产业界使用,它包括在含有软件的系统、独立软件产品和软件服务的获取期间以及在软件产品的供应、运行和维护期间需应用的过程、活动和任务。
               该标准把软件生存周期中可能执行的活动分为五个基本过程、九个支持过程和七个组织过程,每一生存周期过程划分为一组活动,每一个活动进一步划分为任务。
               五个基本过程:
               .获取过程:为需方而定义的活动,包括启动、招标、合同、对供方监督与验收等。
               .供应过程:为供方而定义的活动,包括启动、准备投标、签订合同、编制计划、执行、交付和完成。
               .开发过程:为开发方而定义的活动,包括需求、设计、编码、测试、安装、验收。
               .运作过程:为操作方而定义的活动,包括运行测试、系统运行、用户支持。
               .维护过程:为维护方而定义的活动,包括问题和修改分析、修改实现、维护评审/验收、迁移、软件退役。
               九个支持过程:
               .文档编制过程。
               .配管管理过程。
               .质量保证过程。
               .验证过程:确定软件产品是否满足在以前的活动中施加于它们的要求和条件的过程,包括合同验证、过程验证、需求验证、设计验证、编码验证、集成验证、文档验证。
               .确认过程:确定需求和最终的、已建成的系统或软件产品是否满足特定的预期用途的过程。
               .联合评审过程:评价某个项目中一项活动的状态和产品,项目管理评审,技术评审。
               .审核过程:在适当时确定与需求、计划和合同的符合性。
               .问题解决过程。
               .易用性过程。
               七个组织过程:
               .管理过程:为生存周期过程中的管理包括项目管理而定义的基本活动。
               .基础设施过程:为建立生存周期过程基础结构而定义的基本活动。
               .改进过程。
               .人力资源过程。
               .资产管理过程。
               .重用大纲管理过程:为组织的重用大纲主管而定义的活动,包括启动、领域评估、重用评估、策划、执行和控制、评审和评价。
               .领域工程过程:领域工程师的活动和任务,包括领域分析、领域设计、资产供应、资产维护。
               软件支持环境
               《GB/T 15853—1995软件支持环境》规定了软件支持环境的基本要求,软件开发支持环境的内容及实现方法,以及对支持部门支持能力的具体要求。
               软件支持环境可以分为如下两种类型:
               .软件开发支持环境:由软件承办单位确定、并经任务委托单位认可的资源,用于支持合同项目中的软件需求。
               .软件生存周期支持环境:由软件生存周期部门使用的(属于任务委托单位)资源,用于为指定的目标机系统提供整个生存周期内的软件支持。
               软件支持环境标准描述了四种软件来源:
               .商品软件:在市场上销售或出租的软件。
               .自行开发的软件:自行独立开发的非商品软件。
               .任务委托单位提供的软件:任务委托单位向承办单位提供的软件,用于开发合同指定的软件项目,并包含在软件开发支持环境中。
               .承办单位开发的软件:合同项目所规定的软件,包括承办单位正在开发或要开发的软件。
               在软件生存期支持机构中建立软件支持能力包括以下四方面的要求:
               .对增加的软件和规程进行标识。
               .对软件生存期软件支持环境的运作进行说明。
               .软件生存期支持环境移交。
               .满足支持能力和兼容性要求。
               软件维护指南
               《GB/T 14079—1993软件维护指南》主要描述了软件维护的内容和类型、维护过程以及维护的控制和改进。下面重点说明软件维护的内容和类型以及维护过程。
               软件维护是在软件产品交付使用之后,为纠正故障、改善性能和其他属性,或使产品适应改变了的环境所进行的修改活动。
               软件维护一般分为完善性维护、适应性维护和改正性维护三种类型。
                      完善性维护
                      完善性维护是为扩充功能和改善性能而进行的修改和扩充,以满足用户变化了的需求,主要内容包括:
                      .为扩充或增强功能而作的修改(如扩充解题范围和算法优化)。
                      .为提高性能而作的修改(如提高精度,节省存储空间等)。
                      .为便于维护而作的修改(如增加注释,改进易读性等)。
                      适应性维护
                      适应性维护是为适应软件运行环境的变化而作的修改,主要内容包括:
                      .影响系统的规定、法律和规则的变化。
                      .硬件配置的变化,如机型、终端、打印机等的变化。
                      .数据格式或文卷结构的变化。
                      .系统软件的变化,如操作系统、编译系统或使用程序的变化。
                      改正性维护
                      改正性维护是为维护系统操作运行,对开发过程中产生但在测试和验收时没有发现的错误进行的改正,主要内容包括:
                      .设计错误。
                      .逻辑错误。
                      .编码错误。
                      .文档错误。
                      .数据错误。
                      软件生存周期中的维护阶段通常起始于软件产品交付给用户,用户验收之时。软件维护活动通常可以定义或生存周期中前几个阶段的重复。软件维护与软件开发有许多相同的活动,但也有如下独特之处:
                      .维护活动限定在已有系统的框架之内完成,维护人员必须在已有的设计和编码结构的约束下作出修改,一般系统越旧,软件维护越困难、越费时。
                      .通常软件维护阶段的时间比软件开发的时间长得多,但一项具体的软件维护一般比开发该软件的时间短得多。
                      .软件开发必须从无到有产生所有测试数据,而软件维护通常可以使用现有的测试数据进行回归测试。有时还要产生新的数据,对软件修改以及修改后的影响进行必要的测试。
                      完成一项软件维护的过程是复杂的。下面按照顺序列出完成一项软件维护过程的步骤:
                      (1)确定修改类型。
                      (2)确定修改的需要。
                      (3)提出修改请求。
                      (4)需求分析。
                      (5)认可或否决修改请求。
                      (6)安排任务进度。
                      (7)设计。
                      (8)设计评审。
                      (9)编码修改和排错。
                      (10)评审编码修改。
                      (11)测试。
                      (12)更新文档。
                      (13)标准审计。
                      (14)用户验收。
                      (15)安装后评审修改及其对系统的影响。
                      其中有几个步骤会经常发生循环,但并不是每次修改都要执行所有的步骤。
 
       评审
        对设计部分是否完整地实现了需求中规定的功能、性能等要求,设计方法的可行性,关键的处理及内外部接口定义的正确性、有效性、各部分之间的一致性等都一一进行评审。
 
       软件工程
        1)软件工程的概念
        为了消除软件危机,通过认真研究解决软件危机的方法,人们认识到软件工程是使计算机软件走向科学的途径,逐渐形成了软件工程的概念,并开辟工程学的新兴领域,即软件工程学。
        2)软件工程的要素
        软件工程具有以下3个要素。
        (1)方法。完成软件工程项目的技术手段。
        (2)工具。支持软件的开发、管理、文档生成。
        (3)过程。将方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。
        3)软件生命周期
        软件生命周期是指软件产品从考虑其概念开始到该软件产品交付使用,直至最终退役为止的整个过程,包括计划阶段、分析阶段、设计阶段、实现阶段、测试阶段和运行维护阶段。
        4)软件开发模型
        比较经典的软件开发模型有瀑布模型、快速原型模型、演化模型、增量模型、螺旋模型、喷泉模型等。
        5)软件开发方法
        软件开发方法有以下几种。
        (1)结构化软件开发(SASD)方法:采用结构化技术来完成软件开发的各项任务。它把软件生命周期划分成若干个阶段,依次完成每个阶段的任务。它与瀑布模型有很好的结合度,是与其最相适应的软件开发方法。
        (2)面向数据结构的软件开发方法:从目标系统的输入、输出数据结构入手,导出程序框架结构,再补充其他细节,从而可得到完整的程序结构图。有Jackson方法和Warnier方法。
        (3)面向对象的软件开发方法:随着OOP(面向对象编程)向OOD(面向对象设计)和OOA(面向对象分析)的发展,最终形成面向对象的软件开发方法OMT(Object Modelling Technique)。这是一种自底向上和自顶向下相结合的方法,而且它以对象建模为基础,从而不仅考虑了输入、输出数据结构,实际上也包含了所有对象的数据结构。
        (4)基于构件化的开发方法:用预先建立的构件和模板,像"搭积木"一样进行建造。
 
       软件工程术语
        《GB/T 11457—2006信息技术软件工程术语》定义了软件工程领域中通用的术语,适用于软件开发、软件维护、科研、教学和出版等方面。
        .抽象:对某一问题的概括,它抽取于某一特定目标相关的本质内容而忽略其非本质内容。
        .验收准则:系统或部件必须满足的准则,其目的是用户、客户或其他授权实体能够予以接受。
        .验收测试:确定一系统是否符合其验收准则,使客户能确定是否接收此系统的正式测试。
        .活动:一个过程的组成元素。对基线的变更要经有关机构的正式批准。
        .活动图:用于对涉及一个或多个类目的进程建模的状态机的一种特例。
        .适应性:使不同的系统约束条件和用户需求得到满足的容易程度。
        .关联:规定其实例件连接的多个类目之间的语义联系。
        .审计:为评估工作产品或工作产品集是否符合软件需求、规格说明、基线、标准、过程、指令、代码以及合同和特殊要求而进行的一种独立检查。
        .可用性:软件(系统或部件)在投入使用时可操作和可访问的程度或能实现其指定的系统功能的概率。
        .基线:业已经过正式审核与同意,可以作下一步开发的基础,并且只能通过正式的修改管理工程方能加以修改的规格说明或产品。在配置项目生存周期的某一特定时间内,正式指定或固定下来的配置标识文件。基线加上根据这些基线批准同意的改动构成了当前配置标识。对于配置管理,有三种基线:功能基线(最初通过的功能配置)、分配基线(最初通过的分配的配置)、产品基线(最初通过的或有条件地通过的产品配置)。
        .边界值:相应于为系统或部件规定的最小或最大的输入、内部、输出的数据值。
        .代码审计:由某人、某小组或借助某种工具对源代码进行的审查,目的是验证其是否符合软件设计文件和程序设计标准,还可能对正确性和有效性进行估计。
        .代码评审:把软件代码呈现给项目人员、管理人员、用户、客户或其他感兴趣的人员用于评论或批准的会议。
        .数据字典:软件系统中使用的所有数据项的名字及与这些数据项有关的特性(例如数据项长度、表示等)的集合。
        .依赖:两个建模元素之间的一种关系,对其中一个建模元素(独立元素)的更改,将影响另一建模元素(依赖元素)。
        .验证:确定软件开发周期中的一个给定阶段的产品是否达到在上一阶段确立的需求的过程。
        .确认:在软件开发过程结束时对软件进行评价以确定它是否和软件需求相一致的过程。
        .测试:通过执行程序来有意识地发现程序中的设计错误和编码错误的过程。测试是验证和确认的手段之一。
        .软件开发方法:是指软件开发过程中所遵循的办法和步骤。软件开发活动的目的是有效地得到一些工作产物,也就是一个运行的系统及其支持文档,并且满足有关的质量要求。
        .鉴定:是一个正式的过程,通过这个过程决定产品是否符合它的规格说明,是否可在目标环境中使用。
   题号导航      2017年上半年 信息系统项目管理师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第12题    在手机中做本题