文档视界 最新最全的文档下载
当前位置:文档视界 › 江苏大学软件工程期末试卷及答案

江苏大学软件工程期末试卷及答案

江苏大学软件工程期末试卷及答案
江苏大学软件工程期末试卷及答案

江苏大学软件工程期末试卷及答案

一、选择题:(每题1分,共20分)(将答案写在题号前的()中)

( C )1. 软件是()。

A. 处理对象和处理规则的描述

B. 程序

C. 程序及其文档

D. 计算机系统

( B )2. 软件需求规格说明的内容不应包括()。

A. 主要功能

B. 算法的详细描述

C. 用户界面及运行环境

D. 软件的性能

( B )3. 程序的三种基本控制结构是()。

A. 过程、子程序和分程序

B. 顺序、选择和重复

C. 递归、迭代和回溯

D. 调用、返回和转移

( D) 4. 面向对象的分析方法主要是建立三类模型,即( )。

A) 系统模型、ER模型、应用模型

B) 对象模型、动态模型、应用模型

C) E-R模型、对象模型、功能模型

D) 对象模型、动态模型、功能模型

( C ) 5. 在E-R模型中,包含以下基本成分( )。

A) 数据、对象、实体

B) 控制、联系、对象

C) 实体、联系、属性

D) 实体、属性、操作

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

A) 完善性维护B) 纠错性维护C) 适应性维护D) 预防性维护

( B ) 7.软件测试的目标是()。

A. 证明软件是正确的

B. 发现错误、降低错误带来的风险

C. 排除软件中所有的错误

D. 与软件调试相同

( D )8.软件生命周期中所花费用最多的阶段是()

A.详细设计 B.软件编码 C.软件测试 D.软件维护

( C )9.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是()A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法

( D )10、详细设计的基本任务是确定每个模块的( )设计

A.功能 B.调用关系 C.输入输出数据 D.算法

( A )11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解决问题X需要的工作量(时间)。对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:()

A.模块化的根据B.逐步求精的根据C.抽象的根据D.信息隐藏和局部化的根据

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

A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖

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

A.数据流B.系统结构C.控制结构D.信息流

( A )14.内聚程度最低的是( )内聚

A.偶然

B.过程

C.顺序

D.时间

( A )15.确定测试计划是在( )阶段制定的.

A.总体设计 B.详细设计 C.编码 D.测试

(D )16.需求分析的产品是()

A.数据流程图案B.数据字典C.判定表D.需求规格说明书

(C )17.数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()A.数据库设计B.数据通信C.数据定义D.数据维护

( D )18.( )引入了“风险驱动”的思想,适用于大规模的内部开发项目。

A.增量模型B.喷泉模型C.原型模型D.螺旋模型

( D )19.模块的内聚性最高的是()

A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚

( D )20.提高测试的有效性非常重要,成功的测试是指( )

A.证明了被测试程序正确无误

B. 说明了被测试程序符合相应的要求

C.未发现被测程序的错误

D.发现了至今为止尚未发现的错误

二.判断题(每题1分,共10分)将答案写在题号前的()中,正确用√,错误用χ。

(×)1、开发软件就是编写程序。

(×)2、系统测试的主要方法是白盒法,主要进行功能测试、性能测试、安全性测试及可靠性等测试。

(×)3、编程序时应尽可能利用硬件特点以提高程序效率.

(×)4、软件需求分析的任务是建立软件模块结构图。

(√)5、尽可能使用高级语言编写程序

(×)6、以结构化分析方法建立的系统模型就是数据流图。

(×)7、进行总体设计时加强模块间的联系。

(×)8、编码时尽量多用全局变量.

(√)9、用CASE环境或程序自动生成工具来自动生成一部分程序.

(×)10、软件测试是要发现软件中的所有错误。

三、填空题(每题1分,共5分):将结果填在()

1、将下面的关系按继承关系、聚集关系或普通关联进行分类。

小汽车---------红旗轿车(继承)

小汽车---------驾驶员(普通关联)

班级------------学生(聚集)

2、将下列各项分为类或类的实例

我的汽车(实例)

交通工具(类)

三、简答题:(每题5分,共25分)

1. 软件生命期各阶段的任务是什么?

答:软件生命期分为7个阶段:

1、问题定义:要解决的问题是什么

2、可行性研究:确定问题是否值得解,技术可行性、经济可行性、操作可行性

3、需求分析:系统必须做什么

4、总体设计:系统如何实现,包括系统设计和结构设计

5、详细设计:具体实现设计的系统

6、实现:编码和测试

7、运行维护:保证软件正常运行。

2、软件重用的效益是什么?

答:1、软件重用可以显著地改善软件的质量和可靠性。

2、软件重用可以极大地提高软件开发的效率。

3、节省软件开发的成本,避免不必要的重复劳动和人力、财力的浪费。

3、自顶而下渐增测试与自底而上渐增测试各有何优、缺点?

答:

①自顶而下渐增测试

优点:不需要测试驱动程序,能够在测试阶段的早期实现并验证系统的主要功能,而且能够尽早发现上层模块的接口错误。

缺点:需要存根程序,底层错误发现较晚。

②自底而上渐增测试

优点与缺点和自顶而下渐增测试相反。

4 、提高可维护性的方法有哪些?

答:在软件工程的每一阶段都应该努力提高系统的可维护性,在每个阶段结束前的审查和复审中,应着重对可维护性进行复审。

在需求分析阶段的复审中,应对将来要扩充和修改的部分加以注明。在讨论软件可移植性问题时,要考虑可能要影响软件维护的系统界面。

在软件设计的复审中,因从便于修改、模块化和功能独立的目标出发,评价软件的结构和过程,还应对将来可能修改的部分预先做准备。

在软件代码复审中,应强调编码风格和内部说明这两个影响可维护性的因素。

在软件系统交付使用前的每一测试步骤中都应给出需要进行预防性维护部分的提示。

在完成每项维护工作后,都应对软件维护本身进行仔细认真的复审。

为了从根本上提高软件系统的可维护性,人们正试图通过直接维护软件规格说明来维护软件,同时也在大力发展软件重用技术。

简述软件测试要经过哪几个步骤,每个步骤与什么文档有关。

【解答】

测试过程按4 个步骤进行,即单元测试(模块测试)、集成测试(子系统测试和系统测试)、确认测试(验收测试)和平行运行。

单元测试集中对用源代码实现的每一个程序单元进行测试,与其相关的文档是单元测试计划和详细设计说明书。

集成测试把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。与其相关的文档是集成测试计划和软件需求说明书。

确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。与其相关的文档是确认测试计划和软件需求说明书。

平行运行把已经经过确认的软件纳入实际运行环境中,与其他系统成份组合在一起进行测试。与其相关的文档:用户指南、使用手册等。

四、应用题(每题8分,共40分)

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

要再次定货的零件。对于每个需要再次定货的零件应该列出下述数据:零件编号,零件名称,定货数量,目前价格,主要供应者,次要供应者。零件入库或出库称为事务,通过放在仓库中的CRT终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。要求:画出系统的数据流图。

答:

2、将下面给出的伪码转换为N-S图和PAD图。void root ( float root1, float root2 ) {

i = 1;j = 0;

while ( i <= 10 ) {

输入一元二次方程的系数a, b, c;

p = b*b – 4*a*c;

if ( p < 0 ) 输出“方程i无实数根”;

else if ( p > 0 ) 求出根并输出;

if ( p == 0 ) {

求出重根并输出;

j = j + 1;

}

i = i +1;

}

输出重根的方程的个数j;

}

【解答】

(1)N-S图

(2)PAD图

i = 1; j = 0;

while ( i <= 10 )

输入a, b, c; 计算p = b2- 4ac;

p < 0 ?

输出“方程i”

无实根求出根并输出

p > 0 ?

p == 0 ?

求出重根并输出; j = j + 1;

i = i + 1;

输出重根的方程个数i

T

T

T F

F

F

i = 1; j = 0; 输入a,b,c; 计算p = b2–4ac;

3、:输入三整数,判断是否构成三角形,如构成三角形,则输出三条边的值,否则输出”不能构成三角形”. 要求:1.用程序流程图表示该问题的算法;2.计算程序复杂度; 3.设计路径覆盖的测试用例。 答:

路径:

1.①—②—③—④—⑥—⑦

2.①—②—⑤—⑥—⑦

3.①—⑤—⑥—⑦

4.①—②—③—⑤—⑥—⑦

程序复杂度=3+1=4

测试用例

路径 测试用例(A ,B ,C )

结果 1 A=3,B=4,C=5 A=3,B=4,C=5 2

A=5,B=8,C=2

不能构成三角形

① ②③ ④ ⑤

⑥ ⑦ ⅠⅡ ⅢⅣ

开始

输入A,B,C A+B>C A+C>B B+C>A 输出ABC

不能构成三角形 结束 F

F F T T T

④ ⑤

3 A=2,B=2,C=5 不能构成三角形 4

A=5,B=2,C=2

不能构成三角形

4、某航空公司规定,乘客可以免费托运重量不超过30kg 的行李。当行李重量超过30kg 时,对头等舱的国内乘客超重部分每公斤收费4元,对其他舱的国内乘客超重部分每公斤收费6元,对外国乘客超重部分每公斤收费比国内乘客多一倍,对残疾乘客超重部分每公斤收费比正常乘客少一半。用判定树表示与上述每种条件组合相对应的计算行李费的算法.

答案:

5、一个软件公司有许多部门,分为开发部门和管理部门两种,每个开发部门开发多个软件产品,每个部门由部门名字唯一确定。该公司有许多员工,员工分为经理,工作人员和开发人员。

开发部门有经理和开发人员,管理部门有经理和工作人员。每个开发人员可参加多个开发项目,每个开发项目需要多个开发人员,每位经理可主持多个开发项目,建立该公司的对象模型。 答案:

软件公司 部门名

部门

开发部门 管理部门 软件产品

开发人员

经理

开发项目

工作人员 员工

有 开发

参加 1+ 1+ 1+

1+

1+

1+

1+

▼ ▼ ▼ ▼ 有

南京大学软件工程专业本科生培养方案与教学计划

南京大学软件工程专业本科生培养方案与教学计划 (2005年6月1日修订) 软件产业作为信息产业的核心是国民经济信息化的基础,已经涉足工业、农业、商业、金融、科教文卫、国防和百姓生活等各个领域。采用先进的工程化方法进行软件开发和生产是实现软件产业化的关键技术手段。因此,为积极促进我国软件产业发展,增强其国际竞争力,加速我国信息化建设,急需培养大批软件工程领域的实用型、复合型软件工程技术人才和软件工程管理人才。 为促进南京大学软件工程专业本科生在入学、培养、毕业和学位授予等环节的规范化,确保培养质量,根据教育部有关要求,依据南京大学有关本科生培养的规定,特制定本方案。 本方案作为南京大学培养软件工程专业本科生的指导性文件,规定其培养目标、方向和要求,以及培养对象、方式及学习年限,并就其课程设置、课程修读和学位论文要求等给出指导性意见。 一、培养目标、方向和要求 1、培养目标 软件工程专业本科生的培养目标是针对国民经济信息化建设和发展的需要,面向软件产业界对软件工程技术人才的需求,培养具有国际竞争能力的多层次复合型软件实用人才。 作为一名合格的软件工程专业本科毕业生,应当符合国民经济信息化建设和发展需要,以及软件企业对软件工程技术人才需求,能够成为企业所需要的较高层次的软件工程技术和管理人才,其基本能力应当达到(具有国际水准的)程序员、高级程序员、软件工程师、以及项目质量管理人员的水平。 2、培养方向 软件工程专业本科生培养的基本思路是强化基础、注重实践。针对软件产业的人才需求,本科生阶段强调宽口径培养,不具体细分专业培养方向,但考虑专业课程模块设置,从而使得毕业生既具备扎实的基础和宽广的知识面,又较深入地认识某类软件系统和应用领域。 软件工程专业的基础课程应涵盖软件基础,软件工程基础,数学、工程与职业基础。软件工程专业的专业课程应覆盖软件设计开发、软件过程与管理、计算机网络、数字化技术、信息安全技术、嵌入式软件、信息系统、图形系统等。 3、培养要求 1、软件工程专业本科毕业生应较好地掌握马克思主义、毛泽东思想和邓小平理论;拥护党的基本路线和方针、政策;热爱祖国,遵纪守法,品行端正,身心健康,具有良好的职业道德和创业精神,积极为我国经济建设和社会发展服务。 2、软件工程专业本科毕业生应具备科学的世界观,掌握科学方法;掌握扎实的软件基础理论知识和较宽广的软件工程专业知识,具有技术创新能力;受到良好的软件工程训练,具有较强的工程实践能力和团队协作能力;熟悉软件应用和工具,具备运用先进的工程化方法、技术和工具从事某一应用领域软件分析、设计、开发、维护等工作的能力。 3、软件工程专业本科毕业生应达到基本的数学和语言要求;熟练掌握英语,具备良好的阅读、理解和撰写外语资料的能力和进行国际化交流的能力;拥有较好的沟通技巧和团队工作能力,通晓和遵守法律和职业道德。 人才还应具备以下的一般特征: ●对软件系统、计算机系统、信息系统乃至与计算机软件相关的社会系统具有系统级的认识能力; ●有扎实的理论基础,能够全面通晓计算机软件和软件工程的基础知识,较深入理解至少一个计算机软 件应用领域; ●有较强的动手能力,能够具有一定的系统分析和软件设计的能力,熟练使用两种以上主流的操作系 统、数据库管理系统和程序设计语言,做到理论与实践相结合;

软件工程导论期末考试试题和答案

1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__ 测试________、运行与维护阶段。 2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件 和应用软件。 3.可行性研究主要集中在以下四个方面经济可行性、技术可行 性、法律可行性和抉择。 4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计 方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6.__数据流图________和__数据字典___共同构成系统的逻辑模型。 7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估 计三种类型。 1.下列哪个阶段不属于软件生存周期的三大阶段( C )。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是(A )。 3.A、软件开发工作的基础B、软件生存周期的开始 4.C、由系统分析员单独完成的D、由用户自己单独完成的 5.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。 6.A、明确的需求定义B、完整的生命周期 7.C、较长的开发时间D、熟练的开发人员 8.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归 测试过程称为( A )。 9.A、改正性维护B、适应性维护 10.C、完善性维护D、预防性维护 11.一般说来,投入运行的软件系统中有错误(A )。

2019最新软件工程导论期末考试题库及答案

2019最新软件工程导论期末考试题库及答案 1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM 公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符 号表达了系统中各种元素之间的_____信息流动_____情况。4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集 成测试)、__确认测试__和_____系统测试(集成测试)____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。 9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合” 的原则,提高模块的_独立性。 11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。

上海大学软件工程试卷试题(附答案)

、单项选择题(本大题共20小题,每小题 1 分,共20分) 在每小题列出的备选项中只有一个是符合题目要求的,多选或未选均无分。请将其代码填写在题后的括号内。错选、 1. 在软件生命周期的各个阶段中,工作量最大的阶段是 A .需求分析B.总体设计 C.综合测试 D .软件维护 2. 瀑布模型的特点不包括 A.前一阶段的任务没有完成,不能进入下一阶段工作 B.进入某个阶段工作后,不再回复到之前的阶段工作C.只有完成并评审了规定的文档,才标志着一个阶段的工作结束D.在软件产生之前,需求无法得到充分的测试 3. 螺旋模型强调的开发手段是 A.分阶段开发 C.风险驱动开发 4. 需求分析阶段的工作不包括 A.获得当前系统的物理模型 C.建立目标系统的逻辑模型 5. 总体设计阶段的工作不包括 A.确定程序的模块组成 C.确定实现各个模块功能的处理逻辑 6. 描绘系统物理模型的传统工具是 A .系统流程图 C.实体-联系图 7. 符合信息隐藏原理的是 A .将信息隐藏起来不被发现 C.将可能要修改的设计决策隐藏起来B.废弃式原型开发 D.增量式开发 B.抽象出当前系统的逻辑模 型 建立目标系统的物理模型 D. B.确定模块间的相互关 系 D.制定测试计划 B.数据流图 D.状态转换图 B.将信息隐藏起来确保安全 D.将不要修改的设计决策隐藏起 来 8. 模块的独立性原则是指软件设计时要尽量使模块具有 A .低内聚、低耦合B.低内聚、高耦合C.高内聚、低耦合D.高内聚、高耦合

[ 9. 有利于提高模块独立性的做法是 A.尽量使模块具有逻辑型内聚 B.尽量使模块间具有内容型耦合 C.使判定作用范围内的模块尽量成为该判定所在模块的直属下级模块 D.尽量提高模块的扇入数和扇出数 [ 10. 有关结构化设计(SD )方法的正确叙述是 ] A.只使用顺序、选择和循环 3 种控制结构 B.由数据结构映射出软件的结构 C.是一种面向对象的设计方法 D.是一种面向数据流的设计方法 [ 11. 有关总体设计阶段所使用的结构图的不正确叙述是 ] A.能够描述软件系统的模块组成 B.结构图中的模块是按照自上而下、自左向右的顺序执行的 C.能够描述模块间的调用关系以及模块间调用时所传递的信息 D.将模块间调用时所传递的信息分成两种:数据信息和控制信息 [ 12. 要求使用顺序、选择和循环控制结构的组合或嵌套来表达程序的过程设计工具是 A .程序流程图B . 盒图 C .判定表D.PDL 13 . 关于好的编码风格的正确叙述是 A .把多个语句写在同一行以节省空间B.要求用户指定输入数据的数目 C .检查输入项重要组合的合法性D.表达式中不使用多余的括号,以简化表达式 14 . 能发现软件需求规格说明书中的错误的测试步骤是 A .模块测试B.子系统测试 C .系统测试D.验收测试 15 . 自顶向下集成测试和自底向上集成测试都具有的优点是 A .较早发现主要设计错误B.可采用深度优先策略和宽度优先策略 C .支持故障隔离D.可复用模块得到充分测试 19 . 不符合面向对象设计准则的是 A .用对象的封装性来实现信息隐藏B.尽可能松散对象之间的交互耦合 C .尽可能减小继承耦合度D.尽可能设计小而简单的类 20. 上海大学校内电话号码由 5 位数字组成,但第 1 位数字只能是 5 或6。该电话号码的

软件工程导论期末考试题

一、单项选择题 1.适合于面向对象方法学的软件生存周期模型是( B ) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 2.从实用角度看,数据规范化程度在大多数场合选用第( C )范式。 A. 1 B.2 C.3 D.5 3. 可行性分析研究的目的是( A )。 A.项目值得开发否 B.争取项目 C.开发项目 D.规划项目 4. 模块的内聚性最高的是 ( D ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚 5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( B ) A. 软件工程 B. 软件危机 C. 软件周期 D. 软件产生 6. 需求分析阶段的任务是确定( D ) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能 7. 完整的软件结构通常用( B )图来表示。 A. IPO 图 B. HIPO 图 C.PAD 图 D.DFD 图 8. 在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。 A.语句 B.路径 C.条件组合 D.判定 9?对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象 10. 在数据流图中,圆代表( C )。 A.源点 B.终点 C.加工 D.模块 11. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B )。 A.松散 B.紧密 C.无法判断 D.相等 12. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中黑盒测试主要用于测试( B )。 A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑 13. 面向对象开发方法中, ( C )是占主导地位的标准建模语言。 A.Booch 方法 B.Coad 方法 C.UML 语言 D.OMT 方法 14. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( C ) A.如何做 B.怎么做 C.做什么 D.对谁做 15. 结构化程序设计的一种基本方法是( C ) A.筛选法 B.迭代法 C.逐步求精法 D.递归法 二、填空题 1. 目前使用最广泛的软件工 程学方法分别是传统方法学和(面向对象方法学 ) )和事务流。 文档 ) 。 ( 重复 )三种结构。 自顶向下 的集成测试方法,对软件结构中下层使 6. 软件维护包括 ( 改正性维护 )、适应性维护、完善性维护、预防性维护。 7. 面向对象方法学建模得到的三个基本子模型是 (对象建模 ) .动态模型、功能模型。 8. 复杂大型问题的对象模型通常由主题 2. 数据流图中信息流的类型有(变换流 3. 软件的定义是:软件 =程序+数据+ 4. 经典结构程序设计包括顺序、选择和 5. 集成测试时对软件结构中上层使用 用 ( 自底向上 ) 的集成测试方法。

软件工程导论》期末考试试题与答案

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 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. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

软件工程期末试题(含答案)广东药学院

填空题 1. 定义;开发;维护;问题定义;可行性研究;需求分析;总体设计;详细设计;编码和单元测试;综合测试;维护;维护。 2. 技术;经济;操作;软件项目的可行性/ 3. 一致性;现实性;完整性;有效性;完整性;有效性;原型系统。 4. 模块化;抽象;逐步求精;信息隐藏;局部化;模块独立;结构程序设计;可理解性。 5. 发现错误;黑盒测试;白盒测试;穷尽测试;测试方案。 6. 改正性维护;适应性维护;完善性维护;预防性维护。 一、 1. 软件生命周期可划分为、和3个时期,通常把这3个时期再细分为8个阶段,它们是①、②、③、④、⑤、⑥、⑦和⑧,其中的阶段的工作量是8个阶段中最大的。 2. 可行性研究的任务是从、和等三个方面研究。 3. 至少应该从、、和4个方面验证软件需求的正确性,其中和这两个方面的正确性必须有用户的积极参与才能验证,而且为了验证这两个方面的正确性,往往需要开发。 4. 软件总体设计时应遵循、、、、、和等6条基本原则。详细设计通常以技术为逻辑基础,因为从软件工程观点看,是软件最重要的质量标准之一。 5. 软件测试的目的是,通常把测试方法分为和两大类。因为通常不可能做到,所以精心设计是保证达到测试目的所必须的。 6. 软件维护通常包括4类活动,它们分别是、、、。 二、判断下述提高软件可维护性的措施是否正确,正确的在括弧内写对,错的写错。 1. 在进行需求分析时同时考虑维护问题。() 2. 完成测试后,为缩短源程序长度而删去程序中的注释。() 3. 尽可能在软件开发过程中保证各阶段文档的正确性。() 4. 编码时尽可能使用全局变量。() 5. 选择时间效率和空间效率尽可能高的算法。() 6. 尽可能利用硬件的特点以提高效率。() 7. 重视程序结构的设计,使程序具有较好的层次结构。() 8. 使用维护工具或软件工程环境。() 9. 进行概要设计时尽可能加强模块间的联系。() 10. 提高程序可读性,尽可能使用高级语言编程。() 三、按下述要求完成给出的程序流程图,即在答案栏内写出图中A、B、C、D、E的正确内容 给程序输入二维数组W(I,J),其中I≤M,J≤N(MT N均为正整数)。程序打印出数组中绝对值最小的元素值Q=W(K,L),及其下标K、L的值。假定数组中仅有一个绝对值最小的元素。 应该完成的程序流程图如下所示

2017年南京大学软件学院研究生面试总结

一、专业课面试 1.B和B+树的区别 B树,又称为多路平衡查找树,B树种所有节点的孩子结点数的最大值成为B树的阶,通常用m表示。一棵m阶B树或为空树,或为满足如下特性的m叉树:(1)树中每个节点之多有m棵子树(即至多含有m-1个关键字)(2)若根节点不是终端结点,则至少有两棵子树(3)所有叶结点都出现在同一层次上,并且不带信息。B树是所有结点的平衡因子均等于0的多路查找树。在B+树中,叶结点包含了全部关键字,即在非叶结点中出现的关键字也会出现在叶结点中;而在B树中,叶结点包含的关键字和其他结点包含的关键字是不重复的。 2.静态链表 静态链表是借助数组来描述线性表的链式存储结构,结点也有数据域data和指针域next,与链表中的指针不同的是,这里的指针是结点的相对地址(数组下标),又称游标。和顺序表一样,静态链表也要预先分配一块连续的内存空间。 0 2 1 b 6 2 a 1 3 d -1 4 5 c 3 3.软件过程 软件过程是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。概括地说,软件过程描述为了开发出客户需要的软件,什么人(who)、在什么时候(when)、做什么事(what)以及怎样(how)做这些事以实现某一个特定的具体目标。软件工程方法学的软件过程,基本上可以用瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型等来描述。 4.计算机网络 5.Java垃圾回收机制 在程序语言不需要关注内存的时候,可以自动清除; 6.多态 定义:某种事物的多种形态(一个对象,两种形态)多态在代码中的体现:父类或者接口的引用指向子类的对象。多态的优点:提供代码的扩展性,前期的代码可以使用后期的内容。多态的弊端:父类型的引用不能使用(调用)子类的特有方法。多态的前提:(1)必须有关系(继承或者实现)(2)要有重写 7.异常和错误

中南大学软件工程历届试卷

填空题(本题20分,每小题2分) 1. 瀑布模型是以文档为驱动、适合于(软件需求确定的)软件项目的开发。 2. 需求分析的基本任务是(确定用户需要软件做什么)。 3. 若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(边界值分析法)。 4. 根据程序流程图划分的模块通常是(过程)内聚的模块。 5. 软件的分类,按其功能可分为:系统软件、(支撑软件)和应用软件。 6. UML的定义包括UML语义和(UML表示法)两个部分。 7. 客观世界中的若干类,通常有两种主要的结构关系:即分类结构和( 整体与部分结构)。 四、测试题(本题16分,每小题8分) 某程序的程序流程图如下图所示,试据此回答下述问题: 1. 计算程序的环形复杂度; 2. 设计测试用例,满足基本路径覆盖。 四.(1)环路复杂性=判断数+1=6+1=7(个) (2)路径1:(0)—①—(13)—(19) 路径2:(0)—②—③—(14)—(19) 路径3:(0)—②—④—⑤—(15)—(19) 路径4:(0)—②—④—⑥—⑦—(16)—(19) 路径5:(0)—②—④—⑥—⑧—⑨—(17)—(19) 路径6:(0)—②—④—⑥—⑧—⑩—(18)—(19) 路径7:(0)—②—④—⑥—⑧—⑩—(12)—(19) 一、填空题(本题30分,每小题1.5分) 1、软件是计算机程序、(描述计算机程序的文档)及(数据)的完整集合,将其统称为软件配置,这些项称为软件配置项。通过正式复审的软件配置项称为(基线),只有通过正式的变化控制过程才能改变它。 2、通常,将软件生命周期全过程中使用的一整套技术方法的集合称为方法学,包含三个要素,即方法、(工具)和(过程)。传统方法学采用(结构化)技术来自顶向下顺序地完成软件开发的各项任务,而面向对象方法是一种以(数据)为主线,把数据和对数据的操作紧密地结合起来的方法,其开发过程是一个多次迭代的演化过程。 3、软件测试的目标是(暴露程序中的错误),因而从心理学角度来看,由程序作者对自己编写的程序进行测试是不恰当的。设计测试方案是测试阶段的关键技术问题,测试方案一般包括(测试目的)、输入的测试数据

南京大学软件工程学科教程——附件2-1南京大学软件学院选课规则

南京大学软件工程学科教程——附件2-1 南京大学软件学院选课规则 一、 总则 1、目的。为规范化南京大学软件学院选修课开设和学生选课,特制定本规则。 2、适用范围。南京大学软件学院学生选修学院开设的各类选修课,学校及其 他院系提供的选修课和学院开设的公共指定选修课不适用此规则。 二、 选修课及其开设规则 3、适用本规则的选修课类别。南京大学软件学院开设的方向课程模块指定选 修课,方向课程模块指定实践课程,任选课程。 4、选修课开设班次规定。选修人数超过160人,开设两个教学班次;其他情 况,开设一个班次。 5、选修课班次最大人数。120人。 6、选修课取消。当次选修人数少于10人,取消开班;连续3年选修人数少于 20人,经学院批准后取消该选修课程。 三、 学生选修 7、方向课程模块选修的提出。二年级末,学生提出联系方向课程模块。每个 学生应提出3个方向课程模块选修志愿,放弃填写第二/三志愿者,意味默认其他任何方向课程模块为志愿。 8、任选课程选修的提出。每学期第二周,学生提出课程选修志愿。 9、修读课程数限制。每个小学期,每个学生修读的学院开设课程数(含必修 课、指选课、任选课)原则不少于3门,不多于5门;特殊情况应书面报教务办公室批准。 四、 选修优先权 10、方向课程模块选修优先权。 a)每个学生的初始方向课程模块选修优先权为该联系方向指定专业核心课 修读成绩; b)若学生在确定选修的方向课程模块之前获得过软件设计比赛优胜,可以 获得30个方向课程模块选修优先权加分。 11、选修绝对优先权。使用两个选修绝对优先权,可以保证选修一门任选实践 课程;使用一个选修绝对优先权,可以保证选修一门其他任选课程。 a)每个学生的初始选修绝对优先权为0; b)若学生按照第二志愿确定方向课程模块,可以获得3个选修绝对优先权; c)若学生按照第三志愿确定方向课程模块,可以获得5个选修绝对优先权;

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(20分) 1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B ) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B ) A、控制流 B、数据流 C、程序流 D、指令流 10、软件开发的结构化生命周期方法将软件生命周期划分成(A ) A、计划阶段、开发阶段、运行阶段 B、计划阶段、编程阶段、测试阶段 C、总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计 二.填空(20分) 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素 表达了系统中各种元素之间的(信息流动)情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先 策略和(宽度优先策略) 。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图 来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 25.汇编语言是面向(机器) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 28.所有软件维护申请报告要按规定方式提出,该报告也称( 软件问题)报告。 29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向 维护的技术;在维护阶段用来提高维护的效率和质量的(维护支援)技术。 30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选 择的语言有:(FORTRAN语言)、PASCAL语言、C语言和PL/1语言。三.判断(10分)

合肥师范学院软件工程期末考试试题·优选.

TEST1 一、选择题:(本大题共10小题,每小题2分,共20分) 1.软件特性中,一个软件能再次用于其他相关应用的程度称为(B )。 A.可移植性 B.可重用性 C.容错性 D.可适应性 2.关于计算机软件,下列说法正确的是(A )。 A.计算机系统的组成部分 B.不能作为商品参与交易 C.是在计算机硬件设备生产过程中生产出来的 D.只存在于计算机系统工作时 3.开发软件需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作 (B)。 A.软件投机 B.软件危机 C.软件工程 D.软件产生 4.软件工程中(C )不属于用户文档的内容。 A.功能描述 B.安装手册 C.系统设计 D.使用手册 5.软件概要设计结束后得到( B )。 A.DFD图 B.软件结构图 C.模块详细的算法 D.程序编码 6.软件设计中,可应用于详细设计的工具有( )。 A.程序流程图、PAD图和伪码 B.数据流图、PAD、结构图和伪码 C.业务流程图、N-S图和伪码 D.数据流图、PAD、N-S图和伪码 7.软件维护中,因修改交互输入的顺序,没有正确的记录而引起的错误是 ( A )产生的副作用。 A.文档 B.数据 C.编码 D.设计 8.瀑布模型本质上是一种(C )模型。 A.线性顺序 B.顺序迭代 C.线性迭代 D.及早见产品 9.螺旋模型是一种将瀑布模型和(A )结合起来的软件开发模型。 A.增量模型 B.专家系统 C.喷泉模型 D.变换模型 10.面向对象分析是对系统进行(A )的一种方法。 A. 需求建模 B. 程序设计 C. 设计评审 D. 测试验收

二填空题:(本大题共10个空,每空2分,共20分) 1.软件工程三要素是软件工程的( 方法)、( 工具)和(过程)。 2.软件工程学的主要内容是( )和( ) 。 3.实体-关系图(E-R图),用于建立数据模型,其中包含了( 对象)、( 关 系)和( 属性)。 4.详细设计的任务是确定每个模块的内部特性,即模块的( )和( )。 三、判断题:(本大题共10小题,每小题2分,共20分) 1.一个好的开发人员应具备的素质和能力不包括具有良好的书面和口头表达 能力。F 2.可以用CASE环境或程序自动生成工具来自动生成一部分程序。T 3.开发软件就是编写程序。F 4.快速原型技术的适用于软件产品要求大量的用户交互、或产生大量的可视输 出、或设计一些复杂的算法等场合。F 5.面向对象的分析由对象、结构、继承性和基于消息的通信构成。 6.封装是把对象和属性结合在一起,强调独立和封闭。T 7.类的设计过程包括:确定类,确定关联类,确定属性,识别继承关系。 8.软件工程学只有理论意义,没有实际用途。F 9.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。T 10.在进行了可行性分析后,需求分析就只需要解决目标系统的设计方案。F 四、简答题:(本大题共4小题,每小题5分,共20分) 1.什么是软件生命周期?软件生命周期都有哪些阶段? 软件从提出设计到被使用和维护直至被舍弃的时间段。 2.以G.Myers的观点,简述软件测试的目的。 为了发现错误而执行的过程;好的方案是极有可能发现错误的方案 3.设计用户界面的过程中,会遇到那四个问题? 4.面向对象的分析通常要建立三个模型,请问三个模型的作用?

《软件工程导论》期末考试试题和答案2

得分评卷人 一、填空题(每空1分,共20分) 1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__ 测试________、运行与维护阶段。 2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件 和应用软件。 3.可行性研究主要集中在以下四个方面经济可行性、技术可行 性、法律可行性和抉择。 4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计 方法_________,以数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6.__数据流图________和__数据字典___共同构成系统的逻辑模型。 7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估 计三种类型。 得分评卷人 二、单项选择题(每小题2分,共10分) 1.下列哪个阶段不属于软件生存周期的三大阶段( C )。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是(A )。 A、软件开发工作的基础 B、软件生存周期的开始 C、由系统分析员单独完成的 D、由用户自己单独完成的 3.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B )。 A、明确的需求定义 B、完整的生命周期 C、较长的开发时间 D、熟练的开发人员

南京大学考博辅导班:2019南京大学软件学院考博难度解析及经验分享

南京大学考博辅导班:2019南京大学软件学院考博难度解析及经验 分享 南京大学2019年我校公开招考全部以“申请-考核制”方式进行。各院系根据《南京大学博士研究生“申请-考核制”招生选拔工作管理办法》及院系博士生“申请-考核制”实施办法,组织开展相关选拔工作,从考生中择优录取博士生。各院系招生计划、具体考核办法,请查询南京大学研究生院网站的公告说明、招生目录以及相关院系网站的实施“申请-考核制”相关规定。 具有博士学位授权点的院系根据中期考核结果,在我校研究生中挑选成绩优异、具有较强的创新精神和科研能力的硕士生攻读博士学位。具体要求请咨询相关研究生培养部门。 获得推荐免试生资格的优秀应届本科毕业生,通过复试后,直接录取为博士研究生。直接攻博招生专业一般为基础研究学科。具体要求参见《南京大学2019年接收推荐免试研究生工作办法》。 下面是启道考博辅导班整理的关于南京大学软件学院考博相关内容。 一、院系简介 南京大学软件学院是南京大学所属的教学研究型工科学院,现设有软件工程本科专业、软件工程专业硕士专业、应用软件工程工学硕士与博士专业;拥有国家级软件工程人才培养模式创新实验区、国家软件人才国际培训(南京)基地。软件工程本科专业是国家级特色专业,一直被“中国大学评价”课题组评为该专业最高等级A++级,并连续六年排名位居全国高校前两位。目前有在校全日制本科生近1000人,全日制硕士博士研究生200余人。学院教学实验设施先进,教学实验室面积约11000多平方米,配备有1000余台教学实验设备,并设有Intel嵌入式、Cisco网络、Sun工作站、Google手持设备、IBM Linux等6个专业教学实验室。 师资力量 学院师资力量雄厚,拥有“软件工程主干课程国家级教学团队”,现有专兼职教授13名,副教授10名,其中1人为国家自然科学杰出青年基金获得者,2人为教育部专业教学指导委员会委员,2人获得宝钢教育基金优秀教师奖。学院还聘请著名IT技术专家侯捷先生等一批业界知名软件专家给学生授课。

最新软件工程导论期末考试试题

软件工程导论期末考试试题 一.选择 1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法 8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B )

广州大学-2018软件工程试卷a及答案

广州大学2017—2018 学年第一学期考试卷 课程软件工程导论考试形式(闭卷,考试) 一、单选题(每小题1分,共25分,答案写在下表中) 1.软件工程方法的提出起源于软件危机,而其目的应该是最终解决软件的(D)问题 A.产生危机 B.质量保证 C.开发效率 D.生产工程化 2.瀑布模型将软件生命周期归纳为3个时期,即计划期、开发期和运行期。下列(D )不属于开发期内的工作。 A.总体设计 B.详细设计 C.程序设计

D.维护 3.结构化方法将软件生命周期分为计划、开发和运行3个时期,下列任务中(B)属于计划时期的任务。 A.需求分析 B.问题定义 C.总体设计 D.编码 4.可行性研究要进行一次(C)需求分析。 A.详细的 B.全面的 C.简化的、压缩的 D.彻底的 5.经济可行性研究的范围包括(C)。 A.资源有效性 B.管理制度 C.效益分析 D.开发风险 6.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。 A.确定 B.行或不行 C.正确 D.无二义 7.产生软件维护的副作用,是指(C )。 A.开发时的错误 B.隐含的错误 C.因修改软件而造成的错误 D.运行时错误操作 8.软件需求分析阶段的工作,可以分为4个方面:需求获取、需求分析、编写需求规格说明书以及(B)。 A.用户 B.需求评审 C.总结 D.都不对

9.软件开发的结构化分析方法,常用的描述软件工程需求的工具是(C) A.业务流程图、处理说明 B.软件流程图、模块说明 C.数据流程图、数据字典 D.系统流程图、程序编码 10.数据流图用于抽象描述一个软件的逻辑模型,数据流图由以写特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是(A) A.控制流 B.加工 C.数据存储 D.数据流 11.软件开发的结构生命周期法的基本假定是认为软件需求能做到(C) A.严格定义 B.初步定义 C.早期冻结 D.动态改变 软件需求经过分析阶段后,通过软件需求说明书表示出来,后面的开发工作以此为基础进行,即假定软件需求确定后一般不再改变,即“早期冻结”。 12.在结构化方法中,软件功能分解属于软件开发中的(C)阶段 A.详细设计 B.需求分析 C.总体设计 D.编程调试 13.概要设计的结果是提供一份(A) A.模块说明书 B.框图 C.程序 D.数据流图 14.耦合是软件各个模块间连接的一种度量。一组模块都访问同一数据结构应属于(B)方式 A.内容耦合 B.公共耦合 C.控制耦合 D.数据耦合 解释:耦合分为以下几种,按照耦合度由高到低排列是:

南京大学软件学院数据库设计试题2010

数据库期末试题2010/6/25 一、填空题 1.关系模型的基本数据结构是__表___ 2.关系代数中不能由其他运算表示的基本运算是union并,difference差,乘 积_____,投影_____,选择_____ 3.已知两个关系R(A,B,C),S(C,D),用其他运算表示R join S =__ ((R*S)where R.C=S.C)[R.A,R.B,R.C,S.D]____ 4.对象关系模型相对于关系模型在数据类型方面的扩充是:___,集合类型。 5.ER图中用__方框___表示实体,用__椭圆___表示属性,用__菱形___表示关系。 6.事务的四个特性是:_原子性_____,一致性, 隔离性, _持久性____ 7.数据库的事物调度中出现的两个事物之间互相等待的现象是:死锁____. 8.在事务恢复中redo日志只能作用于_____事务。(这个不知道填神马东西 ) 9.数据库中权限的授予和撤销的语句的动词分别是:_grant___, ___revoke___ 10.嵌入式sql中的游标使用的操作的四个动词是: declare__,open___,_fetch__,close___ 11.Sql查询语句中having语句之前一定要有的子句是group by____ 12.对象关系模型中用于创建用户对象类型的语句是,create type name_t ___ _____ 二,单选题 1,下列关于关系陈述错误的是:C A,每一行的值不能相同C,每一列的值域不能相同 B,列的顺序随意D, 行的顺序随意

2, 空值参与比较运算的结果是:D A,空值C,逻辑假 B,逻辑真D,不确定 三、已知一个数据库的关系模式如下: 消费者C (cid, cname, city, discnt) 代理商A(aid, aname, city, percent) 产品P (pid, pname, city, quantity, price) 订单O (ordno, month, cid, aid, pid, qty, dollars) 请用关系代数表示下边的查询操作: 1.查询所有折扣大于10的顾客的姓名和编号 2.查询“南京”顾客买过的商品 3.查询仅仅买过单价小于100的商品的代理商的编号 4.查询卖过所有商品的代理商 5.查询每一种商品的单笔最高销售金额,返回商品的编号和对应的订 单的编号。 1.( C where discnt >10)[name,cid] 2.(O join (C where city =”nj”)[pid] 3.O[aid]-(O join (P where price>=100))[aid] 4.O[aid,pid] div P[pid] 5.X:=O Y:=(O*X where O.dollars >X.dollars and O.pid=X.pid)[X.pid] T:=O[pid]-Y

软件工程导论期末考试试题

. 软件工程导论期末考试试题 一.选择 1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C )。 其它工程科学的影响程序设计方法学的影响 B.A.C. 软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法 8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B ) . .

相关文档
相关文档 最新文档