软件工程题目
软件工程期末考试参考题及答案

软件工程期末考试参考题及答案1. 考试题目:软件需求工程考试要求:根据给定的需求文档,完成以下题目。
题目一:根据给定的需求文档,设计一个在线购物系统。
请根据以下要求完成系统设计:(1)使用UML类图绘制系统的类结构;(2)使用UML时序图描述用户登录和浏览商品的流程;(3)使用UML活动图描述用户下订单的流程。
答案:(1)类图如下所示:[在这里插入UML类图图片](2)时序图如下所示:[在这里插入UML时序图图片](3)活动图如下所示:[在这里插入UML活动图图片]题目二:根据给定的需求文档,设计一个在线学习系统。
请根据以下要求完成系统设计:(1)使用UML用例图描述系统的功能需求;(2)使用UML活动图描述学生完成在线学习的流程;(3)使用UML状态图描述学生的学习状态变化。
答案:(1)用例图如下所示:[在这里插入UML用例图图片](2)活动图如下所示:[在这里插入UML活动图图片](3)状态图如下所示:[在这里插入UML状态图图片]2. 考试题目:软件设计模式考试要求:根据给定的题目,选择并解答以下问题。
题目一:分析以下代码,判断其使用了哪种设计模式,并阐述该设计模式的作用和优势。
```javapublic interface Car {void drive();}public class Sedan implements Car {@Overridepublic void drive() {System.out.println("Driving a sedan car."); }}public class SUV implements Car {@Overridepublic void drive() {System.out.println("Driving an SUV car."); }}public class CarFactory {public Car createCar(String type) {if (type.equals("sedan")) {return new Sedan();} else if (type.equals("suv")) {return new SUV();} else {throw new IllegalArgumentException("Invalid car type: " + type);}}}```答案:该代码使用了工厂模式。
《软件工程》试题及参考答案(第6套)

第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程B 软件工具C 质量保证D 软件工程2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。
A 业务需求B 功能要求C 非功能需求D 用户需求3、软件测试计划开始于需求分析阶段,完成于()阶段。
A 需求分析B 软件设计C 软件实现D 软件测试4.下面关于面向对象方法中消息的叙述,不正确的是( )。
A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息C. 应用程序之间可以相互发送消息D.发送与接收消息的通信机制与传统的子程序调用机制不同5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。
A.工作无序,项目进行过程中经常放弃当初的计划B.建立了项目级的管理制度C.建立了企业级的管理制度D.软件过程中活动的生产率和质量是可度量的6.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性 D.可移植性7.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试 D.软件维护8.需求分析阶段的任务是确定()A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能9.如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为( )。
A.时间内聚 B.逻辑内聚C.通信内聚 D.信息内聚5.影响软件可维护性的决定因素是()A 文档B 可理解性C 可测试性D 可修改性10.实现单入口单出口程序的三种基本控制结构是()A 顺序、选择、循环B 过程、子程序、分程序C 调用、返回、转移D 递归、堆栈、队列11.为高质量地开发软件项目,在软件结构设计时,必须遵循()原则。
上海大学软件工程试卷试题(附答案)

、单项选择题(本大题共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.PDL13.关于好的编码风格的正确叙述是A.把多个语句写在同一行以节省空间B.要求用户指定输入数据的数目C .检查输入项重要组合的合法性D.表达式中不使用多余的括号,以简化表达式14.能发现软件需求规格说明书中的错误的测试步骤是A.模块测试B.子系统测试C .系统测试D.验收测试15.自顶向下集成测试和自底向上集成测试都具有的优点是A.较早发现主要设计错误B.可采用深度优先策略和宽度优先策略C .支持故障隔离D.可复用模块得到充分测试19.不符合面向对象设计准则的是A.用对象的封装性来实现信息隐藏B.尽可能松散对象之间的交互耦合C .尽可能减小继承耦合度D.尽可能设计小而简单的类20. 上海大学校内电话号码由 5 位数字组成,但第 1 位数字只能是 5 或6。
《软件工程》试题及参考答案(第6套)

《软件工程》试题(第6套)第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程B 软件工具C 质量保证D 软件工程2、在各种不同的软件需求中,功能需求描述了用户使用产品必须要完成的任务,可以在用例模型或方案脚本中予以说明,()是从各个角度对系统的约束和限制,反映了应用对软件系统质量和特性的额外要求。
A 业务需求B 功能要求C 非功能需求D 用户需求3、软件测试计划开始于需求分析阶段,完成于()阶段。
A 需求分析B 软件设计C 软件实现D 软件测试4.下面关于面向对象方法中消息的叙述,不正确的是( )。
A. 键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息C. 应用程序之间可以相互发送消息D.发送与接收消息的通信机制与传统的子程序调用机制不同5.美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是( )。
A.工作无序,项目进行过程中经常放弃当初的计划B.建立了项目级的管理制度C.建立了企业级的管理制度D.软件过程中活动的生产率和质量是可度量的6.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性 D.可移植性7.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试 D.软件维护8.需求分析阶段的任务是确定()A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能9.如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为( )。
A.时间内聚 B.逻辑内聚C.通信内聚 D.信息内聚5.影响软件可维护性的决定因素是()A 文档B 可理解性C 可测试性D 可修改性10.实现单入口单出口程序的三种基本控制结构是()A 顺序、选择、循环B 过程、子程序、分程序C 调用、返回、转移D 递归、堆栈、队列11.为高质量地开发软件项目,在软件结构设计时,必须遵循()原则。
软件工程试题和答案

一、选择1、在软件开发的各种资源中,(B)是最重要的资源.A开发工具B方法C硬件环境D人员2、软件的复杂性是( A ),它引起人员通信困难、开发费用超支、开发时间超时等问题.A固有的B人为的C可消除的D不可降低的3、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(A )系统。
A需求不确定的B需求确定的C管理信息D决策支持4、单元测试的测试用例主要根据( D )的结果来设计。
A需求分析B源程序C概要设计D详细设计5、(A )是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成.A软件过程B软件工具C软件生存周质量保证D软件工程6、(A )意味着一个操作在不同的类中可以有不同的实现方式.A多态性B类的复用C封装7、软件测试计划开始于需求分析阶段,完成于( D )阶段.A需求分析B软件设计C软件实现D软件测试8、在软件生存周期的瀑布模型中一般包括计划、( C )、设计、编码、测试、维护等阶段。
A可行性分析B需求采集C需求分析D问题定义9。
软件需求分析阶段的测试手段一般采用( C )。
A总结B阶段性报告C需求分析评审D不测试10。
(C )是把对象的属性和操作结合在一起,构成一个独立的对象,其内部信息对外界是隐蔽的,外界只能通过有限的接口与对象发生联系。
A多态性B继承C封装D消息11。
软件测试是为了( B )而执行程序的过程。
A纠正错误B发现错误C避免错误D证明正确12. 在结构化分析方法中,(C )表达系统内部数据运动的图形化技术.A数据字典B实体关系图C数据流图D状态转换图13. 软件工程的基本要素包括方法、工具和( A )。
A过程B软件系统C硬件环境D人员14。
TURBO PASCAL是(A)软件。
A、系统软件B、人工智能C、事务软件D、应用软件15、选择结构的复杂性比顺序结构的复杂性要(B)。
A、小B、大C、相等D、无法比较16、模块内聚度越高,说明模块内各成分彼此结合的程度越(B)。
自考软件工程历届试题(含答案)

全国2009年1月自考软件工程试题课程代码:02333一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的。
请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.以下不属于软件特点的是()A.软件是一种逻辑产品B.软件产品存在磨损问题C.软件的生产主要是研制D.软件费用不断增加2.以下属于形式化开发方法的是()A.结构化开发方法B.Jackson开发方法C.维也纳开发方法D.面向对象开发方法3.数据字典定义数据流或数据存储组成时所使用的符号(‥‥)表示()A.可选B.与C.或D.重复4.IDEF是IDEF方法的一部分,用于建立系统的()A.功能模型B.信息模型C.动态模型D.关系模型5.软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是()A.公共耦合B.控制耦合C.标记耦合D.数据耦合6.把需要同时执行的动作组合在一起形成模块,该模块的内聚性是()A.顺序内聚B.逻辑内聚C.时间内聚D.通信内聚7.以下属于程序流程图缺点的是()A.历史悠久B.使用广泛C.支持程序的三种基本控制结构D.可以随心所欲地画控制流程线的流向1 软件工程自学考试试题8.Jackson结构图的三种基本结构是()A.顺序结构、选择结构、层次结构B.顺序结构、选择结构、重复结构C.层次结构、选择结构、重复结构D.顺序结构、层次结构、重复结构9.以下属于面向对象程序设计语言的是()A.Java语言B.C语言C.Pascal语言D.Prolog语言10.以下四种逻辑覆盖中,发现错误能力最强的是()A.语句覆盖B.条件覆盖C.判定覆盖D.条件组合覆盖11.软件工程领域中,与集成测试有关的软件开发阶段是()A.编码B.详细设计C.概要设计D.需求分析12.软件维护的副作用不包括()A.编码副作用B.数据副作用C.文档副作用D.效率副作用13.原型的优点不包括()A.对设计人员水平及开发环境要求不高B.可及早为用户提供有用的产品C.可及早发现问题,随时纠正错误D.可减少技术、应用的风险14.UML统一了三种面向对象方法的表示方法,这三种面向对象方法是()A.Coad方法、OMT方法、OOSE方法B.Booch方法、OMT方法、OOSE方法C.Booch方法、Coad方法、OOSE方法D.Booch方法、OMT方法、Coad方法15.面向对象的类层次结构中,聚集关系是一种()A.“一般——特殊”关系 B.“整体——部分”关系C.“相互依赖”关系D.“一般——具体”关系16.软件质量特性中,“软件系统按照设计要求,在规定时间和条件下不出故障,持续运行的程度”对应的特性是()A.正确性B.完整性C.可靠性D.可用性2 软件工程自学考试试题17.软件工程标准中,IEEE属于()A.国际标准B.国家标准C.行业标准D.企业规范18.与“项目开发计划”文档有关的人员是()A.管理人员和开发人员B.开发人员和维护人员C.开发人员和用户D.管理人员和用户19.软件工具的三个组成部分不包括()A.工具B.工具接口C.工具用户接口D.编译系统20.软件复杂性度量的参数中,由程序中出现的操作数数目所决定的量表示的参数是()A.规模B.难度C.结构 D.智能度二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格上填上正确答案。
企业软件面试题目大全(3篇)
第1篇一、背景型面试题1. 请用两三分钟谈谈你个人情况。
- 考察点:个人背景、兴趣爱好、职业规划等。
- 参考回答:“您好,我叫[姓名],毕业于[学校]的[专业],在校期间积极参与各类项目,培养了我的团队协作能力和解决问题的能力。
我对软件行业充满热情,尤其对[特定领域]感兴趣,希望能在贵公司发挥我的专业技能。
”2. 请做个简单的自我介绍。
- 考察点:自我认知、表达能力。
- 参考回答:“您好,我叫[姓名],目前从事[当前职业],具备[专业技能]和[工作经验]。
我性格开朗,善于沟通,对待工作认真负责,期待在贵公司发挥我的专长。
”3. 谈谈你个人近几年的情况和工作表现。
- 考察点:工作经历、能力提升。
- 参考回答:“近几年来,我在[公司名称]担任[职位],主要负责[工作内容]。
通过这些工作,我不仅提升了我的专业技能,还锻炼了我的团队协作和项目管理能力。
”二、行为面试题1. 你曾经遇到过一个难以解决的问题,你是如何解决的?- 考察点:问题解决能力、应变能力。
- 参考回答:“我曾遇到一个系统性能问题,通过分析日志和代码,我发现是某个模块存在内存泄漏。
我首先定位了泄漏源,然后提出优化方案,最终成功解决了问题。
”2. 请描述一次你带领团队完成一个重要项目的经历。
- 考察点:领导能力、团队协作。
- 参考回答:“在[公司名称],我带领团队完成了[项目名称]的开发。
我们首先制定了详细的项目计划,明确分工,确保每个人都知道自己的职责。
在项目过程中,我积极协调资源,解决团队成员之间的冲突,最终按时完成了项目。
”3. 你如何处理工作中的压力和挑战?- 考察点:应对压力的能力、心理素质。
- 参考回答:“面对压力和挑战,我会保持冷静,分析问题的根源,制定解决方案。
同时,我也会寻求同事和上级的帮助,共同应对困难。
”三、专业知识面试题1. 请解释一下什么是面向对象编程(OOP)?- 考察点:对OOP的理解。
- 参考回答:“面向对象编程是一种编程范式,它将数据和行为封装在对象中,通过继承、封装和多态等特性实现代码的重用和扩展。
软件工程练习题目及答案
1.某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工;年龄在20岁至40岁之间者,中学文化程度男性当钳工,女性当车工,大学文化程度都当技术员;年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。
请用PDL语言、判定表和判定树分别描述上述问题。
答:PDL语言描述:If(年龄<20){If(文化程度=”初中”){脱产学习;}Else if (文化程度=”高中”){当电工;}}Else if (年龄<40){If(文化程度=”初中” ||文化程度=”高中”){If(性别=”男”){当钳工;}Else {当车工;}}Else{当技术员;}}Else{If(文化程度=”初中” ||文化程度=”高中”){当材料员;}Else {当技术员;}}判定表判定树---20<=<40----⎧⎧⎨⎪⎩⎪⎪⎧⎧⎪⎪⎪⎨⎨⎨⎩⎪⎪⎩⎪⎪⎧⎪⎨⎪⎩⎩初中文化程度脱产学习年龄<20高中文化程度电工女性车工中学文化程度年龄男性钳工大学文化程度技术员中学文化程度材料员年龄>=40大学文化程度技术员2. 某考务管理系统有如下要求:(1)对考生送来的报名表进行检查;(2)对合格的报名表编好准考证号码后将准考证送给考生,并将汇总后的考生名单送给阅卷站;(3)对阅卷站送来的成绩表进行检查,并根据考试中心指定的合格标准审定合格者;(4)填写考生通知单(内容包含考试成绩及合格∕不合格标志),送给考生;(5)按地区、年龄、文化程度、职业、考试级别等进行成绩分类统计及试题难度分析,产生统计分析表。
画出该系统的分层数据流图。
答.考生通知单(a)顶层数据流图报名表(d) 加工2的子图3. 用PAD图描述下面问题的控制结构。
有一个表A(1)、A(2)、...A(n),按递增顺序排列。
给定一个Key值,在表中用折半法查找。
若找到,将表位置i送入x,否则将零送到x,同时将key值插入表中。
《软件工程》试题及参考答案(第1套)
《软件工程》试题(第1套)第一部分选择题一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
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.功能内聚9.软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫( ) A.生存期 B.面向对象设计C.面向对象程序设计 D.面向对象分析10.原型化方法是用户和设计者之间执行的一种交互构成,适用于( )系统。
A.需求不确定性高的 B.需求确定的C.管理信息D.实时11、 CMM提供了一个框架,将软件过程改进的进化步骤组织成5个成熟度等级。
除第1级外,每个等级都包含了实现该成熟度等级目标的若干()。
A 关键实践B 关键过程域C 软件过程能力D 软件过程12、()是软件生存期中的一系列相关软件工程活动的集合,它由软件规格说明、软件设计与开发、软件确认、软件改进等活动组成。
A 软件过程B 软件工具C 质量保证D 软件工程13.下列关于瀑布模型的描述正确的是( )。
软件工程自考真题及答案解析
软件工程自考真题及答案解析自考是很多人追求学历提升的一种方式,软件工程也是当前热门的专业之一。
为了帮助大家更好地备考自考软件工程,本文将介绍一些常见的软件工程自考真题及其答案解析,希望对大家有所帮助。
一、选择题1. 软件测试是软件开发过程中的哪个阶段?A. 需求分析阶段B. 设计阶段C. 开发阶段D. 维护阶段正确答案:C解析:软件测试是在软件开发的过程中,开发阶段之后的一个重要阶段。
其主要目的是通过测试用例的执行来发现软件的错误与缺陷,确保软件的质量。
2. 在软件工程中,下列哪个不属于需求建模的技术?A. 数据流图B. 状态图C. 时序图D. 数据库设计正确答案:D解析:需求建模是软件工程中的一项重要任务,用于对需求进行规范化和可视化的表示。
数据流图、状态图和时序图都是常用的需求建模技术,而数据库设计则是数据库开发的内容。
3. 下列哪个不属于软件工程的基本原则?A. 需求驱动B. 分阶段开发C. 统一建模语言D. 以人为中心正确答案:C解析:软件工程的基本原则包括需求驱动、分阶段开发、以人为中心等,但统一建模语言不属于基本原则,而是一种标准化的建模语言。
二、判断题1. 软件工程是一门较为年轻的学科,它在软件开发过程中起到了至关重要的作用。
正确答案:正确解析:软件工程是一门对软件开发过程进行科学化管理的学科,并在实践中不断推动软件开发的进步,因此在软件开发中起到了至关重要的作用。
2. 软件测试的主要目的是为了保证软件开发过程的顺利进行,而不关注软件质量。
正确答案:错误解析:软件测试的主要目的是为了发现软件的错误与缺陷,保证软件的质量。
通过测试用例的执行,可以发现潜在的问题并及时修复,从而提高软件的可靠性。
三、简答题1. 请简要介绍软件配置管理的概念及其作用。
软件配置管理是一种用于控制和管理软件开发过程中各种配置项的方法,其主要作用包括:- 确定需求:通过对配置项的分析和管理,可以确保所开发的软件满足用户的需求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均不得分。
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.模块内的局部数据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.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件16.COCOMO估算模型是( )A.模块性成本模型B.结构性成本模型C.动态单变量模型D.动态多变量模型17.与软件开发需求分析、设计及编码阶段相对应的软件测试步骤是( )A.组装测试、确认测试、单元测试B.单元测试、组装测试、确认测试C.单元测试、确认测试、组装测试D.确认测试、组装测试、单元测试18.软件维护产生的副作用是指( )A.开发时的错误B.隐含的错误C.因修改软件而造成的错误D.运行时的误操作19.比较理想的可重用软件结构是( )A.子程序库B.源代码及文件C.对象D.类20.面向对象建模得到的三个模型,其中核心的模型是( )A.对象模型B.功能模型C.逻辑模型D.动态模型二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均不得分。
21.计算机程序及其说明程序的各种文档称为_____。
22.IDEF0用来描述系统的功能活动及其联系,建立系统的_____。
23.结构化分析方法是一种面向_____的开发方法。
24.成本——效益分析的目的是从_____角度评价开发一个新的软件项目是否可行。
25.模块有四个基本属性,其中反映它的内部特性的是_____。
26.确认测试可以发现软件系统是否符合用户的_____要求。
27.在算法描述工具中,_____是一种由左往右展开的二维树型结构。
28.动态模型是与时间和变化有关的系统性质,它描述了系统的_____结构。
29.成本估算方法中,有自顶向下估算方法、自底向上估算方法和_____方法。
30.随着软硬件环境变化而修改软件的维护活动称为_____。
三、名词解释题(本大题共5小题,每小题3分,共15分)31.软件生存周期模型32.模块33.可维护性34.继承性35.投资回收期四、简答题(本大题共4小题,每小题5分,共20分)36.简述软件危机产生的原因。
37.简述需求分析的概念及需求分析的基本任务。
38.简述数据流图的分类及每一类的特点。
39.简述建立对象模型的过程。
五、应用题(本大题共2小题,第40小题l3分,第41小题12分,共25分)40.某公司承担空中和地面运输业务。
计算货物托运费的比率规定如下:空运:如果货物重量小于等于2kg,则一律收费6元;如果货物重量大于2kg而又小于等于20kg,则收费3元/kg;如果货物重量大于20kg,则收费4元/kg。
地运:若为慢件,收费为1元/kg。
若为快件,当重量小于等于20kg时,收费为2元/kg;当货物重量大于20kg时,则收费为3元/kg。
下列步骤是应用判定表方法描述以上案例的过程。
请根据题意,在条件取值表的“取值”列中填入相应内容,并在初步判定表和简化后的判定表中填入条件取值表中规定的符号。
(1)条件取值表一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.软件生存周期中,准确地确定软件系统必须做什么的阶段是()A.可行性分析和项目开发计划B.需求分析C.概要设计D.详细设计2.把瀑布模型和专家系统结合在一起的软件生存周期模型是()A.增量模型B.基于知识的模型C.螺旋模型D.喷泉模型3.以下不.属于项目开发计划主要内容的是()A.实施计划B.交付期限C.测试用例D.人员组织及分工4.使用数据流图来表示系统逻辑模型的是()A.Jackson B.VDMC.OOA D.SA5.用于描述结构化分析中数据流加工逻辑的是()A.判定树B.ER图C.状态图D.用例图6.若一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入,则该模块的内聚性类型是()A.时间内聚B.偶然内聚C.顺序内聚D.功能内聚7.下列几种耦合类型,耦合性最高的是()A.公共耦合B.控制耦合C.标记耦合D.数据耦合8.程序流程图的优点不包括...()A.历史最悠久,使用最广泛B.容易表示逐步求精的过程C.支持程序的三种基本控制结构D.直观清晰,易于使用9.第一个体现结构化编程思想的程序设计语言是()A.Cobol语言B.C语言C.Pascal语言D.FORTRAN语言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.属性内聚、操作内聚、类内聚B.操作内聚、类内聚、整体-部分内聚C.属性内聚、操作内聚、对象内聚D.操作内聚、类内聚、一般-具体内聚16.McCall质量度量模型中,与“软件系统对非授权人访问软件或数据行为的控制程度”所对应的软件质量特性是()A.正确性B.完整性C.可维护性D.可用性17.软件工程标准中,JIS属于()A.国际标准B.国家标准C.行业标准D.企业规范18.与“程序维护手册”文档有关的人员是()A.管理人员和开发人员B.管理人员和维护人员C.维护人员和用户D.管理人员和用户19.软件工具“代码生成程序”属于()A.需求追踪工具B.质量保证工具C.设计工具D.文档工具20.软件复杂性度量的参数中,能反映“软件总共的指令数,或源程序行数”的是()A.规模B.难度C.结构D.智能度二、填空题(本大题共10小题,每小题2分,共20分)请在每小题的空格中填上正确答案。
错填、不填均无分。
21.软件工具一般是指为了支持软件人员________活动而使用的软件。
22.CASE技术是________和软件开发方法的结合。
23.数据字典有四类条目,分别是数据流、________、数据存储和基本加工。
24.各种软件系统的数据流图一般可分为________和事务型两类。
25.过程设计语言是用于描述模块________和处理细节的语言。
26.效率是与编程风格有关的一个因素,效率是指处理机时间和________的使用。
27.调试技术有简单的调试方法、归纳法调试、________和回溯法调试。
28.软件可维护性可用七种质量特性来衡量,分别是________、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
29.UML将Booch方法、OMT方法和________的表示方法统一,并进一步发展为大众所接受的标准建模语言。
30.面向对象分析中,动态模型使用________作为描述工具,该图反映了状态与事件的关系。
三、名词解释(本大题共5小题,每小题3分,共15分)31.软件工程过程32.模块化33.集成测试34.软件可靠性35.模块的控制范围四、简答题(本大题共4小题,每小题5分,共20分)36.简述软件工程面临的问题。
37.简述可行性研究报告包含的主要内容。
38.简述软件结构设计的优化准则。
39.简述快速原型的开发步骤。
五、应用题(本大题共2小题,第40小题13分,第41小题12分,共25分)40.根据下列事务型的数据流图,设计出初始软件结构图。
41.根据下列程序流程图,设计3组的测试用例,使之满足语句覆盖,对每组测试数据给出执行路径、两个判定(1)和(3)的判定结果。
一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.软件开发环境按解决的问题分类包含()A.程序设计环境B.工具箱环境C.基于方法的环境D.以语言为中心的环境2.为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是()A.容错技术B.避开错误技术C.检测技术D.排错技术3.软件复杂性的常用度量方法包括()A.BOEHM度量法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.在软件测试中,首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起测试,称为()A.确认测试B.系统测试C.渐增式测试D.非渐增式测试11.源代码的可维护性表现了程序设计语言的()A.心理特性B.工程特性C.技术特性D.传统特性12.至今已有好几百种不同的高级语言,它们有的是用于数值计算,有的是用于商业管理,有的是用于编写系统软件。