软件工程刷题

软件=程序+数据+文档

软件危机的定义:指在软件的开发和维护过程中所遇到的一系列严重问题。
在这里插入图片描述

在这里插入图片描述

软件的生命周期:

在这里插入图片描述

1传统软件过程模型

瀑布

原型模型:

主要使用领域:

• 系统特别大

• 系统需求不明确

螺旋模型:增加了风险分析的快速原型模型;

喷泉模型:面向对象的软件过程模型;

模型的分类:

数据模型;

功能模型;

行为模型;

内聚的排序;

在这里插入图片描述

四个维护:

在这里插入图片描述

黑盒测试主要参照:

在这里插入图片描述

阿尔法测试与β测试:

覆盖的高低:

路径最高;语句最弱;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-laSJVsqj-1662477289738)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220208153945102.png)]

21.类构件的重用方式有多态重用、继承重用和( A )

A.实例重用       B.重载重用    C. 代码重用        D. 方法重用

一组语句在程序多处出现,为了节省空间,把这些语句放在一个模块中,该模块的内聚度是( C )的。

A.逻辑性 B.瞬时性 C.偶然性 D.通信性

总体设计的目标是确定整个系统的:功能及模块结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sPU7IAjG-1662477289739)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220210141219132.png)]

配置管理的含义:(*有标识变更和控制变更*)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zxBi79s3-1662477289740)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220210141500671.png)]

甘特图。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ma5tXt9s-1662477289741)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220210141631579.png)]

5.下面的()说法是正确的。©
A.软件危机在20世纪70年代末期全面爆发 软件危机出现于20时纪60年代末

B. 当前先进的软件工程方法已经解决了软件危机的问题
C. 软件危机是指在计算机软件的开发和维护过程中遇到的一系列严重问题
D. 软件危机是指在软件产品中存在一系列的质量问题

6.软件工程的基本目标是()。(B
A.消除软件固有的复杂性
B.开发高质量的软件
C.努力发挥开发人员的创造性潜能
D.更好地维护正在使用的软件产品

7.()是将系统化的、规范的、可定量的方法应用于软件的开发、运行和维护的过程,它包括方法、工具和过程三个要素。(D)
A.软件产品
B.软件过程
C.软件测试
D.软件工程

()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。(A)
A.软件过程
B.软件工具
C.软件产品
D.软件工程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GLKAz0Cz-1662477289742)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220211194714075.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XK9aTUPT-1662477289743)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220211194759766.png)]

结构程序设计是实现详细设计主要目标的基本保证,并且也是详细设计的逻辑基础。

软件需求规约(SRS)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f1wKdM6k-1662477289744)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220211195745364.png)]

数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。

DFD显示系统将输入和输出什么样的信息,数据如何通过系统前进以及数据将被存储在何处。**它不显示关于进程计时的信息,也不显示关于进程将按顺序还是并行运行的信息,**而不像传统的关注控制流的结构化流程图,或者UML活动工作流程图,它将控制流和数据流作为一个统一的模型。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hpnhdSt1-1662477289745)(C:\Users\pjm616\AppData\Roaming\Typora\typora-user-images\image-20220211200144674.png)]

甘特图,也称为条状图(Bar chart)。是在1917年由亨利·甘特开发的,其内在思想简单,基本是一条线条图,横轴表示时间,纵轴表示活动(项目),线条表示在整个期间上计划和实际的活动完成情况。它直观地表明任务计划在什么时候进行,及实际进展与计划要求的对比。 管理者由此极为便利地弄清一项任务(项目)还剩下哪些工作要做,并可评估工作是提前还是滞后,亦或正常进行。是一种理想的控制工具。

在软件开发过程中,(A)适用于事先不能完整定义需求的软件开发。

//原型模型适用于之前的需求不明确的开发;

A、演化模型  //演化模型又叫原型法 采用演化模型的开发过程,实际上就是从初始的原型逐步演化成最终软件产品的过程。
B、螺旋模型
C、瀑布模型
D、喷泉模型

瀑布模型,提供一种结构化的、自顶向下的软件开发方法,是所有软件生命周期模型的基础。

演化模型//原型法,针对实现不能完整定义需求的软件项目,利用迭代的思想,使软件逐步开发、逐步完善的机制,产品需求分解成多组,分批循环开发。

螺旋模型,遵从瀑布模型,迭代和风险驱动的开发过程,将瀑布模型的多个阶段转化到多个迭代过程中,适合大型系统的开发。过程:需求、架构、设计、开发、测试。

喷泉模型,主要用于面向对象软件技术开发项目,特点是各项活动之间没有明显界限。过程为:分析、设计、实现、确认、维护和演化。

以下___不是软件需求规约(SRS)所能够起到的作用。

正确答案: C

作为客户与软件开发团队之间签订正式合同的基础
为软件项目的成本、时间、风险估计提供依据
充分描述现实中的业务问题,以指导后续的软件编码
通过形成需求基线,支持需求的演化与变更

软件需求规约不能指导编码,详细设计指导编码

原型化方法是一种 _______ 型的设计过程。

正确答案: A

自外向内
自顶向下
自内向外
自底向上

说它自外向内是因为是从用户开始程序员结束的

下列哪个阶段不属于软件生存周期的三大阶段( )。

正确答案: C

计划阶段
开发阶段
//编码阶段
维护阶段

软件生存周期的三大阶段:软件定义,软件开发,软件维护

结构化分析方法是在软件开发过程中常用的方法。这个方法采用的基本手段是( )。

正确答案: A

分解与抽象
分解与综合
归纳与推导
试探与回溯

于程序模块优化的启发式规则有若干条,以下规则中不符合优化原则的是()。

正确答案: B

通过模块的合并和分解,降低模块的耦合度,提高模块的内聚性
提高上层模块的扇出,减少模块调用的层次
将模块的作用范围限制在模块的控制范围之内
降低模块之间接口的复杂性,避免“病态连接”

启发式规则:

•改进软件结构提高模块独立性

•模块规模应适中

•深度、宽度、扇出扇入都应适当

•模块的作用域应该在控制域内

•力争降低模块接口的复程度

•设计单入口单出口的模块

•模块功能应该可以预测,避兔过多限制

而选项B主张提高扇出,很显然是错误的。

内-公-外-控-印(标)-数-非

一般模块之间可能的连接方式有七种,构成耦合性的七种类型。它们之间的关系为(耦合性性由强到弱):

  • 内容耦合(Content Coupling)
    如果发生下列情形,两个模块之间就发生了内容耦合。
    1. ​ 一个模块直接访问另一个模块的内部数据;
    2. ​ 一个模块不通过正常入口转到另一模块内部;
    3. ​ 两个模块有一部分程序代码重叠(只可能出现在汇编语言中);
    4. ​ 一个模块有多个入口。
  • 公共耦合(Common Coupling)
    ​ 若一组模块都访问同一个公共数据环境,则它们之间的耦合就称为公共耦合。公共的数据环境可以是全局数据结构、共享的通信区、内存的公共覆盖区等。
  • 外部耦合(External Coupling)
    ​ 一组模块都访问同一全局简单变量而不是同一全局数据结构,而且不是通过参数表传递该全局变量的信息,则称之为外部耦合。
  • 控制耦合(Control Coupling)
    ​ 如果一个模块通过传送开关、标志、名字等控制信息,明显地控制选择另一模块的功能,就是控制耦合。
  • 印记耦合(Stamp Coupling) //标记耦合
    ​ 如果一组模块通过参数表传递记录信息,就是标记耦合。它是某一数据结构的子结构,而不是简单变量。
  • 数据耦合(Data Coupling)
    ​ 如果一个模块访问另一个模块时,彼此之间是通过数据参数(不是控制参数、公共数据结构或外部变量)来交换输入、输出信息的,则称这种耦合为数据耦合。
  • 非直接耦合(Nondirect Coupling)
    ​ 如果两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。这种耦合的模块独立性最强。

系统流程图是描述 _____ 的工具。

正确答案: D

逻辑系统
程序系统
体系结构
物理系统

系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。是描绘物理系统的传统工具。

在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。

正确答案: A

总体设计
需求分析
详细设计
程序设计

系统需要具有什么功能由需求分析决定;
模块需要具有什么功能由总体设计决定;

详细设计指导编码;

UML 只能应用于软件系统模型的建立。

正确答案: B

正确
错误

广义的理解:UML说白了是一种语言,只要有助于双方更好沟通都可以使用。

属于描绘软件结构的图形工具有()。

正确答案: B

E-R 图
层次图
N-S 图
层次方框图

描绘软件结构的图形工具有:层次图、HIPO图、结构图

根据CMMI规范,每一个软件企业均具有( )成熟度。

正确答案: A

等级一
等级三
等级四
等级五

CMM共有五个等级,分别标志着软件企业能力成熟度的五个层次。从低到高,软件开发生产计划精度逐级升高,单位工程生产周期逐级缩短,单位工程成本逐级降低。据SEI统计,通过评估的软件公司对项目的估计与控制能力约提升40%到50%;生产率提高10%到20%,软件产品出错率下降超过1/3。

对一个软件企业来说,达到CMM2就基本上进入了规模开发,基本具备了一个现代化软件企业的基本架构和方法,具备了承接外包项目的能力。CMM3评估则需要对大软件集成的把握,包括整体架构的整合。

1. 初始级

软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。管理是反应式的。

2.可管理级

建立了基本的项目管理过程来跟踪费用、进度和功能特性。制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。

3. 已定义级

已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。

4. 量化管理级

分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制。管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。

5. 优化管理级

过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。

从事物的组成部件及每个部件的属性、功能来认识事物。这种方法被称为()的方法。

正确答案: A

面向对象
面向数据
面向过程
面向属性

面向对象:把数据和对数据的操作放在一起,作为一个相互依存的整体——对象

面向过程:自顶向下,逐步求精

面向对象就是: 把数据和对数据的操作方法放在一起,作为一个相互依存的整体~对象

面向过程就是: 自顶向下顺序执行,逐步求精。将程序按功能分成一个个基本模块

可行性研究:值不值得做?能不能做?

需求分析:做什么?

总体设计+详细设计:怎么做?

面向对象技术中,对象是类的实例。对象有三种成份:( )、属性和方法(或操作)。

正确答案: A

标识
规则
封装
消息

对象三大属性 状态,行为,标识符 标识符是一个对象的属性,它用于区分这个对象与所有其他对象

用例模型所描述的是软件系统的需求模型。请问这句话的说法是正确的吗?

正确答案: A

正确
错误

建立用例模型的目的是提取和分析足够的需求分析,用例模型能够表诉用户需要什么,不涉及系统将如何构造和实现的细节。

在软件维护工作中,如果对软件的修改只限制在原需求说明书的范围之内,这种维护是属于( )。

正确答案: A

纠正性维护
适应性维护
完善性维护
预防性维护

在变更控制中, ______ 可以用来确保由不同用户所执行的并发变更。

正确答案: B

异步控制
同步控制
存取控制
基线控制

变更控制包括建立控制点和建立报告与审查制度,其过程中的“检出”和“登入”处理实现了存取控制和同步控制,存取控制管理各个用户存取和修改一个特定软件配置对象的权限,同步控制可用来确保由不同用户所执行任务的并发变更。

下面不属于对象主要特征的是( )。

正确答案: C

唯一性
多态性
可复用性
封装性

可复用性也是可重用性,是面向对象设计原则之一而已,不是主要特征

下面哪个测试属于黑盒测试( )。

正确答案: B

基本路径测试
等价类划分
判定结构分析
逻辑覆盖测试

B

黑盒测试方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法、场景法等。

白盒测试方法有代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、域测试、符号测试、Z路径覆盖、程序变异。

CMMI中的受管理级包含的七个过程域中,()目的在于开发和维持度量能力,以便支持对管理信息的需要。

正确答案: A

测量和分析
供方协定管理
过程和产品质量保证
项目策划

(百度**)**在CMMI已管理级中,意味着组织要确保策划、文档化、执行、监督和控制项目级的过程,并且需要为过程建立明确的目标,并能实现成本、进度和质量目标等。在这种情况下,组织已经营造了一个稳定的、受控的开发环境,项目已经在受控制的状态下运行。该等级包括以下7个过程域:需求管理(RM)、项目策划(PP)、项目监督与控制(PMC)、供方协定管理(SAM)、测量与分析(MA)、过程和产品质量保证(PPQA)和配置管理(CM)。

其中:

“过程和产品质量保证”的目的在于使工作人员和管理者客观地了解过程和相关的工作产品。

“测量和分析”的目的在于开发和维持度量能力以便支持对管理信息的需要。
“供方协定管理”旨在对以正式协定的形式从项目之外的供方采办的产品和服务实施管理。
“项目策划”的目的在于建立并维护规定项目各项活动的计划。

专门设计用于支持过程反复的软件过程模型有( )

正确答案: B C

瀑布模型
螺旋式开发模型
增量式开发模型
基于组件的软件过程模型

组建不能反复、瀑布不能反复;螺旋、增量可以反复

判断对错。对面向过程的系统采用的集成策略有自顶向下和自底向上两种。

正确答案: A

正确
错误

面向过程的系统,比如C语言设计的系统,有两种集成策略:自顶向下,也就是先整体再局部;自底向上,也就是先局部再整体

在软件开发过程中,我们可以采用不同的过程模型,下列有关增量模型描述正确的()

正确答案: B

已使用一种线性开发模型,具有不可回溯性
把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件
适用于已有产品或产品原型(样品),只需客户化的工程项目
软件开发过程每迭代一次,软件开发又前进一个层次

A 瀑布模型

B 增量模型

C 原型模型

D 迭代模型

总体设计的结果是提供一份( )。

正确答案: A

模块说明书
框图
程序
数据结构

总体设计的基本目的就是回答“概括地说,系统应该如何实现”这个问题,因此,总体设计又称为概要设计或初步设计。总体设计阶段的另一项重要任务是设计软件的结构,也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。

详细设计的结果基本决定了最终程序的( )

正确答案: C

代码的规模
运行速度
质量
可维护性

详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统,但详细设计阶段的任务还不是具体的编写程序,而是要设计出程序的"蓝图",以后程序员将根据这个蓝图写出实际的程序代码,因此,详细设计阶段的结果基本上就决定了最终的程序代码的质量。

在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高 ( )

正确答案: B

结构化方法
原型化方法
面向对象的方法
控制流方法

原型方法对开发人员要求最高

MVC模式的关键机制是把数据表示与输入控制、数据存储、功能逻辑分离开来

正确答案: A

是
否

MVC主要是指将Model(实体类)、View(视图层)、Controller(控制层)分离开,便于编码编写和后期维护,WEB开发中常用的MVC模型有SpringMVC。

帕累托图(Pareto Charts)有助于项目经理:集中于质量改进的最关键的问题

正确答案: A

是
否

帕累托图(Pareto chart)是将出现的质量问题和质量改进项目按照重要程度依次排列而采用的一种图表。

软件复杂性的度量方法有:

1、代码行度量法:以源代码行数作为程序复杂性的度量。

2、McCabe度量法:一种基于程序控制流的复杂性度量方法。

通过 McCabe 方法度量选择结构的复杂程度比顺序结构的复杂程度要()。

正确答案: A

大
小
相等
无法比较

最简单的解释感觉就是顺序结构就是一条线,而选择结构会构成环

用来辅助软件开发、运行、维护、管理、支持等过程中的活动的软件称为软件开发工具,通常也称为()工具。

正确答案: D

CAD
CAI
CAM
CASE//计算机辅助软件工程英文全称:CASE(Computer Aided(or Assisted)Software Engineering)。

CAD:计算机辅助设计 , 指利用计算机及其图形设备帮助设计人员进行设计工作。

CAI: 计算机辅助教学,是在计算机辅助下进行的各种教学活动,以对话方式与学生讨论教学内容、安排教学进程、进行教学训练的方法与技术。

CAM:计算机辅助制造 ,是将计算机应用于制造生产过程的过程或系统。

变更控制是一项最重要的软件配置任务,其中 “ 检出 ” 和 ______ 处理实现了两个重要的变更控制要素,即存取控制和同步控制。

正确答案: A

登入
管理
填写变更要求
审查

检出(check out ),登入(check in)

面向数据流的设计方法把( )映射成软件结构。

正确答案: D

数据流
系统结构
控制结构
信息流

面向数据流的设计方法把信息流映射成软件结构信息流的类型决定了映射的方法 (p104)

信息流有两种类型:变换流和事务流。

只有单重继承的类层次结构是()层次结构。

正确答案: C 你的答案: C (正确)

网状型
星型
树型
环型

单重继承的类层次结构表现为树型层次结构;

多重继承的类层次结构变现为网状层次结构。

软件的互操作性是指什么?

正确答案: C

软件的可移植性
人机界面的可交互性
连接一个系统和另一个系统所需的工作量
多用户之间的可交互性

软件的互操作性是指: 连接一个系统和另一个系统所需的工作量

Putnam 成本估算模型是一个( )模型

正确答案: D

静态单变量
动态单变量
静态多变量
动态多变量

Putnam模型
这是1978年Putnam提出的模型,是一种动态多变量模型。它是假定在软件开发的整个生存期中工作量有特定的分布。这种模型是依据在一些大型项目(总工作量达到或超过30个人年)中收集到的工作量分布情况而推导出来的,但也可以应用在一些较小的软件项目中。
L = Ck * K^1/3 * td^4/3
L-----------源代码行数(以LOC计
K-----------整个开发过程所花费的工作量(以人年计
td----------开发持续时间(以年计
Ck----------技术状态常数,它反映“妨碍开发进展的限制”,取值因开发环境而异,见下表。
表:Ck的典型值开发环境举例
2000 差 没有系统的开发方法,缺乏文档和复审
8000 好 有合适的系统的开发方法,有充分的文档和复审
11000 优 有自动的开发工具和技术

敏捷开发的小规模、频繁迭代的前提条件是是用户积极参与的项目

正确答案: A

是
否

敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。

下面几种白箱测试技术,哪种是最强的覆盖准则( )

正确答案: D

语句覆盖
条件覆盖
判定覆盖
条件组合覆盖

判定覆盖:判定覆盖就是设计若干个测试用例,运行被测程序,使得程序中每个判断的取真分支和取假分支至少经历一次。 (判断为真或者判断为假)

语句覆盖:就是度量被测代码中每个可执行语句是否被执行到了 (每个语句执行一次)

条件覆盖:它指的是设计足够多的测试用例,使得被测试程序中的每个逻辑条件的可能值至少被满足一次。 (每个【逻辑】条件满足一次)

判定覆盖只关心判定表达式的值(真/假),而条件覆盖涉及到判定表达式的每个条件的值(真/假)。 (判定中有多个条件)

判定/组合就是他们的并集

路径测试:路径测试就是设计足够的测试用例,覆盖程序中所有可能的路径;

路径测试是最强的覆盖准则。

系统模型由对象模型、()组成。

正确答案: C

静态模型和功能模型
动态模型和过程模型
动态模型和功能模型
静态模型和操作模型

软件可维护性的特性中相互矛盾的是( )

正确答案: C

可修改性和可理解性
可测试性和可理解性
效率和可修改性
可理解性和可读性

决定软件可维护性的因素:**可理解性,可测试性,可修改性,可移植性,可重用性。**这五个特性之间本身没有矛盾

在规定的条件下和规定的时间间隔内,软件实现其规定功能的概率称为( )。

正确答案: C

可扩展性
可接近性
可靠性
稳定性

C,可靠性强调概率。

下面能作为软件需求分析工具的是( )。

正确答案: D

PAD图
程序流程图
甘特图
数据流程图(DFD图)

软件需求分析方法包括结构化分析方法面向对象的分析方法两大类,前者常用工具为数据流图( DFD )、数据字典( DD )、判定表、判定树等

指软件必须能够不断进化以满足客户的需求变化,是软件产品最根本的特性的软件质量属性是( )

正确答案: C

有效性
可依赖性
可维护性
可用性

只要维护性高,客户的要求就能满足

下面有关DAO模式,

正确答案: B

解决的问题是根据数据源不同,数据访问也不同
本质是封装数据

DAO的本质是提供数据访问接口

UML 是一种面向对象的分析设计方法,即OOA/OOD方法。()

正确答案: B

正确
错误

UML 是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法

内聚程度最低的是 ( ) 内聚

正确答案: A 你的答案: A (正确)

偶然
过程
顺序
时间

把内聚按紧密程度从低到高排列次序为

偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、信息内聚、功能内聚

​ 在软件质量因素中,软件在异常条件下仍能运行的能力成为软件的_____。

正确答案: B 你的答案: D (错误)

安全性
健壮性
可用性
可靠性

可用性是在某个考察时间,系统能够正常运行的概率或时间占有率期望值。

可靠性系统在一定时间内、在一定条件下无故障地执行指定功能的能力可能性
健壮性是在异常和危险情况下系统生存的能力

组成 UML 有三种基本的建筑块是:( 关系 ),事物和图

正确答案: A 你的答案: B (错误)

关系
类 
用例
实体

下列关于状态图的说法中,正确的是( )

正确答案: C 你的答案: B (错误)

状态图是 UML 中对系统的静态方面进行建模的五种图之一。
 状态图是活动图的一个特例,状态图中的多数状态是活动状态
//活动图和状态图是对一个对象的生命周期进行建模,描述对象随时间变化的 行为。
状态图强调对有几个对象参与的活动过程建模,而活动 图更强调对单个反应型对象建

活动图是状态图的特例

确认测试是在需求分析阶段

CMMI中文全称为( )

正确答案: B 你的答案: A (错误)

软件能力成熟度模型
软件能力成熟度模型集成
质量管理体系
软件工程研究所

在软件危机中表现出来的软件质量差的问题,其原因是_______。

正确答案: C 你的答案: C (正确)

软件研发人员素质太差
用户经常干预软件系统的研发工作
没有软件质量标准
软件开发人员不遵守软件质量标准

在软件危机中表现出来的软件质量差的问题没有软件质量标准

关于敏捷开发的特征,不正确的是___。

正确答案: B 你的答案: C (错误)

通过各类文档和面对面交谈,实现开发团队各成员之间的高效率沟通
以可运行的软件片段作为首要交付物(deliverables)
对开发者的素质要求高,一个人可能身兼传统软件开发的多种角色
开发团队需保持与用户的密切沟通,快速迭代

*敏捷开发的交付物是-------可执行的软件,让用户能更早的体验、理解原始需求,反过来也更好的促进了需求的改进;同样可执行的软件也促进了开发的技术创新。所以不是软件片段。*

下面对对象概念描述正确的是()

正确答案: A 你的答案: B (错误)

对象间的通信靠消息传递
对象是名字和方法的封装体
任何对象必须有继承性
对象的多态性是指一个对象有多个操作

对象之间进行通信的构造叫做消息, A 正确。

多态性是指同一个操作可以是不同对象的行为, D 错误。对象不一定必须有继承性, C 错误。封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作, B 错误

如果一个软件企业希望达到成熟度等级2级目标,那么该企业就要在软件项目的开发过程中执行该成熟度等级中的七个过程域中的所有( )

!!!cmm的过程域 正确答案: D 你的答案: C (错误)

特定目标
实践
共性目标
过程域

CMMI将能力成熟度分为5个级别:初始级,已管理级,已定义级,量化管理级,优化级。

除了成熟度等级,CMMI还有一个重要的概念是过程域(Process Area)。

!!!**过程域指出了达到某个成熟度等级必须要解决的一族问题。**除了初始级以外,每个成熟度等级都有若干个过程域

在结构性的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标( )

正确答案: A 你的答案: C (错误)

需求分析阶段
详细设计阶段
概要设计阶段
可行性研究阶段

!!!需求分析-系统测试

概要设计-集成测试
详细设计-单元测试

自底向上集成测试过程中,需要给每个被测模块构造()。

正确答案: A 你的答案: B (错误)

驱动模块
存根模块(桩模块)
底层模块
顶层模块

自底向上需要驱动模块,自底向上 需要动力;驱动模块

自顶向下需要桩模块 ,自顶向下 看见木桩 ;桩模块;

当使用自顶向下渐增式方法将模块结合到程序中,有()两种集成策略。

正确答案: C D 你的答案: B C (错误)

非渐增式集成
渐增式集成
深度优先集成
宽度优先集成

有点类似迷宫算法里的:深度优先 和 广度优先

针对图中条件语句结构,采用白盒测试的路径覆盖方法,需要()个测试用例。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8Ijcxq7w-1662477289748)(https://uploadfiles.nowcoder.com/images/20170421/4155837_1492769261331_E44798142B62CED1B5F082EC76E930D7)]

正确答案: D 你的答案: C (错误)

1
2
3
4

看图一共是1、2、3、4总共4个路径,路径覆盖方法要保证让被测试程序中的每一个分支都至少执行一次,需要覆盖以下几种组合:13、14、23、24

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KWoyeKPU-1662477289749)(https://uploadfiles.nowcoder.com/images/20180224/8277086_1519455694445_3A702B1D8CC80F397FFDBDC57A92E4F8)]

在结构化分析方法中,数据流图是描述系统行为的图形化工具。 【 】

正确答案: B 你的答案: A (错误)

正确
错误

B

数据流图描述数据在系统中如何被传送或变换**,反映系统必须完成的逻辑功能,用于功能建模**;

实体一联系图用于数据建模

状态-迁移图用于行为建模

软件维护困难的主要原因是()

正确答案: C 你的答案: C (正确)

费用低
人员少
开发方法的缺陷
得不到用户支持

答案:C

选项ABD都是可以解决的问题,费用少可以多投入维护费用,人员少可以多招维护人员,得不到用户支持可以多跟用户沟通,相信用户也会重视的。

C选项的开发方法缺陷造成的问题更严重。一个杂乱不按设计规则做出来的软件几乎是不可维护的,因为杂乱无章的调用除了开发者自身,其他人基本上看不懂的

从()方面验证软件需求的正确性。

正确答案: A B C D 你的答案: C (错误)

现实性
有效性
完整性
一致性

下列关于B/S架构软件与C/S架构软件的区别描述错误的是?

正确答案: D 你的答案: B (错误)

B/S属于C/S,浏览器只是特殊的客户端;
C/S可以使用任何通信协议,而B/S这个特殊的C/S架构规定必须实现HTTP协议;
C/S架构的劣势还有高昂的维护成本且投资大
C/S架构维护和升级方式简单

c/s与b/s区别:

client/server是建立是局域网的基础上的,browser/server是建立在广域网的基础上的。

所以: 1. B/S只能用HTTP

2. C/S成本高,维护困难

数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是( )

正确答案: C 你的答案: C (正确)

数据库设计
数据通信
数据定义
数据维护

最基本的功能是数据定义

各种软件维护的类型中最重要的是 ( ) 。

正确答案: A 你的答案: A (正确)

完善性维护
纠错性维护
适应性维护
预防性维护

用户提出新功能或修改已有功能的建议,需要进行完善性维护,这项维护通常占软件维护的大部分工作。

某学生成绩管理系统软件的功能是:输入学生成绩(0 ~ 100分),然后输出成绩的等次。小王为测试该软件,推测软件容易在0分和100分的边界值时容易产生错误,于是他分别测试了0分和100分的两种情况。小王的软件测试方法属于()。

正确答案: C 你的答案: D (错误)

静态测试
白盒测试
边界值分析法
错误推测法

C,边界值分析法,如果是错误推测法,应该输入小于0或大于100的错误数据,查看输出情况。

软件测试用例主要由测试输入数据和()两部分组成

正确答案: A 你的答案: A (正确)

测试的预期结果
测试规划
测试计划
以往测试记录分析

软件测试用例 = 测试预期结果 + 测试用例数据

如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的

正确答案: D 你的答案: C (错误)

条件覆盖
判定/条件覆盖
组合覆盖
判定覆盖

路径测试执行了每个路径,每个判定的结果肯定经历过一次

下面说法正确的选项是( )

正确答案: C 你的答案: C (正确)

β测试先于α测试执行
β测试是在受控环境下进行的测试
模块测试完成之后开始α测试
β测试需要开发者在现场配合测试

alpha测试Beta测试都需要用户参加。但是,alpha测试是用户在开发环境或者是公司内部模拟实际操作环境的测试。Beta是由最终用户来测试,没有开发者参与 。

在以下测试阶段中,( )主要依据是系统设计文档

正确答案: C 你的答案: B (错误)

单元测试
集成测试
系统测试
验收测试

单元测试,详细设计文档

集成测试,概括设计文档

系统测试,系统设计文档

单元—>详细

集成—>概括

系统—>系统

以下关于数据流图中加工的编号说法错误的是( )。

正确答案: A 你的答案: C (错误)

顶层图的图编号为1
子图的编号就是父图中相应加工的编号
子图中加工的编号由子图号、小数点、局部加工编号连接而成
在一张图的内部用局部加工编号就可区别不同的加工

根据层级数据流图分为顶层数据流图、中层数据流图和底层数据流图。除顶层数据流图外,其他数据流图从零开始编号。

层级数据流图只有一个加工,该加工不必编号。0层图编号为1,2,3…
顶层数据流图:

img

总体设计的目的是确定整个系统的()。

正确答案: D 你的答案: D (正确)

规模
测试方案
费用
功能及模块结构

DFD 中的每个加工至少需要( )。

正确答案: D 你的答案: D (正确)

一个输入流
一个输出流
一个输入或输出流
一个输入流和一个输出流

基于DFD的传统体系结构设计方法最主要的缺点是当数据流变化的时候,系统结构也要发生变化

正确答案: A 你的答案: A (正确)

是
否

单元测试的测试用例主要根据( )的结果来设计。

正确答案: D 你的答案: D (正确)

需求分析
源程序
概要设计
详细设计

单元测试 - 详细设计

集成测试 - 概要设计

系统测试 - 需求规格说明

确认测试 - 需求规格说明

验收测试 - 用户需求

口诀:单详,集概,系确需,验用

结构化程序设计主要强调的是( )。

正确答案: D 你的答案: A (错误)

程序的规模
程序的效率
程序设计语言的先进性
程序易读性

结构化程序设计主要强调的是:程序易读性

可行性研究要进行一次 _____ 需求分析。

正确答案: C 你的答案: C (正确)

详细的
全面的
简化的、压缩的
彻底的

第一个体现结构化编程思想的程序设计语言是( )

正确答案: B 你的答案: B (正确)

FORTRAN语言
Pascal语言
C语言
PL/1语言

集成测试以()作为基本测试单元。

正确答案: B C 你的答案: A C (错误)

模块
软件系统
软件子系统
变量

针对“学生成绩 score 是 0≤score≤100 的整数”,采用边界值分析法对有效等价类设计测试数据是()。

正确答案: A 你的答案: D (错误)

0 和 100
-1
101
0 到 100 内所以数据

软件需求规格说明书的作用不包括()

正确答案: D 你的答案: A (错误)

软件验收的依据
用户与开发人员对软件要做什么的共同理解
软件设计的依据
软件可行性研究的依据

可行性研究这项工作在需求规格说明书出炉之前就做了。

结构化程序设计主要强调程序的( )。

正确答案: C 你的答案: A (错误)

效率
速度
可读性
大小

结构化程序设计是以模块功能的处理流程为主要设计,对写入的程序使用逻辑结构,因此对可读性要求较高

在这里插入图片描述

类的行为应该基于状态图进行测试;

软件配置管理的目标不包括:将软件配置到用户环境中

mg-gBIYFSjI-1662477289750)]

总体设计的目的是确定整个系统的()。

正确答案: D 你的答案: D (正确)

规模
测试方案
费用
功能及模块结构

DFD 中的每个加工至少需要( )。

正确答案: D 你的答案: D (正确)

一个输入流
一个输出流
一个输入或输出流
一个输入流和一个输出流

基于DFD的传统体系结构设计方法最主要的缺点是当数据流变化的时候,系统结构也要发生变化

正确答案: A 你的答案: A (正确)

是
否

单元测试的测试用例主要根据( )的结果来设计。

正确答案: D 你的答案: D (正确)

需求分析
源程序
概要设计
详细设计

单元测试 - 详细设计

集成测试 - 概要设计

系统测试 - 需求规格说明

确认测试 - 需求规格说明

验收测试 - 用户需求

口诀:单详,集概,系确需,验用

结构化程序设计主要强调的是( )。

正确答案: D 你的答案: A (错误)

程序的规模
程序的效率
程序设计语言的先进性
程序易读性

结构化程序设计主要强调的是:程序易读性

可行性研究要进行一次 _____ 需求分析。

正确答案: C 你的答案: C (正确)

详细的
全面的
简化的、压缩的
彻底的

第一个体现结构化编程思想的程序设计语言是( )

正确答案: B 你的答案: B (正确)

FORTRAN语言
Pascal语言
C语言
PL/1语言

集成测试以()作为基本测试单元。

正确答案: B C 你的答案: A C (错误)

模块
软件系统
软件子系统
变量

针对“学生成绩 score 是 0≤score≤100 的整数”,采用边界值分析法对有效等价类设计测试数据是()。

正确答案: A 你的答案: D (错误)

0 和 100
-1
101
0 到 100 内所以数据

软件需求规格说明书的作用不包括()

正确答案: D 你的答案: A (错误)

软件验收的依据
用户与开发人员对软件要做什么的共同理解
软件设计的依据
软件可行性研究的依据

可行性研究这项工作在需求规格说明书出炉之前就做了。

结构化程序设计主要强调程序的( )。

正确答案: C 你的答案: A (错误)

效率
速度
可读性
大小

结构化程序设计是以模块功能的处理流程为主要设计,对写入的程序使用逻辑结构,因此对可读性要求较高

在这里插入图片描述

类的行为应该基于状态图进行测试;

软件配置管理的目标不包括:将软件配置到用户环境中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值