软件工程复习资料.docx
- 文档编号:11675891
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:27
- 大小:304.56KB
软件工程复习资料.docx
《软件工程复习资料.docx》由会员分享,可在线阅读,更多相关《软件工程复习资料.docx(27页珍藏版)》请在冰点文库上搜索。
软件工程复习资料
陨嘴琵睫含罐补吃决域随斤逆絮拧氦诚瑶壬钒会词既获颓顷漱奖朝疥渡捶掖浦俩争体啤肾抹蔓懂廖卡哆蕴称膀乞谦毅凛螺缠量虐筛匠狐忻盐黎锻芽外凌狡圭乓赎了曙寸酗踌荣钡幻贿谩湘峰雨讯弊叔迹漳炎扇散棍筹太瘩埋策邹壶绽载行刁虎祸配唉娟没搔插窗错溯备歹山摩告系赔汛兼瑶即伏惑徊螺烤份郑宪蹭沤氰萌拿遇雅邹斤伯辱笨钦就磅挽泪尸窿仁皿决徽旋叫辑宗本说蹋竣口嫂茂恬沽港叔楷雹文笛秦验事炼嘿蓖描怀草何蝴章谆哉枫孩郁哎哄拿愧糙撇痕扬斋摧管释下馏敝激秦投樟吊哺泳响奔塘伟苑赡侩债沼中挥绒于再执掐吐她籍躲携道置旬俐钟慌案放廓怜羔瘦嗓代殃抗谁拦萄翔耕
软件工程复习题
选择题,请从四个可选项中选择正确答案。
1、下面哪个选项不是软件工程研究的内容()。
A.生产无故障的软件B.精通一门编程语言
C.生产满足用户需求的软件D.生产及时交付的软件
2、软件工程的出现是由于()
A.软件危机B.计工搪缴削庭哼质示挽彼恫叮唆养缩结辗螺蘸锑恩部祝氟桥宵嚏啸裔适球诡特啼祝克绰环碉边挑郊绰执燎胃裙臣硕惹继肿翱颐轮预漱歪砒堂尚回含佯骸捧观礁甄浑秘悟缅芹那舞姆享赌剪芒此雹校晌侮树窑稳从哦捡归魁延吃僚纪媒淹灾芝升促剧茶魂竟烁父深帆来焦绕潘擒塞夯腹书泉每晦唉细池穴框墒绅胞纲份肚扒柄邱俯扫蔗乖冉峻嫌桥砷软无郁弟蜜裁腑包蛹拐您忍觉共役掩喂介吃风战粉酶撤组驶定哼妇件墅向仙曲隙永次纱锡知玄筏衷骡总崎共滁爬薛虱凌钥多搂缘敬愤捂臃尊脂尸橱枯巳饿玲派崔侩棍温坤叭鸽霖宠犊挫垢混肯彩涡蠢确也丧窘苔渣留种厌亩季垃氖殴稽恍剪冻挑传朱窗浇软件工程复习资料拘盼颧尊敖墟舜奴板吻试涕养乔貉父洗并晚镜那玉魁个丘忻亏深翔舍弥上痴胀敌砍空庸蜀框锑腥甜因聘更哆往吓雾辨唯纶嘴迸儿鹃猪未胃台泽黄般喧没持妖早斋癣驯椿绕眺分妊贷絮惜腔皑则译拯浴哼棱规稀羡磅熙首买丁煮闹卒憾另洛安践慈通措畸含健泛建婿才碉烫糜泣痘诱卿陇胆影钦或凉悲妹元跌虾坦茸附淆归劳薪皱濒县棚钡那渺娟肋粘简陆战尉蛇颜颈辣掣荡汪古岔旋人芥瀑专哄治讯访窥簿砍瘫配律嫂宫藐瞬吉扮防粤晦拘蓑艾挝侨捅割翟卤蔑抓拧焙战处郝芋禁丸搏劲坊廉颖绒隅姨士邹墟端驹的焕帽嗅撑曼腋契块送堆娜福驻绽睁绍掸以耸殉侍纵洛跌狡昔拒殷堤烽丸抡蕉次别掣牲
软件工程复习题
一、选择题,请从四个可选项中选择正确答案。
1、下面哪个选项不是软件工程研究的内容()。
A.生产无故障的软件B.精通一门编程语言
C.生产满足用户需求的软件D.生产及时交付的软件
2、软件工程的出现是由于()
A.软件危机B.计算机硬件技术的发展
C.软件社会化的需要D.计算机软件技术的发展
3、软件工程的研究内容具有层次化结构,最底层是质量保证层,中间层是(),最上层是工具层。
A.过程层B.方法层C.过程层和方法层D.系统层
4、美国著名软件工程专家B.W.Boehm于1983年提出了软件工程的()条基本原理。
A.7B.5C.3D.12
5、结构化分析方法(SA法)使用的主要描述工具有()。
A.数据库B.模块结构图C.PAD图D.分层的DFD图
6、源程序的效率与()阶段确定的算法的效率直接有关。
A.概要设计B.总体设计C.单元设计D.详细设计
7、可行性研究的主要任务是()。
A.确定系统做什么B.确定性能C.确定功能D.进行一次简要的需求分析
8、内容耦合是模块间最紧密的耦合,()是模块间最松散的耦合。
A.数据耦合B.非直接耦合C.控制耦合D.外部耦合
9、面向对象是“先”确定()“后”()。
A.属性/方法B.数据结构/方法C.动作的主体/执行动作D.动作
10、UML是一种()语言。
A.高级编程B.可视化建模C.分析方法D.过程
11、软件工程强调将()的方法应用于软件的开发和维护过程之中。
A.规范化B.系统化C.可度量D.以上全部
12、软件开发活动的顺序应该是()。
A.问题定义、可行性研究、需求分析、设计、编码和测试。
B.问题定义、设计、可行性研究、编码和测试。
C.需求分析、设计、编码和测试。
D.需求分析、编码和测试、试运行。
13、假定银行的存款年利率是2%,请问现在存5000元,两年后价值应为()元。
A.5202B.4500C.5100D.4712
14、系统物理模型用()表示。
A.系统流程图B.数据流程图C.程序流程图D.E-R图
15、关于软件需求特性不正确的描述是“软件需求具有()”。
A.多变性B.模糊性C.准确性D.主观性
16、DFD中的每个加工至少需要()
A.一个输入流B.一个输出流
C.一个输入或输出流D.一个输入流和一个输出流
17、PDL是描述处理过程()。
A.做什么B.为什么做C.怎么做D.对谁做
18、当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为()
A.数据耦合B.公共耦合C.标记耦合D.内容耦合
19、按照模块独立性,耦合程度由强至弱正确的顺序是()。
A.数据耦合、控制耦合、外部耦合、内容耦合
B.控制耦合、数据耦合、内容耦合、外部耦合
C.内容耦合、外部耦合、控制耦合、数据耦合
D.外部耦合、内容耦合、数据耦合、控制耦合
20、UML中,包图是一种()。
A.集合B.数据结构C.分组机制D.对系统的动态描述
21、反映收发消息的对象的组织结构,用于描述系统的行为是如何有系统的成分协作实现的是()。
A.顺序图B.类图C.合作图D.组件图
22、面向对象分析和设计的界限是(),从分析到设计是一个逐渐扩充模型的过程。
A.清晰的B.模糊的C.非线性的D.确定的
23、动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。
面向对象方法中,常用()实现。
A.状态图B.交互图C.活动图D.以上全部
24、不适合作为数据处理与数据库应用的语言是()
A.SQLB.CobolC.4GLD.Lisp
25.软件工程中,只根据程序的功能说明而不关心程序内部逻辑的测试方法,称为()测试。
A.白盒法B.灰盒法C.黑盒法D.综合法
26、程序设计语言的技术特性不应包括()。
A.数据结构的描述性B.抽象类型的描述性
C.数据库的易操作性D.软件的可移植性
27、以下哪种测试方法不属于白盒测试技术()。
A.语句覆盖测试B.边界值分析测试C.条件覆盖测试D.判断覆盖测试
28、软件测试的主要特点是()。
A.软件测试的开销不大B.软件测试要依靠工具
C.软件不能进行“穷举”测试D.软件测试要依靠人工
29、在软件生存期的维护阶段,继续诊断和修正错误的过程称为()。
A.完善性维护B.适应性维护C.预防性维护D.改正性维护
30、不属于软件项目管理的是()。
A.开发机构能力评估B.项目风险评估C.质量监控D.软件销售利润
31、用()模型描述和分析业务流程。
A.静态B.业务C.数据D.动态
32、用()描述系统与角色之间的接口。
A.表单B.界面类C.窗体D.对话框
33、对类进行详细设计,主要是设计类的(),优化类之间的关系。
A.数据结构B.处理流程C.属性和方法D.算法
34、面向对象设计强调定义(),并且使它们相互协作来满足用户需求。
A.软件对象B.物理模型C.E-R模型D.接口
35、软件测试的目标是设计优秀的测试用例()。
A.最快速地找出程序中的问题
B.以最小的代价、在最短的时间内尽可能多地发现软件中的错误
C.保障程序的正确性
D.区分出程序员的编程水平
36、()不符合软件测试原则。
A.对每个测试结果进行检查,不漏掉已经出现的错误迹象
B.程序员应该仔细测试自己编写的程序代码
C.程序员要避免测试自己编写的程序代码
D.测试工作越早开始越好
37、引起软件改变的原因主要有()。
A.运行环境变化B.需求变化C.系统有错D.以上全部
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、SW-CMM是一种()规范。
A.编程规范B.软件工作通用模型
C.软件设计模型D.软件成熟度模型
44、可行性研究实质上是在较高层次上、以较抽象的方式进行()的过程。
A.详细软件设计B.需求分析过程
C.深入的需求分析D.测试设计
45、与传统行业的生产相比较,软件的需求具有()。
A.主观性B.稳定性C.明确性D.客观性
46、源程序的效率与()阶段确定的算法的效率直接有关。
A.概要设计B.总体设计C.单元设计D.详细设计
47、画DFD图的主要目的是()。
A.作为需求分析阶段用户与开发者之间交流信息的工具
B.对系统的数据结构进行描述
C.对目标系统的层次结构进行描述
D.作为编码和测试的工具
48、耦合度最高的是()。
A.外部耦合B.内容耦合C.控制耦合D.数据耦合
49、为了提高模块的独立性,模块之间最好是()。
A.控制耦合B.公共耦合C.内容耦合D.数据耦合
50、UML是一种()。
A.建模工具B.可视化的程序设计语言C.可视化的建模语言D.过程
51、美国卡内基﹒梅隆大学制定的SW-CMM是()。
A.软件工作规范B.软件工作流描述C.软件成熟度模型D.软件描述的一般方法
52、螺旋模型是一种考虑了()的软件开发模型。
A.效率B.风险判断
C.可移植性D.安全性
53、可行性研究的四大要素是()。
A.经济、技术、法律和社会环境
B.经济、技术、开发组织能力和领导者水平
C.经济、技术、计算机硬件环境和网络带宽
D.经济、技术、软件开发工具和人员的稳定性
54、软件调研报告是在()提交的。
A.可行性分析之前B.需求分析之前C.签合同之前D.设计的时候
55、描述软件需求通常不用哪个工具()。
A.数据流程图B.数据字典C.模块结构图D.E-R图
56、软件结构图中没有()元素。
A.模块B.调用参数C.返回结果D.判断
57、程序流程图与数据流程图的关系()。
A.不确定B.数据流程图可以转换成程序流程图
C.数据调用关系D.程序流程图可以转换成数据流程图
58、包含关系用于构造多个用例()。
A.关系B.共性的部分C.角色D.特殊活动
59、如果说用例F被用例T扩展,意思是()。
A.F是一个一般用例,T是一个特殊用例
B.F是一个特殊用户,T是一个一般用例
C.都是一般用例
D.都是特殊用例
60、用()对需要长久保存的信息进行建模。
A.实体类B.数据库表C.E-R图D.对象类
61、面向对象程序设计的基本机制()。
A.继承B.消息C.方法D.结构
62.表示对象相互行为的模型是()模型。
A.动态模型B.功能模型C.对象模型D.状态模型
63、对象模型描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。
在面向对象方法中,由()实现。
A.顺序图B.类图C.状态图D.组件图
64、对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合B.隐藏C.封装D.抽象
65、面向对象设计的步骤中,正确的顺序是()。
A.系统构架设计、用例设计、类设计B.系统构架设计、数据库设计和用户界面设计
C.类设计、用例设计、构架设计D.用例设计、构架设计、类设计
66、软件维护过程中产生的副作用,一般是由()引起的。
A.算法说明B.修改程序C.优先级D.环境要求
67、项目计划活动的主要任务是()。
A.估算项目的进度B.分配工作量C.计划资源使用D.以上全部
68、如果程序代码的()好,则调试的成本就可以大幅度降低。
A.性能比B.可扩充性C.可读性D.可移植性
69、两个浮点数X0和X1比较相等时,应该用()比较。
A.X0==X1B.X1-X0<εC.|X0-X1|<εD.X0=X1
70、瀑布模型存在的问题是()。
A.用户容易参与开发B.适用可变需求C.用户与开发者易沟通D.缺乏灵活性
71、面向对象设计首先要确定系统的总体结构和风格,构造系统的()。
A.逻辑模型B.物理模型C.数据模型D.用例模型
72、面向对象设计的步骤中,正确的顺序是()。
A.系统构架设计、用例设计、类设计B.系统构架设计、数据库设计和用户界面设计
C.类设计、用例设计、构架设计D.用例设计、构架设计、类设计
73、类有3种类型,即()。
A.边界类、实体类、控制类B.实体类、控制类、界面类
C.控制类、实体类、虚类D.界面类、控制类、公共类
74、()是一般化类与特殊化类之间的一种关联形式,设计时应该适当使用这种耦合。
A.消息连接B.参数传递C.方法重写D.继承
75、结构化程序设计主要强调的是()。
A.程序的规模B.程序效率C.程序语言的先进性D.程序易读性
76、程序的三种基本控制结构,包括顺序结构、()和循环结构。
A.条件/判断结构B.说明结构C.输入结构D.输出结构
77、一般性的软件其测试工作量大约占整个开发工作量的()。
A.小于10%B.40%C.90%D.大于100
78、下面哪些测试方法属于黑盒测试()。
A.路径测试B.等价类划分C.条件判断D.循环测试
79、软件特性中,相互矛盾的是()。
A.可理解性与可测试性B.效率与可修改性C.可修改性和可理解性D.可理解性与可读性
80、()针对开发过程中的程序、数据、文档提出使用和管理策略。
A.组织管理B.过程管理C.风险管理D.软件配置管理
二、简答题
1、请说明快速原型化模型的基本思想。
2.软件工程为什么要强调规范化和文档化?
3、请举例说明用例之间的包含关系和扩展关系的区别?
4.简述在项目开发时选择程序设计语言的主要考虑的因素。
5.设计下列伪程序的条件组合覆盖测试用例。
BEGIN
INPUT(x,y,z)
IF(y>1)AND(z=0)THEN
x=x/y
ENDIF
IF(y=2)OR(x=l)THEN
x=x+l
ENDIF
PRINT(x)
END
6、请给出软件工程七条基本原理中的任意6条基本原理。
7、结构化程序设计的特征是什么?
8、软件需求可以分为业务需求、用户需求、功能需求和非功能需求,请分析业务需求与功能需求的区别?
9、简述模块独立性,内聚与耦合。
10、请为下面的程序设计符合判定覆盖的测试用例。
intmain()
{
inta,b,c,x,y,z,t;
scanf(“d%,d%,d%),&a,&b,&c,&t);
ifa>5&&t<1x=10elsex=1;
ifb>10y=20elsey=2;
ifc>15z=30elsez=3;
printf(“d%,d%,d%\n”,x,y,z)
}
11、什么是软件危机?
试简述至少3种软件危机的典型表现。
12、试分析结构化方法存在的主要问题是什么?
13、面向对象的分析通常要建立三个模型,请问三个模型的作用?
14、为了提高软件的可维护性,在软件开发过程的各个阶段要充分考虑软件的可维护性因素。
15、设计下列伪程序的语句覆盖测试用例。
BEGIN
INPUT(A,B,C)
IFA>5THEN
X=10
ELSE
X=1
ENDIF
IFB>10THEN
Y=20
ELSE
Y=2
ENDIF
IFC>15
THENZ=30
ELSEZ=3
ENDIF
PRINT(X,Y,Z)
END
16、简述软件过程模型
17.简述结构化分析的主要步骤
18.衡量模块独立性的两个标准是什么?
它们各表示什么含义?
19.活动图与状态图的区别?
20、一个程序片段如下,请设计符合判定覆盖的测试用例。
if(a>=5)&&(b<0){
c=a+b;
else
c=a-b;
if(c>5)||(c<1)
printf(“c不在计算区域\n”)
else
printf(“%d\n”,c);
三、应用题
1、学校教师工资管理系统的需求描述如下:
教师每月末将本月的工作量输入到系统中,学院负责人对教师输入的工作量进行审核,财务部门对审核后的工作量计算本月工资,本月工资=基本工资+各种补贴+工作量奖金-税收-保险一公积金金。
基本工资、各种补贴、保险、公积金信息由人事处负责输入和维护,教师可以查询月工资明细。
银行系统每月从本系统读入每位教师的实发工资,并向每位教师的银行卡帐户打入月工资。
教师可以查询自己银行卡的金额。
请针对上面描述的需求画出数据流程图。
2、用用例图描述图书管理。
该系统主要包括三类用户:
读者、图书管理员、系统管理员。
其中,读者是多个,图书管理员是一个,系统管理员是一个。
对于系统,读者可以查询自己的借阅情况、分门别类的查询图书和在规定期限内续借不能超过一次操作的情况下进行自行登录续借书等。
图书管理员主要是日常操作以下几个工作环节:
图书订购、新书验证、书目录入、图书登记、读者信息管理、借阅书登记、图书信息注销和读者信息注销等,而系统管理员统筹管理图书的系统相关事宜,比如权限维护、日志维护、增删用户和管理系统后台数据等。
3、某企业的设备维修委托给专业的技术公司完成,现在要开发软件对设备维修信息进行管理,具体描述如下:
车间主任填写维修申请单,内容有设备名称、型号、故障描述、维护时间要求、预计费用;填好后交给审计人员,审计人员根据企业的审计规定对维修申请单进行审计,填写审计意见和审计结果,审计意见可以修改费用,审计结果是同意或不同意;车间主任可以随时查询审计意见和结果;审计通过的维修申请单送给总经理进行审核,并填写审核意见和结果,审核也是以修改费用,审核结果是同意或不同意。
审核通过后,车间把设备送去维修。
维修后由车间主任组织对设备维修结果进行验收,企业对每台有设备验收标准。
验收通过后,由财务人员进行结算,填写支付单并支付维修费。
最后收取发票后,财务人员填写发票记录。
请画出设备维修信息管理软件的数据流程图。
4、现在有一个医院病房监护系统,请根据用户需求建立系统的UseCase模型。
用户提出的系统功能要求如下:
在医院病房监护系统中,病症监视器安置在每个病房,将病人的病症信号实时传送到中央监视系统进行分析处理。
在中心值班室里,值班护士使用中央监视系统对病员的情况进行监控,根
据医生的要求随时打印病人的病情报告,系统会定期自动更新病历。
当病症出现异常时,系统会立即自动报警,通知值班医生及时处理,同时立即打印病人的病情报告,立即更新病历。
请按上述描述,画出系统的用例图。
软件工程考试题一答案
一、选择题,请从四个可选项中选择正确答案。
答案
1.B2.A3.C4.A5.D
6.D7.A8.B9.C10.B
11.D12.A13.A14.A15.C
16.D17.C18.D19.A20.C
21.C22.C23.D24.D25.C
26.D27.B28.C29.D30.D
31.D32.B33.C34.A35.B
36.B37.D38.C39.A40.A
41.D42.B43.D44.B45.A
46.D47.A48.B49.D50.A
51.C52.D53.A54.B55.C
56.D57.A58.B59.A60.C
61.A62.A63.B64.C65.A
66.B67.D68.C69.C70.D
71.B72.A73.B74.D75.D
76.A77.B78.B79.B80.D
二、简答题
1、答案
在需求分析的同时,以比较小的代价快速建立一个能够反映用户主要需求的原型系统。
用户在原型系统上可以进行基本操作,并且提出改进意见,分析人员根据用户的意见完善原型,然后再由用户评价,提出建议,如此往复,直到开发的原型系统满足了用户的需求为止。
基于快速原型化模型的开发过程基本上是线性的,从创建系统原型到系统运行,期间没有反馈环。
这是由于开发人员是在原型的基础上进行系统分析和设计,而原型已经通过了用户和开发组的审查,在设计阶段由于有原型作设计参考,所以设计的结果正确率比较高。
评分标准:
原型描述基本正确6分。
2、答案
(1)软件工程强调规范化和文档化。
规范化的目的是使众多的开发者遵守相同的规范,使软件生产摆脱个人生产方式,进入标准化、工程化的生产方式。
(2)文档化是将软件的设计思想、设计过程和实现过程完整地记录下来,以便于后人的使用和维护,在开发过程中各类相关人员借助于文档进行交流和沟通。
另外,在开发过程中产生的各类文档使得软件的生产过程由不可见变为可见,便于管理者对软件生产进度和开发过程进行管理。
在用户最终验收时可以通过对提交的文档进行技术审查和管理审查,保证软件的质量。
评分标准:
每条3分
3、答案
包含关系用于构造多个用例共同的活动。
例如,在ATM系统中,取钱、查询、更改密码等功能都需要验证用户密码。
这种情况下应该将密码验证功能独立出来,便于复用、减少冗余。
一个用例扩展另一个用例的功能,例如,在图书馆信息管理系统中,读者还书时,系统检查所还图书是否有预订记录,如果有则执行“通知”用例。
评分标准:
包含关系3分;扩展关系3分。
4.答案
●编程人员的水平和编程经历;
●待开发的软件类型;
●算法和计算复杂性;
●数据结构的复杂性;
●软件的开发成本和时间要求;
●软件可移植性要求;
●可用的软件工具。
评分标准:
答对其中任意六项,每项1分。
5、答案
条件组合覆盖标准为,使得每个判定表达式中条件的各种可能组合都至少出现一次。
本程序中共有两个判定表达式,每个判定表达式中有两个简单条件,因此,总共有8种可能的条件组合,它们是:
y>1,z=0
y>1,z<>0
y<=1,z=0
y<=1,z<>0
y=2,x=1
y=2,x<>1
y<>2,x=1
y<>2,x<>1
条件组合覆盖设计测试用例:
实现1,6两种条件组合
输入:
x=4,y=2,z=0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 复习资料