软工题第六章

合集下载

张海藩《软件工程导论》(第6版)(章节题库 第6章 详细设计)【圣才出品】

张海藩《软件工程导论》(第6版)(章节题库 第6章 详细设计)【圣才出品】
圣电子书

十万种考研考证电子书、题库视频学习平台
第 6 章 详细设计
一、选择题 1.在软件开发过程中,以下说法正确的是( )。 A.程序流程图是逐步求精的好工具 B.N-S 图不可能任意转移控制,符合结构化原则 C.判定表是一种通用的设计工具 D.程序流程图和 N-S 图都不易表达模块的层次结构 【答案】B 【解析】程序流程图本质上不是逐步求精的好工具,它会使程序员过早地考虑程序的控 制流程,而不去考虑程序的全局结构;判定表不是一种通用的设计工具,没有一种简单的方 法使用它能同时清晰地表示顺序和循环等结构;程序流程图不易表示模块的层次结构,N- S 图则可以表示模块的层次结构。
11.程序控制一般分为( )、分支、循环三种基本结构。 A.分块 B.顺序 C.循环 D.分支 【答案】B 【解析】程序控制一般分为顺序结构、分支结构也成选择结构、循环结构三种基本结构, 任何一种结构都能由这三种结构组成。
12.Jackson 方法根据( )来导出程序结构。 A.数据结构 B.数据间的控制结构
4 / 14
圣才电子书 十万种考研考证电子书、题库视频学习平台

10.对于详细设计,下面说法错误的是( )。 A.详细设计是具体地编写程序 B.详细设计是细化成很容易地从中产生程序图纸 C.详细设计的结果基本决定了最终程序的质量 D.详细设计中采用的典型方法是结构化程序设计方法 【答案】A 【解析】详细设计阶段,主要对模块内的算法和模块内的数据结构进行设计,具体编写 程序属于编码阶段的任务。
8.( )工具在软件详细设计过程中不采用。 A.判定表 B.IPO 图 C.PDL D.DFD 图 【答案】D 【解析】DFD 图(数据流图)是软件需求阶段过程中采用的工具,用于描述系统的分 解,即描述系统由哪几个部分组成,各部分之间有什么联系等等。

软件工程导论第六版课后习题答案完整版

软件工程导论第六版课后习题答案完整版

软件工程导论第六版课后习题答案完整版首先,感谢您对软件工程导论课后习题答案的需求。

以下是软件工程导论第六版课后习题的完整答案。

第一章:软件工程概述1.1 问题1. 什么是软件工程?答:软件工程是一种应用工程原理、方法和工具来开发和维护高质量软件的学科。

1.2 问题1. 什么是软件?答:软件是一系列按照特定顺序组织的计算机数据和指令。

第二章:软件过程模型2.1 问题1. 软件过程模型有哪些类型?答:常见的软件过程模型包括瀑布模型、迭代模型、螺旋模型和敏捷开发模型等。

2.2 问题1. 瀑布模型的特点是什么?答:瀑布模型是一种线性顺序模型,以阶段划分为基础,每个阶段的任务在进入下一个阶段前必须完成。

第三章:需求分析与规格说明3.1 问题1. 软件需求描述包括哪些方面的内容?答:软件需求描述需要包括功能性需求、非功能性需求、用户需求和系统需求等。

3.2 问题1. 什么是需求跟踪?答:需求跟踪是指在软件开发过程中,通过建立需求和软件项目中其他相关工件之间的关联,确保需求的准确实现和变更的有效管理。

第四章:软件设计4.1 问题1. 软件设计的目标是什么?答:软件设计的目标是通过确定软件的整体结构和组成部分,确保软件满足需求并具有良好的可维护性和可重用性。

第五章:软件测试与维护5.1 问题1. 什么是软件测试?答:软件测试是一种评估和改进软件质量的过程,目的是发现错误并提高软件的可靠性和可用性。

5.2 问题1. 什么是软件维护?答:软件维护是指在软件交付后的整个生命周期中对软件进行修改和改进,以满足用户需求和修复错误。

第六章:软件配置管理6.1 问题1. 软件配置管理的目标是什么?答:软件配置管理的目标是确保软件在开发和维护过程中的可控性和可追踪性,以及保持软件配置的稳定性和一致性。

6.2 问题1. 软件版本控制是什么?答:软件版本控制是指对软件的不同版本进行管理,包括版本的创建、检出、合并和更新等操作。

至此,我们完成了软件工程导论第六版课后习题的完整答案。

软件项目管理第六章课后习题答案

软件项目管理第六章课后习题答案

六、项目质量管理1. 项目质量包含哪几方面的含义?答:影响软件质量的主要因素,这些因素是从管理角度对软件质量的度量。

McCall 等人1979年提出的质量要素模型得到普遍认可,该模型把影响软件质量的因素划分为三组:正确性、健壮性、效率、完整性、可用性、安全性(产品运行);可理解性、可维修性、灵活性、可测试性(产品修改);可移植性、可重用性、互运行性(产品转移)。

2. 简述软件项目的质量计划包括哪些内容,以及编制质量计划的主要依据是什么?答:质量管理计划描述项目的质量管理体系,即实施质量管理所需要的组织结构、责任、程序、过程和资源。

质量管理计划根据质量规划得到,其内容包括质量方针、质量目标、界定说明和项目描述。

项目的质量方针是由高层管理部门提出的关于质量的意图和方针,此政策应该描述质量目标、质量层次、执行政策以及项目组中各成员的责任。

项目的质量方针是由高层管理部门提出的关于质量的意图和方针,此政策应该描述质量目标、质量层次、执行政策以及项目组中各成员的责任。

项目的界定说明是项目立项时将项目的可交付成果记录下来的项目目标文件。

项目描述按照项目立项时确定的产品说明为基础,随着项目发展阶段逐渐深化、细化,直至包含技术问题的细节和影响质量的具他问题。

质量管理计划制定应该基于项目章程、项目管理计划(其中的需求管理计划、风险管理计划、干系人参与计划、范围基准等)、项目文件(其中的假设日志、需求文件、需求跟踪矩阵、干系人登记册等)、事业环境因素(其中的政策法规、软件领域的相关规则/标准/指南、组织结构、市场条件、工作条件和文化观念等)和组织过程资产(组织的质量管理体系、质量模板、历史数据等)等已有相关文档和知识。

3. 你认为项目质量管理与项目质量控制过程有哪些联系?项目变更对于质量控制有哪些影响?答:项目的质量管理与质量控制有以下几点联系:1)质量计划是质量控制和质量保证的共同依据。

2)达到质量要求是质量控制和质量保证的共同目的。

第六章仿真试题

第六章仿真试题

D、 运行效率高,开发效率高
[答案]
(2)尽管高级语言比低级语言更容易理解,并且易于对高级语言编写的程序进行维护和升级,但在( )的场合,还经常全部或部分地使用低级语言。
A、 对时间和空间有严格要求
B、 并行处理
C、 事件驱动
D、 电子商务
[答案]
(3)在低级语言中,汇编语言与机器语言十分接近,汇编语言使用了( )来提高程序的可读性。
[答案]
5、20 世纪 50 年代以来,出现了许多不同的程序设计语言,请回答下列有关计算机语言的问题:
(1)下列语言中哪个语言是低级语言( )
A、 PASCAL
B、 VISUAL BASIC
C、 C++
D、 汇编语言
[答案]
(2)下列语言中哪个语言是高级语言( )
A、 机器
B、 汇编语言
C、 FORTRAN
C、 FORTRAN 语言 D、 COBOL 语言
[答案]
7、请选择有关高级语言和低级语言特点和能力的描述。
(1)程序设计语言一般简单来说,可划分为低级语言和高级语言两大类,与高级语言相比,用低级语言开发的程序,具有如下哪种特点( )
A、 运行效率低,开发效率低
B、 运行效率低,开发效率高
C、 运行效率高,开发效率低
x+a*(y-b)-z/f 其中的算术运算符遵守先乘除后加减的运算规则。则上述表达式的前缀表示为(4),后缀表示为(5)。
(1)供选择的答案:
A、 系统软件 B、 应用软件
C、 实时系统 D、 分布式系统
(2)供选择的答案:
A、 高级语言程序和低级语言程序
B、 解释程序和编译程序
C、 编译程序和操作系统

软件工程习题解答(含基本章节应试例子以及一个UML案例)

软件工程习题解答(含基本章节应试例子以及一个UML案例)

软件⼯程习题解答(含基本章节应试例⼦以及⼀个UML案例)软件⼯程习题解答⼀、软件⽣存周期各阶段的基本任务?1. 问题定义:(1)回答要解决的问题是什么。

(2)系统分析员应该提出关于问题性质、⼯程⽬标和规模的书⾯报告。

(3)经过和⽤户讨论,澄清含糊不清的地⽅,改正理解不正确的地⽅,得出⼀份双⽅都满意的⽂档。

(4)问题定义是软件⽣命周期中最简短的阶段。

2.可⾏性研究:(1)前⼀阶段定义的问题有可⾏的解决办法吗?(2)系统分析员要进⾏⼀次⼤⼤压缩和简化了的系统分析和设计。

导出⾼层逻辑模型(⽤数据流图表⽰)。

确定⼯程规模和⽬标,准确估计系统的成本和效益。

(3)使⽤部门的负责⼈根据可⾏性研究的结果决定是否继续进⾏该⼯程的开发⼯作。

3.需求分析:(1)主要确定⽬标系统必须具备哪些功能。

(2)系统分析员和⽤户密切配合,充分交流,得出经⽤户确认的系统逻辑模型(数据流图、数据字典、算法描述)。

4.总体设计:(1)回答如何解决问题。

(2)系统分析员应使⽤系统流程图或其他⼯具描述每种可能系统;估计每种⽅案的成本和效益。

推荐⼀较好的系统──有其详细计划。

设计软件的结构(⽤层次图或结构图描述)。

5.详细设计:(1)回答应该怎样具体地实现这个系统。

(2)设计出程序的详细规格说明(⽤HIPO层次图加输⼊/处理/输出图)或PDL语⾔(过程设计语⾔)。

6.编码和单元测试:(1)写出正确的容易理解,容易维护的程序模块。

(2)程序员:选取⼀种适当的⽤⾼级语⾔书写程序(或汇编语⾔)。

仔细测试编写出的每⼀个模块。

7.综合测试:(1)通过各种类型的测试,使软件达到预定的要求。

(2)最基本的测试是集成测试和验收测试⽅法。

集成测试是根据设计的软件结构,把经过单元测试检验的模块按某种选定的策略装配起来,在装配的过程中对程序进⾏必要的测试。

验收测试是按照需求规格说明书的规定,由⽤户对⽬标系统进⾏验收。

(3)⽤正式⽂档将测试计划、详细测试⽅案以及实际测试结果保存。

软件工程试题及答案

软件工程试题及答案

软件工程一、选择题1、软件需求规格说明的内容不包括(B)A、主要功能B、算法的详细描述C、用户界面及运行环境D、软件的性能2、面向对象的分析方法主要是建立三类模型,即(D)A、系统模型、ER模型、应用模型B、对象模型、动态模型、应用模型C、ER模型、对象模型、功能模型D、对象模型、动态模型、功能模型3、在ER模型中,包括以下基本成分(C)A、数据、对象、实体B、控制、联系、对象C、实体、联系、属性D、实体、属性、操作4、各种软件维护的类型中最重要的是(A)A、完善性维护B、纠错性维护C、适应性维护D、预防性维护5、若有一个计算类型的程序,它的输入量只有一个X,其范围是[—2.0,2.0],现从输入的角度考虑一组测试用列—2.001,-2,20,2.001,设计这组测试用列的方法是(C)A、条件覆盖法B、等价分类法C、边界值分析法D、错误推测法6、下列白盒测试法,哪种是最强的覆盖准则(D)A、语句覆盖B、条件覆盖C、判定覆盖D、条件组合覆盖7、确定测试计划是在(A)阶段制定的。

A、总体设计B、详细设计C、编码D、测试8、数据字典是软件需求分析阶段最重要的工具之一,其最基本的功能是(C)A、数据库设计B、数据通信C、数据定义D、数据维护9、软件开发当中,抽取和整理用户需求并建立问题域精确模型的过程(D)A、生成期B、软件意向C、结构化程序设计D、面向对象分析10、以下不属于IT企业当中过程管理和过程改进模型的是(D)A、ISO9001B、CMMIC、软件企业文化D、UML11、适合互联网上编程并可供不同平台运行的面向对象程序设计的语言是(java)12、软件结构图中,模块之间用直线连接,则表示他们之间存在(A )。

A、调用关系B、组成关系C、链接关系D、顺序执行关系13、生命周期方法设计软件的过程中,画用例图属于(A)阶段的工作.A、需求分析B、概要设计C、详细设计D、软件维护14、PDL属于(B)语言。

软件工程导论试题答案

软件工程导论试题答案

第一章4.什么是软件工程?它与软件工程方法学有何关系?软件过程是为了开发高质量的软件产品所需完成的一系列任务的框架,它规定了完成各项任务的工作步骤。

软件过程定义了运用技术方法的顺序,应该交付的文档资料,为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。

软件过程是软件工程方法学的3个重要组成部分之一。

2、假设要求你开发一个软件,该软件的功能是把读入的浮点数开平方,所得到的结果要求精确到小数点后4位。

一旦实现并测试完成后,该产品将被抛弃。

你打算选用哪种软件生命周期模型?说明你做出选择的理由。

该软件的要求很明确,实现开平方算法的功能也很成熟,因此既无需通过原型来分析需求也无需用原型来验证设计方法。

此外,一旦实现并测试完成后,该产品将被抛弃,因此无需使用有助于提高软件可维护性的增量模型或螺旋模型来开发该软件。

综上所述,为了开发这个软件,使用瀑布模型就可以了。

8.假设你被任命为一家软件公司的项目负责人,你的工作是管理该公司已被广泛应用的字处理软件的新版本的开发。

由于市场竞争激烈,公司规定了严格的完成期限并且已对外公布。

你打算采用哪种软件生命周期模型?为什么?答:对这个项目的一个重要要求是,严格按照已对外公布的日期完成产品开发工作,因此,选择生命周期模型时应该着重考虑哪种模型有助于加快产品开发的进度。

使用增量模型开发软件时可以并行完成开发工作,因此能够加快开发进度。

这个项目是开发该公司已被广泛应用的字处理软件的新版本,从上述事实至少可以得出三点结论:第一,旧版本想当于一个原型,通过收集用户对旧版本的反应,较容易确定对新版本的需求,没有必要再专门建立一个原型系统来分析用户的需求;第二,该公司的软件工程师对子处理软件很熟悉,有开发字处理软件的丰富经验,具有采用增量模型开发新版本字处理软件所需要的技术水平;第三,该软件收到广大用户的喜爱,今后很可能还要开发更新版本,因此,应该把该软件的体系结构设计成开放式,以利于今后的改进和扩充。

第6章程序设计语言习题与答案

第6章程序设计语言习题与答案

第六章习题(1)复习题1、简述自然语言与形式语言的概念以及区别、汇编语言与机器语言的概念及区别。

自然语言是某一社会发展中形成的一种民族语言,而形式语言是进行形式化工作的元语言,它是以数学和数理逻辑为基础的科学语言。

用机器指令形式编写的程序称为机器语言,用带符号或助记符的指令和地址代替二进制代码成为语言进化的目标。

这些使用助记符语言的语言后来就被称之为汇编语言。

(P135P136)2、什么是高级程序设计语言?它有什么特点?高级语言是汇编语言的一种抽象。

高级语言的设计目标就是使程序员摆脱汇编语言细节的繁琐。

高级语言同汇编语言都有一个共性,那就是:它们必须被转化为机器语言,这个转化的过程称为解释或编译。

(1)高级语言接近算法语言,易学、易掌握;(2)高级语言设计出来的程序可读性好,可维护性强,可靠性高;(3)高级语言与具体的计算机硬件关系不大,其程序可移植性好,重用率高;(4)高级语言自动化程度高,开发周期短,利于提高程序的质量。

(P138)3、列举程序设计语言的几种范型。

程序语言大致分为命令式程序设计语言、面向对象的程序设计语言、函数式程序设计语言和逻辑型程序设计语言等范型。

(P138-140)4、简述语言虚拟机。

提示:语言虚拟机是某种语言的解释器。

语言虚拟机是建立在硬件和操作系统之上,针对不同的硬件和操作系统有不同的虚拟机,通过语言虚拟机屏蔽掉硬件的差异。

这样使得硬件系统能够支持这种语言编写的程序的有效执行。

目前最流行的语言虚拟机是Java虚拟机。

(P147)5、计算机执行用高级语言编写的程序有哪些途径?它们之间的主要区别是什么?提示:主要有编译、解释等方式,也有两种方式的混合使用的形式。

编译是使用编译器将高级语言编写的源程序转换成计算机可以执行的机器语言可执行程序,也可以理解为用编译器产生可执行程序的动作。

编译方式是一次编译,然后执行程序可以反复多次执行。

解释是另一种将高级语言转换为可执行程序的方式。

信息技术第6章 软件开发练习题库(附答案)

信息技术第6章 软件开发练习题库(附答案)

第六章软件开发一、单项选择1.给定如下所示的JAVA代码,则运行时,会产生哪种类型的异常()String s = null;s.concat( "追加的字符串");A. ArithmeticExceptionB. NullPointerExceptionC. IOExceptionD. ClassNotFoundException参考答案:B答案解析:空值的字符串变量无法进行追加字符串运算。

A选项为数学运算异常;C选项为输入输出异常;D选项为未找到类定义的异常。

知识点:税务系统业务能力升级测试大纲(信息技术类)-专业知识与技能—第六章软件开发—第二节 Web熟悉开发 4.了解Java编程。

2.为使得开发人员对软件产品的各阶段都进行周密的思考,从而减少返工,所以编制下列哪个文件是很重要的()A.需求说明B.概要说明C.软件开发文档D.测试大纲参考答案:C试题解析:软件开发文档是软件开发使用和维护过程中的必备资料。

它能提高软件开发的效率,保证软件的质量,而且在软件的使用过程中有指导,帮助,解惑的作用,尤其在维护工作中,文档是不可或缺的资料。

知识点:税务系统业务能力升级测试大纲(信息技术类)-专业知识与技能—第六章软件开发—第一节软件开发基础知识3.下列哪个文档属于软件开发人员为用户准备的有关该软件使用、操作、维护的资料()A.开发文档B.管理文档C.用户文档D.软件文档参考答案:C试题解析:用户文档可以帮助用户掌握相关软件的使用、操作及维护。

知识点:税务系统业务能力升级测试大纲(信息技术类)-专业知识与技能—第六章软件开发—第一节软件开发基础知识4.关于中间件特点的描述,不正确的是()A.中间件可运行于多种硬件和操作系统平台上B.跨越网络、硬件、操作系统平台的应用或服务可通过中间件透明交互C.中间件运行于客户机/服务器的操作系统内核中,提高内核运行效率D 中间件应支持标准的协议和接口参考答案:C试题解析:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。

软件工程(第五版)-习题及答案---第六章

软件工程(第五版)-习题及答案---第六章

软件工程(第五版)-习题及答案---第六章-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII一、选择题1、UML的主要特点不正确的是(C)。

A、面对对象,表达能力强B、可视化建模C、面对过程,表达能力强D、统一标准2、静态建模图不包括(B)。

A、用例图B、协作图C、类图D、对象图3、用例图的模型元素不包括(D)。

A、用例B、系统C、行为者D、软件开发者4、类图的要素不包括(D)。

A、类名称B、操作C、属性D、对象5、时序图中的要素不包括(A)。

A、执行者B、对象C、对象生命线D、消息6、对象模型的描述工具是(C)。

A、状态图B、数据流图C、对象图D、结构图7、协作图的要素不包括(A)。

A、用例B、对象C、链D、消息8、类图反映了系统中对象之间的抽象关系,不包括(D)。

A、关联B、聚合C、泛化D、内聚9、下面(D)不是状态图的图符。

A、圆角的矩形B、实心圆点C、实心圆环D、椭圆10、描述类中某个对象的行为,反映了状态与事件关系的是(A)。

A、状态图B、数据流图C、对象图D、结构图11、动态模型的描述工具(C)。

A、对象图B、设计图C、状态图D、结构图12、表示对象的相互行为的模型是(A)模型。

A、对象B、动态C、结构D、静态13、有关类和对象的描述中,错误的是(A)。

A、一个类只能有一个对象B、对象是类的具体实例C、类是某一类对象的抽象D、类和对象的关系是一种数据类型和变量的关系14、用例图中用例之间的关系通常有关联关系、依赖关系和(C)关系。

A、协作B、聚合C、泛化D、内聚15、动态模型图包括:时序图、协作图、状态图和(C)图。

A、对象图B、设计图C、活动图D、结构图二、简答题1.简要介绍用例图的三个要素。

答:用例图主要包括以下三个元素:①用例(Use Case):用例是系统的使用过程或要执行的动作序列,用来描述某个参与者使用系统所完成的功能。

在图中用椭圆来表示,用例名称可写在椭圆中或椭圆下面。

PMP教程第六章练习题

PMP教程第六章练习题

第6章项目时间管理1.项目时间管理7个过程,正确的先后顺序是()。

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.分解是创建WBS过程的工具与技术之一,同时也是以下哪个过程的工具与技术?()A.定义活动B.估算活动资源C.识别风险D.制定资源分解结构11.对于一个低风险,而且活动之间主要是软逻辑关系的项目,最好采用什么方法压缩进度?()A.快速跟进B.赶工C.资源平衡D.资源优化技术12.下列哪种估算方法能够提高团队成员对实现估算的责任感?()A.类比估算B.参数估算C.三点估算D.名义小组技术13.以下哪个不是定义活动过程的输出?()A.活动清单B.活动属性C.活动顺序D.里程碑清单14.对“如果情景X出现,情况会怎么样?”这样的问题进行分析,指的是下列哪种工具与技术?()A.假设分析B.假设情景分析C.模拟分析D.进度网络分析15.以下哪个关于关键链的说法是正确的?()A.关键链是关键路径的另一个名称B.关键链是次关键路径的另一个名称C.关键链表示的是一系列活动之间的硬逻辑关系D.关键链是资源约束下的关键路径16.下列关于里程碑的说法,不正确的是()。

张海藩《软件工程导论》(第6版)(课后习题 第6章 详细设计)【圣才出品】

张海藩《软件工程导论》(第6版)(课后习题 第6章 详细设计)【圣才出品】

第6章详细设计
1.假设只有SEQUENCE和DO-WHILE两种控制结构,怎样利用它们完成IF THEN ELSE操作?
答:转化如下:
K=1
DO WHILE(条件AND K EQ1)
程序块1
K=K+1
END DO
DO WHILE((NOT条件)AND K EQ1)
程序块2
K=K+1
END DO
2.假设只允许使用SEQUENCE和IF-THEN-ELSE两种控制结构,怎样利用它们完成DO WHILE操作?
答:转化如下:
label:IF(条件)THEN
程序块
GOTO label
ELSE
程序块
END IF
3.画出下列伪码程序的程序流程图和盒图:
答:(1)流程图如图6-18所示。

图6-18从伪码变成的程序流程图(2)该程序的盒图如图6-19所示。

图6-19从伪码变成的程序盒图4.图6-20给出的程序流程图代表一个非结构化的程序,问:
图6-20一个非结构化程序
(1)为什么说它是非结构化的?
(2)设计一个等价的结构化程序。

(3)在(2)题的设计中使用附加的标志变量flag了吗?若没用,再设计一个使用flag 的程序;若用了,再设计一个不用flag的程序。

答:(1)通常所说的结构化程序,是按照狭义的结构程序的定义衡量,符合定义规定的程序。

图示的程序的循环控制结构有两个出口,显然不符合狭义的结构程序的定义,因此是非结构化的程序。

(2)使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,图6-21描绘了等价的结构化程序的盒图。

(a)解法1。

PMP习题第六章 项目时间管理

PMP习题第六章 项目时间管理

1.术语“PERT”,代表什么?A、计划评审技术B、项目评审技术C、项目估算和审查技术D、计划估计和审查技术2.某个项目包括三项主要活动:A.欧元兑换开发(5个星期),B.总帐开发(6个星期),C.CRM实施(7个星期),活动B必须在活动A完成后才能开始,另外还需要一个星期进行资源事先分配,活动C只能在活动B开始一个星期后才能开始,项目完工的最短工期需多长?A、12个星期B、13个星期C、14个星期D、15个星期3.关键路径的时差为负20天(-20)天,如果关键路径有两个活动,这可能意味着什么?A、必须评估关键路径以决定实际的时差B、预期提前20天完成项目C、每个活动时差为负20天D、要满足项目完工要求,可能需要历时压缩4.一个项目由三项主要活动组成: A.欧元兑换开发(5个星期),B.总帐开发(6个星期),C.CRM实施(7个星期),活动B必须在活动A完成后才能开始,另外还需要一个星期进行资源重新分派,活动C只能在活动B开始以星期后才能开始,活动B与活动C之间的关系是以下哪种关系的例子?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、PERT10.在您定制进度表时,如何设法克服资源制约因素?A、赶进度B、使用蒙特卡洛方法C、快速跟进D、资源平衡11.公司新办公大楼已完成室内装修,公司领导准备下个月搬进新的办公大楼上班,搬迁的物品包括电脑、办公设备、家具、档案资料等,你决定先将所有的物品搬完再打扫清洁原办公楼,这是——依赖关系的例子。

操作系统第六章复习题-答案

操作系统第六章复习题-答案

操作系统---------第6章复习题一、选择题1、Spooling 技术提高了( A )利用率。

A 独占设备B 共享设备C 文件D 主存储器2、在下面的I/O 控制方式中,需要CPU 干预最少的方式是( D )。

A 程序中断方式B 中断驱动I/O 控制方式C 直接存储器访问DMA 控制方式D I/O 通道控制方式3、利用通道实现了(C)之间数据的快速传输。

A CPU 和外设B 内存和CPU C内存和外设D外设和外设4、设备驱动程序是系统提供的一种通道程序,它专门用于在请求I/O 的进程与设备控制器之间传输信息。

下面的选项中不是设备驱动程序功能的是( C )。

A 检查用户I/O 请求的合法性。

B 及时响应由控制器或由通道发来的中断请求。

C 控制I/O 设备的I/O 操作。

D 了解I/O 设备的状态,传送有关参数,设置设备的工作方式。

5、下表中列出的是一段简单的通道程序(内含 6 条指令),在下面的各个选项中叙述不正确的是( D )。

A 该段通道程序包括6 条、2 类通道指令。

B 这些指令涉及的数据内存地址有相邻接的地方。

C 该段通道程序共处理了5 条记录。

D 单记录最大为230 个字节。

6、基本的I/O 设备处理进程一般处于( C )状态。

A 就绪B 执行C 阻塞D 死锁7、缓冲技术的缓冲池在( A )中。

A 内存B 外存C ROMD 寄存器8、通过硬件和软件的功能扩充,把原来独占的设备改造成能为若个用户共享的设备,这种设备称为( D )。

A 存储设备B 系统设备C 用户设备D 虚拟设备9、为了使多个进程能有效地同时处理输入和输出,最好使用( A )结构的缓冲技术。

A 缓冲池B 循环缓冲C 单缓冲D 双缓冲10、如果I/O 设备与存储设备进行数据交换不经过CPU 来完成,这种数据交换方式是( C )。

A 程序查询B 中断方式C DMA 方式D 无条件存取方式11、在采用SPOOLING 系统中,用户的打印结果首先被送到( A )。

自学考试软件工程第6章例题分析与解答

自学考试软件工程第6章例题分析与解答

第6章例题分析与解答
一、填空题
1.软件需求分析之后,软件的设计、编码、测试与语言的特性有很大的关系,这个特性主要是语言的______特性。

[答案]技术
2.为了提高程序的易读性,同时减少错误,提高软件开发效率,编码时注意养成良好的_____。

[答案]程序设计风格
3.源程序中加注释是帮助理解程序的重要手段,注释分为_______两类。

[答案]序言性注释和功能性注释
二、选择题
1.在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率,现在人们更重视程序的( )。

A.技巧性
B.保密性
C.一致性
D.可理解性
[答案]D
2.与选择编程语言无关的因素是( )。

A.软件开发的方法
B.软件执行的环境
C.程序设计风格
D.软件开发人员的知识
[答案]C
3.源程序文档化要求在每个模块之前加序言性注释。

该注释内容不应有( )。

A.模块的功能
B.语句的功能
C.模块的接口
D.开发历史
[答案]B
4.不适合作为数据处理的语言是( )。

A.PROLOG
B.C
C.4GL
D.SQL
[答案]A
5.提高程序效率的根本途径并非在于( )。

A.选择良好的设计方法
B.选择良好的数据结构
C.选择良好的算法
D.对程序语句作调整
[答案]D。

软件测试 第2版慕课版习题答案 第六章 课后习题答案

软件测试 第2版慕课版习题答案 第六章 课后习题答案

第六章软件测试的度量课后习题及答案1.什么是软件测试的度量?软件度量是一种度量技术,这种技术用来支撑过程、产品和服务中心工程和管理信息,以及支持过程、产品及服务的信息上的改进,从而量化地评定测试过程的能力和性能,提高测试过程的可视性,帮助软件组织管理及改进软件测试过程。

2.软件测试度量是出于什么原因才进行的?是不可或缺的吗?目的:(1)判断软件测试的有效性。

(2)判断软件测试的完整性。

(3)判断所测试的软件产品的质量。

(4)分析和改进软件测试过程。

重要性:(1)度量可以用来提高质量、产品生产力、以及服务,从而提高客户满意度;(2)对于管理组织很容易分析数据并且深入下去;(3)对过程不受控时有不同的度量方式作为监控者;(4)度量提供当前过程改进。

3.软件测试对工作人员有什么要求?对测试人员的工作如何进行评价?素质要求:(1)测试人员要有责任心。

(2)测试人员要有沟通能力。

(3)测试人员要有团队合作精神。

(4)测试人员要有耐心、细心和信心。

(5)测试人员要时时刻刻保持怀疑态度,并且有软件缺陷预防的意识。

(6)测试人员要有不断学习的能力。

技能要求:(1)业务知识。

(2)产品设计知识。

(3)软件架构知识。

(4)统一建模语言(Unified Modeling Language, UML)o(5)测试工具。

(6)不同的测试手段和测试工具。

(7)开发工具。

(8)用户心理学。

(9)界面设计中的3种模型。

(10)人机交互认知心理学。

(11)编程技能。

(12)脚本语言。

(13)文档能力。

评价:(1)利用软件缺陷数量来考核测试效率。

如果在考核过程中发现的漏洞越多,那么说明这个测试人员的测试效率越高,测试能力越强。

(2)发现软件缺陷数量的多少并不能完全证明测试人员的能力。

但是如果把软件缺陷数量加上一些前置条件(如软件缺陷的严重程度),就会有一定的说明意义。

4.软件测试的度量有什么现实的应用?1、对测试人员能力的评价2、对软件缺陷进行定性评估3、撰写软件缺陷报告4、统计测试的覆盖率5.软件缺陷综合评价模型包括哪6个方面?测试过程、数量、定量、质量、定性、测试人员6.代码行覆盖率如何计算?功能覆盖率如何计算?数据库覆盖率如何计算?代码行覆盖率=(已执行测试的代码行/总的代码行)X100%功能模块覆盖率=已执行测试的功能模块数/总的功能模块数Xl00%数据库覆盖率=SQL中出现的数据库的对象数/数据库总的对象数XlO0%7.在表6・12所示的例子中,尝试计算脚本编写用时是多少?脚本编写用时=Io小时,ASP=25∕10=2.5, 即自动化测试脚本生产率=2.5 (操作/小时)8.软件测试度量涉及哪几个关键问题?软件测试的度量包括对软件测试产出物的测量,以及软件测试过程的测量。

软件工程选择题

软件工程选择题

软件工程选择题第一章初认软件工程1、下面得()说法就是正确得.A、由于软件就是产品,因此可以应用其她工程制品所用得技术进行生产B、购买大多数计算机系统所需得硬件比软件更昂贵C、大多数软件系统就是不容易修改得,除非它们在设计时考虑了变D、一般来说,软件只有在其行为与开发者得目标一致得情况下才能成功2、造成大型软件开发困难得根本原因在于()。

A、开发人员缺乏足够得开发经验B、对软件开发得资金投入不足C、项目开发进度不合理D、软件系统得复杂性3、软件会逐渐退化而不会磨损,其原因在于()。

A、软件通常暴露在恶劣得环境下B、软件错误在经常使用之后会逐渐增加C、不断得变更使组件接口之间引起错误D、软件备件很难订购4、“软件工程”术语就是在()被首次提出。

A、Fred Brooks得《没有银弹:软件工程中得根本与次要问题》B、1968年NATO会议C、IEEE得软件工程知识体系指南(SWEBOK)D、美国卡内基·梅隆大学得软件工程研究所5、Ariane 5火箭发射失败得事例告诉我们()。

A、系统环境得变化可能影响软件采集数据得精度、范围与对系统得控制B、软件后备系统可以通过复制生成C、软件重用必须重新进行系统论证与系统测试D、选项A与CE、选项A、B与C6、软件工程得基本目标就是( )。

A、开发足够好得软件B、消除软件固有得复杂性C、努力发挥开发人员得创造性潜能D、更好地维护正在使用得软件产品7、软件工程方法就是()。

A、为了获得高质量软件而实施得一系列活动B、为开发软件提供技术上得解决方法C、为支持软件开发、维护、管理而研制得计算机程序系统D、为了理解问题与确定需求而采取得一些技术与方法8、下面得()就是正确得。

A、运行正确得软件就就是高质量得软件。

B、软件质量就是在开发过程中逐渐构建起来得。

C、软件产品质量越高越好,最理想得情况就是达到“零缺陷”。

D、软件质量就是由产品得功能、性能、易用性等外在特性决定得.9、在Garvin多维度模型中,可靠性就是指().A、软件产品提供了让用户产生惊喜得特性B、软件实现了用户需要得功能与性能C、软件在规定时间与条件下无故障持续运行D、软件符合国家或行业得相关标准10、( )就是软件从一个硬件或软件环境转换到另一环境得容易程度.A、易用性B、可维护性C、可移植性D、性能第二章软件开发过程1、下面得( )决策就是在需求分析时做出得。

2020年智慧树知道网课《软件工程方法与实践》课后习题章节测试满分答案

2020年智慧树知道网课《软件工程方法与实践》课后习题章节测试满分答案

第一章测试1【单选题】(1分)软件产品与物质产品有很大区别,软件产品是一种()产品。

A.文档B.消耗C.有形D.逻辑2【单选题】(1分)软件会逐渐退化而不会磨损,其原因在于()。

A.软件通常发生在使用之后B.软件备件很难订购C.软件通常暴露在恶劣的环境下D.不断的变更使组件接口之间引起3【单选题】(1分)软件工程要解决的问题是()。

A.加快软件开发速度B.降低软件开发成本C.以上都是D.提高软件质量4【单选题】(1分)软件工程的基本要素包括方法、工具和()。

A.硬件环境B.软件系统C.人员D.过程5【多选题】(1分)软件一般包括以下()部分。

A.数据B.规程C.程序D.文档第二章测试1【单选题】(1分)基于计算机系统的元素包括软件、硬件、人员、数据库、文档和()。

A.规范B.规程C.规则D.过程2【单选题】(1分)基于计算机的系统本身可以成为一个更大的基于计算机系统中的一个()。

A.软件B.元素C.文档D.硬件3【单选题】(1分)经济可行性分析中的效益包括经济效益和()效益。

A.环境B.成本C.消耗D.社会4【多选题】(1分)在基于计算机系统的元素中,硬件包括()。

A.提供外部世界功能的电子机械设备(如传感器、马达等)B.打印、复印设备C.提供计算能力的电子设备D.支持数据流的互连设备(如网络交换器、电信设备)5【多选题】(1分)系统工程的任务包括()。

A.成本估算及进度安排B.生成系统规格说明C.识别用户的要求D.系统建模和模拟E.可行性分析第三章测试1【单选题】(1分)在软件生存周期中,()阶段主要任务是“弄清楚要做什么?”。

A.需求分析B.软件测试C.软件设计D.编码实现2【单选题】(1分)通常将软件生命周期划分为系统工程、需求分析、软件设计、编码实现、软件测试、运行维护等阶段,每个阶段都有各自侧重的任务和目标,以下不属于需求分析阶段的任务是()。

A.弄清楚怎么做,规划系统体系结构B.弄清楚需要做什么C.通过调研等方式获取需求D.编制软件需求规格说明书3【单选题】(1分)需求规格说明描述了()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章习题一、选择题1. 对象是面向对象范型的( A )。

每个对象可用它自己的一组( B )和它可以执行的一组( C )来表征。

应用执行对象的( C )可以改变该对象的( B )。

它的应用必须通过( D )的传递。

可以认为,这种( D )的传递大致等价于过程性范型中的函数调用。

某些语言提供了特殊功能,允许对象引用自己。

若一个对象没有显式地被引用,则可让该对象( E )。

供选择的答案:A. ①基本单位②最小单位③最大单位④语法单位B ~ C. ①行为②功能③操作④数据⑤属性D. ①接口②消息③信息④操作⑤过程E. ①撤消②歇着③缺省④隐式引用⑤引用自己2.在面向对象软件开发过程中特别重视复用。

软件构件应独立于当初开发它们的应用而存在。

在以后的应用开发中,可以调整这些独立构件以适应新问题的需要。

因此,应使得类成为一个( A )的单元。

这样就有一个( B )生存期问题。

( B )生存期有自己的步骤,与任一特定应用的开发( C )。

按照这些步骤,可以完整地描述一个基本( D )。

而不仅仅考虑当前正在开发的系统。

系统开发的各个阶段都可能会标识新的类。

随着各个新类的标识,( B )生存期引导开发工作逐个阶段循序渐进。

在设计与实现类时,应尽可能利用既存类提供为当前应用所需要的功能,利用既存类的三个可能途径是:( E )复用既存类;对既存类进行( F )以得到满足要求的类;重新开始进行开发。

供选择的答案:A. ①可复用②可测试③可适用④可靠B. ①应用②寿命③类④软件C. ①相关②密切相关③负相关④无关D. ①概念②实体③事件④事情E, F. ①修改②更新③照原样④演化3 从分析到设计的过程流如图所示。

一旦已经开发完成一个合理完整的( A )模型后,就要着手( B )的设计。

这需要描述( B )的特征,以准确表达待实现的用户需求,以及实现需求所必须的支持环境。

一旦定义了各个( B ),就开始( C )设计,这时,可利用CRC卡片,将属性转换为( D ),将关系转换为( E )。

供选择的答案:A ~ C. ①分析②系统设计③模块设计④子系统设计⑤对象设计⑥数据设计⑦操作设计⑧行为设计 D ~ E. ①对象②数据结构③算法④消息传递⑤控制⑥并发处理⑦进程⑧过程二、简答题1. 用面向对象范型开发软件时与用结构化范型开发软件时相比较,软件的生命周期有何不同?这种差异带来了什么后果?2. 为什么在开发大型软件时,采用面向对象范型比采用结构化范型较易取得成功?3. 为什么说夏利牌汽车是小汽车类的特化,而发动机不是小汽车类的特化?4. 对象和属性之间有何区别?5. 什么是对象?它与传统的数据有何异同?6. 什么是模型?开发软件时为什么要建立模型?7. 试用面向对象方法分析设计下述程序:在显示器屏幕上圆心坐标为(100,100)的位置有一个半径为40的圆,在圆心坐标为(200,300)的位置画一个半径为20的圆,在圆心坐标为(400,150)的位置画一条弧,弧的起始角度为30度,结束角度为120度,半径为50.8. 用面向对象方法解决下述问题时需要哪些对象类?类与类之间有何关系?在显示器屏幕上圆心坐标为(250,100)的位置,画一个半径为25的小圆,圆内显示字符串“you”;在圆心坐标为(250,150)的位置,画一个半径为100的中圆,圆内显示字符串“world”;再在圆心坐标为(250,250)的位置,画一个半径为225的大圆,圆内显示字符串“Universe”。

9. 试建立下述订货系统的用例模型。

假设一家工厂的采购部每天需要一张订货报表,报表按零件编号排序,表中列出所有需要再次订货的零件。

对于每个需要再次订货的零件应该列出下列数据:零件编号,零件名称,订货数量,目前价格,主要供应者,次要供应者。

零件入库或出库称为事务,通过放在仓库中的终端把事务报告给订货系统。

当某种零件的库存数量少于库存量临界值时就应该再次订货。

10. 为什么说面向对象方法与人类习惯的思维解题方法比较一致?第六章习题习题一、选择题1. 答案: A. ①, B. ⑤, C. ③, D. ② E. ③分析:对象是面向对象范型的基本单位。

每个对象可用它自己的一组属性和它可以执行的一组操作来表征。

应用执行对象的操作可以改变该对象的属性,属性一般只能通过操作来改变。

它的应用必须通过消息的传递。

发送给一个对象的消息定义了一个方法名和一个参数表(可能是空的),并指定某一个对象。

而由一个对象接收的消息则引用消息中指定的方法的代码,并将实际参数与参数表中相应的形式参数结合起来。

接收对象对消息的处理可能会改变对象中的状态,即改变接收对象的属性,并发送一个消息给自己或另一个对象。

可以认为,这种消息的传递大致等价于过程性范型中的函数调用。

然而,执行方法得到消息结果的目的是想修改相关对象的内部状态,而不只是修改变元并返回它们。

某些语言提供了特殊功能,像smalltalk提供了self,允许对象引用自己。

若一个对象没有显式地被引用,则可让该对象缺省。

2. 答案:A. ①, B. ③, C. ④, D. ②, E. ③, F. ④分析:在面向对象软件开发过程中特别重视复用。

软件构件应独立于当初开发它们的应用而存在。

构件的开发瞄准某些局部的设计和实现,它们可用于当前问题的解决,但为了在以后的项目中使用,它们还应当足够通用。

在以后的应用开发中,可以调整这些独立构件以适应新问题的需要。

为使得类成为一个可复用的单元,有一个类生存期的问题。

类生存期与应用生存期交叉。

在应用生存期的每一个阶段都可做类的标识。

类生存期有自己的步骤,与任一特定应用的开发无关。

按照这些步骤,可以完整地描述一个基本实体。

而不仅仅考虑当前正在开发的系统。

系统开发的各个阶段都可能会标识新的类。

随着各个新类的标识,类生存期引导开发工作逐个阶段循序渐进。

在设计与实现类的时候,有三种利用既存类的途径:§原封不动地复用既存类。

§对既存类进行演化以得到满足要求的类。

§重新开始进行开发。

3.答案:A. ①, B. ④, C. ⑤, D. ②, E. ④分析:从分析到设计的过程流如图所示。

一旦已经开发完成一个合理完整的分析模型后,就要着手子系统的设计。

这需要描述子系统的特征,以准确表达待实现的用户需求,以及实现需求所必须的支持环境。

在定义子系统时,需要在用户需求的整个上下文环境中互相协调:各个用户需求分配给哪个子系统?在OOA中定义的对象驻留在哪个子系统内?哪些子系统并发运行?负责协调和控制它们的系统构件是谁?全局资源在子系统中如何管理?等。

在设计子系统的过程中,需要定义4种重要的设计构件:§问题论域:负责实现用户需求的子系统。

§人机交互:实现用户界面的子系统(包括可复用的GUI子系统)。

§任务管理:负责控制和协调各种事件驱动、时钟驱动、并发执行任务的子系统。

§数据管理:负责对象存储和检索的子系统。

每一个构件都可以用一些类、必须的关系和行为来定义。

构件之间的关系可以通过建立每个构件的消息模型来建立。

一旦定义了各个子系统,包括上述的各个设计构件,就开始对象(类)设计,这时,可利用CRC卡片,将类转换为设计实现,转换工作如图所示。

二、简答题1. 答:用结构化范型开发软件时,软件的生命周期如下:(1)陈述需求阶段;(2)规格说明(分析)阶段;(3)设计阶段;(4)实现阶段;(5)维护阶段。

用面向对象范型开发软件时,软件的生命周期为:(1)陈述需求阶段;(2)面向对象分析阶段;(3)面向对象设计阶段;(4)面向对象实现阶段;(5)维护阶段。

粗看起来,用这两种不同的范型开发软件时软件生命周期基本相同。

但是,仔细分析起来就会发现两者之间有本质差别。

用结构化范型开发软件时,规格说明(分析)阶段的主要任务是,确定软件产品应该“做什么”;而设计阶段通常划分成结构设计(即概要设计)和详细设计这样两个子阶段。

在结构设计子阶段,软件工程师把产品分解成若干个模块,在详细设计子阶段再依此设计每个模块的数据结构和实现算法。

如果使用面向对象范型开发软件,则面向对象分析阶段的主要工作是确定对象。

因为对象就是面向对象软件的模块,因此,在面向对象分析阶段就开始了结构设计的工作。

由此可见,面向对象分析阶段比它在结构化范型中的对应阶段----规格说明(分析)阶段-----走得更远,工作更深入。

这两种范型的上述差异带来了重要的结果。

使用结构化范型开发软件时,在分析阶段和设计阶段之间有一个很大的转变:分析阶段的目的是确定产品应该“做什么”,而设计阶段的目的是确定“怎么做”,这两个阶段的工作性质明显不同。

相反,使用面向对象范型开发软件时,“对象”从一开始就进入了软件生命周期,软件工程师在分析阶段把对象提取出来,在设计阶段对其进行设计,在实现阶段对其进行编码和测试。

由此可见,使用面向对象范型开发软件时,在整个开发过程中都使用统一的概念“对象”,围绕对象进行工作,因此,阶段与阶段之间的转变比较平缓,从而减少了在开发软件过程中所犯的错误。

2. 答:结构化技术要么面向怎么处理(例如,面向数据流的设计方法),要么面向数据(例如,面向数据结构的设计方法),但却没有既面向处理又面向数据的结构化技术。

用结构化技术开发出的软件产品的基本成分,是产品的行为(即处理)和这些行为所操作的数据。

由于数据和对数据的处理是分离的,尽管开发者把程序划分成了许多模块,但是这些模块之间的联系却是比较紧密的,因此,使用结构化范型开发出的软件产品本质上是一个完整的单元。

由此带来的后果是,软件规模越大,用结构化范型开发软件的技术难度和管理难度就越大。

与结构化技术相反,面向对象技术是一种以数据为主线,把数据和处理相结合的方法。

面向对象范型把对象作为由数据及可以施加在这些数据上的操作所构成的统一体。

用面向对象范型开发软件时,构成软件系统的每个对象就好像一个微型程序,有自己的数据、操作、功能和用途,因此,可以把一个大型软件产品分解成本质上相互独立的小产品来处理,这就不仅降低了软件开发的技术难度,而且也使得对软件开发工作的管理变得相对容易了。

3. 答:夏利牌汽车具有小汽车的全部属性和行为,它只不过是一种特定品牌的小汽车,因此,夏利牌汽车可以从基类“小汽车”派生出来,也就是说,夏利牌汽车是小汽车类的特化。

发动机是组成小汽车的一种零件,小汽车还有车身、车灯、轮子等许多种其他零件,小汽车所具有的许多属性和行为发动机都不具有,因此,发动机不能从小汽车类派生出来,它不是小汽车类的特化。

4. 答:对象是对客观世界实体的抽象,它是描述实体静态属性的数据和代表实体动态行为的操作结合在一起所构成的统一体。

属性只不过是对象的一种特性,它是组成对象的一种成分。

相关文档
最新文档