




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程导论试题及答案2一、单项选择题(每题2分,共20分)1.软件工程的出现是由于()。A.软件危机的出现B.计算机硬件技术的发展C.软件社会化的需要D.计算机软件技术的发展答案:A解析:软件工程的出现是为了解决软件危机,软件危机主要表现在软件需求增长得不到满足、软件开发成本和进度无法控制、软件质量难以保证、软件维护困难等方面。
2.瀑布模型的关键不足在于()。A.过于简单B.各个阶段需要进行评审C.过于灵活D.不能适应需求的动态变更答案:D解析:瀑布模型是线性顺序模型,按照固定的顺序依次进行各个阶段的开发,当需求发生变更时,很难及时调整,适应性差。
3.可行性研究的目的是()。A.分析开发系统的必要性B.确定系统建设的方案C.分析系统风险D.确定是否值得开发系统答案:D解析:可行性研究主要从技术可行性、经济可行性和操作可行性等方面分析项目是否值得开发,避免盲目投资。
4.软件需求规格说明书的作用不包括()。A.软件验收的依据B.用户与开发人员对软件要做什么的共同理解C.软件设计的依据D.软件可行性研究的依据答案:D解析:软件需求规格说明书是在可行性研究之后产生的,是后续软件设计、实现和验收的依据,它明确了用户对软件的需求,使开发人员和用户达成共识。
5.数据字典是对数据定义信息的集合,它所定义的对象都包含于()。A.数据流图B.程序框图C.软件结构D.方框图答案:A解析:数据字典与数据流图密切相关,它对数据流图中出现的所有数据元素进行详细定义,是数据流图的补充说明。
6.软件详细设计阶段的任务是()。A.算法设计B.功能设计C.调用关系设计D.输入/输出设计答案:A解析:详细设计阶段要对每个模块进行具体的算法设计、数据结构设计等,为编码提供详细的依据。
7.软件测试的目的是()。A.证明软件的正确性B.发现软件中的错误C.排除软件中的错误D.证明软件系统中不存在错误答案:B解析:软件测试的目的是发现软件中的错误,而不是证明软件的正确性,通过测试尽可能找出软件中的缺陷,以便进行修复。
8.软件维护阶段最重要的是()。A.校正性维护B.适应性维护C.完善性维护D.预防性维护答案:C解析:完善性维护是在软件使用过程中,根据用户需求,增加新功能、改善性能等,是维护阶段最重要的活动,因为它可以提升软件的质量和用户满意度。
9.面向对象方法中,对象是类的()。A.抽象B.实例C.继承D.方法答案:B解析:类是对具有相同属性和行为的对象的抽象描述,对象是类的具体实例,通过类可以创建多个对象。
10.软件项目管理中,用于进度控制的图形工具是()。A.甘特图B.程序结构图C.数据流图D.实体联系图答案:A解析:甘特图以直观的图表形式展示项目进度安排,能够清晰地反映各个任务的开始时间、结束时间和持续时间,便于进行进度监控和调整。
二、填空题(每题2分,共20分)1.软件是计算机系统中与硬件相互依存的另一部分,它是包括程序、数据及________________的完整集合。答案:相关文档解析:软件不仅仅是程序代码,还包括开发过程中产生的各种文档,如需求规格说明书、设计文档、测试文档等,这些文档对于软件的理解、维护和使用都非常重要。
2.软件生命周期可分为软件定义、________________和软件维护三个阶段。答案:软件开发解析:软件生命周期涵盖了软件从提出需求开始,经过开发、使用和维护,直到最终退役的全过程,其中软件开发阶段又可细分为多个子阶段。
3.结构化分析方法的核心是________________。答案:数据流图解析:数据流图是结构化分析的主要工具,它以图形的方式描绘了数据在系统中流动和处理的过程,通过对数据流图的分析可以理解系统的功能和数据流程。
4.模块独立性的两个定性度量标准是耦合性和________________。答案:内聚性解析:耦合性衡量模块之间的相互依赖程度,内聚性衡量模块内部元素之间的紧密程度,模块独立性要求高耦合低内聚。
5.详细设计通常以________________图为工具,采用结构化程序设计方法进行详细的算法设计。答案:程序流程图(或PAD图、PDL等)解析:程序流程图是详细设计中常用的工具之一,它直观地描述了程序的执行流程和逻辑结构,方便进行算法设计和代码编写。
6.软件测试的步骤主要有单元测试、集成测试、________________和系统测试。答案:确认测试解析:单元测试针对单个模块进行测试,集成测试测试模块之间的接口和协作,确认测试验证软件是否满足用户需求,系统测试对整个系统进行全面测试。
7.软件维护活动包括改正性维护、适应性维护、完善性维护和________________维护。答案:预防性解析:预防性维护是为了提高软件的可维护性和可靠性,提前对软件进行改进和优化,减少未来可能出现的维护成本。
8.面向对象模型主要由对象模型、________________和功能模型组成。答案:动态模型解析:对象模型描述系统中的对象及其关系,动态模型描述对象的动态行为,功能模型描述系统所具有的功能,这三个模型相互配合,全面地描述了面向对象系统。
9.在面向对象方法中,类之间共享属性和操作的机制称为________________。答案:继承解析:继承允许子类继承父类的属性和方法,实现代码的复用,提高软件的可维护性和可扩展性。
10.软件项目管理的主要内容包括项目计划、项目组织、________________、质量保证和软件配置管理等。答案:人员管理(或风险管理、成本管理等,答案合理即可)解析:软件项目管理涉及多个方面,除了计划、组织外,还包括对人员的管理、对风险的控制、成本的核算以及软件配置的管理等,以确保项目的顺利进行。
三、简答题(每题10分,共30分)1.简述软件危机的表现及产生原因。答案:软件危机的表现主要有以下几个方面:软件需求增长得不到满足:用户对软件功能的要求不断提高,而软件开发人员不能及时准确地理解用户需求,导致开发出的软件不能满足用户期望。软件开发成本和进度无法控制:在软件开发过程中,经常出现预算超支、进度延迟的情况。这是由于对项目规模和复杂度估计不足,以及缺乏有效的项目管理方法。软件质量难以保证:软件中存在大量的缺陷和错误,影响软件的可靠性和稳定性。这是因为软件开发过程中缺乏严格的质量控制措施。软件维护困难:随着软件使用时间的增长,维护成本不断增加,维护难度加大。这是由于软件文档不完整、软件结构不合理等原因导致的。
软件危机产生的原因主要包括:软件自身的特点:软件是一种逻辑产品,开发过程难以直观地度量和控制,具有复杂性和不可见性。软件开发方法不当:早期软件开发缺乏科学的方法,采用手工方式编写代码,导致软件质量低下,可维护性差。软件生产管理落后:缺乏有效的项目管理方法和工具,对软件开发过程中的人员、进度、成本等方面管理不善。软件开发人员的素质问题:软件开发人员的技术水平、经验和责任心等方面存在差异,影响软件的开发质量。
2.什么是结构化设计?结构化设计的主要原则是什么?答案:结构化设计(StructuredDesign,SD)是一种面向数据流的设计方法,它以结构化分析产生的数据流图为基础,按一定的规则映射成软件的模块层次结构。
结构化设计的主要原则包括:模块化:将软件系统划分为多个功能模块,每个模块具有特定的功能,便于开发、维护和管理。自顶向下:从系统的总体功能出发,逐步细化为具体的模块,先设计上层模块,再设计下层模块。逐步求精:对每个模块的功能进行逐步细化,直到能够用程序设计语言实现为止。信息隐蔽:将模块的内部实现细节隐藏起来,只向外部提供必要的接口,提高模块的独立性和安全性。模块独立:包括高内聚和低耦合。高内聚要求模块内部各元素之间联系紧密,功能单一;低耦合要求模块之间的联系尽可能松散,减少模块之间的相互影响。
3.简述面向对象方法的优点。答案:面向对象方法具有以下优点:符合人类思维习惯:面向对象方法将现实世界中的事物抽象为对象,以对象为中心组织软件系统,更符合人类认识和理解世界的方式,便于人们进行系统分析和设计。提高软件的可维护性:对象的封装性使得内部实现细节与外部接口分离,当内部实现发生变化时,对外部的影响较小,同时继承和多态机制也有助于代码的复用和扩展,从而提高软件的可维护性。提高软件的可扩展性:通过继承可以方便地创建新的类,扩展已有的功能,多态性使得同一个操作可以根据对象的不同类型表现出不同的行为,有利于软件的功能扩展和升级。实现软件复用:面向对象方法提供了丰富的复用机制,如继承、组合等。通过继承可以复用父类的属性和方法,通过组合可以将已有的类组合成新的类,提高了软件的开发效率和质量。增强软件的可靠性:对象的封装性和信息隐蔽性减少了程序出错的机会,同时面向对象的编程风格使得代码结构更加清晰,便于进行测试和调试,从而增强了软件的可靠性。
四、综合应用题(每题15分,共30分)1.某学校要开发一个学生成绩管理系统,该系统的主要功能如下:录入学生的基本信息,包括学号、姓名、性别、出生日期等。录入学生的课程成绩,包括课程编号、课程名称、成绩等。计算学生的平均成绩,并按平均成绩进行排名。统计各课程的平均分。输出学生成绩报表,包括学生基本信息、课程成绩和平均成绩。
请画出该系统的数据流图。答案:根据题目描述,该学生成绩管理系统的数据流图如下:
顶层数据流图:```++|学生成绩管理系统|++|v++|录入信息|++|v++|录入成绩|++|v++|统计分析|++|v++|输出报表|++```
第一层数据流图:```++|录入信息|++|v++|学生基本信息|++|v|录入学生基本信息||v++|保存学生基本信息|++``````++|录入成绩|++|v++|课程成绩信息|++|v|录入课程成绩||v++|保存课程成绩|++``````++|统计分析|++|v++|学生平均成绩|++|v|计算平均成绩||v++|成绩排名信息|++|v|进行成绩排名||v++|课程平均分信息|++|v|统计课程平均分|++``````++|输出报表|++|v++|学生成绩报表|++|v|生成成绩报表||v++|打印成绩报表|++```
2.假设要开发一个简单的图书管理系统,有以下功能:图书信息管理:可以添加、修改和删除图书信息,图书信息包括书名、作者、出版社、出版日期等。读者信息管理:可以添加、修改和删除读者信息,读者信息包括读者编号、姓名、性别、联系方式等。借阅管理:读者可以借阅图书,记录借阅日期和归还日期,同时可以查询自己的借阅记录。
请用面向对象的方法设计该系统的类图。答案:根据题目要求,该图书管理系统的类图设计如下:
```classBook{title:stringauthor:stringpublisher:stringpublishDate:string+addBook():void+modifyBook():void+deleteBook():void}
classReader{readerId:stringname:stringgender:stringcontact:string+addReader():void+modifyReader():void+deleteReader():void}
classBorrowRecord{reader:Readerbook:BookborrowDate:DatereturnDate:Date+borrowBook(reader:Reader,book:Book,borrowDate:Date):void+returnBook(returnDate:Date):void+queryBorrowRecord():void}
classLibrarySystem{books:Book[]readers:Reader[]borrowRecords:BorrowRecord[]+addBook(book:Book):void+modifyBook(book:Book):void+deleteBook(book:Book):void+addReader(reader:Reader):void+modifyReader(reader:Reader):void+deleteReader(reader:Reader):void+borrowBook(reader:Reader,book:Book):void+returnBook(reader:Re
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度跨区域基础设施建设工程借款合同模板
- 2025年度服务器设备预防性维护与维保服务协议
- 二零二五年度大豆育种研发合作协议范本
- 二零二五年度党建联学共建战略合作框架协议
- 二零二五年度低碳环保住宅项目房地产开发居间协议
- 2025版级配碎石在高速公路服务区施工合同
- 2025年度食品安全检测技术服务合同范本
- 二零二五年度进口食品检验检疫合同
- 2025年高效节能电气系统安装施工合作协议
- 2025年度版权转让合同担保协议书
- 股东债务共同承担协议书
- 遗传学第三章第三节基因互作与环境
- 食源性疾病应急预案演练脚本
- 脑结构与功能
- 齿轮式攻牙机安全操作规程
- 水蓄冷节能方案
- 高中新教材化学必修一课后习题答案(人教版)
- GB/T 15168-2013振动与冲击隔离器静、动态性能测试方法
- GB/T 1266-2006化学试剂氯化钠
- 恶性心律失常的识别与处理课件
- (新版)心理学专业知识考试参考题库500题(含答案)
评论
0/150
提交评论