免费智能真题库 > 历年试卷 > 信息系统项目管理师 > 2012年上半年 信息系统项目管理师 上午试卷 综合知识
  第10题      
  知识点:   功能需求   计算机软件   评审   软件质量保证   软件质量保证计划规范   一致性   质量保证
  关键词:   计算机软件质量保证计划规范   接口   评审   软件验收   文档   需求   计算机软件   软件质量   软件质量保证   验收   质量保证   质量保证计划        章/节:   标准       

 
根据《计算机软件质量保证计划规范GB/T12504-1990》中关于软件质量评审和检查的规定,在软件验收时,验证代码和设计文档的一致性、接口规格说明的一致性、设计实现和功能需求一致性等检查属于(10)。
 
 
  A.  综合检查
 
  B.  功能检查
 
  C.  性能检查
 
  D.  配置检查
 
 
 

 
  第13题    2018年下半年  
   52%
软件质量模型描述了软件产品的质量特性和质量子特性。其中()包括适宜性、准确性、互用性、依从性和安全性等子特性。
  第13题    2019年上半年  
   47%
GB/T 16260.1 是产品质量系统标准中的基础标准,他描述了软件工程领域产品质量的( )。
  第14题    2009年下半年  
   56%
根据《GB/T 12504-90计算机软件质量保证计划规范》的规定,为了确保软件的实现满足需求,需要的基本文档不包括(14)。
   知识点讲解    
   · 功能需求    · 计算机软件    · 评审    · 软件质量保证    · 软件质量保证计划规范    · 一致性    · 质量保证
 
       功能需求
        功能需求即网络在用户单位业务中应该提供的功能,可以通过了解用户单位所从事的行业、该单位在行业内的地位以及和其他单位的关系等来确定其功能需求。另外,还可以通过了解项目背景来明确用户单位建网的目的,从而有助于描述详细的功能需求。
 
       计算机软件
        计算机软件是指为管理、运行、维护及应用计算机系统所开发的程序和相关文档的集合。如果计算机系统中仅有硬件系统,则只具备了计算的基础,并不能真正计算,只有将解决问题的步骤编制成机器可识别的程序并加载到计算机内存开始运行,才能完成计算。
        软件是计算机系统中的重要组成部分,通常可将软件分为系统软件、中间件和应用软件等类型。系统软件的主要功能是管理系统的硬件和软件资源,应用软件则用于解决应用领域的具体问题,中间件是一类独立的系统软件或服务程序,常用来管理计算资源和网络通信,提供通信处理、数据存取、事务处理、Web服务、安全、跨平台等服务。
 
       评审
        对设计部分是否完整地实现了需求中规定的功能、性能等要求,设计方法的可行性,关键的处理及内外部接口定义的正确性、有效性、各部分之间的一致性等都一一进行评审。
 
       软件质量保证
        软件质量保证包括与以下7个主要活动相关的各种任务。
        (1)应用技术方法。软件质量保证首先从一组技术方法和工具开始,这些方法和工具帮助分析人员形成高质量的规格说明和高质量的设计。
        (2)进行正式的技术评审。这是一种由技术人员实施的程式化会议,其唯一的目的是揭露质量问题。
        (3)测试软件。软件测试组合了多种测试策略,这些测试策略带有一系列有助于有效地检测错误的测试用例及设计方法。
        (4)标准的实施。多数情况下,标准由客户或某些章程确定。与标准是否一致的评估可以被软件开发者作为正式技术评审的一部分来进行。
        (5)控制变更。变更控制过程通过对变更的正式申请、评价变更的特性和控制变更的影响等直接提高软件的质量。变更控制应用于软件开发期间和较后的软件维护阶段。
        (6)计量。其包括某些技术上的和面向管理的计量。
        (7)记录保存和报告。为软件质量保证提供收集和传播软件质量保证信息的过程。评审、监察、变更控制、测试和其他软件质量保证活动的结果必须变成项目历史记录的一部分,并且应当把它传播给需要知道这些结果的开发人员。
 
       软件质量保证计划规范
        软件质量保证计划规范了在制定软件质量保证计划时应该遵循的统一的基本要求,适用于软件特别是重要软件质量保证计划的制定工作。
               软件生存周期
               软件生存周期是指从提出应用需求开始,经过开发,产生一个满足需求的计算机软件系统,然后投入运行,直至该软件系统退役为止。此周期一般分为需求分析、概要设计、详细设计、编码与单元测试、组装与系统测试及安装与验收等六个阶段。
               验证
               验证是指确定软件开发周期中的一个给定阶段的产品是否达到上一阶段确立的需求的过程。
               确认
               确认是指在软件开发过程结束时对软件进行评价以确定它是否和软件需求相一致的过程。
               测试
               测试是指通过执行程序来有意识地发现程序中的设计错误和编码错误的过程。测试是验证和确认的手段之一。
               质量
               质量是反映产品或服务满足明确或隐含需求能力的特征和特性的总和。
               质量保证
               质量保证指为使软件产品满足规定需求所进行的一系列有计划的必要工作。
               确保软件需求实现,至少需要的文档
               这些文档包括软件需求规格说明书、软件设计说明书、软件验证与确认计划、软件验证和确认报告、用户文档、其他文档(比如项目实施计划、项目进展报告、各阶段评审报表、项目开发总结等)。
               软件质量保证小组
               软件质量保证小组属于总体组领导,由总体组代表、项目的软件工程小组代表、项目的专职质量保证人员、项目的专职配置管理人员以及子系统软件质量保证人员组成。
               评审小组
               评审小组原则上由项目总体小组成员或特邀专家担任评审组长,项目委托单位、用户代表、质量保证人员、软件开发单位和上级主管部门的代表以及其他人员作为小组成员。项目评审小组可以不设副组长;项目开发组长或其代表可作为评审组的成员,但不能担任评审组的组长或副组长。
               文档质量度量准则
               文档质量度量准则包括完备性(在开发阶段结束时,保证文档齐全)、正确性、简明性、可追踪性、规范性。
               综合检查
               在验收时,允许用户或用户委托的专家对所要验收的软件进行综合检查,以验证代码和设计文档的一致性、接口规格说明之间的一致性、设计实现和功能需求的一致性、功能需求和测试描述的一致性。
               功能检查
               在软件发布前进行功能检查,以确认已满足实现软件需求规格说明书中规定的所有需求。
               性能检查
               性能检查是指对软件性能方面的检查,比如可靠性。
               配置检查
               配置检查包括编制有关软件配置的条款,规定用于标识软件产品、控制和实现软件的修改、记录和报告修改实现的状态以及评审和检查配置管理工程等四个方面的活动。此外还必须规定用以维护和存储软件受控版本的方法和措施,必须规定对所发现的软件问题进行报告、追踪和解决的步骤,并指出实现报告、追踪和解决软件问题的机构及其职责。
               用户文档
               用户文档必须指明成功运行该软件所需要的数据、控制命令以及运行条件等内容;必须指明所有的出错信息、含义及其修改方法;还必须描述将用户发现的错误或问题通知项目承办单位(或软件开发单位)或项目委托单位的方法。
               概要设计评审
               在概要设计阶段结束后必须继续概要设计评审,以评价软件设计说明书中所描述的软件概要设计在总体结构、外部接口、主要部件功能分配、全局数据结构以及各主要部件之间的接口等方面的适合性。
               补充说明:《GB/T 12505—1990计算机软件配置管理计划规范》和《GB/T 12504计算机软件质量保证计划规范》被国标委(公告2005年第146号文)废止,废止后没有替代规范。
 
       一致性
        在讨论一致性之前,先看一下CAP理论。它作为一种理论依据,使得在不同应用中,对一致性也有了不同的要求。CAP理论:简单地说,就是对于一个分布式系统,一致性(Consistency)、可用性(Availablity)和分区容忍性(Partition tolerance)三个特点最多只能三选二。
        一致性意味着系统在执行了某些操作后仍处在一个一致的状态,这点在分布式的系统中尤其明显。比如某用户在一处对共享的数据进行了修改,那么所有有权使用这些数据的用户都可以看到这一改变。简言之,就是所有的结点在同一时刻有相同的数据。
        可用性指对数据的所有操作都应有成功的返回。高可用性则是在系统升级(软件或硬件)或在网络系统中的某些结点发生故障的时候,仍可以正常返回。简言之,就是任何请求不管成功或失败都有响应。
        分区容忍性这一概念的前提是在网络发生故障的时候。在网络连接上,一些结点出现故障,使得原本连通的网络变成了一块一块的分区,若允许系统继续工作,那么就是分区可容忍的。
        在数据库系统中,事务的ACID属性保证了数据库的一致性。比如银行系统中,转账就是一个事务,从原账户扣除金额,以及向目标账户添加金额,这两个数据库操作的总和构成一个完整的逻辑过程,具有原子的不可拆分特性,从而保证了整个系统中的总金额没有变化。
        然而,这些ACID特性对于大型的分布式系统来说,是和高性能不兼容的。比如,你在网上书店买书,任何一个人买书这个过程都会锁住数据库直到买书行为彻底完成(否则书本库存数可能不一致),买书完成的那一瞬间,世界上所有的人都可以看到书的库存减少了一本(这也意味着两个人不能同时买书)。这在小的网上书城也许可以运行得很好,可是对Amazon这种网上书城却并不是很好。
        而对于Amazon这种系统,它也许会用Cache系统,剩余的库存数也许是几秒甚至几个小时前的快照,而不是实时的库存数,这就舍弃了一致性。并且,Amazon可能也舍弃了独立性,当只剩下最后一本书时,也许它会允许两个人同时下单,宁愿最后给那个下单成功却没货的人道歉,而不是整个系统性能的下降。
        由于CAP理论的存在,为了提高性能,出现了ACID的一种变种BASE(这四个字母分别是Basically Available,Soft—state,Eventual consistency的开头字母,是一个弱一致性的理论,只要求最终一致性):
        .Basically Available:基本可用。
        .Soft state:软状态,可以理解为“无连接”的,而与之相对应的Hard state就是“面向连接”的。
        .Eventual consistency:最终一致性,最终整个系统(时间和系统的要求有关)看到的数据是一致的。
        在BASE中,强调可用性的同时,引入了最终一致性这个概念,不像ACID,其并不需要每个事务都是一致的,只需要整个系统经过一定时间后最终达到一致。比如Amazon的卖书系统,也许在卖的过程中,每个用户看到的库存数是不一样的,但最终卖完后,库存数都为0。再比如SNS网络中,C更新状态,A也许可以1分钟就看到,而B甚至5分钟后才看到,但最终大家都可以看到这个更新。
        具体地说,如果选择了CP(一致性和分区容忍性),那么就要考虑ACID理论(传统关系型数据库的基石,事务的四个特点)。如果选择了AP(可用性和分区容忍性),那么就要考虑BASE系统。如果选择了CA(一致性和可用性),如Google的bigtable,那么在网络发生分区的时候,将不能进行完整的操作。
        ACID理论和BASE的具体对比如下表所示。
        
        ACID和BASE的对比表
 
       质量保证
        系统质量是指反映系统或产品满足规定或隐含需求的能力的特征和特性全体。软件质量管理是指对软件开发过程进行的独立的检查活动,由质量保证、质量规划和质量控制三个主要活动构成。质量保证是指为保证系统或软件产品充分满足用户要求的质量而进行的有计划、有组织的活动,其目的是开发高质量的系统。
               质量特性
               讨论系统质量首先要了解系统的质量特性。已经有多种软件质量模型来描述软件质量特性,目前较多采用的如ISO/IEC 9126软件质量模型和Mc Call软件质量模型。ISO/IEC 9126已经被ISO/ICE 25010系统和软件质量模型所取代,其主要改进包括将兼容性作和安全性作为质量特性,ISO/IEC 25012数据质量模型与ISO/IEC 25030使用质量模型作为补充。
                      ISO/ICE 25010系统和软件质量模型
                      ISO/ICE 25010系统和软件质量模型包含8个质量特性,每个特性由一组相关的质量子特性组成,如下图所示。该产品质量模型既可以用于软件,又可以用于任何包含软件的计算机系统。
                      
                      产品质量模型
                      其中,各质量特性和质量子特性的含义如下。
                      (1)功能适合性(functional suitability)。与一组功能及其指定的性质的存在有关的一组属性。功能是指满足规定或隐含需求的那些功能。
                      .功能完整性(functional completeness):与对规定任务和用户目标加以实现的功能是否完整有关的属性。
                      .功能适当性(functional appropriateness):与对规定任务和用户目标能否提供一组功能以及这组功能是否适合有关的属性。
                      .功能正确性(functional correctness):与能够得到正确或相符的结果或效果有关的产品或系统属性。
                      (2)性能效率(performance efficiency)。在规定条件下,系统的性能水平与所用资源量之间的关系有关的一组属性。
                      .时间特性(time behavior):与响应和处理时间以及软件执行其功能时的吞吐量有关的属性。
                      .资源利用率(resource utilization):与系统执行其功能时所使用的资源量以及使用资源的类型有关的属性。
                      .容量(capacity):与系统满足特定需求时指标参数的最大限制有关的属性。
                      (3)兼容性(compatibility)。与系统或组件与其他系统或组件进行信息交换,或在不同软硬件环境中执行所需功能有关的一组属性。
                      .共存性(co-existence):与同其他系统运行在同一环境使用相同的资源而不相互影响的能力相关的属性。
                      .互操作性(interoperability):与同其他指定系统进行交互操作的能力相关的属性。
                      (4)易用性(usability)。与为使用所需的努力和由一组规定或隐含的用户对这样使用所作的个别评价有关的一组属性。
                      .可识别性(appropriateness recognizability):与用户识别系统是否满足需求有关的属性。
                      .易学性(learnability):与用户为学习使用产品(例如操作控制、输入、输出)的有效性、效率、风险和满意度相关的属性。
                      .易操作性(operability):与用户为进行操作和操作控制所付出的努力有关的属性。
                      .错误防御(user error protection):与阻止用户错误输入有关的属性。
                      .界面美观性(user interface aesthetics):与系统用户界面使用户进行愉快满意交互有关的属性。
                      .可访问性(accessibility):与用户可访问系统完成特定目标的范围和能力有关的属性。
                      (5)可靠性(reliability)。与在规定的一段时间内和规定的条件下,系统维持在其性能水平有关的能力。
                      .成熟性(maturity):与正常操作情况下满足可靠性需求有关的属性。
                      .可用性(availability):与系统运行可用使用能力有关的属性。
                      .容错性(fault tolerance):与在系统错误或违反指定接口的情况下,维持指定的性能水平的能力有关的属性。
                      .易恢复性(recoverability):与在故障发生后,重新建立其性能水平并恢复直接受影响数据的能力,以及为达到此目的所需的时间和努力有关的属性。
                      (6)安全性(security)。与避免对程序及数据的非授权故意或意外访问的能力有关的系统属性。
                      .机密性(confidentiality):与系统确保只有授权才能访问其数据能力有关的属性。
                      .完整性(integrity):与系统防止未经授权对数据和程序进行访问和修改能力有关的属性。
                      .不可抵赖性(non-repudiation):与对系统使用行为及发生时间真实性有关的属性。
                      .可审计性(accountability):与对系统使用行为进行追踪有关的属性。
                      .真实性(authenticity):与证明主体或资源身份是所声称的身份有关的属性。
                      (7)可维护性(maintainability)。与进行规定的修改所需要的努力有关的一组属性。
                      .模块性(modularity):与所组成系统的模块独立性有关的属性。
                      .可复用性(reusability):与模块用于其他系统有关的属性。
                      .易分析性(analyzability):与为诊断缺陷或失效原因,或为判定待修改的部分所需努力有关的属性。
                      .易修改性(modifiability):与进行修改、排错或适应环境变换所需努力有关的属性。
                      .易测试性(testability):为确认经修改系统所需努力有关的属性。
                      (8)可移植性(portability)。与系统可从某一环境转移到另一环境的能力有关的一组属性。
                      .适应性(adaptability):与系统转移到不同环境时的处理或手段有关的属性。
                      .易安装性(installability):与在指定环境下对系统进行安装/卸载所需努力有关的属性。
                      .易替换性(replaceability):与一产品在该软件环境中用来替代指定的其他软件的可能和努力有关的属性。
                      Mc Call软件质量模型
                      Mc Call软件质量模型从软件产品的运行、修正、转移三个方面确定了11个质量特性,如下图所示。Mc Call也给出了一个三层模型框架,第一层是质量特性,第二层是评价准则,第三层是度量指标。
                      
                      Mc Call软件质量模型
               质量保证
               质量保证是指为保证系统或产品充分满足用户要求的质量而进行的有计划、有组织的活动,其目的是生产高质量的产品。在系统质量方面强调三个要点:首先系统必须满足用户规定的需求,与用户需求不一致的系统,就无质量可言;其次系统应遵循规定标准所定义的一系列开发准则,不遵循这些准则的系统,其质量难以得到保证;最后系统还应满足某些隐含的需求,例如希望有好的可理解性、可维护性等,而这些隐含的需求可能未被明确地写在用户规定的需求中,如果系统只满足它的显性需求而不满足其隐含需求,那么该系统的质量是令人担忧的。
               质量保证包括7个主要活动相关的各种任务,分别是应用技术方法、进行正式的技术评审、测试系统、标准的实施、控制变更、度量(metrics)、记录保存和报告。
   题号导航      2012年上半年 信息系统项目管理师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第10题    在手机中做本题