第一章软件工程学概述填空题
软件工程(概论)习题与答案
一、单选题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.“软件危机”产生的主要原因是( B )。
A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件2.软件工程中描述生存周期的瀑布模型一般包括计划、( 需求分析)、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成(概要设计)和(详细设计)两步。
①需求分析②需求调查③可行性分析④问题定义⑤方案设计⑥代码设计⑦概要设计⑧数据设计⑨运行设计⑩3.软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是(程序、数据、文档)。
A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档4.在软件工程时期,决定软件质量的主要因素是( )A.管理水平 B.个人程序技术 C.小组技术水平 D.硬件的发展5.下列哪个模型没有采用迭代的思想(A )A.瀑布模型 B.渐增模型C.螺旋模型 D.RUP模型6.下列关于瀑布模型的描述正确的是( D )A.利用瀑布模型,如果发现问题修改的代价很低B.瀑布模型的核心是按照软件开发的时间顺序将问题简化C.瀑布模型具有良好的灵活性D.瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开7.瀑布模型的关键不足在于(B )(A)过于简单(B)不能适应需求的动态变更(C)过于灵活(D)各个阶段需要进行评审8.瀑布模型把软件生存周期划分为软件定义、软件开发与(D )三个阶段,而每一阶段又可分为若干更小的阶段。
A. 详细设计B. 可行性分析C. 运行及维护D. 测试与排错二、判断题1.软件工程是指导计算机软件开发和维护的工程学科。
( )2.在软件工程时期,决定软件质量的主要因素是管理水平. ( )3.软件生存期是从软件项目需求定义直至软件开始使用为止。
()4.常用的软件生存周期模型有瀑布模型和结构化模型。
()5.瀑布模型是一种线形的、顺序的软件开发模型( )6.瀑布模型的关键不足在于不能适应需求的动态变更.( )7.快速原型模型是为了克服瀑布模型的缺点而提出来的。
软件工程综合复习题连答案
《软件工程》综合复习资料第一章软件工程概述一、选择题1、瀑布模型本质上是一种()。
A、线性迭代模型B、顺序迭代模型C、线性顺序模型D、及早见产品模型2、计算机辅助软件工程,简称()。
A、SAB、SDC、SCD、CASE3、以下判断正确的是()。
A、所谓软件开发就是编写程序。
B、利用软件工程的思想,已成功的解决了软件危机。
C、完成软件测试工作以后,为了缩短程序的长度应删除程序中的注释。
D、一般来说,程序中存在错误的概率与在该段程序中已发现的错误数成正比。
4、_____是以提高软件质量为目的的技术活动。
A.技术创新B.测试C.技术创造D.技术评审5、瀑布模型的存在问题是()。
A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求6、软件生命周期中所花费用最多的阶段是()。
A.详细设计B.软件编码C.软件测试D.软件维护7、计算机系统就是()A.主机,显示器,硬盘,软驱,打印机等。
B.CPU,存储器,控制器,I/O接口及设备。
C.计算机硬件系统和软件系统。
D.计算机及其应用系统。
8、产生软件危机的原因主要与两个方面的问题有关:A.软件在计算机中很难识别,存在磁盘中也看不到。
B.软件设计对人的智商要求很高,也要求很高的资金投入。
C.软件产品本身的特点与其它工业产品不一样,而且在软件的开发和维护过程中用的方法不正确。
D.软件很难理解,硬件也很复杂。
9、软件开发瀑布模型中的软件定义时期各个阶段依次是()A.可行性研究,问题定义,需求分析。
B.问题定义,可行性研究,需求分析。
C.可行性研究,需求分析,问题定义。
D.以上顺序都不对。
10、下列选项中()是软件开发中存在不正确的观念、方法。
A.重编程、轻需求B.重开发,轻维护C.重技术,轻管理D.以上三条都是二、填空题1、软件工程的三个基本要素包括()、()和()。
2、一般软件应该有三部分组成:()、()和()。
3、按软件的功能可将软件分成()、()和()等三类。
软件工程案例教程软件项目开发实践第一章练习题
第一章练习题:一、填空题1.软件工程是一门综合性的交叉学科,它涉及计算机学科、工程学科、管理学科和数学学科。
2.软件工程研究的主要内容是方法、过程和工具三个方面。
3.由于软件产生的复杂性和高成本,使大型软件产生出现出现了很多问题,即出现软件危机,软件工程正是为了克服它而提出的一种概念及相关方法和技术。
4.SWEBOK V3中,软件工程知识体细分为教育需求和工程实践两大类。
5.增量式模型假设需求可以分段,成为一系列增量产品,每一增量可以分别开发。
6.喷泉模型比较适用于面向对象的开发方法。
7.软件工程是用工程科学的知识和技术原理来定义、开发和维护软件的一门学科。
二、判断题1.SWEBOK V3分两大类,共有15个知识域。
(√)2.软件工程的提出起源于软件危机,其目的是最终解决软件的生产工程化。
(√)3.软件工程学一般包含软件开发技术和软件工程管理两个方面的内容,软件开发方法学和软件工程环境属于软件开发技术的内容,软件工程经济学属于软件工程管理。
(对)4.软件开发中的最大的问题不是管理问题,而是技术问题。
(×)5.XP(eXtreme Programming,极限编程)是由Kent Beck提出的一套针对业务需求和软件开发实践的规则,包括13个核心实践。
(√)三、选择题1.下列所述不是敏捷生存期模型的是(C)。
A.Scrum B.XP C.V模型D.OPEN UP2.软件工程的出现主要是由于(C)。
A.程序设计方法学的影响B.其他工程科学的影响C.软件危机的出现D.计算机的发展3.以下(C)不是软件危机的表现形式。
A.开发的软件不满足用户的需要B.开发的软件可维护性差C.开发的软件价格便宜D.开发的软件可靠性差4.以下不是SWEBOK V3的软件工程实践中的知识域的是(B)。
A.软件需求B.工程基础C.软件构造D.软件设计5.下列所述不是软件组成的是(C)。
A.程序B.数据C.界面D.文档6.下列对“计算机软件”描述正确的是(A)A.是计算机系统的组成部分B.不能作为商品参与交易C.是在计算机硬件设备生产过程中产生出来的D.只存在于计算机系统工作时7.软件工程方法的提出起源于软件危机,其目的应该是最终解决软件的(D)问题。
第一章软件工程学概述选择题
第一章软件工程学概述选择题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.软件工程方法学的目的是使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( )。
Removed_软件工程总复习201553
第一章:软件工程概述1.软件及软件开发的特点是什么?(ppt)答:抽象性:逻辑实体,而非具体的物理实体无明显制造过程无磨损性:不会老化对硬件的依赖性:开发和运行受计算机系统限制软件的手工开发方式本身的复杂性:实际问题的复杂性程序逻辑结构的复杂性高成本相当多的软件工作涉及到社会因素2.软件危机是什么?(P1)软件危机有哪些表现?(P2)产生软件危机的主要原因是什么?(Ppt)答:软件危机:计算机软件在开发和维护过程中所遇到的一系列严重问题。
软件危机的表现:对软件开发成本和进度的估算很不准确用户很不满意质量很不可靠没有适当的文档第1 页软件成本在计算机系统总成本中所占的比例逐年上升供不应求:软件开发生产率跟不上计算机应用迅速深入的趋势软件危机的本质是:软件开发的高成本,低质量,低效率软件危机的原因:客观原因:软件本身特点决定的。
主观原因:不正确的开发方法;缺乏高质量的人才、经验和管理;缺乏一种有效的、系统的、科学的原理、原则、方法和工具来指导软件的开发和维护;软件危机的解决途径:1、对计算机软件有个正确的认识,2、技术措施(方法和工具)3、必要的管理措施3.软件工程的定义(P5)答:软件工程是指导计算机软件开发和维护的一门工程学科,采用工程的概念、原理、技术和方法来开发和维护软件,把经过时间而验证正确的管理技术和当前能够得到最好的技术方法结合起来,以经济的开发出有质量的软件并且有效维护的它,这就是软件工程。
4.软件包含些什么?程序、数据、文档(P5)填空题第2 页答:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合5.软件工程方法学的三要素:过程、方法、工具(P9)填空题答:过程(Process)——开发一个软件产品所需的步骤、需完成的各项活动和任务以及对这些任务和活动的组织和管理,它贯穿于软件开发的各个环节:包括需求分析、软件设计、人员组织、成本估算、质量保证等等。
软件工程-张海藩 编著 复习提纲1-6章
第一章软件工程学概述第一节软件危机1.为了消除软件危机,20世纪60年代后期形成了新学科:计算机软件工程学。
2.软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
(这些问题不是不能运行的软件才仅仅具有的,几乎所有的软件都不同程度存在这些问题。
)3.软件危机包含两个方面的问题:1.如何开发软件,以满足对软件日益增长的需求。
2.如何维护数量不断膨胀的已有软件。
4.产生软件危机的原因(page4—图1.1)1.一方面与软件本身的特点有关2.另一方面也和软件开发与维护的方法不正确有关。
5.软件不同于一般程序,它的一个显著特点是:“规模庞大”。
6.软件开发流程:1. 问题定义:(确定要求解决的问题是什么)2. 可行性研究:(决定该问题是否存在一个可行的解决办法)3. 需求分析:(深入具体的了解用户需求)进入开发时期:对软件设计概要设计详细设计编写程序(全部工作量10%—20%)测试交付使用7.软件产品的配置:包括:程序、文档、数据8.软件危机的一些典型表现:1.对软件开发成本和进度的估计常常不准确2.用户对“已完成的”软件系统不满意的现象经常发生3.软件产品的质量往往靠不住4.软件常常是不可维护的5.软件通常没有适当的文档资料。
6.软件成本在计算机系统总成本中所占的比例逐年上升。
7.软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
第二节软件工程1.软件工程定义软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;2. 软件工程方法学包含3个要素:方法、工具和过程。
3. 软件工程方法学: 1. 传统方法学2. 面向对象方法学4. 面向对象方法学的4个特点:(1)把对象(object)作为融合了数据及在数据上的操作行为的统一的软件构件。
(2)把所有的对象都划分成类(class)。
(3)按照父类(基类)与子类(派生类)的关系,把若干个相关类组成一个层次结构的系统(也成为类的等级)。
软件工程填空题(18套试题与答案)
《软件工程》填空题二、填空题(请把答案写在相应的横线上,每小题1.5分)1、软件是数据、计算机程序及其说明程序的各种文档。
2、概要设计主要是把各项功能需求转换成系统的体系结构。
3、面向对象开发方法包括OOA 、OOD 、OOP 三部分。
4、结构化设计中以数据流图为基础的两种具体分析设计方法是变换分析、事物分析设计。
5、在单元测试时,需要为被测模块设计驱动模块和桩模块。
6、CMM把软件过程从无序到有序的进化分成5个阶段,排序而形成5个逐层提高的等级,分别是初始级、可重复级、已定义级、已管理级和可优化级。
7.子类自动共享父类的属性和操作的机制称为继承。
8. 软件工程管理的具体内容包括对开发人员、组织机构、用户、文档资料等方面的管理。
9、可行性研究的三个方面是技术可行性、社会可行性和__经济可行性__。
10、在软件概要设计阶段,建立软件结构后,还应为每个模块写一份处理说明和_接口说明__。
11、在画分层的DFD时,父图与子图的输入输出数据流要__平衡__。
12、在详细设计阶段,除了对模块内的算法进行设计,还应对模块内的__数据结构_进行设计。
13. 对象的抽象是___类___。
14. 基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。
因此,基线可以作为项目的一个___检查点__。
15. 软件工程包括软件开发技术和__软件工程管理__两大部分内容。
16、开发过程管理包括项目计划、控制和___任务管理__等。
17、CASE是多年来在软件开发管理、软件开发方法、软件开发环境和__软件工具__等方面研究和发展的产物。
18、数据字典中有四类条目,分别是___数据流、数据项、数据存储、基本加工。
19、用于描述基本加工的小说明的三种描述工具是结构化语言、判定表、判定树_。
20、子类只继承一个父类的属性和操作,这称为__单重继承__。
21、McCabe复杂性度量又称__环路度量_。
22、喷泉模型是一种以用户需求为动力,以__对象__为驱动的模型。
《软件工程》形成性考核章节答案(全)
《软件工程》形成性考核答案第一、二章一、填空题1. 软件工程学的内容可包括(理论)、结构、(方法)、(工具)、环境、管理、规范等。
2. 软件生存周期一般可分为问题定义、(可行性研究)、(需求分析)、设计、(编码)、测试、运行与维护阶段。
3. 可行性研究的目的是(用最小的代价在尽可能短的时间内确定问题是否能够解决)。
4. 系统流程图是(描绘物理系统)的传统工具。
5. 在可行性研究中,(技术可行性)是系统开发过程中难度最大,最重要的一个环节。
二、判断题1. 软件工程采用的生存周期方法就是从时间角度对软件的开发和维护这个复杂问题进行分解,将软件生存的时期分为若干阶段。
(√)2. 螺旋模型是利用笛卡尔坐标的四个象限上分别代表四个方面的活动来表示。
(√)3. 原型模型适用于嵌入式软件。
(╳)4. 面向对象技术是构件组装模型的基础。
(√)5. 在可行性研究中最难决断和最关键的问题是经济可行性。
(╳)6. 系统流程图表达的是部件的信息流程,还表示对信息进行加工处理的控制过程。
(╳)7. 自底向上成本估计不是从整体开始,而是从任务单元开始。
(√)三、单项选择题1. 下列哪个阶段不是软件生存期三个阶段中的内容( C )。
A.计划阶段B.开发阶段C.编码阶段D.维护阶段2. 下列关于瀑布模型的描述正确的是( C )。
A. 瀑布模型的核心是按照软件开发的时间顺序将问题简化。
B. 瀑布模型具有良好的灵活性。
C. 瀑布模型采用结构化的分析与设计方法,将逻辑实现与物理实现分开。
D. 利用瀑布模型,如果发现问题修改的代价很低。
四、简答题1. 软件的定义与特点。
参考答案:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据结构及其相关文档的完整集合。
它包括三个方面的内容:⑴程序:在运行时,能提供所希望的功能和性能的指令集。
⑵数据结构:使程序能够正确运行的数据结构。
⑶文档:描述程序研制过程、方法及使用的图文材料。
软件产品具有以下一些特性:①软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。
软件工程课后习题答案第五版
软件工程课后习题答案第五版《软件工程导论》课后习题答案第一章软件工程概论1.什么是软件危机?软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
这些问题表现在以下几个方面:(1)用户对开发出的软件很难满意。
(2)软件产品的质量往往靠不住。
(3)一般软件很难维护。
(4)软件生产效率很低。
(5)软件开发成本越来越大。
(6)软件成本与开发进度难以估计。
- (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。
2.为什么会产生软件危机?(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。
造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。
(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。
(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。
3.怎样克服软件危机?(1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。
在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。
(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。
(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。
将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。
- 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
4.构成软件项目的最终产品:应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。
5.什么是软件生存周期?软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。
软件工程导论复习题
1.软件工程学概述一、填空题1.软件=()+()。
2.软件生存周期一般可分为系统工程、()、()、()、测试、运行与维护阶段。
3.在瀑布模型中,将软件开发划分为若干个时期,软件项目的可行性研究一般被归属于()。
4.根据软件工程学的七项基本原则,DOS中把标准输入、输出设备视为文件,这一思想体现了软件工程学的()原则。
二、判断题1.软件是一种逻辑实体,而不是具体的物理实体。
()2.软件工程是开发、运行、维护和修复软件的系统方法。
()3.螺旋模型是利用笛卡尔坐标的四个象限分别代表四个方面的活动来表示,()4.在软件开发中,采用原型系统策略的主要困难是时间问题。
()三、选择题1.软件工程的概念是哪年提出的()。
A.1988B.1968C.1948D.19282.软件文档是软件工程实施中的重要成分,它不仅是软件开发各阶段的重要依据而且也影响软件的()。
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.软件是一种()。
第一次作业答案
第一章《软件工程概述》作业答案一、名词解释1.软件软件是计算机程序以及开发、使用和维护程序所需要的所有文档。
软件是包括程序、数据及其相关文档的完整集合。
2.软件危机软件生产的进度、数量、质量、成本满足不了社会对软件的需求量和希望的现象,称为“软件危机”。
软件工程IEEE[IEE93]:软件工程是将系统的、规范的、可度量的工程化方法应用于软件开发、运行和维护的全过程及上述方法的研究。
4.软件生存周期软件生存周期是指一个软件从提出开发要求开始直到不再使用(报废)为止的整个时期。
5.软件过程模型软件过程指为获得高质量软件所需要完成的一系列任务以及完成这些任务的工作步骤。
过程还规定了运用的方法的顺序、应该交付的文档资料、为保证软件质量和协调变化所需要采取的管理措施、任务完成的标志等。
软件过程模型也叫软件生存期模型、软件工程范型,是软件过程的一种抽象表示。
二、填空题1、在信息处理和计算机领域内,一般认为软件是程序、数据和文档的集合。
2、软件生产的发展经历了程序设计时代、程序系统时代和软件工程时代,各时代的生产方式分别是个体、作方式和工程化。
3、软件生存周期的8个阶段分别是问题定义、可行性研究、需求分析、概要设计、详细设计、编码与模块测试、综合测试、维护。
4、软件工程是利用工程化的原理和方法来进行开发、维护和管理软件的一门学科。
5、描述软件开发过程中各种活动如何执行的模型称为软件过程模型。
6、瀑布模型不适应需求可变的软件开发,只有到最后才能见到整个软件系统。
7、软件产品的生产主要是研制,软件产品的成本主要体现在人力成本上。
8、软件工程面临的问题有软件费用、可靠性、可维护性、生产率。
三、单项选择题1、软件文档是( C )。
A.程序B.工具C.文书和资料D.数据2、软件是一种( B )性工业产品A.理论B.知识(或逻辑)C.消耗D.体力3、与计算机科学的理论研究不同,软件工程是一门( B )的学科。
A.理论性 B.工程性 C.原理性 D.心理性4、软件工程与计算机科学的性质不同,软件工程着重于( B )A.理论研究 B.建造软件系统 C.原理探讨 D.原理的理论5、软件工程学科出现的直接原因是( C )。
软件工程第1章习题
软件工程第1章例题分析与解答一、填空题1.软件与物质产品有很大的区别,软件是一种____逻辑___产品。
2.软件工程是一门综合性交叉学科,计算机科学着重于理论和原理,软件工程着重于___建造一个软件系统____。
3.概要设计主要是把各项功能需求转换成系统的__体系结构______。
4.最基本、应用广泛、以文档为驱动、适用于开发功能明确的软件项目生存期模型是__瀑布模型_____。
5.简单实用、应用广泛、技术成熟的开发方法是__结构化方法______。
二、选择题1.同一软件的大量软件产品的生产主要是通过( B )而得到。
A.研究B.复制C.开发D.研制2.作坊式小团体合作生产方式的时代是( C )时代。
A.程序设计B.软件生产自动化C.程序系统D.软件工程3.软件工程与计算机科学性质不同,软件工程着重于( C )。
A.理论研究B.原理探讨C.建造软件系统D.原理的理论4.将每个模块的控制结构转换成计算机可接受的程序代码是( A )阶段的任务。
A.编码B.需求分析C.详细设计D.测试5.软件生存周期中时间最长的是( D )阶段。
A.需求分析B.概要设计C.测试D.维护一、填空题答案1.逻辑2.建造一个软件系统3.体系结构4.瀑布模型5.结构化方法二、选择题答案1.B2.C3.C4.A5.D第1章自测题及参考答案一、名称解释1.软件2.文档3.软件工程4.软件生存周期5.软件工程过程6.软件生存周期模型7.软件开发方法8.软件工具二、填空题1.构成一个完整计算机系统的两部分是硬件与_____软件___。
2.程序设计时代的生产方式是___个体手工劳动_____。
3.软件工程涉及到几个学科,它是一门__综合性交叉___学科。
4.软件开发划分的各阶段任务尽可能独立,同一阶段任务性质尽可能_____相同___。
5.将软件生存周期各个活动规定为依线性顺序联接的若干阶段的模型是_瀑布_______模型。
6.喷泉模型是一种以用户需求为动力,以____对象___为驱动的模型。
软件工程填空题20分
1.结构化分析方法的分析策略是___自顶向下逐步求精_______。
2.衡量模块独立性的两个定性标准是_耦合性与内聚性________。
3.软件集成测试的方法主要有两种,它们是___渐增式与非渐增式测试_______。
4.可行性研究的目的是用最小的代价在尽可能短的时间内确定该软件项目_是否值得开发_。
5.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是__功能需求_。
6.软件生存周期中时间最长、花费的精力和费用最多的一个阶段是__维护_____阶段。
7. 计算机辅助软件工程这一术语的英文缩写为_CASE_______。
8.McCall提出的软件质量模型包括______11_____个软件质量特性。
9.软件结构是以____模块_______为基础而组成的一种控制层次结构。
10.软件概要设计的主要任务就是__软件结构的设计______。
11.结构化程序设计方法是使用___三种基本控制结构(条件\控制\循环)____构造程序。
12.在建立对象的功能模型时,使用的数据流图中包含有处理、数据流、动作对象和__数据存储对象_1.增量模型适合于___软件需求_____不明确、设计方案有一定风险的软件项目。
2.结构化分析方法的分析策略是____自顶向下逐步求精______。
3.可行性研究实质上是要在较高层次上以较抽象的方式进行_____需求分析和设计______的过程。
4.衡量模块独立性的两个定性标准是____耦合性和内聚性_____。
5.Jackson方法是一种面向_____数据结构_________的设计方法。
6.软件集成测试的方法主要有两种,它们是____渐增式和非渐增式测试______。
7.维护阶段是软件生存周期中花费精力和费用_____最多________的阶段。
8.继承性是子类自动共享其父类的________数据结构和方法______机制。
9.在面向对象方法中,人们常用状态图描述类中对象的_______动态行为____。
软件工程习题答案
软件⼯程习题答案第1章软件⼯程概述参考答案⼀. 选择题1. B2. A3. B4. B5. D6. B7. D8. A9. D⼆. 填空题1. 设计编码测试2. 软件费⽤可靠性可维护性可重⽤性及⽣产率等3. 计算机软件开发和维护4. 分解抽象和信息隐蔽⼀致性确定性5. 软件的总⽬标待开发软件的需求6. ⼆三7. 计划阶段开发阶段维护阶段8. 软件需求明确9. 制定计划风险分析开发实施⽤户评估三. 名词解释1. 软件的定义如下:在运⾏中能提供所希望的功能和性能的指令集,使程序能正确运⾏的数据结构,描述程序研制过程和⽅法所⽤的⽂档。
2. 软件⼯程是指导计算机软件开发和维护的⼀门学科。
3. 软件危机指的是软件开发和维护过程中遇到的⼀系列严重问题。
4. 就是从提出软件产品开始,直到该软件产品被淘汰的全过程。
5. 瀑布模型⼜称⽣存周期模型,由B.M.Boehm提出,是软件⼯程的基础模型。
其核⼼思想是按⼯序将问题化简,将功能的实现与设计分开,便于分⼯协作。
6. 螺旋模型将瀑布模型与演化模型结合起来,并且加⼊两种模型均忽略了的风险分析,弥补了两者的不⾜。
四. 简答题1. 软件既是知识产品,⼜是与汽车,建筑物⼀样的⼯业产品,此外,软件还具有类似艺术,学术那样的知识性创造和特点,软件的特点如下:软件是⼀种逻辑实体,⽽不是具体的物理实体,因⽽它具有抽象性;软件是通过⼈们的智⼒活动,把知识与技术转化成信息的⼀种产品,是在研制、开发中被创造出来的;在软件的运⾏和使⽤期间,没有硬件那样的机械磨损、⽼化问题;软件的开发和运⾏经常受到计算机系统的限制,对计算机系统有着不同程度的依赖关系;软件的开发尚未完全摆脱⼿⼯的开发⽅式;软件的开发费⽤越来越⾼,成本相当昂贵;软件的开发是⼀个复杂的过程,因⽽管理是软件开发过程中必不可少的內容。
2. 软件危机主要表现如下:产品不符合⽤户的实际需要;软件开发⽣产率提⾼的速度远远不能满⾜客观需要,软件的⽣产率远远低于硬件⽣产率和计算机应⽤的增长速度,使⼈们不能充分利⽤现代计算机硬件提供的巨⼤潜⼒;软件产品的质量差;对软件开发成本和进度的估计常常不准确;软件的可维护性差;软件⽂档资料通常既不完整也不合格;软件的价格昂贵,软件成本在计算机系统总成本中所占的⽐例逐年上升。
《软件工程基础》习题集答案-2
《软件工程基础》习题集答案 -2第一章概述1.什么是软件危机,它有哪些典型表现?所谓“软件危机”就是,在计算机软件的开辟和维护过程中所遇到的一系列严重的问题,概括起来归纳为:如何开辟软件,以满足日益增长、日益复杂的需要;如何维护数量不断膨胀的已有软件。
软件危机的典型表现主要有: a.开辟成本和进度不能准确估计b.开辟出来的软件不能满足用户的要求c.软件的可维护性差d.软件质量不可靠e.软件成本在系统中的比重逐年上升f.软件开辟生产率的提高速度不够2.简述产生软件危机的原因和解决的思路。
软件危机产生的原因一方面与软件本身的特点有关,另一方面,是与已有软件开辟、维护的方法不正确有密切关系。
解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。
即采用工程化的原则和方法组织软件开辟是摆脱软件危机的一个主要出路。
3.什么是软件工程?它有哪些本质特性?软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法进行软件开辟和维护的学科。
其实质就是用工程的概念、原理、技术和方法,结合有效的管理方法和先进的开辟技术,开辟与维护软件,以解决软件危机。
4.软件工程是如何用来消除软件危机的?软件工程是从技术和管理两个方面来研究如何更好地开辟和维护计算机软件,从源头上消除软件危机。
6.简述软件的定义。
软件=程序+数据+文档7.软件工程的目的是什么?为高质量的软件开辟提供一个科学的体系框架。
8.什么是软件工程方法学?软件工程是一种什么样的技术?包括哪三大要素?分为哪三个分支?软件工程方法学就是指在软件生命周期全过程中使用的一整套管理和开辟技术方法的集合。
目前,使用最广泛的软件工程方法学分别是传统方法学和面向对象方法学。
软件工程作为一种层次化的技术,有方法、工具和过程三大要素,并由于其涉及学科内容的极其广泛,而分为三个分支:软件开辟技术、软件项目管理技术、软件质量管理技术。
9.简述软件工程的基本原理。
软件工程有 7 条基本原理:1.严格按照软件生命周期计划进行管理 2.坚持进行阶段评审 3.实行严格的产品控制4.采用先进的程序设计技术 5.结果应能清晰的审查 6.开辟小组成员应少而精7.承认不断改进软件工程实践的必要性10.软件工程的基本开辟原则有哪些?软件工程的基本开辟原则有: 1.模块化2.抽象和信息隐蔽3.模块的高内聚和低耦合 4.确定性 5.一致性 6.完备性11.构成软件工程的基本元素有哪些?除了前面给出的软件工程三大要素,还应该包括控制和质量保证。
软件工程习题解答
第一章软件工程概论一、填空题⑴ 软件是计算机系统中与硬件相互依存的部分,它是包括(A)、(B)、及(C)的完整集合。
其中,(A)是按事先设计的功能和性能要求执行的指令序列,(B)是使程序员能够正确操纵信息的数据结构,(C)是与程序开发、维护和使用有关的图文材料。
①软件②程序③代码④硬件⑤文档⑥外设⑦数据⑧图表⑵ 开发软件时,对于提高软件开发人员工作效率至关重要的是(A)。
软件工程中描述软件生存周期的瀑布类型一般包括计划、(B)、设计、编码、测试、维护等几个阶段。
其中,设计阶段在管理上可以依次分成(C)和(D)两个步骤。
A:① 程序开发环境② 操作系统的资源管理功能③ 开发程序人员数量④ 计算机的并行处理能力B:① 需求分析②需求调查③可行性分析④问题定义C、D:① 方案设计② 代码设计③ 概要设计④ 数据设计⑤ 运行设计⑥ 详细设计⑦ 故障处理设计⑧ 软件体系结构设计⑶ 有人将软件的发展过程划分为四个阶段,第一阶段(20世纪50年代),称为程序设计的“原始时期”。
这时既没有(A),也没有(B),程序员只能用机器指令编写程序。
第二阶段(20世纪60年代),称为“基本软件期”。
出现了(A),并逐渐普及。
随着(B)的发展,编译技术也有较大的发展。
第三阶段(20世纪60年代末至70年代中期)称为“程序设计方法时代”。
这一时期,与硬件价格下降相反,软件开发费用急剧上升。
人们提出了(C)和(D)等程序设计方法,设法降低软件的开发费用。
第四阶段(20世纪70年代中期至今),称为“软件工程”时期。
软件开发技术不再仅仅是程序设计技术,而是包括了软件开发的各个阶段。
如(E)、(F)、编码、单元测试、综合测试、(G)及其整体有关的各种管理技术。
A、B、C、D:① 汇编语言② 操作系统③ 虚拟存储器概念④ 高级语言⑤ 结构化程序设计⑥ 数据库概念⑦ 固件⑧ 模块化程序设计E、F、G:① 使用和维护② 兼容性的确认③ 完整性的确认④ 设计⑤ 需求定义⑥ 图像处理二、简答题⑴ 软件工程过程有哪几种基本活动,试加以说明。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章软件工程学概述填空题1.软件工程需要解决的问题,有( )、( )、( )、( )、( )。
2.到目前为止,软件生产的发展经过了三个阶段,即( )、( )、( )。
3.计算机科学中的研究成果均可用于软件工程,但计算机科学侧重于( ),而软件工程侧重于( )。
4.软件工程要用管理科学的方法和原理进行( )。
5.软件工程是用科学知识和技术原理来( )、( )、( )软件的一门学科。
6.软件工程研究的主要内容包括软件开发技术和软件开发管理两个方面。
在软件开发技术方面,主要是研究( )、( )、( )。
在软件开发管理方面,主要是研究( )、( )、( )。
7.作为一门交叉学科,软件工程具有很强的综合性,它涉及( )、( )、( )、( )等领域。
8.软件工程要用工程科学中的观点来进行( )、( )、( )。
9.计算机程序及其说明程序的各种文档称为。
计算任务的处理对象和处理规则的描述称为( )。
有关计算机程序功能、设计、编制、使用的文字或图形资料称为( )。
10.软件工程要用( )的方法建立软件开发中的各种模型和各种算法,如可靠性模型,说明用户需求的形式化模型等。
11.软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。
通常,软件生存周期包括( )、( )、( )、( ) 、( )、( )、( )等活动,可以将这些活动以适当方式分配到不同阶段去完成。
12.开发软件工具的主要目的是为了提高软件生产率和改善( )。
13.一个组织中的CASE系统遵循从初始需求到完全废弃这一生存期,CASE生存期各步骤如下:(1)CASE( );(2)CASE( )(3)CASE( )(4)CASE( );(5)CASE( );(6)( )。
14.软件开发环境是相关的一组( )的集合,它支持一定的软件开发方法或按照一定的软件开发模型组织而成的。
15.环境集成主要有( )、界面集成、控制集成、( )、过程集成。
16.CASE可以辅助软件开发生命周期各阶段进行软件开发,它是一组( )。
17 CASE是多年来在软件开发管理、软件开发方法、软件开发环境的( )等方面研究和发展的产物。
18.基于方法的环境可分为两大类:( )与( )。
19. CASE这一术语的英文是( )。
20.需求分析工具主要包括:正文和数据流图工具、( )工具、面向对象的分析工具。
21.软件开发环境就是围绕着软件开发的一定目标而组织在一起的相关一组( )的有机集合。
22.软件开发环境的主要目标是提高( )、( )和降低软件成本。
23.软件开发环境按解决的问题分类,可分为:( )环境、( )环境、( )环境。
24.CASE系统所涉及到的技术有两类:一类是支持( )的技术;另一类是支持( ) 的技术。
从CASE系统产生方式来看,还有一种特殊的CASE技术,即( ),它是生成CASE系统的生成器所采用的技术。
25.根据支持的过程,CASE工具可分为( )、( )、( )26.软件开发环境是与软件生存期、( ) 和软件处理模型紧密相关的。
27.软件工具通常由工具、工具接口和( )三部分构成。
28.产品管理包括( )和( ) 。
29.软件开发环境的目标是提高( )和( )。
因而理想的软件开发环境应是能支持整个软件生存期阶段的开发活动,并能支持各种处理模型的( ),同时实现这些开发方法的( )。
30.( ) 是指为支持计算机软件的开发、维护、模拟、移植或管理而研制的程序系统。
31.软件工具的发展特点是软件工具由单个工具向( )方向发展。
重视( )的设计,不断地采用新理论和新技术。
软件工具的商品化推动了软件产业的发展,而软件产业的发展又增加了对软件工具的需求,促进了软件工具的商品化进程。
32.Reifer和Trattner将软件工具分为:( )、( ) 、( ) 、( ) 、( )和( )等六类。
33.软件开发环境是相关的一组( )集合,它支持一定的( )或按照一定的( )组织而成的。
34.软件工具通过( )与其他工具、操作系统或网络操作系统以及通信接口、环境信息库接口等进行交互作用。
当工具需要与用户进行交互作用时则通过( )。
35.按软件开发环境的演变趋向分类,可分为( )的环境、( )环境、( )的环境。
36.( )是指工具运行在相同的硬件/操作系统平台上。
( )是指工具使用共享数据模型来操作。
( )是指工具提供相同的用户界面。
37. 1990年WaSserman讨论软件工程环境的集成时,提出一个五级模型。
即( )、( )、( )、( )和( )。
38. 1993年,Fuggetta根据CASE系统对软件过程的支持范围,提出CASE系统可分为:支持( )的工具、工作台支持( )活动、环境支持( )三类。
39.一个CASE工作台是一组( ),支持对象设计、实现或测试等特定的软件开发阶段。
工作台工具能通过( )、( )或( )来集成。
40.在CASE集成中,( )集成支持工作台或环境中一个工具对系统中其他工具的访问。
( )集成是指CASE系统嵌入了关于过程活动、阶段、约束和支持这些活动所需的工具静知识。
41.支持分析和设计的工作台有时称为( )CASE工具,它们支持软件开发的早期过翟。
程序设计工作台则称为( )CASE工具。
42.表示集成或用户界面集成是指一个系统中的工具使用共同的风格,以及采用共同的吊产变互标准集,工其有一个相似的外观。
目前,表示集成有如下三种不同级别:( )、( )和( )。
43.数据集成指不同软件工程能相互交换数据。
因而,一个工具的结果能作为另一个工具的输入。
有三个级别的数据集成:( )、( )和( )。
44.对CASE工具分类的标准可分为( )、( )和( )。
45.开发过程管理包括( )、( )等。
46.根据支持的范围,CASE工具可分为( )、( )和( )工具。
47.CASE把( )、( )和( )集成到一个统一且一致的框架中,并且吸收了CAD(计算机辅助设计)、软件工程、操作系统、数据库、网络和其他计算机领域的原理和技术。
48.软件工程过程包含了( )、( )、( )、( )、( )、( )、( )七个过程。
49.描述软件开发过程中各种活动如何执行的模型称为 ( ) 模型。
50.从软件工程诞生以来,已经提出了多种软件开发方法,如( )、( )、( )、( ),它们对软件工程及软件产业的发展起到了不可估量的作用。
51.结构化方法由( )、( )、( )构成。
它是一种面向( )开发方法。
52.( )模型是一种非整体开发的模型。
软件在该模型中是“逐渐”开发出来的,开发出一部分,向用户展示一部分,可让用户及早看到部分软件,及早发现问题。
或者先开发一个“原型”软件,完成部分主要功能,展示给用户并征求意见,然后逐步完善,最终获得满意的软件产品。
53.喷泉模型是一种以( )为动力,以( )作为驱动的模型,适合于( )的开发方法。
它克服了瀑布模型不支持软件重用和多项开发活动集成的局限性。
喷泉模型使开发过程具有( )和( )。
54.变换模型是一种适合于( )方法的模型。
从( )开始,经过一系列( ),最终得到系统的目标程序。
55.结构化方法总的指导思想是( )。
它的基本原则是功能的( )与( )。
它是软件工程中最早出现的开发方法,特别适合于( )的问题。
56.维也纳开发方法(vDM)是一种形式化的开发方法,软件的需求用严格的( )描述,然后把描述模型逐步变换成目标系统。
57.螺旋模型将( ) 模型和( ) 模型结合起来,加入了两种模型均忽略了的风险分析,弥补了这两种模型的不足。
58.螺旋模型将开发过程分为几个螺旋周期,在每个螺旋周期内分为四个工作步骤。
第一步( ),确定目标,选定实施方案,明确开发限制条件。
第二步( ),分析所选方案,识别风险,通过原型消除风险。
第三步( ),实施软件开发。
第四步( ),评价开发工作,提出修改意见,建立下一个周期的计划。
59.面向对象开发方法包括( )、( )、( )三部分。
60.Jackson方法是一种面向( )的开发方法。
61.面向对象开发方法有( )方法、( )方法和( )方法。
62.( )一般是指为了支持软件开发人员和维护活动而使用的软件。
例如项目估算工具、需求分析工具、设计工具、编码工具、测试工具和维护工具等。
63.目前有若干种软件生存周期模型,例如( )模型、( )模型、( )模型、( )模型、( )模型和( )模型。
64.瀑布模型是将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。
它包括( )、( )、( )、( )、( )、( )、( )、( ),它规定了由前至后、相互衔接的固定次序,如同瀑布流水,逐级下落。
65.CASE技术是( )和( )的结合,它不同于以前的软件技术,因为它强调了解决整个软件开发过程度效率问题,而不是解决个别阶段的问题。
由于跨越了软件生存周期各个阶段,着眼于软件分析和设计以及实现和维护的自动化,从软件生存周期的两端解决了生产率问题。
66.JSP(Jackson Structure Programming)方法首先描述问题的输入、输出数据结构,分析其对应性,然后推出相应的程序结构,从而给出问题的( )。
67.简单实用、应用广泛、技术成熟的开发方法是( )。
68.增量构造模型是指,在前面的开发阶段按( )进行( ),后面的开发阶段按( )开发。
69.增量模型是在项目的开发过程中以一系列的( )开发系统。
增量方式包括( )和( )。
70.演化提交模型中,项目开发各阶段都是用( )开发的。
71.构造原型的技术主要有( )、( )、( )、( )。
72.根据原型的目的、方式及内容的取舍不同,原型特征可分为( )、( )、( )、( )四类。
73.增量构造模型是在瀑布模型基础上,对一些阶段进行( ),对另一些阶段进行( )o ’74.增量开发是指在项目开发周期内,以一定的时间间隔( );增量提交是指在项目开发周期内,以一定的时间间隔( )向用户提交( )及( )。
75.原型模型又称( ),它是( )的另一种形式。
76.对于实验型,用原型过程来代替( )阶段,即在( )阶段引入原型,快速分析( ),快速构造原型,通过运行,考察设计方案的( ),原型成为设计的( )或( )的一部分。
77.原型开发步骤包括( )、( )、( )、( )、( )。
78.快速原型的思想是在研究( )的方法和技术中产生的。
79.瀑布模型本质上是一种( ) 顺序模型。
80.对于演化型,用原型过程代替( )阶段。
这是典型的演化提交模型的形式,是在强有力的( )支持下,通过原型过程的( ),直接得到( )。
81.快速原型是利用原型辅助软件开发的一种新思想。