软件工程作业及参考答案(版)
- 格式:docx
- 大小:29.39 KB
- 文档页数:6
软件工程测试题+参考答案
一、单选题(共40题,每题1分,共40分)
1、窃听是一种()攻击,攻击者()将自己的系统插入到发送站和接收站之间。截获是一种()攻击,攻击者()将自己的系统插入到发送站和接受站之间。
A、被动,无须,主动,必须
B、被动,必须,主动,无须
C、主动,无须,被动,必须
D、主动,必须,被动,无须
正确答案:A
2、如果一名攻击者截获了一个公钥,然后他将这个公钥替换为自己的公钥并发送给接收者,这种情况属于哪一种攻击?
A、重放攻击
B、Smurf 攻击
C、中间人攻击
D、字典攻击
正确答案:C
3、黑客攻击服务器以后,习惯建立隐藏用户,下列哪一个用户在DOS命令net user下是不会显示的。
A、fg#
B、fg%
C、fg_
D、fg$
正确答案:D
4、下列哪一种方法在支持向量机中有应用
A、拉格朗日乘子法
B、二分法
C、最小二乘法
D、极大似然估计
正确答案:A
5、设顺序线性表的长度为30,分成5块,每块6个元素,如果采用分块查找,则其平均查找长度为
A、6
B、6.5
C、11
D、5
正确答案:B
6、对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为
A、N
B、N/2
C、(N+1)/2
D、[(1+N)*N ]/2
正确答案:C
7、信息安全中PDR模型的关键因素是()。
A、人
B、客体
C、技术
D、模型
正确答案:A
8、某业务系统具有上传功能,页面上传的文件只能上传到UPLOAD目录,由于上传页面没有过滤特殊文件后缀,存在上传漏洞,而短时间厂家无法修改上传页面源码,现采取如下措施,哪种措施可以暂时防止上传漏洞危害又不影响业务系统正常功能。
软件工程习题-答案
该习题答案由学生完成,仅供参考。象声词同学们能独立完成习题!
《软件工程》习题
第一章习题
1、计算机软件系统4个不同的发展阶段是:程序设计、程序系统、软件工程、面向对象阶段。
2、软件危机发生在那个阶段?主要指哪两方面的问题?
程序系统阶段
原因:1、如何开发软件,以满足对软件日益增长的需求。
2、如何维护数量不断膨胀的已有软件。
3、软件危机有几方面的典型表现?
○1、对软件开发成本和进度的估计常常很不准确
○2、用户对“已完成的”的软件系统不满意的现象经常发生○3、软件产品的质量往往靠不住○4、软件常常是不可维护的○5、软件通常没有适当的文档资料
○6、软件成本在计算机系统总成本中所占的比例逐年上升
○7、软件开发效率提高的速度,远远跟不上计算机应用迅速普及及深入的趋势
4、软件危机产生的原因是、。
与软件本身的特点有关、软件开发与维护的方法不准确有关
5、软件是、和
的完整集合。
程序、数据、相关文档
6、如何解决软件危机?
○1、一个软件必须是由一个完整的配置组成,事实上,软件是程序,数据及相关文档的完整集合程项目
○3、推广使用在实践中总结出来的开发软件的成功的技术和方法○4、应该开发和使用良好的开发软件工具
○5、总之,为了解决软件危机,既要有必要的技术措施又要有必要的组织管理措施
○2、要充分认识到软件开发应该是一种组织良好、管理严密、各类人员协同合作、共同完成的工
7、软件工程的定义?(以教材定义为准)
采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护他,这就是软件工程。
《软件工程》作业
第一章
1.什么就是软件危机,它有哪些典型表现?
答: 软件危机就是指在计算机软件的开发与维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本与进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常就是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也与软件开发与维护的方法不正确有关。软件不同于硬件,它就是计算机系统中的逻辑部件而不就是物理部件。管理与控制软件开发过程相当困难。软件就是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。目前相当多的软件专业人员对软件开发与维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法与技术,这就是使软件问题发展成软件危机的主要原因。
2.简述产生软件危机的原因与解决的思路。
答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,就是与已有软件开发、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法与工具),又要有必要的组织管理措施。即采用工程化的原则与方法组织软件开发就是摆脱软件危机的一个主要出路。
3.什么就是软件工程?它有哪些本质特性?
答: 软件工程就是指导计算机软件开发与维护的一门工程学科。采用工程的概念、原理、技术与方法来开发与维护软件,把经过时间考验而证明正确的管理技术与当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
《软件工程练习题及参考答案》
一、单向选择题(四选一、每小题3分,共18分)
1、面向对象(Object Oriented)方法是将现实世界的事物以对象的方式(B )到计算机世界的方法。
对应
映射
反映
反射
2、盒图也称为(D)或Chapin图。这种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。
流程图
框图
判定表
N-S图
3、面向数据的设计方法就是根据问题的数据结构定义一组映射,把问题的数据结构转换为问题解的(A)结构。
程序
数据
逻辑
物理
4、人机界面的风格大致经过了(B)代的演变。
三
四
五
六
5、以下不属于白盒测试技术的是(D)
逻辑覆盖
基本路径测试
循环覆盖测试
等价类划分
6、为改正软件系统中潜藏的错误而进行的维护活动称为(A)。
纠错性维护
适应性维护
改善性维护
预防性维护
二、填空题(每空2分,共18分)
1.文档—一种数据媒体和其上所记录的(数据)。
2.机器语言、汇编语言:依赖于机器,面向(机器)
3.软件有效性,指软件系统的时间和(空间)效率。
4.软件定义过程可通过软件系统的(可行性研究)和需求分析两个阶段来完成。
5.软件定义的基本任务是确定软件系统的工程(需求),也就是要搞清“做什么”。
6.为了使用户需求逐步精细化、完全化、一致化,通常采用(需求建模技术)。0402
7.一个软件的深度是指其控制的(层数)。
8.以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终
可运行的代码的过程叫(编码)过程。
9.软件维护是软件生命周期的(最后)一个阶段。
三、判断题(每小题2分,共24分,错误打X、正确打√)
《软件工程》作业
第一章
1.什么就是软件危机,它有哪些典型表现?
答: 软件危机就是指在计算机软件得开发与维护过程中所遇到得一系列严重问题。概括地说,软件危机包含下述两方面得问题:如何开发软件,以满足对软件日益增长得需求;如何维护数量不断膨胀得已有软件。
软件危机典型表现:对软件开发成本与进度得估计常常很不准确。用户对“已完成得”软件系统不满意得现象经常发生。软件产品得质量往往靠不住。软件常常就是不可维护得。软件通常没有适当得文档资料。软件成本在计算机系统总成本中所占得比例逐年上升。软件开发生产率提高得速度,远远跟不上计算机应用迅速普及深入得趋势。
产生软件危机得原因:一方面与软件本身得特点有关,另一方面也与软件开发与维护得方法不正确有关。软件不同于硬件,它就是计算机系统中得逻辑部件而不就是物理部件。管理与控制软件开发过程相当困难。软件就是规模庞大,而且程序复杂性将随着程序规模得增加而呈指数上升。目前相当多得软件专业人员对软件开发与维护还有不省糊涂观念,在实践过程中或多或少地采用了错误得方法与技术,这就是使软件问题发展成软件危机得主要原因。
2.简述产生软件危机得原因与解决得思路。
答:软件危机产生得原因一方面与软件本身得特点有关,另一方面,就是与已有软件开发、维护得方法不正确有密切关系。
解决软件危机,既要有技术措施(方法与工具),又要有必要得组织管理措施。即采用工程化得原则与方法组织软件开发就是摆脱软件危机得一个主要出路。
3.什么就是软件工程?它有哪些本质特性?
答: 软件工程就是指导计算机软件开发与维护得一门工程学科。采用工程得概念、原理、技术与方法来开发与维护软件,把经过时间考验而证明正确得管理技术与当前能够得到得最好得技术方法结合起来,以经济地开发出高质量得软件并有效地维护它。
软件工程习题(附答案)
软件工程习题 (附答案)
1、软件需求工程
1.1 问题描述
给定一个学生管理系统,要求实现以下功能:添加学生信息、查询学生信息、修改学生信息、删除学生信息。
1.2 解决方案
通过用户界面收集学生信息,使用数据库存储学生信息,编写相应的查询、修改和删除功能实现。
1.3 测试与验证
编写测试用例,包括正常情况和异常情况的输入,测试系统是否正确执行学生信息的增删改查操作,并验证结果是否正确。
2、软件设计
2.1 模块划分
将学生管理系统划分为以下模块:用户界面模块、数据存储模块、查询模块、修改模块、删除模块。
2.2 模块接口设计
用户界面模块接收用户输入的学生信息,数据存储模块负责将学生信息存储到数据库中,查询、修改和删除模块通过调用数据库接口实现相应功能。
2.3 系统架构
采用三层架构,将用户界面、业务逻辑和数据存储分离,提高代码的可维护性和可扩展性。
3、软件实现
3.1 开发工具选择
选择合适的开发工具,如Java编程语言、Eclipse开发环境和MySQL数据库。
3.2 编码规范
遵循公司制定的编码规范,保证代码的可读性和一致性。
3.3 数据库设计
设计学生信息表,包括学生ID、姓名、性别、年龄等字段,并建立适当的索引以提高查询性能。
4、软件测试
4.1 单元测试
针对每个模块编写相应的单元测试,确保模块的各个功能都能正常工作。
4.2 集成测试
将各个模块按照设计要求进行集成测试,验证系统的功能完整性和正确性。
4.3 系统测试
对整个学生管理系统进行全面的系统测试,包括正常场景和异常场景的测试,确保系统能够满足需求并稳定可靠。
软件工程习题附答案
软件工程是一门研究如何以系统性的、规范化的、可定量的方法开发和维护软件的学科。在软件工程的学习和实践中,习题是一种重要的学习方法,通过解答习题可以加深对知识的理解和应用。本文将为您提供一些关于软件工程的习题,并附带答案。请注意,下文中的答案仅供参考,具体情况还需根据实际情况进行判断和调整。
1. 什么是软件工程?
答案:软件工程是一门研究如何以系统性的、规范化的、可定量的方法开发和维护软件的学科。
2. 软件工程的核心原则是什么?
答案:软件工程的核心原则是系统分析、设计、编程、测试和维护各个阶段严格按照规范进行,并强调团队协作和项目管理的重要性。
3. 软件生命周期包括哪些阶段?
答案:软件生命周期包括问题定义、需求分析、系统设计、编码、测试和维护等阶段。
4. 请简要描述软件工程的开发流程。
答案:软件工程的开发流程一般包括需求分析、系统设计、编码、测试和维护等阶段。具体而言,首先需要明确需求,然后进行系统设计,确定软件的整体结构和功能。接着进行编码,将设计好的软件实
现为代码。随后进行测试,检查软件是否符合需求并修复潜在的问题。最后是维护阶段,对软件进行更新和修复,以保证其长期有效运行。
5. 请列举几种常用的软件开发方法。
答案:常用的软件开发方法包括瀑布模型、迭代模型、敏捷开发等。
6. 什么是瀑布模型?
答案:瀑布模型是一种线性顺序型的软件开发方法,各个阶段严格
按照顺序进行,上一个阶段的输出作为下一个阶段的输入。
7. 什么是迭代模型?
答案:迭代模型是一种反复迭代、循环演化的软件开发方法,每次
《软件工程》作业及答案
1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?
答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。软件危机典型表现:对软件开发成本和进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。管理和控制软件开发过程相当困难。软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。
1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”你怎么反驳他?
1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?
《软件工程》作业
第一章
1.什么是软件危机,它有哪些典型表现?
答: 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本和进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。管理和控制软件开发过程相当困难。软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。
2.简述产生软件危机的原因和解决的思路。
答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。
3.什么是软件工程?它有哪些本质特性?
答: 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原
《软件工程》作业及答案
1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?
答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。软件危机典型表现:对软件开发成本和进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。管理和控制软件开发过程相当困难。软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。
1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”你怎么反驳他?
1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?
软件工程习题附答案
软件工程是一门研究和应用如何以系统性、规范化、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来的学科。以下是一些软件工程的习题及答案,希望能帮助您更好地理解这门学科。
一、选择题
1、软件生命周期中所花费用最多的阶段是()
A 详细设计
B 软件编码
C 软件测试
D 软件维护
答案:D
解析:软件维护阶段需要对软件进行修改、优化和修复,由于软件在使用过程中可能会遇到各种问题和需求变更,所以维护阶段通常会花费大量的时间和资源。
2、下面不属于软件工程的 3 个要素的是()
A 工具
B 过程
C 方法
D 环境
答案:D
解析:软件工程的三要素是方法、工具和过程。方法为软件开发提供了“如何做”的技术;工具为方法的运用提供了自动的或半自动的软
件支撑环境;过程是将方法和工具结合起来,以达到合理、及时地进
行软件开发的目的。
3、软件可行性研究实质上是要进行一次()需求分析和设计过程。
A 简化、压缩的
B 详细的
C 彻底的
D 深入的
答案:A
解析:可行性研究的目的是用最小的代价在尽可能短的时间内确定
问题是否能够解决,其实质是进行一次简化、压缩的需求分析和设计
过程。
4、软件测试的目的是()
A 证明软件的正确性
B 找出软件中的所有错误
C 尽可能多地发现软件中的错误
D 调试程序
答案:C
解析:软件测试的目的是尽可能多地发现软件中的错误,而不是证
明软件的正确性,也不可能找出软件中的所有错误。
5、下面描述中,不符合结构化程序设计风格的是()
A 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控
《软件工程》作业
第一章
1.什么是软件危机,它有哪些典型表现
答: 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
软件危机典型表现:对软件开发成本和进度的估计常常很不准确。用户对“已完成的”软件系统不满意的现象经常发生。软件产品的质量往往靠不住。软件常常是不可维护的。软件通常没有适当的文档资料。软件成本在计算机系统总成本中所占的比例逐年上升。软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。管理和控制软件开发过程相当困难。软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。
2.简述产生软件危机的原因和解决的思路。
答:软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开发、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。即采用工程化的原则和方法组织软件开发是摆脱软件危机的一个主要出路。
3.什么是软件工程它有哪些本质特性
答: 软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。
软件工程作业题
简答题
1、什么叫软件?答:软件是计算机系统中鱼硬件相互依存的另一部分,它包括程序,数据以及其相关文档的完整集合。
2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?答:软件危机实质在计算机软件的开发和维护过程中所欲遇到的一系列严重问题。包含如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有的软件两点。产生原因:1.与软件本身的特点有关,软件不是逻辑部件,它不具有“可见性”,在写出的程序运行之前,软件开发的进展情况很难衡量,软件的质量也较难评测;此外软件在运行过程中如果发现了错误,很可能遇到一个在开发时期引入的在测试阶段没能检测出来的错误。2.软件开发与维护的方法不正确也导致软件危机的产生。
3、什么叫软件工程?答:1993年IEEE给出了一个全面具体的定义:软件工程是1.把系统的、规范的、可度量的途径应用于软件开发、运行和维护的过程,也就是把工程应用于软件;
2.研究1中提到的途径。
4、两种软件工程方法学开发软件时要建立哪些模型?答:软件工程方法学包括:传统方法学和面向对象方法学。常用的开发模型有:瀑布模型(需求稳定,而且可以预先制定),原型模型(需求模糊或者随时间变化),增量模型(分析员先做出需求分析和概要设计,用户参与逐步完善),螺旋模型(将瀑布模型与原型化模型结合起来,柄加入了风险分析)和喷泉模型(使开发过程具有迭代性和无间隙性)。
5、软件过程模型有哪些?简述它们的特点。答:过程模型分为五大类:1.管理过程模型。
2.瀑布模型(又称为生命周期模型)。