软件工程概论复习资料及答案
软件工程(概论)习题与答案
一、单选题1、软件产品与物质产品有很大的区别,软件产品是一种()产品。
A.有形B.消耗C.逻辑D.文档正确答案:C2、在()年的NATO会议上,软件工程的术语被首次提出。
A.1966B.1968C.1970D.1972正确答案:B3、软件开发中实现映射的基本手段是()A.抽象B.分层C.隔离D.建模正确答案:D4、下列哪项不属于软件工程框架的三元组。
()A.目标B.范围C.原则D.活动正确答案:B5、下列哪个不是软件维护的类型。
()A.完善性维护B.纠错性维护C.适应性维护D.更新性维护正确答案:D6、只有高水平的(),才能生产出高质量的软件产品。
A.软件开发技术B.软件开发工具C.软件工程管理D.项目开发经验正确答案:C二、多选题1、下列关于软件的说法正确的是()A.软件是通过定制进而生产制造出来的B.软件没有磨损老化问题。
C.软件开发的成本很高D.软件开发和运行必须依赖计算机环境正确答案:B、C、D2、下列软件属于系统软件的是()A.操作系统B.编译器C.中间件D.浏览器正确答案:A、B3、下述软件属于支撑软件的是()A.财务管理软件B.编译器C.中间件D.数据库正确答案:C、D4、下述软件属于应用软件的是()A.财务管理软件B.数据库C.编译器D.浏览器正确答案:A、D5、软件工程是一门交叉性学科,下列哪些学科是软件工程涉及的?A.数学B.计算机科学C.管理科学D.工程科学正确答案:A、B、C、D6、下列属于软件模型的是()A.概念模型B.设计模型C.实现模型D.部署模型正确答案:B、C、D7、软件需求阶段所要完成的任务包括()A.需求获取B.需求完善C.需求定义D.需求规约正确答案:A、C、D三、填空题1、软件工程概念的提出是为了解决()。
正确答案:软件危机2、软件设计阶段包括()和()两个阶段。
正确答案:总体设计、详细设计3、软件开发是实现()的概念和处理逻辑到()的概念和处理逻辑的映射。
软件工程概论课后答案
1.3如果将软件开发比作高楼大厦的建造,可以将软件的设计比作什么?
可以将软件的设计比作建筑设计,软件设计的成果相当于建筑设计的设计图纸。
1.4什么是软件危机?它有哪些典型表现?为什么会出现软件危机?
软件危机:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
典型表现:
(1)对软件开发成本和进度的估计常常很不准确。
(5)缺少有效的软件评测手段,提交给用户的软件的质量不能完全保证。
1.5什么是软件工程?
软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。
(1)识别外部实体及输入输出数据流
外部实体:储户、业务员。
输入数据流:存款单,开户单,密码。可以将存款单和开户单抽象为事务。
输出数据流:存款单,开户单。
(2)顶层数据流图
(3)一层数据流图
对银行储蓄系统进行分解,从大的方面分解为接收事务、处理开户、处理存款三部分,得到一层数据流图。
(4)二层数据流图
逐步增加产品的功能可以使用户有较充裕的时间学习和适应新产品,从而减少一个全新的软件可能给用户组织带来的冲击。
项目失败的风险较低,虽然在某些增量构件中可能遇到一些问题,但其他增量构件将能够成功地交付给客户。
优先级最高的服务首先交付,然后再将其他增量构件逐次集成进来。因此,最重要的系统服务将接受最多的测试。
(1)传统方法的特点
传统方法也称为生命周期方法或结构化范型。它采用结构化技术来完成软件开发的各项任务。这种方法学把软件生命周期的全过程依次划分为若干个阶段,然后顺序地逐步完成每个阶段的任务。每一个阶段的开始和结束都有严格的标准,对于任何两个相邻的阶段而言,前一个阶段的结束标准就是后一阶段的开始标准。
软件工程概论_北京联合大学中国大学mooc课后章节答案期末考试题库2023年
软件工程概论_北京联合大学中国大学mooc课后章节答案期末考试题库2023年1.需求不明确或可能发生变化的大型复杂软件系统适合使用瀑布模型来开发。
参考答案:错误2.V模型是对瀑布模型的修正,强调测试验证;V模型中的各个开发阶段之间强调最大重叠。
参考答案:错误3.在需求工程中,主要产生三类重要的文档:项目前景和范围文档、用户需求文档、需求规格说明书。
其中,用例文档可以用来代替用户需求文档,起到记录、交流领域信息和用户期望的作用。
参考答案:正确4.软件结构设计是()。
参考答案:从数据流图导出初始结构图5.模块化、信息隐藏、抽象和逐步求精的软件设计原则有助于得到高内聚、低耦合的软件产品。
参考答案:正确6.在软件生存周期各个阶段,工作量最大的是需求分析阶段。
参考答案:错误7.快速原型模型的缺点之一就是缺少项目标准,不断修改原型可能导致原型质量低下;容易退化为边做边改。
参考答案:正确8.与设计测试用例无关的文档是()。
参考答案:项目开发计划9.软件的几种维护中,以()占比最高。
参考答案:完善性维护10.软件测试用例主要由输入数据和()两部分组成。
参考答案:预期输出结果11.软件开发全过程的测试工作都可以实现自动化。
参考答案:错误12.如果一个变量在整个程序运行期间都存在,但是仅在说明它的函数内是可见的,这个变量的存储类型应该被说明为()。
参考答案:内部变量13.不属于白盒测试的技术是()。
参考答案:边界值分析14.项目的前景和范围文档、用户需求文档都被视为属于(),重点都是用户的现实世界。
参考答案:用户文档15.系统需求规格说明书、软件需求规格说明书、硬件需求规格说明书、接口需求规格说明书和人机交互文档一起被用于系统开发,都被认为是()。
参考答案:开发文档16.原型方法的最大有点就是能够及早地发现并解决系统开发中的不确定性,从而降低软件项目失败的风险。
参考答案:正确17.软件生存周期中所花费用最多的阶段是()。
软件工程概论复习题(答案)
软件工程概论复习题答案一、单选题1.软件工程的纵向分解是把软件开发分为几个(B)A.模块B.阶段C.子系统D.过程2.McCall软件质量度量模型中属于面向软件产品操作的是(D)A.适应性B.可重用性C.可测试性D.可用性3.快速原型模型中,用于及早向用户提交一个原型系统的是(D)A.实验型原型B.探索型原型C.提交型原型D.演化型模型4.软件维护中,因重新初始化控制标志或指针而引起的错误是以下哪一项的副作用(B)A.文档B.数据C.编码D.设计5.软件维护费用高的主要原因是(B)A.生产率高B.生产率低C.人员多D.人员少6.根据对软件开发机构调查的结果可知,各类维护活动所占的比重是(A)A.完善性占50%,适应性占25%,校正性占21%,其他维护占4%B.完善性占25%,适应性占50%,校正性占21%,其他维护占4%C.完善性占21%,适应性占25%,校正性占50%,其他维护占4%D.完善性占21%,适应性占50%,校正性占25%,其他维护占4%7.下列属于用白盒技术设计测试用例的是(B)A.错误推测B.逻辑覆盖C.等价类划分D.因果图8.有助于培养良好的编程风格并且第一个体现了结构化编程思想的程序设计语言的是(A)A.PASCALB.FORTRAN C.DL/1D.C9.在软件详细设计过程中不采用的工具为(C)A.判定表B.PDL C.数据流图D.IPO图10.根据输入输出的数据结构产生程序结构的设计方法是(B)A.PARNAS方法B.JACKSON方法C.WIRTH方法D.DIJKSTRA方法11.在软件设计中,为解决一个大而复杂的问题把软件系统划分为一个个完成某一特定的子功能的方法称为(C)A.细化B.结构化C.模块化D.抽象化12.结构化方法在建立软件系统的结构模块时按照以下哪种方法进行?(B)A.由底向上B.自顶向下C.随机D.回归13.两个模块之间传递的是同一个数据结构的地址,这种耦合方式称为(C )A.控制耦合B.公告耦合C.标记耦合D.数据耦合14.结构化设计是以哪个阶段产生的DFD图为基础,按一定的步骤映射成软件结构?(B)A.可行性分析B.需求分析C.概要设计D.详细设计15.结构化方法的基本原则是功能的分解和( C )A.模块化B.信息隐藏C.抽象D.细化16.数据字典和数据流图共同构成了系统的(B)A.物理模型B.逻辑模型C.原型D.目标模型17.软件需求不应包括(C )A.功能要求B.环境需求C.标准实现的空间需求D.用户界面要求18.项目开发计划是什么类型的文档?( D )A.设计性B.进度表示C.需求分析D.管理性19.瀑布模型是一种什么类型?( B )A.风险驱动模型B.线性开发模型C.增量模型D.迭代模型20.软件工具一般是为软件开发人员和维护活动而使用的(C )A.硬件环境B.说明书C.软件D.程序21.瀑布模型存在的问题是(B )A.用于容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求22.可将软件生存周期划分为3个过程,可行性研究属于其中的(A )A.软件定义过程B.软件开发过程C.软件设计过程D.软件运行与维护过程23.经济可行性研究的范围包括(C )A.资源有效性B.管理制度C.效益分析D.开发风险24.需求分析中开发人员要从用户那里了解(A )A.软件做什么B.用户使用界面C.输入的信息D.软件的规模25.交互设计不包括( C )A.角色设计B.目标设计C.算法设计D.任务设计26.一个模块的(B )是指能直接控制模块的模块数。
软件工程概论期末复习题
软件工程概论期末复习题Document number【980KGB-6898YT-769T8CB-246UT-18GG08】期末总复习1.选择、判断、简答2.判定树和判定表3.用例图、类图、对象模型、顺序图等4.McCabe环路复杂性度量;5.黑盒测试和白盒测试6.数据流图7.成本效益分析习题一、判定树和判定表1.请用判定表画出以下问题的行为逻辑。
人们往往根据天气情况决定出门时的行装;天气可能下雨,也可能不下雨;天气可能变冷,也可能不变冷。
如果天气要下雨,出门时带上雨伞;如果天气变冷,出门时要穿上大衣。
2. 某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工。
20岁至40岁之间,中学文化程度,男性当钳工,女性当车工,大学文化程度都当技术员。
年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。
请用结构化语言﹑判定表或判定树描述上述问题的加工逻辑。
二、McCabe环路复杂性度量某程序的描述如下:if (( a > b && i > 10)|| (a < b && i <= 5) ) k = a;else k = b;1)画出单个条件的嵌套的分支结构;(5分)2)计算该结构的McCabe环路复杂性度量;(5分)3)为完成基本路径测试,求它的一组独立的路径。
(5分)三、测试:变量的命名规则一般规定如下:变量名的长度不多于30个字符,第一个字符必须为英文字母,其他字母可以是英文字母、数字以及下划线的任意组合。
请用等价分类法设计测试用例。
四、数据流图某教务系统具备以下功能,输入用户ID号及口令后,经验证进入教务管理系统,根据请求进行分类处理,可进行如下功能的处理:1)查询成绩:查询成绩以及从名次表中得到名次信息。
2)学籍管理:根据学生总成绩确定名次信息。
3)成绩处理:处理单科成绩并输入成绩表中。
软件工程概论的练习题及答案
概述一、填空题1、软件由计算机程序、数据和文档组成。
2、软件是一种逻辑产品,它与物质产品有很大的区别。
3、计算机系统由硬件、软件、使用计算机的人、数据库、文档和执行过程组成。
4、软件的发展,到现在为止,经历了三个阶段:程序设计、程序系统和软件工程。
5、程序设计时代的生产方式是个体手工艺者,程序系统时代的生产方式是手工作坊,软件工程时代的生产方式是工程化。
6、软件工程是一门综合性的交叉学科,它涉及计算机学科工程学科、管理学科和数学学科。
7、计算机科学的成果都可用于软件工程,但计算机科学着重于理论和原理,软件工程着重于建造软件系统。
8、软件工程研究的主要内容是方法、过程和工具等三个方面。
9、软件开发各阶段任务的划分应尽可能相对独立,同一阶段任务的性质应尽可能相同。
10、瀑布模型是将软件生存期各个活动规定为依线性顺序连接的若干阶段的模型。
它规定了各阶段的活动由前至后,相互衔接的固定次序,如同瀑布流水,逐级下落。
11、演化模型是一种非整体开发模型。
先开发一个原型软件,完成部分主要功能,展示给用户并征求意见,然后逐步完善,最终获得满意的产品。
12、螺旋模型将开发过程分为几个螺旋周期。
在每个螺旋周期内分为四个工作步骤:制定计划、风险分析、开发实施、用户评估。
13、喷泉模型是一种以用户要求为动力,以对象为驱动的模型。
它使开发过程具有迭代性和无间隙性,适用于面向对象开发方法。
二、单项选择题1、软件产品的生产主要是C。
A. 制造B. 复制C. 开发D. 研制2、个体手工劳动是B时代的软件生产方式。
A. 程序系统B. 程序设计C. 软件工程D. 程序编码3、软件工程是一门C学科。
A. 理论性B. 原理性C. 工程性D. 心理性4、软件开发费用只占软件生存期全部费用的B。
A. 1/2B. 1/3C. 1/4D. 2/35、在软件开发过程中大约要花费C%的工作量进行测试和调试。
A. 20B. 30C. 40D. 506、准确地解决“软件系统必须做什么”是B阶段的任务。
软件工程概论(高起专)学习指南 西交大考试题库及答案
软件工程概论(高起专)学习指南一、填空题1、软件是一种(B)产品。
A、有形B、逻辑C、物质D、消耗2、软件工程学的目的应该是最终解决软件生产的(B)问题。
A、提高软件的开发效率B、使软件生产工程化C、消除软件的生产危机D、加强软件的质量保证3、与计算机科学的理论研究不同,软件工程是一门(B)学科。
A、理论性B、工程性C、原理性D、心理性4、在计算机软件开发和维护中所产生的一系列严重的问题通常称为软件危机,这些问题中相对次要的因素是(D)。
A、文档质量B、开发效率C、软件功能D、软件性能5、软件工程学科出现的主要原因是(C)。
A、计算机的发展B、其他工程科学的影响C、软件危机的出现D、程序设计方法学的影响6、软件工程是一种(A)分阶段实现的软件程序开发方法。
A、自顶向下B、自底向上C、逐步求精D、面向数据流7、有关计算机程序功能、设计、编制、使用的文字或图形资料称为(B)。
A、软件B、文档C、程序D、数据8、(A)是计算机程序及其说明程序的各种文档。
A、软件B、文档C、数据D、程序9、软件开发环境支持一定的(C)或按照一定的软件开发模型组织而成。
A、软件生存周期B、软件过程C、软件开发方法D、软件开发模型10、软件开发环境中最主要的组成部分是(C)。
A、软件工具B、项目管理工具C、软件工具D、需求分析工具11、在软件的开发与维护过程中,用来存储、更新、恢复和管理一个软件的多版本,它是(D)工具。
A、文档分析B、项目管理C、成本估算D、版本控制12、数据集成指不同软件工程能相互(B)。
A、合作B、交换数据C、交流D、通信13、一个CASE工作台是一组(B),支持设计、实现或测试等特定的软件开发阶段。
A、工具集B、软件包C、平台集D、程序包14、控制集成是指工具激活后能控制其他(A)的操作。
A、工具B、系统C、软件D、应用15、(D)是指CASE系统嵌入了关于过程活动、阶段、约束和支持这些活动所需的工具的知识。
软件学院《软件工程概论》试题及答案
软件工程概论考试试卷科目: 软件工程概论专业: 软件工程一、 单项选择题:在每小题列出的四个备选答案中只有一个答案是符合题目要求。
请将正确答案填入“单项选择题答题表”对应的格中。
(每小题1分, 本题共计20分)1. 瀑布模型的关键不足在于( )。
A. 过于简单B. 不能适应需求的动态变更C. 过于灵活D. 各个阶段需要进行评审 C .过于灵活 D .各个阶段需要进行评审2. 软件危机的表现不包括( )。
A. 软件质量不可靠B. 软件几乎是不可维护的C. 测试过程中发现的错误较多D. 缺少文档 C .测试过程中发现的错误较多 D .缺少文档3. 软件可行性研究一般不考虑( )。
A. 是否有足够的人员和相关的技术来支持系统开发B. 是否有足够的工具和相关的资源来支持系统开发C. 待开发软件是否有市场、经济上是否合算D. 待开发的软件是否会有质量问题D.待开发的软件是否会有质量问题4. 需求分析的任务不包括()。
A. 确定对系统的综合要求B. 分析系统的数据要求C. 设计模块内部算法的处理过程D. 导出逻辑模型并修正开发计划D.导出逻辑模型并修正开发计划5. ()和数据流图共同构成系统的逻辑模型, 没有它, 数据流图就不完整。
A. 系统流程图B. E-R图C. 数据字典D. 层次方框图C.数据字典 D.层次方框图6. 使用实体-联系图(ER图)建立的概念性数据模型中包含3种互相关联的信息: ()。
A.数据对象, 属性, 方法 B.数据对象, 属性, 联系C.数据表, 属性, 联系 D.数据表, 实体, 联系C. 数据表,属性,联系D. 数据表,实体,联系C.数据表,属性,联系 D.数据表,实体,联系7. 为了提高模块的独立性, 模块之间最好使用()。
A.控制耦...B.公共耦...C.内容耦...D.数据耦合A. 控制耦合B. 公共耦合C. 内容耦合D. 数据耦合8. 在总体设计阶段, 可用来描绘软件结构的图形工具不包括()。
软件工程概论 西交大考试题库及答案
软件工程概论一、单项选择题(本大题共137小题,每小题2分,共274分)1.软件是一种( B )产品A.有形B.逻辑C.物质D.消耗2.一个CASE工作台是一组( A ),支持设计、实现或测试等特定的软件开发阶段。
A.工具集B.软件包C.平台集D.程序包3.研究软硬件资源的有效性是进行( A )研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.操作可行性4.SA方法是一种( A )A.自顶向下逐层分解的分析方法B.自底向上逐层分解的分析方法C.面向对象的分析方法D.以上都不是5.需求分析最终结果是产生( C )A.项目开发计划B.可行性分析报告C.需求规格说明书D.设计说明书6.软件工程方法学的研究内容包含软件开发技术和软件工程管理两个方面,其期望达到的最终目标是(A )A.软件开发工程化B.消除软件危机C.实现软件可重用D.程序设计自动化7.增量模型是一种( B )模型A.整体开发B.非整体开发C.灵活性差D.较晚产生工作软件8.技术可行性要解决( D )。
A.存在侵权否B.成本-效益问题C.运行方式可行D.技术风险问题9.在数据流图中,有名字及方向的成分是( C )A.控制流B.信息流C.数据流D.信号流10.结构化分析方法(SA)最为常见的图形工具是( C )A.程序流程图B.实体联系图C.数据流图D.结构图11.软件工程方法得以实施的主要保证是( C )A.硬件环境B.开发人员的素质C.软件开发工具和软件开发的环境D.软件开发的环境12.瀑布模型的问题是(B )A.用户容易参与开发B.缺乏灵活性。
【可编辑全文】软件工程概论答案
可编辑修改精选全文完整版软件工程概论答案第1章软件与软件工程的概念1.1 举出你所知道的应用软件的例子。
办公软件、游戏软件、财务软件、银行软件、人事管理软件、工资管理软件、学籍管理软件等。
1.2 认为“软件就是程序,软件开发就是编程序。
”这种观点是否正确?为什么?认为“软件就是程序,软件开发就是编程序。
”这种观点是错误的。
首先,软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合,程序只是软件的组成部分之一;其次,在软件开发中,编程只是软件开发过程的一个阶段。
1.3 如果将软件开发比作高楼大厦的建造,可以将软件的设计比作什么?可以将软件的设计比作建筑设计,软件设计的成果相当于建筑设计的设计图纸。
1.4 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?软件危机:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
典型表现:(1)对软件开发成本和进度的估计常常很不准确。
(2)用户对“已完成的”软件系统不满意的现象经常发生。
(3)软件产品的质量往往靠不住。
(4)软件常常是不可维护的。
(5)软件通常没有适当的文档资料。
(6)软件成本在计算机系统总成本中所占的比例逐年上升。
(7)软件开发生产率提高的速度,既跟不上硬件的发展速度,也远远跟不上计算机应用迅速普及深入的趋势。
产生软件危机的原因:除了软件本身的特点,其原因主要有以下几个方面:(1) 缺乏软件开发的经验和有关软件开发数据的积累,使得开发工作计划很难制定。
(2) 软件人员与用户的交流存在障碍,使得获取的需求不充分或存在错误。
(3) 软件开发过程不规范。
如,没有真正了解用户的需求就开始编程序。
(4) 随着软件规模的增大,其复杂性往往会呈指数级升高。
需要很多人分工协作,不仅涉及技术问题,更重要的是必须有科学严格的管理。
(5) 缺少有效的软件评测手段,提交给用户的软件的质量不能完全保证。
1.5 什么是软件工程?软件工程是指导计算机软件开发和维护的工程学科。
