软件工程李军国等课后习题原题.docx

上传人:b****5 文档编号:4291909 上传时间:2022-11-28 格式:DOCX 页数:12 大小:22.59KB
下载 相关 举报
软件工程李军国等课后习题原题.docx_第1页
第1页 / 共12页
软件工程李军国等课后习题原题.docx_第2页
第2页 / 共12页
软件工程李军国等课后习题原题.docx_第3页
第3页 / 共12页
软件工程李军国等课后习题原题.docx_第4页
第4页 / 共12页
软件工程李军国等课后习题原题.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

软件工程李军国等课后习题原题.docx

《软件工程李军国等课后习题原题.docx》由会员分享,可在线阅读,更多相关《软件工程李军国等课后习题原题.docx(12页珍藏版)》请在冰豆网上搜索。

软件工程李军国等课后习题原题.docx

软件工程李军国等课后习题原题

 

软件工程习题

习题1

一、判断题

1.程序是按事先设计的功能和性能要求执行的指令序列。

2.数据是使程序能够正确操纵信息的数据结构。

3.文档是与程序开发、维护和使用有关的图文材料。

4.软件开发时,一个错误发现得越晚,为改正它所付出的代价就越大。

5.增量模型的特点是文档驱动。

6.瀑布模型的特点是文档驱动。

7.瀑布模型是一种软件生存周期模型。

8.在软件生存周期中,用户主要是在软件开发期参与软件开发。

9.瀑布模型的主要问题是可靠性低。

10.软件生存周期中时间最长的阶段是需求分析。

11.原型化方法适用于需求已确定的系统。

12.瀑布模型本质上是一种线性顺序模型。

13.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于需求不确定性高的系统。

二、填空题

1.软件工程是开发、运行、维护和修复软件的系统化方法,它包含的三个要素指的是

(A)(B)和(C)

2.软件是计算机系统中与硬件相互依存的另一部分,它是包括(A)(B)及(C)的完整集合。

3.开发软件时对提高软件开发人员工作效率至关重要的是(A),软件工程中描述生存周期的瀑布模型一般包括计划(B)、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成(C)和(D)两步。

4.软件发展过程的第一阶段称为“程序设计的原始时期”,这时既没有(A),也没有(B),程序员只能用机器指令编写程序。

5.软件发展过程的第二阶段称为“基本软件期”,出现了(A),并逐渐普及,随着(B)的发展,编译技术也有较大的发展。

6.软件发展过程的第三阶段称为“程序设计方法时代”,这一时期,与硬件费用下降相反,软件开发费急剧上升。

人们提出了(A)和(B)等程序设计方法,设法降低软件的开发费用。

7.软件发展过程的第四阶段称为“软件工程时期”,软件开发技术不再仅仅是程序设计技术,而是包括与软件开发的各个阶段,如(A)、(B)、编码、单元测试、综合测试、(C)及其整体有关的各种管理技术。

8.原型化方法从用户界面的开发入手,首先形成(A)、用户(B),并就(C)提出意见,它是一种(D)型的设计过程。

9.软件工程中描述生存周期的瀑布模型一般包括计划(A)、软件设计、代码设计、软件测试、软件维护等几个阶段,其中软件设计阶段在管理上又可以依次分成(B)和(C)两步。

三、简答题

1.软件的特点有哪些?

2.软件危机产生的原因有哪些?

3.软件危机的主要表现有哪些?

4.软件工程学的基本原则有哪些?

5.什么是软件的生命周期?

6.软件工程过程有哪几个基本过程活动?

试说明之。

四、综合题

1.详细说明软件生命周期分哪几个阶段?

2.试论述瀑布模型软件开发方法的基本过程。

 

习题2

一、判断题

1.需求规格书描述的是软件如何实现。

2.在E—R图中,实体与实体之间的连接是通过主键和外键进行的。

3.在结构化分析方法中,用以表达系统内数据的运动情况的工具是功能构图。

4.各种需求方法都有它们共同适用的方法。

5.数据流图的基本成分有6种。

6.软件需求的逻辑视图描述的是软件要达到的功能和要处理的信息之间的关系。

7.软件需求的逻辑视图没有描述实现的细节。

8.软件需求的物理视图给出的是处理功能和信息结构的实际表现形式。

9.软件需求的物理视图需考虑实际的环境和具体的设备。

10.数据流图的主图必须含有4种元素,缺一不可。

11.数据流图的主图必须封闭在外部实体之间,实体可以有多个。

12.数据流图中包含控制流。

13.数据项是数据处理中基本的不可分割的逻辑单位。

二、选择题

1.软件需求分析阶段的工作,可以分为以下4个方面,对问题的识别、分析与综合、编写需求分析文档以及()。

A、总结B、阶段性报告C、需求分析评审D、以上答案都不正确

2.各种需求方法都有它们共同适用的()。

A、说明方法B、描述方法C、准则D、基本原则

3.在结构化分析方法中,用以表达系统内数据的运动情况的工具有()。

A、数据流图B、数据词典C、结构化英语D、判定表与判定树

4.在结构化分析方法中用状态迁移图表达系统或对象的行为。

在状态迁移图中,由一个状态和一个事件所决定的下一状态可能会有()个。

A、1B、2C、多个D、不确定

5.软件需求分析的任务不应包括()。

A、问题分析B、信息域分析C、结构化程序设计D、确定逻辑模型

6.进行需求分析可使用多种工具,但()是不适用的。

A、数据流图B、判定表C、PADD、数据词典

7.在需求分析中,分析员要从用户那里解决的最重要的问题是()。

A、要让软件做什么B、要给该软件提供哪些信息

C、要求软件工作效率如何D、要让软件具有什么样的结构

8.需求规格说明书的内容不应当包括()。

A、对重要功能的描述B、对算法的详细过程性描述

C、软件确认准则D、软件的性能

9.需求规格说明书在软件开发中具有重要的作用,但其作用不应当包括()。

A、软件设计的依据B、用户和开发人员对软件要“做什么”的共同理解

C、软件验收的依据D、软件可行性分析的依据

三、填空题

1.在实体关系图中,表达对象的实例之间的关联有三种类型:

一对一联系、(A)联系、多对多联系。

2.需求分析的重点是:

(A)、(B)、(C)、(D)。

3.获取需求的常用方法有:

(A)、(B)、(C)、(D)。

4.数据流图的基本成分有:

(A)、(B)、(C)、(D)。

5.在数据词典的每一个词条应包含:

(A)、(B)、(C)、(D)、(E)。

四、简答题

1.可行性研究主要研究哪些问题?

试着说明。

2.需求获取为什么那么难?

3.需求分析的原则有哪些?

4.需求分析的任务有哪些?

5.数据流图的作用是什么?

6.数据词典的作用是什么?

 

习题3

一、判断题

1.系统结构图中反映的是程序中数据流的情况。

2.系统结构图是精确表达程序结构的图形表示法。

因此,有时也可以将系统结构当作程序流程图使用。

3.一个模块的多个下属模块在系统结构图中所处的左右位置无关紧要的。

4.在系统结构图中,上级模块与其下属模块之间的调用关系用有向线段表示。

这时,使用斜的线段和水平、垂直的线段具有相同的含义。

5.在一个系统的模块结构中没有哪两个模块是可以完全独立的。

6.模块间的耦合是模块之间的相对独立性的度量。

7.模块之间的连接越紧密,联系越多,耦合性就越高,而其模块独立性就越弱。

8.内聚是模块功能强度的度量。

9.一个模块内部各个成分之间的联系越紧密,内聚性就越高,模块独立性就越强。

10.模块独立性比较强的模块应是高内聚低耦合的模块。

11.和模块之间可能的连接方式同样,构成耦合性的类型有5种。

12.模块的内聚性分为7个类型。

13.“信息隐蔽”就是指模块中所包含的信息不允许其他不需要这些信息的模块使用。

14.模块内聚性用于衡量模块内部各成分之间彼此结合的紧密程度。

15.软件详细设计的图示工具中,流程图简单而应用广泛。

16.主键与外键在多表中的重复出现,不属于数据冗余。

二、选择题

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、安全性

三、填空题

1.常用的软件设计方法有(A)、(B)、(C)等方法。

2.一般采用两个准则度量模块独立性、即模块间的(A)和模块的(B)。

3.SD方法的总的原则是使每个模块执行(A)功能,模块间传送(B)参数,模块通过(C)语句调用其他模块,而且模块间传送的参数应尽量(D)。

4.DBMS语言由三种类型的语句构成,分别是:

(A)、(B)和(C)。

5.数据库由存放原始数据的(A)、存放信息代码数据的(B)、存放统计数据的(C)和存放临时数据的(D)4种表组成。

6.数据库中基本表具有(A)、(B)、(C)和(D)的特性。

7.SD方法可以同分析阶段的(A)方法及编程阶段的(B)方法前后衔接。

8.软件详细设计工具可分为三类,即:

(A)工具、设计(B)和(C)工具。

9.(A)是一种设计和描述程序的语言,它是一种面向(B)的语言。

10.数据的保护性设计指的是:

(A)设计、(B)设计和(C)设计。

11.三层C—S结构由(A)、(B)和(C)组成。

12.概要设计评审的内容包括:

模块是否满足(A)和(B)的要求,模块(C)是否在其(D)之内。

四、简答题

1.模块有哪些基本属性?

2.软件设计有哪些具体任务?

3.模块化有哪些特征?

4.软件设计优化有哪些准则?

5.结构化设计有哪些优点?

五、综合题

1.请将下述有关模块独立性的各种模块之间的耦合,按其耦合度从低到高排列起来。

1.内容耦合2.控制耦合3.非直接耦合4.标记耦合

5.数据耦合6.外部耦合7.公共耦合

2.请将下述有关模块独立性的各种模块内聚,按其内聚度(强度)从高到低排列起来。

1.巧合内聚2.时间内聚3.功能内聚4.通信内聚

5.逻辑内聚6.信息内聚7过程内聚

习题4

一、填空题

1.对象的抽象是(A),类的实例化是(B)。

2.继承性是(A)自动共享父类的属性和(B)的机制。

3.面向对象技术的基本特征主要是抽象性、(A)、继承性和(B)。

4.OMT方法使用了建模的思想建立了三类模型:

(A)、(B)和(C)。

5.OOSE将面向对象的思想应用于软件工程中,建立5个模型分别是:

需求模型、(A)、(B)、实现模型和(C)。

6.UML是一种标准化的图形建模语言,它的内容包括:

(A)、(B)、模型元素、(C)4个部分构成。

二、简答题

1.什么是面向对象?

2.面向对象的基本特征是什么?

3.什么是软件开发过程?

4.传统软件开发方法存在什么问题?

5.面向对象开发方法的特点是什么?

6.什么是统一建模语言?

7.简述Coda/Yourdon方法的面向对象设计模型。

8.简述UML视图结构。

三、综合题

1.举例说明并解释类、属性、操作、继承、多态、封装及抽象类的概念。

2.列举面向对象开发方法,并说明每个方法的特点。

3.列举一个抽象类与子类设计实例。

4.单重继承和多重继承设计各举一个实例。

5.列举一个多态设计的实例。

 

习题5

一、判断题

1、不可以用自然语言描述功能

2、静态建模是指对象之间通过属性互相联系,而这些关系不随时间而转移,即建立对象模型

3、可以从问题陈述中提取出或通过对类的理解而辨识出属性

4、是否划分主题要看目标系统的大小,对于含有较多对象的系统,应采用选择、精炼和构造的方法来确定主题

5、确定了类的属性后,就可以利用继承来共享公共的性质,以结构的形式重新组织类

6、结构式问题复杂关系的表示,它与系统的任务直接相关

7、功能模型指明了系统应该“做什么”

8、动态模型明确规定了“什么时候做”

9、事件是指已经发生并可能引发某种活动的一件事

10、从脚本中容易发现正常事件和异常事件

11、面向对象分析的特点是有利于对问题及系统责任的理解,人员之间的交流,并对需求变化有较强的适应性,并支持软件复用

12、状态机图描绘事件与对象状态的关系

13、当某个对象接受了一个事件以后,会转换成什么样的状态,这取决于该对象的当前状态和所接受的事件

14、功能模型描述的事外部执行者所理解的系统功能

15、功能模型描述了待开发系统的功能需求,被广泛应用到了面向对象的系统分析中

二、填空题

1、构成类图的元素所表达的模型信息,分为三个层次:

()、特征层和()

2、补充模型有()和()

3、可以用自然语言、()、()(或表)和()等工具描述功能

4、确定和标识类包括()、()、(),最后将同类型的对象抽象为类

5、确定关联包括()关联、()关联和()关联

6、一般来说,确定属性包括()和()两个步骤

7、对于含有较多对象的系统,应采用()、()和()的方法来确定主题

三、简答题

1、什么是面向对象分析

2、说明面向对象分析的模型的结构

3、简述面向对象分析的过程

4、简述如何确定服务

5、什么是动态模型

6、简述如何准备脚本

7、简述如何准备事件跟踪图

8、简述如何确定基本系统模型图

9、简述面向对象分析的目的

10、简述面向对象分析的基本任务

11、为建立分析模型,要运用的是哪些基本原则

12、简述建立对象-行为模型的步骤

 

习题6

一、判断题

1、系统设计是问题求解及建立解答的高级策略。

2、人机交互部分的设计结果,将对用户情绪和工作效率产生重要影响。

二、填空题

1、软件复用可分为(A)的复用、(B)的复用和(C)的复用。

2、面向对象设计的基本任务是(A)和(B)。

3、面向对象设计模型同样由主题、类和对象、结构、属性和服务等5个层次组成,并且又扩充了(A)、(B)、(C)和(D)4个部分。

4、面向对象技术中的类构件中有三种复用方式,分别是:

(A)复用、(B)复用和(C)复用。

5、面向对象设计准则是(A)、抽象、(B)、低耦合、高内聚、(C)和(D)设计。

6、人机交互借口的详细设计包括(A)、(B)的形式、(C)等项内容。

三、简答题

1、简述如何优化对象设计。

2、简述如何设计内部结构。

3、面向对象启发规则是什么。

4、什么是面向对象设计。

5、简述如何设计任务管理子系统。

6、简述如何设计数据管理子系统。

7、简述如何对全局资源管理。

8、简述如何选择控制流机制。

9、简述如何设计边界条件。

10、简述如何评审。

11、什么是对象设计?

12、简述如何设计关联。

13、简述如何设计类中的服务。

14、简述面向对象设计中存在的三种内聚形式。

15、举例说明客户-服务器(Client-Server)交互方式和平等伙伴(Peer-to-Peer)交互方式。

四、综合题

1、简述分析模型与设计模型的区别。

2、简述文件管理系统、关系数据库管理系统和面向对象数据库管理系统三种数据存储管理

模式的优缺点。

3、完成实例图书管理系统面向对象的设计过程,包括:

系统设计和对象设计。

系统需求:

在图书管理系统中,要为每个借阅者建立一个账户,并给借阅者发放借阅卡(借阅卡号,借阅者名),账户存储借阅者的个人信息、借阅信息以及预订信息。

持有借阅卡的借阅者可以借阅书刊、返还书刊、查询书刊信息、预定书刊并取消预订,但这些操作都是通过图书管理员进行的,也即借阅者不能直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。

在借阅书刊时,需要输入所借阅的书刊名、书刊的ISBN/ISSN号,然后输入借阅者的图书卡号和借阅者名,完成后提交所填表格,系统验证借阅者所借阅的书刊是否存在,若存在,则借阅者可借出书刊,建立并在系统中存储借阅记录。

借阅者还可以预定该书刊,一定借阅者预定的书刊可以获得,就将书刊直接寄给预定人。

另外,不考虑书刊的最长借阅期限,假设借阅者可以无限期地保存所借阅的书刊。

 

习题7

一、判断题

1.机器语言和汇编语言可以称为低级语言。

2.高级语言指的是独立于机器,面向过程或面向对象的语言。

二、选择题

结构化程序流程图中一般包括三种基本结构,下述结构中()不属于其基本结构。

A.顺序结构B.循环结构C.选择结构D.嵌套结构

三、填空题

1.关于程序效率应当从(A)、(B)和(C)三个方面进行考虑。

2.典型的程序复杂性度量有(A)、(B)和(C)。

3.良好的程序设计风格包括源程序的(A)、数据说明的(B)、语句构造的(C)、输入输出的(D)。

4.结构化程序设计用(A)逐步求精的设计方法和(B)的控制结构。

四、简答题

1.简述程序设计语言的三种类型及特点。

2.程序设计语言基本成分是什么。

3.良好的面向对象程序设计风格有哪些准则?

五、综合题

1.如何选择适合项目的面向对象程序设计语言?

2.请分别画出顺序结构、选择结构、循环结构的结构示意图。

3.考虑提高程序效率,必须明确的三条原则是什么?

4.为什么要进行程序复杂性度量?

5.对照本章内容,对自己熟悉的一门程序设计语言,尝试分析和总结其基本成分和技术特点。

并编写包括输入输出,数据运算,注释的程序,长度不小于500行。

6.对照本章程序设计风格的内容,尝试修改代码。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1