答案:正确2.“高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。
答案:正确3.软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。
答案:错误三、简答题1.什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。
它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。
2.软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。
通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。
3.请简述软件开发生命周期中的各个阶段。
答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。
-需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。
-设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。
-编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。
-测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。
-维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。
B、克服软件危机。
C、作好软件开发的培训工作。
D、以较低的成本开发出高质量的软件。
二、判断题1.软件就是程序,编写软件就是编写程序。
2.瀑布模型的最大优点是将软件开发的各个阶段划分得十分清晰。
瀑布模型的开发流程包括以下几个阶段:1)需求分析阶段:收集用户需求,并进行详细的需求分析和建模。
2)系统设计阶段:根据需求分析得到的系统需求,进行整体设计和详细设计。
3)编码和单元测试阶段:将设计好的系统转化为可执行代码,并进行单元测试,验证代码的正确性。
4)集成测试阶段:将各个模块进行集成,测试整个系统的功能和性能。
软件工程课程实习题目1、设有n个运动员要进行网球循环赛。
设计一个满足以下要求的比赛日程表:(1)每个选手必须与其他n-1个选手各赛一次。
(2)每个选手一天只能赛一次。
(3)当n是偶数时,循环赛进行n-1天。
当n是奇数时,循环赛进行n天。
2、考虑国际象棋棋盘上某个位置的一只马,它是否可能只走63步,正好走过除起点外的其他63个位置各一次?如果有一种这样的走法,则称所走的这条路线为一条马的周游路线。
试设计一个程序输出这样的一条马的周游路线。
3、Gray码是一个长度为2n的序列。
序列中无相同元素,每个元素都是长度为n位的串,相邻元素恰好只有一位不同。
设计一个程序实现对任意的n构造相应的Gray码。
4、多边形游戏问题是1998年国际信息学奥林匹克竞赛试题。
该游戏是一个单人玩的游戏,开始时有一个由n个顶点构成的多边形。
每个顶点被赋予一个整数值,每条边被赋予一个运算符“+”或“*”。
所有边依次用整数从1到n编号。
游戏的地一步,将一条边删除。
随后n-1步按以下方式操作:(1)选择一条边E以及由E连接着的两个顶点V1和V2;(2)用一个新的顶点取代边E以及由E连接着的两个顶点V1和V2。
将由顶点V1和V2的整数值通过边E上的运算得到的结果赋予新的顶点;(3)最后,所有边都被删除,游戏结束。
游戏的得分就是所剩顶点上的整数值。
5、在一个圆形操场的四周摆放着n堆石子。
现要将石子有次序地合并成一堆。
规定每次只能选相邻的两堆石子合并成新的一堆,并将新的一堆石子数记为该次合并的得分。
试设计一个程序,计算出将n堆石子合并成一堆的最小得分和最大得分。
6、商店中每种商品都有标价。
例如:一朵花的价格是2元,一个花瓶的价格是5元。
为了吸引顾客,商店提供了一组优惠商品。
优惠商品是把一种或多种商品分成一组,并降价销售。
例如:3朵花的价格不是6元而是5元。
2个花瓶加1朵花的优惠价格是10元。
试设计一个程序,计算出某个顾客所购商品应付的最少费用。
一、选择题1.软件开发瀑布模型中的软件定义时期各个阶段依次是:(B)A)可行性研究,问题定义,需求分析。
B)问题定义,可行性研究,需求分析。
C)可行性研究,需求分析,问题定义。
D)以上顺序都不对。
(软件开发时期:概要设计、详细设计、软件实现、软件测试)2.可行性研究主要从以下几个方面进行研究:(A)A)技术可行性,经济可行性,操作可行性。
B)技术可行性,经济可行性,系统可行性。
C)经济可行性,系统可行性,操作可行性。
3.耦合是对软件不同模块之间互连程度的度量。
各种耦合按从强到弱排列如下:(C)A)内容耦合,控制耦合,数据耦合,公共环境耦合。
B)内容耦合,控制耦合,公共环境耦合,数据耦合。
C)内容耦合,公共环境耦合,控制耦合,数据耦合。
(内容耦合、公共耦合、外部耦合、控制耦合、特征耦合、数据耦合)D)控制耦合,内容耦合,数据耦合,公共环境耦合。
4.在详细设计阶段所使用到的设计工具是:(C)A)程序流程图,PAD图,N-S图,HIPO图,判定表,判定树.B)数据流程图,Yourdon图,程序流程图,PAD图,N-S图,HIPO图。
C)判定表,判定树,PDL,程序流程图,PAD图,N-S图。
D)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
详细设计阶段工具:判定表、判定树、数据流程图、系统流程图、程序流程图、PAD图、N-S图、PDL在软件详细设计阶段,常用的图形描述工具有程序流程图,盒图(NS图)和问题分析图(PAD).常用的语言描述工具为PDL(程序设计语言),常用的表格描述工具有判定表和判定树.DFD数据流图:总体设计阶段5.按照软件工程的原则,模块的作用域和模块的控制域之间的关系是:(A)A)模块的作用域应在模块的控制域之内。
B)模块的控制域应在模块的作用域之内。
C)模块的控制域与模块的作用域互相独立。
D)以上说法都不对。
软件工程实训题目(参考)第一篇:软件工程实训题目(参考)软件工程实训题目题目一:“网络环境下的图书馆管理系统”学院图书馆需要一个新的图书馆管理系统用于跟踪和管理图书馆资源。
图书馆管理的主要资源是图书。
图书由读者借出、还入和预定。
图书可能处于特殊的状态,如被预留或者仅做参考书。
在这些情况下,图书是不能被借走的。
除了图书,图书馆还有其他可以借出的资源,包括音乐CD、软件等,这些资源每次只能借出一周。
读者来图书馆借书,可能先查询馆中的图书信息。
查询可以按书名、作者、图书编号、关键字查询。
当找到要借的图书后,读者交给图书馆管理员,办理借书手续。
如果该书已经被全部借出,可做预订登记,等待有书时被通知。
如果图书馆没有该书的记录,可进行缺书登记。
办理借书手续时先要出示图书证,没有图书证则去图书馆办公室申办图书证。
如果借书数量超出规定,则不能继续借阅。
当读者还书时,图书馆管理员根据图书证编号找到读者的借书信息,查看是否超期。
如果已经超期,则处罚。
如果图书有破损、丢失,则进行破损处罚。
登记还书信息,做还书处理,同时查看是否有预订登记,如果有则发出到书通知。
学生可借阅四周,老师可借阅三个月,图书馆馆员可以把书保留整整一年。
只要没有其他读者要求借阅,任何可借出的图书馆资源都可以续借。
图书馆还需管理收集大量的周刊、月刊和季刊杂志,这些杂志不能被借出,仅作为参考资料之用。
这些杂志按年装订成卷或录成微缩胶片。
图书采购人员采购图书时,要注意合理采购。
如果有缺书登记,则随时进行采购。
采购到货后,编目人员进行验收,编目、上架,录入图书信息,发到书通知。
如果图书丢失或旧书淘汰,则将该书从书库中清除,即图书注销。
以上是图书管理系统的基本需求。
经过与图书馆工作人员反复交流,他们提出了下列建议:1.当读者借阅的图书到期时,希望能够提前以一个短信息或电子邮件方式提示读者。
软件工程习题(附答案)软件工程习题(附答案)1.概述1.1介绍本文档是一份软件工程习题文档,包含了一系列关于软件工程的习题及其对应的答案。
这些习题涵盖了软件工程的各个方面,旨在帮助读者巩固和扩展自己的软件工程知识。
1.2目的本文档的目的是提供一份全面而详细的习题文档,供软件工程学习者参考和学习。
每个习题都配有答案,以便读者可以自行对比答案和解答过程,提高自己的理解和运用能力。
2.软件需求工程2.1需求获取2.1.1什么是需求获取?为什么它在软件工程中非常重要?答案:需求获取是指在软件开发过程中,获取并理解用户对软件系统所需功能和约束的过程。
它在软件工程中非常重要,因为一个完整、清晰、准确的需求基础是成功软件开发的关键,它直接影响着软件系统的功能、性能和质量。
2.1.2几种常见的需求获取方法。
答案:常见的需求获取方法包括面谈、问卷调查、观察、原型展示等。
2.2需求分析与规格2.2.1什么是需求分析?它的目标是什么?答案:需求分析是指对需求进行深入的分析和理解,以确定需求的准确性、完整性和一致性。
它的目标是明确系统需求,并将其规格化,为软件开发提供指导和依据。
2.2.2需求分析的主要步骤有哪些?答案:需求分析的主要步骤包括需求获取与识别、需求验证与确认、需求排序与组织、需求规格化等。
3.软件设计3.1结构化设计3.1.1什么是结构化设计?答案:结构化设计是指将系统进行层次化和模块化分解,定义各个模块之间的接口和关系,从而使系统具有更好的可维护性、可扩展性和可重用性。
3.1.2结构化设计的原则有哪些?答案:结构化设计的原则包括模块化原则、信息隐藏原则、高内聚低耦合原则等。
3.2面向对象设计3.2.1什么是面向对象设计?答案:面向对象设计是一种基于对象的思维方式,将系统分解为各个独立的对象,通过对象之间的交互和协作来实现系统的功能。
3.2.2面向对象设计的主要特点是什么?答案:面向对象设计的主要特点包括封装、继承、多态等。
软件工程试题及答案(较详细)软件工程试题及答案(较详细)一、简答题1.什么是软件工程?软件工程是一门综合应用计算机科学与工程学、管理学等知识的学科,它致力于开发和维护高质量的软件系统。
它包括需求分析、设计、编码、测试和维护等各个阶段,以确保软件项目能够按时交付、高效运行,并满足用户需求。
2.请解释什么是软件生命周期?软件生命周期是指软件从构思、开发、使用到废弃的整个过程。
它包括需求分析、设计、编码、测试、部署和维护等多个阶段。
软件生命周期管理的目标是确保软件产品按时、按质量要求交付,并提供后续的支持与维护。
3.请解释什么是需求工程?需求工程是软件工程中的一个重要阶段,它主要涉及对用户需求的调研、分析、规划和文档化。
通过需求工程,开发人员能够更好地理解用户需求,并将其转化为具体的软件需求规格说明书,为后续的设计和开发提供基础。
4.什么是软件设计模式?软件设计模式是一套在软件设计过程中重复出现的解决方案。
它们被广泛接受,并被认为是开发高质量、可维护和可扩展软件的有效方法。
常见的软件设计模式包括单例模式、工厂模式、观察者模式等。
二、分析题1.请说明面向对象和面向过程的编程范式的区别。
面向对象编程(OOP)和面向过程编程(POP)是两种不同的编程范式。
面向过程编程更侧重于任务的步骤和流程,它将问题分解为多个步骤,通过一系列函数或过程的调用来完成任务。
面向过程编程更加注重解决问题的步骤和执行过程。
面向对象编程更注重数据和对象的定义和封装,它将问题看作是一组对象的交互。
面向对象编程通过定义类、创建对象以及对象之间的协作来解决问题。
2.什么是软件架构?软件架构是指软件系统的基本结构和组织方式。
它定义了软件系统中各个组件的职责、交互方式和部署方式。
常见的软件架构模式包括分层架构、客户端-服务器架构、微服务架构等。
3.解释软件测试中的黑盒测试和白盒测试。
黑盒测试是一种测试方法,它基于对软件系统的功能需求进行测试,而不考虑内部的实现细节。
以下是一些软件工程的习题及答案,希望能帮助您更好地理解这门学科。
2、下面不属于软件工程的3个要素的是()A工具B过程C方法D环境答案:D解析:软件工程的三要素是方法、工具和过程。
方法为软件开发提供了“如何做”的技术;工具为方法的运用提供了自动的或半自动的软件支撑环境;过程是将方法和工具结合起来,以达到合理、及时地进行软件开发的目的。
3、软件可行性研究实质上是要进行一次()需求分析和设计过程。
4、软件测试的目的是()A证明软件的正确性B找出软件中的所有错误C尽可能多地发现软件中的错误D调试程序答案:C解析:软件测试的目的是尽可能多地发现软件中的错误,而不是证明软件的正确性,也不可能找出软件中的所有错误。
5、下面描述中,不符合结构化程序设计风格的是()A使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B自顶向下C注重提高程序的执行效率D限制使用goto语句答案:C解析:结构化程序设计强调清晰的结构和良好的可读性,注重程序的可理解性和可维护性,而不是过于追求执行效率。
二、填空题1、软件生存周期一般可分为问题定义、可行性研究、()、设计、()、测试、运行与维护阶段。
软件工程测试题+参考答案一、单选题(共40题,每题1分,共40分)1、窃听是一种()攻击,攻击者()将自己的系统插入到发送站和接收站之间。
截获是一种()攻击,攻击者()将自己的系统插入到发送站和接受站之间。
A、被动,无须,主动,必须B、被动,必须,主动,无须C、主动,无须,被动,必须D、主动,必须,被动,无须正确答案:A2、如果一名攻击者截获了一个公钥,然后他将这个公钥替换为自己的公钥并发送给接收者,这种情况属于哪一种攻击?A、重放攻击B、Smurf攻击C、中间人攻击D、字典攻击正确答案:C3、黑客攻击服务器以后,习惯建立隐藏用户,下列哪一个用户在DOS命令netuser下是不会显示的。
A、fg#B、fg%C、fg_D、fg$正确答案:D4、下列哪一种方法在支持向量机中有应用A、拉格朗日乘子法B、二分法C、最小二乘法D、极大似然估计正确答案:A5、设顺序线性表的长度为30,分成5块,每块6个元素,如果采用分块查找,则其平均查找长度为A、6B、6.5C、11D、5正确答案:B6、对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为A、NB、N/2C、(N+1)/2D、[(1+N)*N]/2正确答案:C7、信息安全中PDR模型的关键因素是()。
A、多级反馈队列调度算法B、先来先服务调度算法C、高优先级优先调度算法D、短作业优先调度算法正确答案:D10、下面()不是数据字典的内容。
A、容错性B、检测性C、可操作性D、安全性正确答案:C4、下列属于维护阶段的文档是()A、软件问题报告B、用户操作手册C、软件测试分析报告D、软件规格说明正确答案:B5、快速原型模型的主要特点之一是()A、及早提供工作软件B、开发完毕才见到产品C、及早提供全部完整的软件产品D、开发完毕后才见到工作软件正确答案:C6、可维护性通常包括()。
A、可用性和可理解性B、可修改性、数据独立性和数据一致性C、可理解性、可修改性和可测试性D、可测试性和稳定性正确答案:C7、软件的可修改性支持软件的()。
A、可互操作性B、可维护性C、可追踪性D、有效性正确答案:B8、数据字典是软件需求分析阶段的最重要工具之一,其最基本的功能是()A、数据通信B、数据定义C、数据维护D、数据库设计正确答案:B9、软件特性中,多个软件元素相互通讯并协同完成任务的能力指的是()。
对于两个问题P1和P2,如果C(P1)>C(P2)显然E(P1)>E(P2),则得出结论E(P1+P2)>E(P1)+E(P2)就是:()A、信息隐藏和局部化的根据B、逐步求精的根据C、抽象的根据D、模块化的根据正确答案:D13、下列说法中,不正确的是()。
软件工程考试题及答案一、单项选择题(每题2分,共20分)1.软件工程的主要目标是()。
A.提高软件的生产率B.提高软件的运行效率C.降低软件的生产成本D.提高软件的可维护性答案:A2.软件工程的三要素包括()。
A.方法、工具和过程B.方法、工具和人员C.方法、过程和人员D.工具、过程和人员答案:C3.软件需求分析阶段的主要任务是()。
A.确定软件的功能需求B.确定软件的非功能需求C.确定软件的界面需求D.确定软件的测试需求答案:A4.软件设计阶段的主要任务是()。
A.制定软件开发计划B.确定软件的体系结构C.编写软件详细设计文档D.进行软件测试答案:B5.软件测试的目的是()。
A.证明软件是正确的B.发现软件中的错误C.证明软件是无错误的D.证明软件是可维护的答案:B6.软件维护不包括以下哪项活动()。
A.改正性维护B.适应性维护C.完善性维护D.软件设计答案:D7.软件项目管理的主要任务不包括()。
A.进度管理B.质量管理C.风险管理D.软件编码答案:D8.面向对象方法中,对象的基本特性不包括()。
A.抽象B.封装C.继承D.多态答案:D9.UML(统一建模语言)是一种()。
A.程序设计语言B.数据库查询语言C.建模语言D.脚本语言答案:C10.在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。
A.客户的需求不明确B.项目范围的扩大C.技术实现的困难D.软件已经完成答案:D二、多项选择题(每题3分,共15分)11.软件工程的基本原理包括()。
A.抽象B.模块化C.逐步求精D.迭代开发答案:ABC12.软件需求分析阶段的输出包括()。
A.需求规格说明书B.用户手册C.系统架构图D.测试计划答案:A13.软件设计阶段的主要文档包括()。
A.架构设计文档B.详细设计文档C.用户手册D.测试计划答案:AB14.软件测试的类型包括()。
考试软件工程项目佳实践完整题目库软件工程项目最佳实践单选题第二章软件工程概述软件工程的目的是()。
A.建造大型的软件系统B.软件开发的理论研究C.软件的质量保证D.研究软件开发的原理答案.D比较成熟的软件开发方法是()。
A.面向数据库的方法B.软件工程的开发方法C.结构化的程序设计方法D.面向对象的开发方法答案.B软件产品的开发主要是()。
A.进行软件复制B.进行软件的研制C.进行软件的销售D.进行软件的测试答案.B在软件开发模型中,提出最早、应用最广泛的模型是()。
A.瀑布模型B.喷泉模型C.快速原型模型D.螺旋模型答案.A软件的主要结构和功能是在()阶段决定的。
A.分析设计B.编程C.测试D.维护答案.A“软件危机”是指()。
A.计算机病毒的出现B.利用计算机进行经济犯罪活动C.软件开发和维护中出现的一系列问题D.人们过分迷恋计算机系统答案.C为了客户软件危机,人们提出了用()的原理来设计软件,这就是软件工程诞生的基础。
A.数学B.软件学C.运筹学D.工程学答案.D软件工程的出现是由于()。
A.软件危机的出现B.计算机硬件技术的发展C.软件社会化的需要D.计算机软件技术的发展答案.A()分批地逐步向用户提交产品,每次提交一个满足用户需求子集的可运行的产品。
A.软件工程B.软件C.运筹学D.工程学答案.A()是指容许对系统进行修改而不增加原系统的复杂性,它支持软件的调试和维护。
A.可修改性B.有效性C.可靠性D.可维护性答案.B()是指软件系统能够防止因概念、设计和结构等方面的不完善造成软件系统失效,具有挽回因操作不当造成软件系统失效的能力。
《软件工程》练习测试题库一、单项选择题1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()A.软件工程B.软件周期C.软件危机D.软件产生2.研究开发所需要的成本和资源是属于可行性研究中的()研究的一方面。
因此它只适用于详细设计阶段8.不适合作为科学工程计算的语言是()A.PascalB.CC.FortranD.Prolog9.黑盒测试在设计测试用例时,主要需要研究()A.需求规格说明与概要设计说明B.详细设计说明C.项目开发计划D.概要设计说明与详细设计说明10.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。
设计这组测试用例的方法是()A.条件覆盖法B.等价分类法C.边界值分析法D.错误推测法11.下列属于维护阶段的文档是()A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告12.快速原型模型的主要特点之一是()A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件13.因计算机硬件和软件环境的变化而做出的修改软件的过程称为()A.较正性维护B.适应性维护C.完善性维护D.预防性维护14.类库这种机制是()级别的信息共享。
9.毕业设计选题系统由于学校要进行毕业设计,教师和学生进行双向选择,即学生可选择相应的毕业设计题目,教师也可选择学生。
1.管理员负责录入老师、学生信息;2.每个同学可修改自己的基本信息.3.教师可以增加、修改毕业设计题目及要求,每个课题只能有一个同学做;4.教师可录取报名的学生,查看学生的详细信息如学生的基本信息。
5.学生可浏览教师的毕业设计题目及教师的简介等内容6.学生可修改自己的个人信息(基本信息)7.学生可以报毕业设计题目,每人限报两个,第一志愿和第二志愿。
10.停车场数据库管理系统实现一个停车场数据库管理系统,主要完成如下功能:1.管理员可以维护车主信息,包括车辆号码、颜色、姓名、联系方式等。
2、学生可查询自己的信息和定餐历史等内容,帐户信息等内容。
3、学生可浏览提供的餐种类型,并可选择不同品种、数量的菜品。
4、学生可对每个餐种进行评价,并根据评价系统自动打分。
5、食堂分为不同的组别:如荤菜组,素菜组、面食组等不同的小组,提供不同的餐种。
6、食堂进行餐种等的信息维护,包括上传菜品照片。
7、食堂可进行各种统计:如日统计,月统计,菜品统计等等统计查询功能。
12.设备管理信息系统为天津大学设备处开发一套设备管理信息系统。
可完成如下功能1.设备的类别管理:如电子设备->计算机->笔记本电脑,三级管理。
2.设备的基本信息管理:如设备编号、设备名称、主要参数、价格、生产厂商、用途、存放地点、领用人、单位、备注、购置日期、设备生产日期等内容,必须能够提供上传设备照片。
6.可进行设备的报废。
14.硕士研究生录取报名系统。
3、系统分为以下几个阶段运行:1)导师填报信息阶段:如录取人数、研究方向、要求等等信息;然后审核。
3)导师根据同学报考情况进行录取,录取的时候,必须优先录取第一志愿者,然后再录取第二志愿。