软件工程练习题.docx

上传人:b****5 文档编号:11653493 上传时间:2023-03-29 格式:DOCX 页数:14 大小:46.17KB
下载 相关 举报
软件工程练习题.docx_第1页
第1页 / 共14页
软件工程练习题.docx_第2页
第2页 / 共14页
软件工程练习题.docx_第3页
第3页 / 共14页
软件工程练习题.docx_第4页
第4页 / 共14页
软件工程练习题.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

软件工程练习题.docx

《软件工程练习题.docx》由会员分享,可在线阅读,更多相关《软件工程练习题.docx(14页珍藏版)》请在冰豆网上搜索。

软件工程练习题.docx

软件工程练习题

一.填空题

1.软件生命周期分为、需求分析、概要设计、具体设计、软件实现、软件测试及运行维护7个阶段。

2.是最早的软件生存周期开发模型,它将软件开发过程中的各项活动规定为依固定依次连接的假设干阶段工作,形如瀑布流水,最终得到软件系统或软件产品。

3.是一种软件开发模型,在这种模型的每一个阶段,都要编码产生一个新的构件,并将新构件集成到从前已经构成的产品中并作为一个整体进展测试,直到满意用户需求为止。

4.当没有足够的人员在规定的期限内开发完整的产品或者由于不行克制的客观缘由而把交付期限规定的太短时应选用软件开发模型。

5.是一种软件开发模型,由需求定义、风险分析、实施开发和准备评审4个局部组成,主要适用于大型软件工程开发。

6.文档说明该软件开发工程的实此时此刻技术上、经济上和社会因素上等方面的可行性,评述为了合理地到达开发目的可供选择的各种可能实施的方案,说明并论证所选定实施方案的理由。

7.可行性分析的目的是。

8.用于描述系统的物理模型,用物理符号以黑盒子的形式描绘系统里的每个部件,仅表达信息在系统个部件之间流淌的状况。

9.(一种图)可以用来进展工程进度管理。

10.构造化分析和设计是一种面对的分析设计方法。

11.常见的需求获得方式有、情景分析技术等。

12.在构造化分析中,用于描述加工逻辑的工具主要有构造化语言、判定树和。

13.数据字典中的条目主要有、数据流、文件和加工四种。

14.构造化软件开发方法贯穿始终的八字方针为。

15.在软件生命周期中的每一个阶段完毕后必需进展,这是为了能尽早发觉工程开发中的错误。

16.是软件生命周期中重要的一步,是软件定义阶段的最终一个阶段,是关系到软件开发成败的关键步骤。

17.数据流图分为变换型和两种类型。

18.衡量不同模块彼此之间相互依靠的严密程度。

19.衡量不同模块彼此之间相互依靠的严密程度。

20.在软件模块设计时应当采纳的设计原那么是。

21.内聚性和模块独立性的关系为内聚性越高,模块独立性越。

22.概要设计阶段应产生的主要文档为,其中应包含对系统模块设计的结果。

23.具体设计阶段生成的文档是,它是程序运行过程的描述。

24.具体设计阶段常用的图示工具包括程序流程图、N-S图、及过程性设计语言。

25.是编码的先导,这个阶段所产生的设计文档的质量将干脆影响下一阶段程序的质量。

26.除非对效率有特别的要求,程序编写要做到第一,效率其次。

27.软件从一个计算机系统或环境转移到另一个计算系统或环境的简洁程度成为。

28.RUP的全称为。

29.软件工程的风险管理一般包括风险识别、风险分析、和风险监控4个过程。

30.CMM的全称为。

31.OOA的全称为。

32.OOD的全称为。

33.软件配置管理包括和两个方面。

34.UML中的建模包括建模和建模两大类。

35.在UML中,以反映类的构造(属性、操作)以及类之间的关系为主要目的,描述了软件系统的构造的模型是。

36.UML中,参和者的外部用户所能视察到的系统功能的模型图是。

37.UML中,的任务就是用来描述一个对象所处的可能状态以及状态之间的转移。

38.UML中,是将活动图用线条分成一些纵向的矩形,每一个矩形属于一个特定的对象或部门的责任区。

39.UML中,重点表示了对象之间传送消息的时间依次。

二.选择题

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.VisualC++B.EclipseC.SVND.MicrosoftProject

9.以下哪个选项不是工程准备中须要完成的任务。

〔〕

A.工程本钱估算B.工程进度支配C.工程资源安排D.系统构造设计

10.在数据流图中,(圆圈)代表〔〕。

A.源点B.汇点 C.加工  D.文件

11.软件需求分析阶段的工作可以分为四个方面:

需求获得、需求分析、编写需求规格说明书以及〔〕。

A.用户B.需求评审C.总结D.可行性分析

12.在数据流图中,(方块)代表〔〕。

A.源点B.数据流 C.加工 D.文件

13.数据流图是一种传统工具,用于描绘系统的〔〕。

A.逻辑模型B.程序构造C.体系构造D.物理构造

14.构造化分析方法的一个重要指导思想是〔〕。

A.自顶向下,逐步抽象B.自底向上,逐步抽象C.自顶向下,逐步分解D.自底向上,逐步分解

15.以下哪个软件可以用来进展工程建模。

()

A.VisualC++B.EclipseC.SVND.MicrosoftViso

16.软件需求分析阶段建立原型的主要目的是()

A.确定系统的功能和性能要求

B.确定系统的运行要求

C.确定系统是否满意用户需求

D.确定系统是否满意开发人员需求

17.构造分析方法的常用描述工具不包括()。

A.数据流图B.数据字典C.加工逻辑说明D.系统构造图

18.数据流图示面对()分析方法的描述工具。

A.数据构造B.数据流C.对象D.构件

19.内聚是对模块功能强度的度量,下面四个选项中内聚性最强的是〔〕。

A.偶然内聚B.逻辑内聚C.功能内聚D.信息内聚

20.内聚是对模块功能强度的度量,下面四个选项中内聚性最弱的是〔〕。

A.偶然内聚B.逻辑内聚C.功能内聚D.信息内聚

21.下面四个选项中耦合性最强的是〔〕。

A.内容耦合B.外部耦合C.数据耦合D.标记耦合

22.下面四个选项中耦合性最弱的是〔〕。

A.内容耦合B.外部耦合C.数据耦合D.标记耦合

23.数据耦合、内容耦合、标记耦合、限制耦合的耦合性从低到高的依次是〔〕。

A.数据、内容、标记、限制B.数据、标记、限制、内容

C.限制、数据、标记、内容D.限制、数据、内容、标记

24.功能内聚、依次内聚、时间内聚、偶然内聚的内聚性从低到高的依次是〔〕。

A.功能、依次、时间、偶然B.偶然、功能、时间、依次

C.偶然、时间、依次、功能D.依次、偶然、功能、时间

25.下面对系统模块化思想描述不正确的选项是〔〕。

A.有利于降低问题的困难度

B.有效地提高软件可测试性和可维护性

C.提高软件的牢靠性

D.给工程组织管理带来了困难

26.遵照软件工程的原那么,模块的作用域和模块的限制域之间的关系是〔〕。

A.模块的作用域应在模块的限制域之内

B.模块的限制域应在模块的作用域之内

C.模块的限制域和模块的作用域相互独立

D.以上说法都不对

27.以下不属于软件设计原那么的是〔〕。

A.高内聚 B.自底向上 C.模块化 D.低耦合

28.概要设计是软件系统构造的总体设计,以下选项中不属于概要设计的是〔〕。

A.把软件划分成模块

B.确定各个模块的功能

C.确定模块之间的调用关系

D.设计每个模块的伪代码

29.模块中全部成分结合起来完成一项任务,该模块的内聚度是〔〕。

它具有简明的外部界面,由它构成的软件易于理解、测试和维护。

偶然内聚B.逻辑内聚C.功能内聚D.信息内聚

30.软件总体设计阶段的主要任务是〔〕。

A.算法设计B.数据构造设计C.软件模块构造设计D.输入/输出设计

31.软件具体设计工具中,采纳自左向右的二维图形构造描述算法的是〔〕。

 A.N-SB.PADC.DDD.DFD

32.软件具体设计阶段的主要任务是〔〕。

A.算法及数据构造设计B.功能模块设计

C.数据库设计D.功能性能分析

33.以下关于程序流程图说法不正确的选项是〔〕。

A.独立于任何一种程序设计语言B.比拟直观、清楚,易于驾驭

C.不支持逐步求精D.简洁表示程序的层次构造

34.以下关于盒图(方块图)说法不正确的选项是〔〕。

A.限制的转移不能随意规定

B.可以表示模块的层次构造

C.很简洁表现嵌套关系D.不符合构造化程序设计的要求

35.在软件具体设计阶段,经常采纳的工具是〔〕。

 A.PADB.OOAC.DDD.DFD

36.下面关于良好的程序设计风格说法正确的选项是〔〕。

A.运用括号以改善表达式的清楚性

B.程序中的注释是可有可无的

C.尽量多运用临时变量D.嵌套应尽可能多的运用

37.下面关于良好的程序设计风格说法不正确的选项是〔〕。

A.尽可能多地运用GOTO语句

B.程序的格式应有助于读者理解程序

C.注解应占到整个程序的1/2—1/3D.运用有意义的变量名

38.编制一个好的程序首先要确保它的正确性和牢靠性,除此之外,通常更留意源程序的〔〕。

A.易运用性、易维护性和效率

B.易运用性、易维护性和易移植性

C.易运用性、易维护性和易修改性D.易理解性、平安性和效率

39.良好的程序设计风格中选择标识符的名字时应考虑〔〕。

A.名字长度越短越好,以削减源程序的输入量

B.多个变量共用一个名字,以削减变量名的数目

C.选择含义明确的名字,以正确提示所代表的实体

D.尽量以关键字作为名字,以使名字标准化

40.为了形成良好的程序设计风格,在书写语句时应考虑〔〕。

A.把多个短的语句写在同一行中,以削减源程序的行数

B.尽量运用标准文本以外的特别成效的语句,以提高语句的成效

C.尽量消退表达式中的括号,以简化表达式

D.幸免运用测试条件“非”,以提高程序的可读性

41.以下属于维护阶段的文档是〔〕。

A.软件需求规格说明B.具体设计说明书

C.软件维护申请报告D.软件测试分析报告

42.在整个软件维护阶段所花费的全部工作中,〔〕所占比例最大。

 A.改正性维护B.适应性维护

C.完善性维护D.预防性维护

43.依据引起软件维护的缘由,软件维护阶段通常可分为四类,其中不包括〔〕。

 A.改正性维护B.系统性维护

C.完善性维护D.预防性维护

44.以下表达中不利于软件可维护性提高的是〔〕。

A.为了缩短源程序的程度应删去源程序中的注解

B.尽可能在软件生产过过程中保证各阶段文件的正确性

C.重视程序构造的设计,使程序具有较好的层次构造

D.在进展需求分析时就应同时考虑维护性问题

45.下面关于软件质量管理说法不正确的选项是〔〕。

A.软件质量,是贯穿软件生存期的一个极为重要的问题

B.影响软件质量的要素包括软件的功能性、可移植性、可修改性等多个方面

C.软件实力成熟度模型是用于评价软件承包商实力并协助改善软件质量的方法

D.在软件质量管理中不应当强调全面质量管理,应当是少数人对质量进展负责

46.下面关于软件配置管理说法不正确的选项是〔〕。

A.现代软件开发困难度高是提出软件配置管理的主要缘由

B.软件配置管理包含为两部安排置管理和变更限制管理

C.软件配置管理有助于幸免软件开发中混乱状况的发生

D.软件配置管理是对开发过程中所需软硬件进展的管理

47.下面关于软件风险管理说法不正确的选项是〔〕。

A.工程风险管理事实上就是贯穿在工程开发过程中的一系列管理步骤

B.在开发初期就应当制定完善的风险管理策略

C.在风险管理中应建立风险清单、制定解决方案及风险躲避方法

D.风险管理包括风险识别、风险评估两个阶段。

48.下面说法不符合极限编程思想的是〔〕。

A.极限编程是一种迅捷开发方法

B.极限编程推崇简洁设计和小版本开发

C.极限编程中测试是在编码完成之后才进展设计和实施的

D.极限编程具有很高的敏捷性和实践性,但也备受争议

49.下面说法不符合极限编程思想的是〔〕。

A.极限编程是一种迅捷开发方法

B.极限编程推崇困难设计和大版本开发

C.极限编程推崇测试先行,测试驱动开发

D.极限编程具有很高的敏捷性和实践性,但也备受争议

50.UML图不包括()

〔A〕用例图〔B〕类图〔C〕状态图〔D〕流程图

51.在类图中,下面哪个符号表示继承关系〔〕

(B)

(A)

(C)

(D)

 

52.下面哪个视图属于UML语言的交互图〔〕

〔A〕行为图〔B〕状态图〔C〕实现图〔D〕依次图

53.RUP中有〔〕个核心过程工作流。

〔A〕1〔B〕3〔C〕6〔D〕9

54.类之间的关系不包括〔D〕

〔A〕依靠关系〔B〕泛化关系〔C〕实现关系〔D〕分解关系

55.假如发觉一个子类从父类继承来的行为对子类毫无意义或子类不能替代其父类时,这种继承关系违反了〔〕。

A.单一职责原那么B.依靠倒置原那么

C.Liskov替换原那么D.迪米特法那么

56.运用多个隔离的接口,比运用单个接口好,这是〔〕的主要思想。

A.单一职责原那么B.依靠倒置原那么

C.Liskov替换原那么D.接口隔离原那么

57.系统里的每一个对象应当具有单一职责,这个对象的全部效劳都应当聚焦在实现这个职责上,这是〔〕的主要思想。

A.单一职责原那么B.依靠倒置原那么

C.Liskov替换原那么D.接口隔离原那么

58.要针对接口编程,不针对实现编程,这是〔〕的主要思想。

A.单一职责原那么B.依靠倒置原那么

C.Liskov替换原那么D.接口隔离原那么

59.下面对RUP说法正确的选项是〔〕。

A.RUP是Oracle公司开发和维护的过程产品

B.RUP采纳瀑布式的开发模型

C.RUP的整个开发周期分为初始、细化、交付三个阶段

D.UML是RUP开发方法的一种有力支持工具

60.下面对RUP说法不正确的选项是〔〕。

A.RUP是Rational公司开发和维护的过程产品

B.RUP采纳迭代式的开发模型

C.RUP的整个开发周期分为初始、细化、交付三个阶段

D.RUP被称为软件统一开发过程

 

三.判定题

1.可行性分析是大大简化的软件分析和设计过程

2.可行性分析阶段须要完成可行性分析报告的书写,不须要进展阶段评审。

3.可行性分析不是解决问题,而是确定为什么要解决这个问题,是否值得去解。

4.在绘制分层数据流图时,最上层的叫做0层图。

5.需求分析解决目标系统“做什么”的问题,需求包括功能性需求和非功能性需求。

6.在一套分层数据流图中,假如某张图中的加工须要进一步细化,可以画出该图的子图,单应留意保持父图和子图之间的平衡。

7.对数据流图进展分层细化时必需保持信息连续性,即当把一个处理分解为一系列处理时,分解前和分解后的输入/输出数据流必需一样。

8.总体设计的主要任务是确定系统的总体构造,形成软件的模块构造图,并完成总体设计说明书的编写工作。

9.在软件模块构造的设计上应力争做到低内聚、高耦合。

10.既然模块化可以削减工作量,那么可以把软件进展无限分解。

11.提高模块独立性是好的软件设计的关键,而设计又是确定软件质量的关键环节。

12.具有一个线性构造,有明显的逻辑输入和逻辑输出,由输入、变换和输出三局部组成的数据流图为事务性数据流图。

13.模块越小,模块化的优点越明显。

一般来说,模块的大小都在10行以内。

14.在将这种混合型数据流图转换成软件构造图时,通常以事务分析为主。

15.在进展程序编码时,为了代码的完整、精炼应少写注释。

16.编码标准有助于程序员形成好的程序设计风格。

17.编码标准中一般从文件组织、注释、声明、命名标准等诸多方面对编码进展要求,但其中有些是可有可无的。

18在程序编码时,变量的命名通常应具有实际意义,并采纳全大写的命名方式。

19.软件测试应当在编码完成后再准备和实施。

20.软件维护会产生副作用,主要反映在三个方面:

修改编码的副作用、修改数据的副作用、修改文档的副作用。

21.在编码时尽可能运用全局变量有助于提高程序的可维护性

22.在软件维护时,当有源程序代码发生修改后,不用做全面的测试。

23.在软件维护工作中,文档资料也应作刚好的更新,不能明确地反映软件的实际状况,可能比没有设计文档更糟糕。

24.在进展面对对象设计时要留意对类进展良好的封装,通常我们是将经常发生变动的局部封装起来。

25.迭代是进展面对对象开发的一种常见方法,在迭代过程中假如发觉软件构造不能敏捷应对改变,应当进展设计重构。

26.软件管理应先于任何技术活动之前,并贯穿于软件的整个生命周期之中。

27.工程开发准备和具体设计说明书是软件设计阶段必需生成的文档。

28.在软件开发过程中,应当遵循边开发,边测试的原那么。

29.软件团队的组织对于软件工程开发特别重要,一个10人的开发团队必须比一个5人的开发团队更有效率。

30.面对对象的软件工程方法包括面对对象分析、面对对象设计、面对对象编程、面对对象测试和面对对象维护,这些局部严密结合在一起,填平了开发过程中的鸿沟。

31.UML是面对对象开发方法的有力支持工具。

四.名词说明

1.软件工程

2.软件生命周期

3.数据流图

4.构造化分析方法

5.内聚度

6.耦合度

7.功能内聚

8.校正性维护

9.适应性维护

10.完善性维护

11.软件配置管理

12.开放封闭原那么

五.简答题

1.什么是软件生命周期?

分为哪几个阶段?

2.简要说明瀑布模型的主要思想。

3.简要说明增量(渐增)模型的主要思想。

4.简要说明里程碑模型的主要思想。

5.快速原型法的根本思想是什么?

适用于哪些工程的开发?

6.假设你负责某种软件的研发,由于市场竞争剧烈,公司规定了严格的完成期限并且已对外公布。

你准备采纳哪种软件开发模型或方法?

为什么?

7.可行性分析报告主要包括哪些内容?

8.工程准备应当包含哪些方面?

请以学籍管理系统为例进展说明。

9.构造化分析方法的主要思想是什么?

有哪些常用的工具?

10.需求规格说明书主要包括哪些内容?

11.需求分析阶段的主要任务是什么?

应交付哪些成果?

12.软件总体设计阶段的主要任务是什么?

须要提交哪些文档?

13.概要设计说明书主要包括哪些内容?

14.构造化设计的主要思想是什么?

其设计结果是什么?

15.软件具体设计说明阶段的主要任务是什么?

须要提交哪些文档?

16.具体设计说明书主要包括哪些内容?

17.在软件编码阶段强调编码标准的目的是什么?

请任举两条根本的编码标准。

18.简述软件维护的工作流程。

19.软件开发过程中的各种文档起到什么作用?

假如文档不完整或不标准会带来什么不良后果?

请说明依次图和协作图的区分和联系。

六.分析设计题

1.下面是一段伪代码描述的程序流程,请画出它的程序流程图。

  START

  INPUT(A,B,C,D)

  While(A>0)AND(B>0)

Begin

  C=C+A+B

  D=D+A-B

A—

B--

  END

 IF(C>D)

  PRINT(C)

  ELSE

  PRINT(D)

STOP

2.设计算法实现三个数从小到大排列的功能,并用盒图描述该算法。

3.下面是一个吉他搜寻系统的类图,细致分析该类图,答复一下问题:

(1)当我们要在GuitarSpec类中参加新的属性时,除了GuitarSpec类本身,还有哪些类可能会受到影响?

(2)你有什么改良方法?

(3)你的改良方法应用到了什么设计原那么或技术?

这样做有什么好处?

 

3.分析下面各个类的关系,在图中添加符号形成一个合理的、完善的类图。

4.以下是饮料销售机的类图,请依据下面的场景描述画出该场景的依次图。

5.下面的文字描述了某大学新生报到的过程。

新生首先要填一张新生注册表单。

假如填写不正确,那么在别人的协助下重新填写,直至填写正确,然后进展注册。

注册胜利后,要进展开学典礼,同时在新生选课系统中注册,然后交齐第一个学期的学费。

试运用活动图描述上述过程。

6.“远程网络教学系统”的功能需求如下:

●学生登录网站后,可以阅读课件、查找课件、下载课件、观看教学视频。

●老师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。

学生和老师都须要登录后完成上述操作,请画出学生参和者对应的用例图。

7.“远程网络教学系统”的功能需求如下:

●学生登录网站后,可以阅读课件、查找课件、下载课件、观看教学视频。

●老师登录网站后,可以上传课件、上传教学视频、发布教学心得、查看教学心得、修改教学心得。

学生和老师都须要登录后完成上述操作,请画出老师参和者对应的用例图。

8.图书管理系统功能性需求说明如下:

✧图书管理系统能够为必须数量的借阅者供应效劳。

每个借阅者能够拥有唯一标识其存在的编号。

图书馆向每一个借阅者发放图书证,其中包含每一个借阅者的编号和个人信息。

供应的效劳包括:

供应查询图书信息、查询个人信息效劳和预定图书效劳等。

✧当借阅者须要借阅图书、归还书籍时须要通过图书管理员进展,即借阅者不干脆和系统交互,而是通过图书管理员充当借阅者的代理和系统交互。

✧系统管理员主要负责系统的管理维护工作,包括对图书、数目、借阅者的添加、删除和修改。

并且能够查询借阅者、图书和图书管理员的信息。

✧可以通过图书的名称或图书的ISBN/ISSN号对图书进展查找。

答复下面问题:

1)该系统中有哪些参和者?

2)确定该系统中的类。

3)找出类之间的关系并画出类图。

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

当前位置:首页 > 求职职场 > 简历

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

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