软件工程及应用-练习题(2)(全答案版)
软件工程考试习题答案(2)
50.在结构化分析方法(SA)中,与数据流图配合使用的是( )。
A.网络图B.实体联系图C.数据字典D.程序流程图答案:C51.通过( )可以完成数据流图的细化。
A.结构分解B.功能分解C.数据分解D.系统分解答案:B52.分层DFD是一种比较严格又易于理解的描述方式,它的顶层图描述了系统的( )。
A.细节B.输人与输出c.软件的作者D.绘制的时间答案:B53.数据存储和数据流都是( )仅仅所处的状态不同。
A.分析结果B.事件C.动作D.数据答案:D54.数据字典中,一般不包括下列选项中的( )条目。
A.数据流B.数据存储C.加工D.源点与终点答案:D55.在软件需求分析中,开发人员要从用户那里解决的最重要的问题是( )。
A.要让软件做什么B.要给该软件提供哪些信息c.要求软件工作效率怎样D.要让软件具有何种结构答案:A56.需求分析最终结果是产生( )。
A.项目开发计划B.可行性分析报告C.需求规格说明书D.设计说明书答案:C57.SA方法用DFD描述( )。
A.系统的控制流程B.系统的数据结构C.系统的基本加工D.系统的功能答案:D58.SA方法的分析步骤是首先调查了解当前系统的工作流程,然后( )。
A.获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C.获得当前系统的逻辑模型,建立当前系统的物理模型,抽象出目标系统的逻辑模型D.获得当前系统的逻辑模型,建立当前系统的物理模型,建立目标系统的物理模型答案:A59.需求分析阶段不适于描述加工逻辑的工具是( )。
A.结构化语言C.判定树B.判定表D.流程图答案:D60.结构化分析方法(SA)最为常见的图形工具是( )。
A.程序流程图B.实体联系图C.数据流图D.结构图答案:C61.sA方法的基本思想是( )。
A.自底向上逐步抽象B.自底向上逐步分解C.自顶向下逐步分解D.自顶向下逐步抽象答案:C62.下面错误的说法是( )。
软件工程与应用姜楠课后答案
软件工程与应用姜楠课后答案1. 软件设计中模块划分应遵循的准则是()。
[单选题] *低内聚低耦合高内聚高耦合低内聚高耦合高内聚低耦合(正确答案)答案解析:软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖关系适当等。
模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。
模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。
2. 软件测试的目的是()。
[单选题] *评估软件可靠性改正程序中的错误发现程序中的错误(正确答案)发现并改正程序中的错误答案解析:软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心,而不是为了演示软件的正确功能。
不是为了评估软件或改正错误。
3. 在软件开发中,需求分析阶段产生的主要文档是()。
[单选题] *可行性分析报告软件需求规格说明书(正确答案)概要设计说明书集成测试计划答案解析:A错误,可行性分析阶段产生可行性分析报告。
C错误,概要设计说明书是总体设计阶段产生的文档。
D错误,集成测试计划是在概要设计阶段编写的文档。
B正确,需求规格说明书是后续工作如设计、编码等需要的重要参考文档。
4. 在软件开发中,需求分析阶段产生的主要文档是()。
[单选题] *软件需求规格说明书(正确答案)用户手册软件集成测试计划软件详细设计说明书答案解析:】需求分析阶段的工作可以概括为:需求获取、需求分析、编写需求规格说明书、需求评审四个方面。
所以选择A。
5. 数据字典(DD)所定义的对象都包含于() [单选题] *程序流程图数据流图(DFD图)(正确答案)软件结构图方框图答案解析:在数据流图中,对所有元素都进行了命名,所有名字的定义集中起来就构成了数据字典。
因此选A,而B,C,D都不符合。
6. 下面属于黑盒测试方法的是()。
[单选题] *语句覆盖逻辑覆盖边界值分析(正确答案)路径覆盖答案解析:黑盒测试不关心程序内部的逻辑,只是根据程序的功能说明来设计测试用例。
计算机科学与技术考试:2021软件工程真题模拟及答案(2)
计算机科学与技术考试:2021软件工程真题模拟及答案(2)共153道题1、软件生存周期的()工作和软件可维护性有密切的关系。
(单选题)A. 编码阶段B. 设计阶段C. 测试阶段D. 每个阶段试题答案:D2、确认测试计划是在()阶段制定的。
(单选题)A. 可行性研究和计划B. 需求分析C. 概要设计D. 详细设计试题答案:B3、软件设计一般分为总体设计和详细设计,它们之间的关系是()。
(单选题)A. 全局和局部B. 抽象和具体C. 总体和层次D. 功能和结构试题答案:A4、软件生存周期模型不包括()。
(单选题)A. 瀑布模型B. 对象模型C. 增量模型D. 喷泉模型试题答案:B5、下图是被测模块的流程图。
测试数据为:A=1,B=0,X=3;A=2,B=1,X=1。
判断符合如下哪个等级的逻辑覆盖:()。
(单选题)A. 判定覆盖B. 语句覆盖C. 判定/条件覆盖D. 条件覆盖试题答案:D6、面向对象方法有许多特征,如软件系统是由对象组成的;();对象彼此之间仅能通过传递消息互相联系等。
(单选题)A. 开发过程基于功能分析和功能分解B. 强调需求分析重要性C. 把对象划分成类,每个对象类都定义一组数据和方法D. 对已有类进行调整试题答案:C7、测试的关键问题是()(单选题)A. 如何组织软件评审B. 如何选择测试用例C. 如何验证程序的正确性D. 如何采用综合策略试题答案:B8、瀑布模型的问题是()。
(单选题)A. 用户容易参与开发B. 缺乏灵活性C. 用户与开发者易沟通D. 适用可变需求试题答案:B9、软件质量必须在()加以保证。
(单选题)A. 开发之前B. 开发之后C. 可行性研究过程中D. 分析、设计与实现过程中试题答案:D10、软件可维护性的特性中相互矛盾的是()。
(单选题)A. 可修改性和可理解性B. 可测试性和可理解性C. 效率和可修改性D. 可理解性和可读性试题答案:C11、软件生存周期的()工作和软件可维护性有密切的关系。
《软件工程》试题及参考答案(第2套)
《软件工程》试题及参考答案(第2套)《软件工程》试题及参考答案(第2套)一、选择题1.在软件工程中,瀑布模型的生命周期包括以下几个阶段()。
A.需求分析阶段B.设计阶段C.编码阶段D.测试阶段E.维护阶段F.以上都包括参考答案:F.以上都包括2.软件工程的基本特性包括()。
A.可维护性B.可移植性C.可靠性D.可重用性E.可伸缩性F.以上都包括参考答案:F.以上都包括3.以下哪种模型强调迭代和增量开发?A.瀑布模型B.原型模型C.敏捷模型D.螺旋模型参考答案:D.螺旋模型4.软件工程中的需求分析包括()。
A.系统功能需求B.非功能需求C.用户需求D.软件需求E.硬件需求F.以上都包括参考答案:F.以上都包括5.在软件测试中,黑盒测试主要是通过()来检查程序功能是否正确。
A.检查程序内部逻辑B.检查代码覆盖率C.检查输入输出D.检查程序性能参考答案:C.检查输入输出二、填空题1.软件工程中的标准化组织是指由()制定的一系列标准。
参考答案:IEEE2. V字模型的测试活动是()的。
参考答案:并行进行3. 敏捷开发的核心原则是()。
参考答案:个体和交互高于流程和工具4. 软件开发中,CI是指()的集成。
参考答案:持续5. 软件工程中的 CASE 是指()。
参考答案:计算机辅助软件工程三、简答题1.请简要阐述软件工程的定义及其重要性。
参考答案:软件工程是一门研究如何有效地设计、创建和维护软件的学科。
它涵盖了软件开发的全过程,包括需求分析、设计、编码、测试等各个阶段。
软件工程的重要性体现在以下几个方面:1) 提高软件质量:通过采用系统化的方法和标准化的流程,可以减少软件缺陷和错误,提高软件的质量和可靠性。
2) 提高软件开发效率:软件工程提供了一整套的方法和工具,可以提高软件开发的效率和生产率,减少开发周期和成本。
3) 管理软件开发过程:软件工程强调项目管理和团队合作,可以有效地管理软件开发过程,确保项目按时交付,并能够满足用户需求。
软件工程大作业(2)(答案)
软件工程大作业(2)(答案)软件工程作业第二部分一、填空1.结构化分析方法的分析策略是___自顶向下逐步求精_______。
2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。
3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。
4.继承性是子类自动共享其父类的__数据结构和方法____________机制。
5.在面向对象方法中,人们常用状态图描述类中对象的___动态行为________。
6.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为____容错_____软件。
7.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。
8.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。
9.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。
10.对象之间进行通信叫做__消息_____。
11.计算机辅助软件工程这一术语的英文缩写为_CASE_______。
12.McCall提出的软件质量模型包括______11________个软件质量特性。
13.为了便于对照检查,测试用例应由输入数据和预期的___输出结果____两部分组成。
14.软件结构是以____模块__________为基础而组成的一种控制层次结构。
15.结构化语言(PDL)是介于自然语言和____形式语言____之间的一种半形式语言。
16.软件概要设计的主要任务就是__软件结构的设计______。
17.结构化程序设计方法是使用___三种基本控制结构____构造程序。
18.软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自底向上或相反顺序 _____集成的过程。
19.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_____。
二、选择1.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法2.面向对象的开发方法中,(B)将是面向对象技术领域内占主导地位的标准建模语言。
软件工程练习题目及答案
软件工程练习题目及答案[正文]软件工程练习题目及答案一、软件需求工程1、题目:解释什么是软件需求工程?列出软件需求工程的主要活动。
答案:软件需求工程是一门软件工程学科,旨在定义和管理软件系统的需求。
它包括以下主要活动:1.1 需求获取:确定和收集用户和其他相关利益相关者的需求。
1.2 需求分析:对需求进行分析、组织和分类,以确保其完整性和一致性。
1.3 需求规格说明:将需求转化为规范化的文档,包括功能需求、非功能需求等。
1.4 需求验证:与用户和其他利益相关者确认需求的准确性和完整性。
1.5 需求管理:跟踪和控制需求的变化,确保其能够适应项目的变化。
2、题目:什么是需求?请将需求分类并解释每类需求。
答案:需求是指对软件系统的功能、性能、约束和限制等方面的描述。
需求可以分为如下几类:2.1 功能需求:描述系统应该具备的功能和行为,例如用户登录、数据查询等。
2.2 非功能需求:描述系统的性能要求、可靠性、安全性等方面的要求,例如响应时间、可用性等。
2.3 设计约束:描述对系统设计的限制,如使用特定的编程语言或框架。
2.4 约束条件:描述系统操作的限制和前提条件,如系统的运行环境和操作系统等。
二、软件设计和建模1、题目:什么是软件设计?软件设计的目标是什么?答案:软件设计是指定义软件系统的结构、组件和交互的过程。
软件设计的目标是实现软件需求,并确保软件的可靠性、可扩展性和可维护性。
2、题目:简述面向对象分析和设计方法。
答案:面向对象分析和设计是一种用来分析和设计软件系统的方法。
其核心思想是将系统分解为对象,通过对象之间的交互来实现系统功能。
2.1 面向对象分析(OOA):分析系统需求并识别出系统中的对象、对象的行为和它们之间的关系。
2.2 面向对象设计(OOD):基于面向对象分析的结果,设计系统的具体实现方式,定义对象的属性、方法和接口等。
三、软件测试1、题目:什么是软件测试?常见的软件测试方法。
答案:软件测试是指通过运行软件系统来评估其质量和功能的过程。
(完整版)软件工程习题+答案(可编辑修改word版)
一、选择题1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B)A)可行性研究,问题定义,需求分析。
B)问题定义,可行性研究,需求分析。
C)可行性研究,需求分析,问题定义。
D)以上顺序都不对。
(软件开发时期:概要设计、详细设计、软件实现、软件测试)2.可行性研究主要从以下几个方面进行研究:(A)A)技术可行性,经济可行性,操作可行性。
B)技术可行性,经济可行性,系统可行性。
C)经济可行性,系统可行性,操作可行性。
D)经济可行性,系统可行性,时间可行性。
3.耦合是对软件不同模块之间互连程度的度量。
各种耦合按从强到弱排列如下:(C)A)内容耦合,控制耦合,数据耦合,公共环境耦合。
B)内容耦合,控制耦合,公共环境耦合,数据耦合。
C)内容耦合,公共环境耦合,控制耦合,数据耦合。
(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)D)控制耦合,内容耦合,数据耦合,公共环境耦合。
4.在详细设计阶段所使用到的设计工具是:(C )A)程序流程图,PAD 图,N-S 图,HIPO 图,判定表,判定树.B)数据流程图,Yourdon 图,程序流程图,PAD 图,N-S 图,HIPO 图。
C)判定表,判定树,PDL,程序流程图,PAD 图,N-S 图。
D)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD 图、N-S 图、PDL在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS 图)和问题分析图(PAD) .常用的语言描述工具为 PDL(程序设计语言) ,常用的表格描述工具有判定表和判定树.DFD 数据流图:总体设计阶段5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A)A)模块的作用域应在模块的控制域之内。
B)模块的控制域应在模块的作用域之内。
C)模块的控制域与模块的作用域互相独立。
D)以上说法都不对。
大学_软件工程第二部分(软件项目管理)复习试题及答案
软件工程第二部分(软件项目管理)复习试题及答案软件工程第二部分(软件项目管理)复习试题及答案(一)一单项选择1、软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。
A需求分析 B 结构设计 C程序编制 D软件维护2、软件是一种逻辑产品,它的开发主要是(A )。
A研制 B拷贝 C再生产 D复制3、以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。
A喷泉模型 B 增量模型 C瀑布模型 D螺旋模型4、在软件生存周期中,( B )阶段必须要回答的问题是“要解决的问题是做什么?”。
A详细设计 B 可行性分析和项目开发计划 C概要设计 D软件测试5、软件产品与物质产品有很大区别,软件产品是一种(C )产品A有形 B 消耗 C逻辑 D文档6、 ( C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。
A 原型模型B 螺旋模型C 基于知识的智能模型D 喷泉模型7、 ( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
A概要设计 B 详细设计 C 编码 D 测试8、下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是( A )。
A 原型模型B 瀑布模型C 基于知识的智能模型D 变换模型9、下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型10、下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型11、软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为( C )。
A可修改性 B可靠性 C可适应性 D 可重用性12、软件特性中,一个软件能再次用于其他相关应用的程度称为( B )。
软件工程试题与答案 (2)
《软件工程》试卷及答案A卷专业年级姓名得分一、名词解释(每个2分,共10分)1.软件危机2.纯收入3.模块4.原型5.BROOKS定律二、填空题(每题2分,共20分)1.____是计算机程序及其说明程序的各种文档。
_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。
2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。
通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。
3.软件详细设计阶段采用的工具有______。
4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
5.模块的耦合性分为四种类型:____、____、____、____。
6.内聚性有七种类型,最强的是____,最弱的是____。
17.结构图的深度指结构图______,结构图宽度指________。
8.集成测试采用的具体方法有--____、______9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的____、逻辑输入、逻辑输出。
10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。
三、选择题(每题2分,共20分)1.系统定义明确之后,应对系统的可行性进行研究。
可行性研究应包括()。
A.软件环境可行性、技术可行性、经济可行性、社会可行性B.经济可行性、技术可行性、操作可行性C.经济可行性、社会可行性、系统可行性D.经济可行性、实用性、社会可行性2.通过()可以完成数据流图的细化。
A.结构分解B、功能分解C、数据分解D、系统分解3.模块(),则说明模块的独立性越强。
A.耦合越强B、扇入数越高C、耦合越弱D、扇入数越低4.模块()定义为受该模块内一个判断影响的所有模块集合。
A.控制域B、作用域C、宽度D、接口5.面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。
软件工程题库及答案
一、选择题软件(2)1.在软件开发的各种资源中,( D )是最重要的资源。
A 开发工具B 方法C 硬件环境D 人员2.软件的复杂性是(A ),它引起人员通信困难、开发费用超支、开发时间超时等问题。
A 固有的B 人为的C 可消除的D 不可降低的3.3:软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是(D )。
A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档4.软件是一种(B )产品。
A、有形B、逻辑C、物质D、消耗软件危机(1)5.1:开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C )A.软件工程B.软件周期C.软件危机D.软件产生6.2:在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( A )A.软件危机B.软件工程C.程序设计革命D.结构化程序设计7.3:以下哪一项不是软件危机的表现形式( C )(A)成本高(B)生产率低(C) 技术发展快(D)质量得不到保证8.4:“软件危机”产生的主要原因是( A )。
A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件9.5:软件危机是指在软件开发和( C )过程中遇到的一系列严重问题。
A 开发B 使用C维护D更新软件工程(2)10.1:为了解决软件危机人们提出了用(B )的原理来设计软件,这就是软件工程诞生的基础。
(A) 运筹学(B) 工程学(C) 软件学(D) 数学11.2.在软件工程时期,决定软件质量的主要因素是( A )A.管理水平 B.个人程序技术C.小组技术水平 D.硬件的发展12. 3. 软件管理工作涉及到的直接对象不包括( B )。
A.软件开发人员 B.硬件设备 C.项目经费 D.软件项目13. 4. 软件工程方法学有三个要素,它们是(A )A.方法、工具和过程B.质量、进度和成本C.顺序、分支和循环D.入口、过程、出口生命周期及模型(5)14.1:软件工程中描述生命周期的瀑布模型一般包括计划、( A )、设计、编码、测试、维护等几个阶段。
软件工程技术与应用上海交通大学课后题答案
软件工程与实践习题与参考答案[判断题]1.由于今天个人计算机不断发展壮大,人们不再采用软件团队的开发方式。
(×)2.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产。
(×)3.购买大多数计算机系统所需的硬件比软件更昂贵。
(×)4.大多数软件产品在其生命周期中不需要增强功能。
(×)5.大多数软件系统是不容易变化的,除非它们在设计时考虑了变化。
(√)6.一般来说,软件只有在其行为与设计者的目标一致的情况下才能成功。
(×)7.在需求分析过程中,分析员要从用户那里解决的最重要的问题是明确软件做什么。
(√)8.软件需求规格说明书在软件开发中具有重要的作用,它是软件可行性分析的依据。
(×)9.目前存在一个很普遍的现象,即不同的客户提出的需求是相互矛盾的,但每个人都争辩自己是正确的。
(√)l0.利益相关者(stakeholders)是将来购买所开发软件系统的人。
(×)11.需求工程师的任务是将所有利益相关者的信息进行分类以便允许决策者选一个相互一致的需求集。
(×)12.模型是对现实的简化,建模是为了更好地理解所开发的系统。
(√)13.UML语言支特面向对象的主要概念,并与具体的开发过程相关。
(×)14.开发人员与客户创建用例以帮助软件团队理解有多少类型的最终用户将使用这些功能。
(×)15.用例参与者总是人员而不是系统设备。
(×)16.在需求确认过程中需求模型被评审以保证其技术可行性。
(×)17.面对象分析的核心在于建立.一个描述软件系统的模型。
(×)18.分析类用于描述系统中概念层次的对象。
(√)19.在基于川例的面向对象分析过程中,定义交互行为的关键在于通过描述分析类实例之间的消息传递将用例的职责分配到分析类巾。
(√)20.需求评审人员主要由开发人员组成,一般不包括用户。
软件工程及应用课后习题(第1、2章)
第1章1、解释术语(1)软件: 软件是指计算机系统中的程序及其文档。
P16(2)软件工程:软件工程是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科。
P15(3)软件危机:软件生产率、软件质量远远满足不了社会发展的需求,成为社会,经济发展的制约因素,人们通常把这一现象称为“软件危机”。
P152、简答题(1)简述软件开发的本质。
答:软件开发的本质就是实现问题空间的概念和处理逻辑到解空间的概念和处理逻辑之间的映射。
P19(2)简述实施软件开发的基本途径。
答:实施软件开发的基本途径是系统建模。
所谓系统建模,是指运用所掌握的知识,通过抽象,给出该系统的一个结构——系统模型。
P19(3)简述何谓模型以及软件开发中所涉及的模型。
答:模型是一个抽象。
该抽象是在意图所确定的角度和抽象层次对物理系统的一个描述,描述其中的成分和成分之间所具有的特定语义的关系,还包括对该系统边界的描述。
软件开发中所涉及的模型可分为两大类,一类称为概念模型,描述了系统是什么;另一类统称为软件模型,描述了实现概念模型的软件解决方案。
P19(4).简述软件开发所涉及的两大类技术。
答:软件开发所涉及的两大类技术为:一是求解软件的开发逻辑,二是求解软件的开发手段。
P17第2章1、解释术语(1)软件需求软件需求以一种技术形式,描述了一个产品/系统应该具有的功能、性能和其它性质。
P23(2)功能需求功能需求规约了系统或系统构件必须执行的功能。
P24(3)非公能需求非公能需求是性能、外部接口、设计约束和质量属性这4类需求的统称。
P23(4) 需求规约需求规约是一个软件项/产品/系统所有需求陈述的正式文档,它表达了一个软件产品/系统的概念模型。
P282、简述需求与需求规约的基本性质。
答:需求的基本性质:1)必要的,该需求是用户所要求的。
2)无歧义的,该需求只能用一种方式解释。
3)可测的,该需求是可进行测试的。
软件工程习题二答案
软件工程习题二答案软件工程习题二答案软件工程是一门涉及软件开发、测试、维护和管理的学科。
在软件工程的学习过程中,习题是一种常见的学习方式,通过解答习题可以巩固知识,提高解决问题的能力。
本文将提供软件工程习题二的答案,帮助读者更好地理解和应用软件工程的相关知识。
1. 什么是软件过程?答: 软件过程是指在软件开发过程中,根据特定的目标和约束条件,组织、管理和执行一系列活动的过程。
它包括需求分析、设计、编码、测试、部署和维护等阶段,通过合理的规划和控制,可以提高软件开发的效率和质量。
2. 软件过程模型有哪些?答: 软件过程模型是指在软件开发过程中,按照一定的顺序和方法进行组织和管理的模型。
常见的软件过程模型包括瀑布模型、迭代模型、增量模型、螺旋模型和敏捷模型等。
每种模型都有其适用的场景和特点,可以根据具体的项目需求选择合适的模型。
3. 什么是需求工程?答: 需求工程是软件工程中的一个重要环节,它主要关注用户需求的获取、分析和规格化。
需求工程的目标是确保软件开发过程中的需求与用户真正的需求一致,避免开发出不符合用户期望的软件。
需求工程包括需求获取、需求分析、需求规格化和需求验证等步骤。
4. 软件测试的目的是什么?答: 软件测试的主要目的是发现软件中的错误和缺陷,确保软件的质量和可靠性。
通过进行各种测试活动,如单元测试、集成测试、系统测试和验收测试等,可以验证软件是否满足预期的功能和性能要求,提高软件的可靠性和稳定性。
5. 什么是软件配置管理?答: 软件配置管理是指对软件开发过程中的配置项进行有效管理和控制的过程。
配置项包括源代码、文档、测试用例和配置文件等。
通过配置管理,可以追踪和控制软件的变更,确保软件开发过程的可控性和可追溯性。
6. 什么是软件质量保证?答: 软件质量保证是指在软件开发过程中,通过一系列的活动和措施,确保软件的质量和可靠性。
软件质量保证包括质量计划、质量控制和质量评估等方面。
通过制定合理的质量计划、执行有效的质量控制和评估方法,可以提高软件的质量和用户满意度。
软件工程考试题及答案
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。
A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 软件工程的三要素包括()。
A. 方法、工具和过程B. 方法、工具和人员C. 方法、过程和人员D. 工具、过程和人员答案:C3. 软件需求分析阶段的主要任务是()。
A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:A4. 软件设计阶段的主要任务是()。
A. 制定软件开发计划B. 确定软件的体系结构C. 编写软件详细设计文档D. 进行软件测试答案:B5. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是无错误的D. 证明软件是可维护的答案:B6. 软件维护不包括以下哪项活动()。
A. 改正性维护B. 适应性维护C. 完善性维护D. 软件设计答案:D7. 软件项目管理的主要任务不包括()。
A. 进度管理B. 质量管理C. 风险管理D. 软件编码答案:D8. 面向对象方法中,对象的基本特性不包括()。
A. 抽象B. 封装C. 继承D. 多态答案:D9. UML(统一建模语言)是一种()。
A. 程序设计语言B. 数据库查询语言C. 建模语言D. 脚本语言答案:C10. 在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。
A. 客户的需求不明确B. 项目范围的扩大C. 技术实现的困难D. 软件已经完成答案:D二、多项选择题(每题3分,共15分)11. 软件工程的基本原理包括()。
A. 抽象B. 模块化C. 逐步求精D. 迭代开发答案:ABC12. 软件需求分析阶段的输出包括()。
A. 需求规格说明书B. 用户手册C. 系统架构图D. 测试计划答案:A13. 软件设计阶段的主要文档包括()。
A. 架构设计文档B. 详细设计文档C. 用户手册D. 测试计划答案:AB14. 软件测试的类型包括()。
《软件工程》试题及参考答案(第2套)
第一部分选择题1、在软件开发模型中,提出最早、应用最广泛的模型是( )A、瀑布B、螺旋C、演化D、智能2、软件可行性研究一般不考虑( )A、是否有足够的人员和相关的技术来支持系统开发B、是否有足够的工具和相关的技术来支持系统开发C、待开发软件是否有市场、经济上是否合算D、待开发的软件是否会有质量问题3、软件详细设计的主要任务是确定每个模块的( )A、算法和使用的数据结构B、外部接口C、功能D、编程4、为了提高软件的可维护性,在编码阶段应注意( )A.保存测试用例和数据B.提高模块的独立性C.文档的副作用D.养成好的程序设计风格5、快速原型模型的主要特点之一是( )A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件6、软件需求分析的主要任务是准确地定义出要开发的软件系统是( )A.如何做B.怎么做C.做什么D.对谁做7、软件维护产生的副作用,是指( )A、开发时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作8、软件生命周期中所花费用最多的阶段是( )A、详细设计B、软件编码C、软件测试D、软件维护9、模块的内聚性最高的是( )A、逻辑内聚B、时间内聚C、偶然内聚D、功能内聚10、与确认测试阶段有关的文档是( )A、需求规格说明书B、概要设计说明书C、详细设计说明书D、源程序11. 面向对象分析是对系统进行()的一种方法。
A 需求建模B 程序设计C 设计评审D 测试验收13、因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )A.校正性维护B.适应性维护C.完善性维护D.预防性维护14、一个模块内部各程序都在同一数据结构上操作,这个模块的内聚性称为( )。
A、时间内聚B、功能内聚C、信息内聚C、过程内聚15.面向对象技术中,对象是类的实例。
对象有三种成份:( )、属性和方法(或操作)。
A. 标识B. 规则C. 封装D. 消息16.数据字典是用来定义_()中的各个成份的具体含义的。
软件工程试题与答案(2)
《软件工程》试卷及答案 A卷专业年级姓名得分一、名词解释(每个2分,共10分)1.软件危机2.纯收入3.模块4.原型定律二、填空题(每题2分,共20分)1.____是计算机程序及其说明程序的各种文档。
_____是有关计算机程序功能、设计、编制、使用的文字或图形资料。
2.软件生存周期是指一个软件从提出开发要求开始直到该软件报废不止的整个时期。
通常,软件生存周期包括问题定义、____、____、总体设计、详细设计、____、____、软件维护活动,可以将这些活动以适当方式分配到不同阶段去完成。
3.软件详细设计阶段采用的工具有______。
4.____的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
5.模块的耦合性分为四种类型:____、____、____、____。
6.内聚性有七种类型,最强的是____,最弱的是____。
7.结构图的深度指结构图______,结构图宽度指________。
8.集成测试采用的具体方法有--____、______9.对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的 ____、逻辑输入、逻辑输出。
10.软件编码阶段要善于积累编程的经验,使得编出的程序____,易于____,从而提高软件质量。
三、选择题(每题2分,共20分)1.系统定义明确之后,应对系统的可行性进行研究。
可行性研究应包括()。
A.软件环境可行性、技术可行性、经济可行性、社会可行性B.经济可行性、技术可行性、操作可行性C.经济可行性、社会可行性、系统可行性D.经济可行性、实用性、社会可行性2.通过()可以完成数据流图的细化。
A.结构分解 B、功能分解 C、数据分解 D、系统分解3.模块(),则说明模块的独立性越强。
A.耦合越强 B、扇入数越高 C、耦合越弱 D、扇入数越低4.模块()定义为受该模块内一个判断影响的所有模块集合。
A.控制域 B、作用域 C、宽度 D、接口5.面向数据结构的设计方法(Jackson方法)是进行()的形式化的方法。
软件工程(习题及参考答案)
第1章概述(习题与参考答案)[判定题]1. 由于今天个人运算机不断进展壮大,人们再也不采纳软件团队的开发方式。
(×)2. 由于软件是产品,因此能够应用其他工程制品所用的技术进行生产。
(×)3. 购买大多数运算机系统所需的硬件比软件更昂贵。
(×)4. 大多数软件产品在其生命周期中不需要增强功能。
(×)5. 大多数软件系统是不容易转变的,除非它们在设计时考虑了转变。
(√)6. 一样来讲,软件只有在其行为与设计者的目标一致的情形下才能成功。
(×)[选择题]1. ()因素促使运算机系统愈来愈复杂。
(D)A. 运算机内存和存储容量上的庞大增加B. 外部输入/输出选项的加倍多样性C. 运算机体系结构方面的深刻转变D. 以上所有选项2. 下面的()再也不是现代软件工程师关注的问题。
(A)A. 什么缘故运算机硬件的本钱这么高?B. 什么缘故软件需要很长时刻才能完成?C. 什么缘故开发一个软件的本钱这么高?D. 什么缘故不能在产品发布前去除软件错误?3. 软件会慢慢退化而可不能磨损,其缘故在于()。
(C)A. 软件通常暴露在恶劣的环境下B. 软件错误通常发生在利用以后C. 不断的变更使组件接口之间引发错误D. 软件备件很难订购4. 大多数软件仍然是定制开发的,其缘故在于()。
(C)A. 软件组件重用是十分普遍的B. 可重用的组件太昂贵而无法利用C. 软件在不利用其他组件的情形下很容易构造出来D. 商业组件在很多应用领域中能够取得5. 下面的()说法是正确的。
(C)A. 软件危机在20世纪70年代末期全面暴发B. 当前先进的软件工程方式已经解决了软件危机的问题C. 软件危机是指在运算机软件的开发和保护进程中碰到的一系列严峻问题D. 软件危机是指在软件产品中存在一系列的质量问题6. 软件工程的大体目标是()。
(B)A. 排除软件固有的复杂性B. 开发高质量的软件C. 尽力发挥开发人员的制造性潜能D. 更好地保护正在利用的软件产品7. ()是将系统化的、标准的、可定量的方式应用于软件的开发、运行和保护的进程,它包括方式、工具和进程三个要素。
软件工程及应用-练习题(2)(全答案版)
软件工程及应用练习题一. 单项选择题1.不属于软件架构设计工作的内容是 D 。
A. 软件的层次结构B. 全局数据结构C. 接口D. 程序流程图2.有三个模块,它们都访问同一组数据,各部件之间只有数据关系,没有控制关系。
把这三个模块放到一起,形成的内聚是 A 。
A. 通信内聚B. 过程内聚C. 顺序内聚D. 功能内聚3.可以用于制定软件项目进度计划的工具是 D 。
A. 部署图B. 用例图C. 时序图D. 甘特图4.软件企业最重要的资产是 A 。
A. 人B. 工具C. 办公楼D. 技术5.软件开发过程中一个对所要解决的问题进行定义并确定系统范围的活动是B 。
A. 风险管理活动B. 问题定义活动C. 可行性研究活动D. 需求分析活动6.作为设计活动的核心角色,在整个项目中对设计活动进行领导和协调的角色是A 。
A. 系统架构师B. 构件设计师C. 项目经理D. 数据库设计师7.实施活动将按照设计说明书进行开发,具体工作体现在三个方面,下面的工作不属于实施活动的是 D 。
A. 编码B. 单元测试C. 集成D. 验收测试8.测试是选择适当的测试用例执行被测试程序的过程,目的在于 A 。
A. 发现程序错误B. 证明程序无错C. 改进程序质量D. 预防程序缺陷9.在可行性研究中,首先考虑用户是否已经拥有或者准备购买相应的计算机硬件和软件,以支持新系统的开发和应用。
这项研究任务属于 A 。
A. 技术可行性B. 操作可行性C. 经济可行性D. 操作可行性10.“验收标准1:在使用该产品的前3周,系统从未发生过崩溃或者死机现象”,这项需求描述体现的需求分析建模原则是 B 。
A. 循序渐进B. 可验证性C. 可追踪性D. 自顶向下逐层分解11.为了得到一个高质量的软件系统,除了设计人员的经验和创造性之外,还要遵守一些设计指导原则。
下面指导原则中正确的是 D 。
A. 应尽早考虑系统细节B. 应对系统做最大程度地分解,越彻底越好C. 应选择最酷的技术D. 应考虑系统的可维护性与可扩展性12.在一个影像传输子系统中,一个模块负责从摄像头中读取影像信息,然后由影像增强模块锐化、几何校正,再由压缩模块压缩影像数据,之后传输模块负责传递数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程及应用练习题一.单项选择题1.不属于软件架构设计工作的容是 D 。
A. 软件的层次结构B. 全局数据结构C. 接口D. 程序流程图2.有三个模块,它们都访问同一组数据,各部件之间只有数据关系,没有控制关系。
把这三个模块放到一起,形成的聚是 A 。
A. 通信聚B. 过程聚C. 顺序聚D. 功能聚3.可以用于制定软件项目进度计划的工具是 D 。
A. 部署图B. 用例图C. 时序图D. 甘特图4.软件企业最重要的资产是 A 。
A. 人B. 工具C. 办公楼D. 技术5.软件开发过程中一个对所要解决的问题进行定义并确定系统围的活动是B 。
A. 风险管理活动B. 问题定义活动C. 可行性研究活动D. 需求分析活动6.作为设计活动的核心角色,在整个项目中对设计活动进行领导和协调的角色是A 。
A. 系统架构师B. 构件设计师C. 项目经理D. 数据库设计师7.实施活动将按照设计说明书进行开发,具体工作体现在三个面,下面的工作不属于实施活动的是 D 。
A. 编码B. 单元测试C. 集成D. 验收测试8.测试是选择适当的测试用例执行被测试程序的过程,目的在于 A 。
A. 发现程序错误B. 证明程序无错C. 改进程序质量D. 预防程序缺陷9.在可行性研究中,首先考虑用户是否已经拥有或者准备购买相应的计算机硬件和软件,以支持新系统的开发和应用。
这项研究任务属于 A 。
A. 技术可行性B. 操作可行性C. 经济可行性D. 操作可行性10.“验收标准1:在使用该产品的前3,系统从未发生过崩溃或者死机现象”,这项需求描述体现的需求分析建模原则是 B 。
A. 循序渐进B. 可验证性C. 可追踪性D. 自顶向下逐层分解11.为了得到一个高质量的软件系统,除了设计人员的经验和创造性之外,还要遵守一些设计指导原则。
下面指导原则中正确的是 D 。
A. 应尽早考虑系统细节B. 应对系统做最大程度地分解,越彻底越好C. 应选择最酷的技术D. 应考虑系统的可维护性与可扩展性12.在一个影像传输子系统中,一个模块负责从摄像头中读取影像信息,然后由影像增强模块锐化、几校正,再由压缩模块压缩影像数据,之后传输模块负责传递数据。
把这些模块放到一起,形成的聚是 C 。
A. 通信聚B. 过程聚C. 顺序聚D. 功能聚13.类图是面向对象设计建模描述法中的重要模型之一,下面的类图中Inventory和Product两个类之间的关系是 C 。
A. 泛化关系B. 依赖关系C. 关联关系D. 包含关系14.在软件开发历史上,有大量的项目因为界面的设计而失败。
下列人机界面设计法中,可能导致项目失败的是 C 。
A. 理解用户的特征B. 理解用户的任务C. 避免用户参与D. 遵循良好的界面设计原则15.程序设计语言的选择取决于项目的性质,如果开发Web应用软件,那么应该选用的是 B 。
A. FortranB. JavaC. DelphiD. C16.对于程序中的语句进行适当的处理,能够增加程序的可读性.可理解性以及提高程序质量。
对于下面的函数:int comp(int x){if x>0 thenreturn 100+x;elsereturn 0;}评价正确的是。
A. 违背了模块的单入口和单出口的限制条件B. 函数返回值类型不应为intC. 法名必须大写D.函数返回值不可以为017.常用的黑盒测试技术是 C 。
A. 基本路径测试B. 条件测试C. 等价类划分法D. 循环测试18.软件特征量用于解决软件开发中的某些定量问题。
以软件开发和维护过程所需的数如人民币或者美元等货币单位表示的特征量是 B 。
A. 软件规模B. 开发成本C. 开发工作量D. 开发期限19.过程模型有很多种,其中格地规定了每个阶段必须提交的交付物,而且每个阶段结束前,都必须有正式的审查的是 A 。
A. 瀑布模型B. RAD模型C. 增量模型D. 螺旋模型20.下列文档容不会出现在问题定义报告中的是 C 。
A. 项目目标B. 项目围C. 软件构架D. 开发期21.为了保证软件的质量所需要的一系列有计划的和有系统的活动,称之为A 。
A. 软件质量保证B. 软件质量检查C. 软件配置管理D. 软件设计22.在软件开发过程中存在不同类型的风险。
预算、进度、人员、资源等面的潜在问题,对软件产生的影响属于 B 。
A. 商业风险B. 项目风险C. 技术风险D. 环境风险23.软件的项目开发开始于哪项活动 B 。
A. 风险管理活动B. 问题定义活动C. 可行性研究活动D. 需求分析活动24.在整个项目中负责定义表、索引、视图、触发器、存储过程、表空间或者存储参数的角色是 D 。
A. 系统架构师B. 构件设计师C. 项目经理D. 数据库设计师25.实施活动中将单独的软件构件合并成一个整体的软件系统的工作是C 。
A. 编码B. 单元测试C. 集成D. 验收测试26.由用户和客户在软件开发团队的管理下执行的测试是 B 。
A. 验收测试B. α测试C. β测试D. 系统测试27.软件过程模型中,具有开发速度快、鼓励复用的模型是 B 。
A. 瀑布模型B. RAD模型C. 增量模型D. 螺旋模型28.阐述项目目标、项目围、开发期、预计投资金额的软件项目文档是 AA. 问题定义报告B. 软件需求规格说明书C. 系统设计文档D. 可行性研究报告29.在可行性研究中,要考虑新系统的利益是否超过开发成本。
这项研究任务属于C 。
A. 技术可行性B. 操作可行性C. 经济可行性D. 操作可行性30.“在软件需求分析中,要着重描述系统必须做什么,而不是如去做出系统。
”这是需求分析建模原则中的 D 。
A. 循序渐进原则B. 可验证性原则C. 可追踪性原则D. 远离实现原则31.类图是面向对象设计建模描述法中的重要模型之一,下面的类图中Apple和Fruit 两个类之间的关系是 A 。
A. 泛化关系B. 依赖关系C. 关联关系D. 包含关系32.人机界面设计法应以 B 为中心。
A. 程序员B. 用户C. 技术D. 美观33.程序设计语言的选择取决于项目的性质,如果开发科学计算的软件,那么应该选用的是 A 。
A. FortranB. JavaC. DelphiD. C34.对于程序的注解,说确的是 D 。
A. 写注解浪费程序员的时间B. 写注解是一个会降低编程效率的坏习惯C. 优秀的程序员从来不写注解D.注解对于理解程序起着重要的作用。
35.黑盒测试技术常用来监测下列类型的错误,除了。
A. 漏掉的功能B. 接口错误C. 数据结构错误D. 性能问题36.软件特征量用于解决软件开发中的某些定量问题。
以人月或者人年表示的特征量是C 。
A. 软件规模B. 开发成本C. 开发工作量D. 开发期限37.可以用于表示软件项目重要事件的工具是 B 。
A. 部署图B. 里程碑图C. 时序图D. 甘特图38.在软件企业中,首席技术官、技术专家、风险管理师、财务人员、过程总监、领域专家都属于 C 类型的角色。
A. 管理角色B. 项目主要技术角色C. 项目辅助角色D. 企业外部角色39.关于软件质量说法错误的是 D 。
A. 软件需判断质量优劣的基础,不满足要求,就没有质量。
B. 不遵守软件开发的指导原则,软件的质量就会出现问题。
C. 需求中会存在一些没有明确提出的隐含要求,如果没满足,质量就有问题。
D. 软件质量就是程序员的事,与其他人无关,因为软件就是他们编写的。
40.在软件开发过程中存在不同类型的风险。
设计、实现、接口、验证和维护等面的潜在问题,对软件产生的影响属于 C 。
A. 商业风险B. 项目风险C. 技术风险D. 环境风险41.下面各项活动中属于项目管理活动的是 A 。
A. 质量保证活动B. 问题定义活动C. 可行性研究活动D. 需求分析活动42.在整个项目中负责控制整个设计流程,控制设计成本,组织设计复审,配置开发资源、估算开发成本的角色是 C 。
A. 系统架构师B. 构件设计师C. 项目经理D. SQA人员43.实施活动中将一个模块作为独立的程序模块进行测试,以保证它能够正确执行规定的功能的活动是 B 。
A. 编码B. 单元测试C. 集成D. α测试44.由用户和客户在他们的工作现场进行的测试是 D 。
A. 验收测试B. α测试C. β测试D. 系统测试45.下列过程模型中不属于演进模型是 B 。
A. RUP模型B. RAD模型C. 增量模型D. 螺旋模型46.软件开发中,可能出现“开发了一个没人真正需要的产品”的问题,是 DA. 技术风险B.项目风险C. 人员风险D. 商业风险47.在下列任务中,不属于可行性研究的任务是 D 。
A. 技术可行性分析B. 评估风险C.制定营销计划D. 设计软件算法48.“从系统最初的需求获取到最后的需现,中间需要记录这些环节,以便清楚地看到需求的前后转换”这是需求分析建模原则中的 C 。
A. 循序渐进原则B. 可验证性原则C. 可追踪性原则D. 远离实现原则49.设计软件的层次结构,这项工作是在软件开发的 C 阶段做的工作。
A. 问题定义阶段B. 详细设计阶段C. 架构设计阶段D. 可行性分析阶段50.有三个模块,它们之间只有控制联系,没有数据关系。
把这三个模块放到一起,形成的聚是 A 。
A. 过程聚B. 控制聚C. 顺序聚D. 功能聚51.类图是面向对象设计建模描述法中的重要模型之一,下面的类图中VIP和User两个类之间的关系是 A 。
A. 泛化关系B. 依赖关系C. 关联关系D. 包含关系52.下列人机界面设计法中,有助于项目取得成功的做法是 D 。
A. 忽略用户的特征B. 避免用户的参与C. 追求最新的技术D. 以用户为中心53.程序设计语言的选择取决于项目的性质,如果开发系统软件和实时软件,那么应该选用的是 C 。
A. FortranB. JavaC. DelphiD. C54.编码风格是程序设计质量的一个重要面,下列容属于编码风格是 D 。
A. 程序注解B. 程序的标识符C. 程序清单的安排D.程序的数据结构。
55.下列测试法中,不属于白盒测试法的是 C 。
A. 基本途径测试B. 条件测试C. 边界值分析测试D. 循环测试56.软件特征量用于解决软件开发中的某些定量问题。
以代码行数或功能点数表示的特征量是 A 。
A. 软件规模B. 开发成本C. 开发工作量D. 开发期限57.下列关于甘特图的用途说确的是 B 。
A. 表示软件层次结构B. 表示项目进度计划C. 用于测试缺陷分析D. 表示算法结构58.在软件企业中,事业部经理、项目经理、软件部长都属于 A 类型的角色。
A. 管理角色B. 项目主要技术角色C. 项目辅助角色D. 企业外部角色59.关于用例模型中参与者(Actor)的说法错误的是 D 。