软件工程(本)平时作业

合集下载

中央电大《软件工程》平时作业1、2、3、4次及答案

中央电大《软件工程》平时作业1、2、3、4次及答案

软件工程第1次作业一、填空题(每空2分,共20分)二、单项选择题(将一个正确的答案代码填入括号中,每小题3分,共15分) 1.( )是用户和设计交换最频繁的方法。

A. 原型化方法B.瀑布模型方法C. 螺旋模型方法D. 构件组装模型方法2.下列哪个阶段不是软件生存期三个阶段中的内容( )。

A. 计划阶段B.开发阶段C. 编码阶段D. 维护阶段3.下列( )操作产生的副作用属于数据副作用。

A. 修改子程序B.局部变量的再定义C. 删除标识符D.修改对编辑条件的测试4.软件测试的目的( )。

A. 避免软件开发中出现的错误B.发现软件开发中出现的错误C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠性D.修改软件中出现的错误5.完成详细设计的工具不包括( )。

A.PAD图B.数据流图C.HlP()图D.程序流程图三、多项选择题(将一个以上正确的答案代码填入括号中,每小题3 分,共15分) 1.应从( )等方面研究可行性。

A. 经济可行性B.技术可行性C. 运行可行性D.法律可行性2.对于下列的数据流图的局部,有关描述中正确的是( )。

A. 该图为第一层数据流图3.需求分析阶段结束后,交出的文档中应该包括( )。

A. 数据流图B.数据字典C. 简明的算法描述D.项目的经费预算4.软件管理工作涉及到的直接对象包括( )。

A. 软件开发人员B.硬件设备C. 项目经费D.软件项目5.在软件设计中,( )耦合应尽量避免。

A. 控制B.数据C.内容 D. 标记四、判断题(正确的在括号内打上“√”,错误的打上“X”。

每小题2分,共10分)1。

软件危机是指在软件开发和维护过程中遇到的一系列严重问题。

( )2,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。

( ) 3.UML只能应用于软件系统模型的建立。

( )4.程序设计语言中应绝对禁止使用GOTO语句。

作业及参考答案.doc软件工程

作业及参考答案.doc软件工程

作业及参考答案(第一、二章)一、填空题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,4

《软件工程》作业及参考答案1,4

《软件工程》作业及参考答案——第一、二章中央电大理工部史红星(2004年09月15日)浏览人次4582一、填空题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. 软件的定义与特点。

参考答案:软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据结构及其相关文档的完整集合。

它包括三个方面的内容:⑴程序:在运行时,能提供所希望的功能和性能的指令集。

⑵数据结构:使程序能够正确运行的数据结构。

《软件工程》作业及参考答案3

《软件工程》作业及参考答案3

软件工程作业及参考答案第五、六章一、填空题1.详细设计的工具有(图形工具)、表格工具和语言工具。

2.为使用流程图描述结构华程序,限制流程图有五种基本的控制结构(顺序型)、(选择型)、(while型循环)、until循环、多情况型选择。

3.HIPO图是由一组(IPO)图和一张(HC)图组成。

4.IPO图由(输入)、处理和(输出)三个框组成。

这个图的特点是能够直观的显示三者之间的关系。

5.面向对象技术是一整套关于如何看待(软件系统)和(现实世界)的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。

面向对象方法是一种运用(对象)、(类)、(封装)、(聚合)、消息传送、多态性等概念来构造系统的软件开发方法。

6.面向对象的软件工程方法是面向对象方法在(软件工程)领域的全面应用。

7.UML的定义包括(UML语义)和(UML表示法)两个部分。

二、判断题1.详细设计是在概要设计之后进行的。

它利用概要设计的结果,对系统中的每个模块给出足够的过程性描述。

(√)2.程序设计语言中应绝对禁止使用GOTO语句。

(╳)3.PAD图在设置了五种基本的控制结构后,还允许递归调用。

(√)4.UML设定的目标之一是运用面向对象概念来构造系统模型。

(√)5.类是关于对象性质的描述,由方法和数据集成。

(√)三、简答题1.详细设计的任务是什么?参考答案:1.为每个模块确定采用的算法,选择某种适当的工具表达算法的过程,写出模块的详细过程性描述;2.确定每一模块使用的数据结构;3.确定模块接口的细节,包括对系统外部的接口和用户界面,对系统内部其它模块的接口,以及模块输入数据、输出数据及局部数据的全部细节。

4.要为每一个模块设计出一组测试用例,以便在编码阶段对模块代码(即程序)进行预定的测试,模块的测试用例是软件测试计划的重要组成部分,通常应包括输入数据,期望输出等内容。

2.根据伪码画出N-S图。

STARTIF A THENBLOCKBCEND BLOCKEND IFSTOP3.根据伪码画出N-S图。

软件工程作业及参考答案(版)

软件工程作业及参考答案(版)

软件工程作业及参考答案(最新版)-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII软件工程一、软件危机与软件工程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.质量保证② A.需求分析 B.可行性研究C总体设计 D模块化设计③ A.文档编制 B.运行维护C.测试 D.验收8.软件开发中常采用的生命周期方法,由于其特征而一般称其为()。

A.层次模型B.瀑布模型 C.螺旋模型 D.对象模型9.描述软件生存周期的瀑布模型包括计划、(A)、设计、编码、测试、维护等阶段。

其中,设计阶段又可以分成(B)和(C)两个步骤。

A:①需求分析②可行性研究③需求调查④问题定义B,C:①方案设计②代码设计③概要(总体)设计④数据设计⑤详细设计10.什么是软件危机软件危机产生的原因11.生命周期阶段的划分每个阶段的任务二、可行性研究1.可行性研究的任务步骤对于各种可能的方案,从哪几个方面进行可行性研究参考答案:任务:在尽可能短的时间内确定该软件项目是否能够开发,是否值得开发。

软件工程作业题(含答案)

软件工程作业题(含答案)

软件工程作业题简答题1、什么叫软件?软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合2、什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?软件危机是指在计算机软件开发与维护过程中所遇到的一系列严重问题。

包括两点:(1)如何开发软件,以满足对软件日益增长的需求;(2)如何维护数量不断膨胀的已有软件。

软件开发和维护过程中存在的许多严重问题,一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。

具体表现如下:(1)软件是逻辑部件而不是物理部件。

(2)软件的规模越来越大,复杂性越来越大。

(3)轻视需求分析的重要性,轻视软件维护的错误观点和方法。

3、什么叫软件工程?1968年在第一届NATO会议上的早期定义:“建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法”。

1993年IEEE的定义:“①软件工程是:把系统的、规范的、可度量的途径应用于软件开发、运行和维护过程,也就是把工程应用于软件;②进而研究①实现的途径”。

我们国家最近定义:软件工程是指导计算机软件开发和维护的工程学科。

它采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

4、两种软件工程方法学开发软件时要建立哪些模型?软件工程方法学包括:传统方法学和面向对象方法学。

常用的开发模型有:瀑布模型(需求稳定,而且可以预先指定)原型模型(需求模糊或者随时间变化)增量模型(分析员先作出需求分析和概要设计,用户参与逐步完善)螺旋模型(将瀑布模型与原型化模型结合起来,并加入了风险分析)喷泉模型(使开发过程具有迭代性和无间隙性)5、软件过程模型有哪些?简述它们的特点。

过程模型分为五大类:1.管理过程模型。

2.瀑布模型(又称为生命周期模型)。

3.增量过程模型:包括增量模型,,RAD模型。

4.烟花过程模型:包括原型开发模型,螺旋模型,协同开发模型。

(完整版)《软件工程》作业及答案.

(完整版)《软件工程》作业及答案.

《软件工程》作业及答案1-1 什么是软件危机?它有哪些典型表现?为什么会出现软件危机?答:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

概括地说,软件危机包含下述两方面的问题:如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。

软件危机典型表现:对软件开发成本和进度的估计常常很不准确。

用户对“已完成的”软件系统不满意的现象经常发生。

软件产品的质量往往靠不住。

软件常常是不可维护的。

软件通常没有适当的文档资料。

软件成本在计算机系统总成本中所占的比例逐年上升。

软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。

产生软件危机的原因:一方面与软件本身的特点有关,另一方面也和软件开发与维护的方法不正确有关。

软件不同于硬件,它是计算机系统中的逻辑部件而不是物理部件。

管理和控制软件开发过程相当困难。

软件是规模庞大,而且程序复杂性将随着程序规模的增加而呈指数上升。

目前相当多的软件专业人员对软件开发和维护还有不省糊涂观念,在实践过程中或多或少地采用了错误的方法和技术,这是使软件问题发展成软件危机的主要原因。

1-2 假设你是一家软件公司的总工程师,当你把图1.1给手下的软件工程师们观看,告诉他们及早发现并改正错误的重要性时,有人不同意你的观点,认为要求在错误进入软件之前就清除它们是不现实的,并举例说:“如果一个故障是编码错误造成的,那么,一个人怎么能在设计阶段清除它呢?”你怎么反驳他?1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?答:软件工程是指导计算机软件开发和维护的一门工程学科。

采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

软件工程本质特性:1、软件工程关注于大型程序的构造;2、软件工程的中心课题是控制复杂性;3、软件经常变化;4、开发软件的效率非常重要;5、和谐地合作是开发软件的关键;6、软件必须有效地支持它的用户;7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人创造产品。

电大软件工程本科形成性考核册及答案

电大软件工程本科形成性考核册及答案

软件工程(本)作业1 Array(第1~4章)一、选择题:1.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(C)。

A.软件工程B.软件周期C.软件危机D.软件产生2.瀑布模型本质上是一种(A )模型。

A.线性顺序B.顺序迭代C.线性迭代D.早期产品3.瀑布模型存在的问题是(B )。

A.用户容易参与开发 B.缺乏灵活性C.用户与开发者易沟通 D.适用可变需求4.螺旋模型是一种将瀑布模型和(A)结合起来的软件开发模型。

A.增量模型B.专家系统C.喷泉模型D.变换模型5.原型化方法是用户和设计者之间执行的一种交互构成,适用于(A)系统。

A.需求不确定性高的 B.需求确定的C.管理信息 D.实时6.下列有关软件工程的标准,属于国际标准的是(D )A.GBB.DINC.ISOD.IEEE7.结构化方法是一种基于(D)的方法。

A.数据结构B.程序结构C.算法D.数据流8.软件可行性研究实质上是要进行一次( A)需求分析、设计过程。

A、简化、压缩的B、详细的C、彻底的D、深入的9.可行性研究的目的是(D)A、分析开发系统的必要性B、确定系统建设的方案C、分析系统风险D、确定是否值得开发系统10.设年利率为i,现存入p元,不计复利,n年后可得钱数为(C)。

A、P×(1+i*n)B、P× (i+1)*nC、p×(1+i)nD、p×(i+n)11.可行性研究是在(A)之前A、系统开发B、测试C、试运行D、集成测试12.可行性研究需要的时间长短取决于系统的规模,一般来说,可行性研究的成本只是预期总成本的(C)。

A、1%B、20%C、8%D、50%13.我国正式颁布实施的(B)对计算机病毒的定义具有法律性、权威性。

A.《计算机软件保护条例》B.《中华人民共和国计算机信息系统安全保护条例》C.《中华人民共和国著作权法》D.《计算机病毒防治管理办法》14.效率是一个性能要求,因此应当在(B)阶段规定?A、可行性分析B、需求分析C、概要设计D、详细设计15.需求规格说明书的作用不包括(D)A、软件验收的依据B、用户与开发人员对软件要做什么的共同理解C、软件可行性研究的依据D、软件设计的依据16.数据字典是用来定义(D)中的各个成份的具体含义的。

中央电大《软件工程》平时作业1、2、3、4次及答案

中央电大《软件工程》平时作业1、2、3、4次及答案

软件工程第1次作业一、填空题(每空2分,共20分)二、单项选择题(将一个正确的答案代码填入括号中,每小题3分,共15分) 1.( )是用户和设计交换最频繁的方法。

A. 原型化方法B.瀑布模型方法C. 螺旋模型方法D. 构件组装模型方法2.下列哪个阶段不是软件生存期三个阶段中的内容( )。

A. 计划阶段B.开发阶段C. 编码阶段D. 维护阶段3.下列( )操作产生的副作用属于数据副作用。

A. 修改子程序B.局部变量的再定义C. 删除标识符D.修改对编辑条件的测试4.软件测试的目的( )。

A. 避免软件开发中出现的错误B.发现软件开发中出现的错误C.尽可能发现并排除软件中潜藏的错误,提高软件的可靠性D.修改软件中出现的错误5.完成详细设计的工具不包括( )。

A.PAD图B.数据流图C.HlP()图D.程序流程图三、多项选择题(将一个以上正确的答案代码填入括号中,每小题3 分,共15分) 1.应从( )等方面研究可行性。

A. 经济可行性B.技术可行性C. 运行可行性D.法律可行性2.对于下列的数据流图的局部,有关描述中正确的是( )。

A. 该图为第一层数据流图3.需求分析阶段结束后,交出的文档中应该包括( )。

A. 数据流图B.数据字典C. 简明的算法描述D.项目的经费预算4.软件管理工作涉及到的直接对象包括( )。

A. 软件开发人员B.硬件设备C. 项目经费D.软件项目5.在软件设计中,( )耦合应尽量避免。

A. 控制B.数据C.内容 D. 标记四、判断题(正确的在括号内打上“√”,错误的打上“X”。

每小题2分,共10分)1。

软件危机是指在软件开发和维护过程中遇到的一系列严重问题。

( )2,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。

( ) 3.UML只能应用于软件系统模型的建立。

( )4.程序设计语言中应绝对禁止使用GOTO语句。

软件工程作业含答案解析

软件工程作业含答案解析

软件工程第一章作业 (1)1.1什么是计算机软件?软件的特点是什么? (1)1.2 简述软件的分类,并举例说明。

(1)1.4 什么是软件工程? (1)1.5 简述软件工程的基本原则。

(1)1.6 软件生存周期分哪几个阶段?分别简述各个阶段的任务。

(1)1.9 简述各类软件过程模型的特点。

(2)1.10 敏捷软件开发的特点是什么? (2)1.12 简述敏捷软件开发的原则。

(2)第2、3章 (3)2.1简述系统工程的任务。

(3)2.2基于计算机的系统由哪些元素组成? (3)2.3简述可行性分析的任务。

(3)3.1需求工程的重要性是什么?举出身边由于需求分析失败而造成整个项目失败的例子。

(3)3.2需求工程具体包括哪些步骤?每个步骤的具体任务是什么? (3)3.3一个系统分析员应该具备哪些思想素质和基础知识?请说明理由。

(4)3.4列出在制定需求获取策略时的3种主要考虑因素。

(5)3.6举例说明一个系统的3个不同类型的非功能需求 (5)3.8软件需求分析的操作性原则和需求工程的指导性原则是什么? (5)3.9软件需求规约主要包括哪些内容?自己寻找一个实例,亲自写一个需求规约。

. 53.10需求验证应该有哪些人参加?画出一个过程模型,说明需求评审应该如何组织。

5 第4章 (5)4.1 简述软件设计阶段的基本任务 (5)4.2 软件设计与质量的关系是怎么样的? (6)4.4 简述模块、模块化及模块化设计的概念。

(6)4.6 耦合和软件可移植性的概念有何关系?举例说明自己的结论。

(6)4.7用自己的话描述信息隐蔽概念,并讨论信息隐藏与模块独立两概念之间的关系。

64.8什么是模块独立性?设计中为什么模块要独立?如何度量独立性?模块功能独立有何优点? (6)4.9软件设计规约主要包括哪些内容? (7)第5章结构化分析与设计 (7)5.1 简述数据流图的主要思想,概述使用数据流图进行需求分析的过程。

2021年《软件工程》-平时作业-华南理工大学网络教育答案

2021年《软件工程》-平时作业-华南理工大学网络教育答案

2021年《软件工程》·平时作业华南理工大学网络教育答案作业要求:以下请填写学生本人姓名和学号,完成以下作业,然后重命名文件名为学生本人姓名,以附件形式提交该文件。

学生姓名:学生学号:一、简答题1.软件工程包含两方面的内容是什么?答:软件工程包括技术和管理两方面的内容,是技术与管理紧密结合所形成的工程学科。

2.数据流图是描述数据在软件什么过程?数据流图的图像符号有那四种?答:描述数据在软件中的加工处理和流动的过程。

图像符号有:①箭头:表示数据流;②圆或椭圆:表示加工;③双杠:表示数据存储;④方框:表示数据的源点或终点3.简述模块设计的基本原则。

答:模块设计基本原则有模块化、抽象、信息隐蔽和局部化等。

由此,我们可以知道不同模块相互之间联系需要尽可能少,尽可能减少公共的变量和数据结构。

一个模块应尽可能在逻辑上独立,有完整单一的功能。

4.软件详细设计需要设计人员考虑那些?答:设计人员主要考虑:①考虑构件(模块)的功能以及需要解决的问题,这个构件(模块)在什么可以被调用,为什么需要这个构件(模块)。

②考虑实现构件(模块)的算法,包括:公式、边界和特殊条件,甚至包括参考资料、引用的出入等③考虑构件(模块)内部的数据流。

对于面向对象的构件(模块),主要考虑对象之间的关系。

5.任何程序都可由那三种基本控制结构构造。

这三种基本控制结构的共同点是什么?答:可由三种基本控制结构:顺序、选择、循环;共同点:单入口,单出口。

6.黑盒测试主要针对功能进行的测试,请说明有那些是采用黑盒技术设计测试用例的方法。

答:黑盒测试主要是针对软件的功能测试和性能测试。

方法有:边界值分析、等价类划分、规范导出法、错误猜测法、基于故障的测试方法、因果图法、决策表法、场景法等。

7.软件维护的类型主要包括那四种?答:纠错性维护,适应性维护,完善性维护,预防性维护8.软件生命周期由那三个时期组成?答:软件定义,软件开发,软件维护9.软件可靠性是指什么?答:可靠性是指在指定条件下使用时,软件产品维持规定的性能级别的能力。

软件工程作业及答案

软件工程作业及答案

《软件工程》作业及答案1-1 什么是软件危机?它有哪些经典体现?为何会出现软件危机?答: 软件危机是指在计算机软件旳开发和维护过程中所碰到旳一系列严重问题。

概括地说, 软件危机包括下述两方面旳问题: 怎样开发软件, 以满足对软件日益增长旳需求;怎样维护数量不停膨胀旳已经有软件。

软件危机经典体现:对软件开发成本和进度旳估计常常很不精确。

顾客对“已完毕旳”软件系统不满意旳现象常常发生。

软件产品旳质量往往靠不住。

软件常常是不可维护旳。

软件一般没有合适旳文档资料。

软件成本在计算机系统总成本中所占旳比例逐年上升。

软件开发生产率提高旳速度, 远远跟不上计算机应用迅速普及深入旳趋势。

产生软件危机旳原因: 首先与软件自身旳特点有关, 另首先也和软件开发与维护旳措施不对旳有关。

软件不一样于硬件, 它是计算机系统中旳逻辑部件而不是物理部件。

管理和控制软件开发过程相称困难。

软件是规模庞大, 并且程序复杂性将伴随程序规模旳增长而呈指数上升。

目前相称多旳软件专业人员对软件开发和维护尚有不省糊涂观念, 在实践过程中或多或少地采用了错误旳措施和技术, 这是使软件问题发展成软件危机旳重要原因。

1-2 假设你是一家软件企业旳总工程师, 当你把图1.1给手下旳软件工程师们观看, 告诉他们及早发现并改正错误旳重要性时, 有人不一样意你旳观点, 认为规定在错误进入软件之前就清除它们是不现实旳, 并举例说:“假如一种故障是编码错误导致旳, 那么, 一种人怎么能在设计阶段清除它呢?”你怎么反驳他?1-3 什么是软件工程?它有哪些本质特性?怎样用软件工程消除软件危机?答: 软件工程是指导计算机软件开发和维护旳一门工程学科。

采用工程旳概念、原理、技术和措施来开发与维护软件, 把通过时间考验而证明对旳旳管理技术和目前可以得到旳最佳旳技术措施结合起来, 以经济地开发出高质量旳软件并有效地维护它。

软件工程本质特性: 1、软件工程关注于大型程序旳构造;2、软件工程旳中心课题是控制复杂性;3、软件常常变化;4、开发软件旳效率非常重要;5、友好地合作是开发软件旳关键;6、软件必须有效地支持它旳顾客;7、在软件工程领域中是由具有一种文化背景旳人替具有另一种文化背景旳人发明产品。

现代软件工程平时作业及答案

现代软件工程平时作业及答案

(一)名词解说1.软件2.软件危机3.数据流图4.数据词典5.变换流6.事务流7.耦合性8.内聚性9.程序设计语言(PDL)(二)填空题1. 在信息办理和计算机领域内,一般以为软件是_____、_____ 和_____ 。

2. 数据流图的基本构成部分有_____、_____、_____、_____。

3. 数据流图和数据词典共同构成了系统的_____模型,是需求规格说明书的主要构成部分。

4. 数据流图一般可分为_____和_____两类。

5. 构造化设计方法中,要把数据流图变换成软件构造,若某个加工将它的输入流分别成很多发散的数据流,形成很多加工路径,并依据输入的值选择此中一个路径来履行,这类特点的DFD称为_____数据流图。

6. PDL是描绘办理过程“_____ ”的细节,构造化语言是描绘加工“_____ ”的。

(三)选择题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. 与确认测试阶段有关的文档是( )。

软件工程作业4-5

软件工程作业4-5

软件工程作业4-5软件工程作业4-51. 简介2. 软件工程的核心概念和原则软件工程是一门涉及软件开发与维护的学科,其核心概念包括需求分析、设计、编码、和维护等。

以下是软件工程的核心原则:2.1 可靠性软件工程要求开发出高可靠性的软件系统,以确保软件在各种情况下的稳定性和可靠性。

其中的技术包括错误处理和异常处理机制的设计,以及系统的容错能力。

2.2 可维护性一旦软件系统运行在实际环境中,还需要能够方便地对其进行维护和升级。

可维护性是一个软件系统长期生存和发展的基础。

为了提高软件的可维护性,可以采取合理的软件设计和编码规范。

2.3 可扩展性随着需求的不断变化,软件系统需要能够支持新的功能和特性的添加,而不会对现有功能和特性产生不良影响。

可扩展性的设计可以提高软件系统的灵活性和适应性。

3. 软件开发过程中的重要任务在软件开发过程中,有一些重要的任务需要完成,以确保项目的成功交付。

以下是其中的一些任务:3.1 需求分析需求分析是整个软件工程过程中的第一步,它包括对项目需求的调研和分析。

需求分析的目标是明确项目的功能和要求,为后续的设计和开发工作提供基础。

3.2 设计在需求分析阶段后,需要进行软件系统的设计。

设计包括系统架构设计、模块设计、数据库设计等。

良好的设计能够提高软件系统的可维护性和可扩展性。

3.3 编码在设计完成后,进入编码阶段。

在此阶段,开发人员需要根据设计文档进行编码工作,实现项目需求。

编码过程中,需遵循编码规范,注意代码的可读性和可维护性。

3.4编码完成后,需要进行工作,以验证软件系统的正确性和稳定性。

包括单元、集成和系统等。

通过充分的,可以发现和排除潜在的问题,提高软件的质量。

3.5 维护软件系统交付后,还需要进行维护工作,包括故障修复、功能升级和性能优化等。

维护的目标是确保系统正常运行,并不断满足用户的需求。

4.。

电大计算机本科软件工程 平时作业1答案

电大计算机本科软件工程 平时作业1答案

名词解释1.信息隐蔽信息隐蔽是指在设计和确定模块时,使得一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。

2.集成测试集成测试也称组装测试或联合测试。

是指在单元测试的基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。

组装模块的方式有两种:渐增式测试和非渐增式测试。

3.多态性多态性是指相同的操作或函数、过程可作用于多种类型的对象上并获得不同结果。

不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。

4.CASECASE是一组工具和方法的集合,可以辅助软件开发生命周期各阶段进行软件开发。

CASE把软件开发技术、软件工具和软件开发方法集成到一个统一而一致的框架中,并且吸收了CAD(计算机辅助设计)、软件工程、操作系统、数据库、网络和许多其他计算机领域的原理和技术。

因而,CASE领域是一个应用、继承和综合的领域。

5.SA结构化分析方法是需求分析中使用最多的方法之一,适用于数据处理类型软件的需求分析。

基本思想是采用自顶向下,逐步分解的方法分析整个系统,有效地控制系统开发的复杂性。

简答题1.简述软件工程目标和面临的主要问题。

软件工程是一门工程性的学科,其目标主要是成功地建造一个大型软件系统。

包括:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发的软件易于移植;需要较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。

面临的主要问题是:软件费用软件可靠性软件维护软件生产率软件重用。

2.简述结构化程序设计方法的基本要点。

(1)采用自顶向下,逐步求精的程序设计方法。

(2)使用三种基本控制结构构造程序,分别是顺序,选择和循环(3)采用主程序员组的组织形式。

3.简述文档在软件工程中的作用。

(1)提高软件开发过程的能见度(2)提高开发效率(3)作为开发人员阶段工作成果和结束标志(4)记录开发过程的有关信息便于使用与维护;(5)提供软件运行、维护和培训有关资料;(6)便于用户了解软件功能、性能。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件工程》平时作业第一次作业:第一章软件工程概述1.软件是一种____A、程序B、数据C、逻辑产品D、物理产品2.软件开发的结构化生命周期方法将软件生命周期划分成A) 计划阶段、开发阶段、运行阶段 B) 计划阶段、编程阶段、测试阶段C) 总体设计、详细设计、编程调试 D) 需求分析、功能定义、系统设计3.“软件危机”产生的主要原因是____。

A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件4.判断:(1)软件开发小组的组成人员的素质应该好,而人数则不宜过多。

()(2)文档只起备忘录的作用,可以在软件开发完成后再整理生成。

()(3)总体设计的基本目的就是回答:“概括地说,系统应该如何实现?”这个问题。

()(4)没有Do-case、Do-until形结构,就不能实现某些结构化程序,从而降低了程序的运行效率。

()(5) 文档是影响软件可维护性的决定因素。

()5.软件工程的结构化生命周期方法中,一般将软件设计阶段再划分为____、_____两个阶段。

6.概念:软件工程、、软件生存周期7.什么是软件危机?为什么会发生软件危机?怎样挽救软件危机?8.什么是软件工程?软件工程的要素是什么?第三章软件需求分析1.原型化方法是用户和设计者之间执行的一种交互过程,适用于__A__系统,它从用户界面设计开始,首先形成__B__,用户__C__并就__D__提出意见。

它是一种__E__型的设计过程。

供选择的答案:A:①需求不确定性高的②需求确定的③管理信息④决策支持B:①用户界面使用手册②界面需求分析说明书③系统界面原型④完善的用户界面C:①改进界面的设计②使用和不使用那种编程语言③程序的结构④运行界面原型D:①同意什么和不同意什么②使用和不使用那种编程语言③程序的结构④执行速度是否满足要求E:①自外向内②自顶向下③自内向外④自底向上2.需求分析最终结果是产生____A、项目开发计划B、需求规格说明书C、设计说明书D、可行性分析报告3.软件计划需经过___________、_____________两个阶段4.结构化分析方法以数据流图、____和加工说明等描述工具,既用直观的图和简洁的语言来描述软件系统模型。

A) DFD图 B) PAD图 C) IPO图 D) 数据字典5.结构化分析方法最后提供的文档是软件的A)需求规格说明书 B)加工说明书 C)可行性分析报告 D)结构说明书6.软件需求分析时期的任务是:A、系统做什么B、系统可不可以做C、系统怎样做7.概念:原型8.软件需求分析是软件工程过程之中交换意见最频繁的步骤,为什么交换意见的途径会经常阻塞?9.讨论并描述系统分析员应该具备的主要知识结构和基本素质。

软件开发人员和用户分别担任系统分析员的优势和缺陷何在?第四章软件设计1.从下列关于模块化程序设计的叙述中选出5条正确的叙述。

(1) 程序设计比较方便,但比较难以维护。

(2) 便于由多个人分工编制大型程序。

(3) 软件的功能便于扩充。

(4) 程序易于理解,也便于排错。

(5) 在主存储器能够容纳得下的前提下,应使模块尽可能大,以便减少模块的个数。

(6) 模块之间的接口叫做数据文件。

(7) 只要模块之间的接口关系不变,各模块内部实现细节的修改将不会影响到别的模块。

(8) 模块间的单向调用关系叫做模块的层次结构。

(9) 模块越小,模块化的优点越明显。

一般来说,模块的大小都在10行以下。

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) 有规则GOTO 7.信息隐蔽的概念与下述哪一种概念直接相关?A)软件结构定义 B)模块独立性 C)模块类型划分 D)模块耦合度8.软件设计一般分为总体设计和详细设计,它们之间的关系是A) 全局和局部 B) 抽象和具体C) 总体和层次 D) 功能和结构9.概念:耦合、内聚10.结构化设计的3种基本程序结构是什么?各有什么特点?11.试述模块凝聚和模块耦合的基本概念以及引入这两个概念的目的。

12.试说明划分模块原则和软件设计总的目的关系?信息隐蔽原则与模块独立性原则的关系?第二次作业:第七章程序编码1.源程序的版面文档要求应有变量说明,适当注释和____A) 框图B) 统一书写格式C) 修改记录D) 编程日期2.从下列叙述中选出5条符合程序设计风格指导原则的叙述。

(1)嵌套的重数应加以限制。

(2)尽量多使用临时变量。

(3)不滥用语言特色。

(4)不用可以省略的括号。

(5)使用有意义的变量名。

(6)应尽可能把程序编得短些。

(7)把常见的局部优化工作留给编译程序去做(8)注解越少越好(9)程序的格式应该有助于读者理解程序(10)应该尽可能地多用GOTO语句3.从下列叙述中选出5条关于好的程序设计风格的正确叙述。

(1)使用括号以改善表达式的清晰性。

(2)对递归定义的数据结构不要使用递归过程。

(3)尽可能地对程序代码进行优化。

(4)不要修补不好的程序,要重新写。

(5)不要进行浮点数的相等比较。

(6)应该尽可能多地输出中间结果。

(7)利用数据类型对数据值进行防范。

(8)用计数方法而不是用文件结束符或输入序列结束符来判别输入的结束。

(9)程序中的注释是可有可无的。

(10)使用有意义的标识符。

4.软件开发过程中所使用的资源一般包括______、软件资源和硬件资源。

5.软件开发一般都被划分为独立的阶段,并完成不同的任务,各阶段划分时,其占用时间相对较少,而又可能占用人力最多的阶段往往是______。

6.概念:程序复杂性、7.结构化程序设计有时被错误地称为“无GOTO语句”的程序设计,请说明为什么会出现在这样的说法,并讨论环绕着这个问题的一些争论。

8.根据你自己的经验,总结编程应该遵循的风格,并说明为什么如此即能增加代码的可读性和可理解性。

9.根据198页的公式V(G)=m-n+2,若给出程序流程图,应会画出程序图,并计算出其环路复杂度。

第八章软件测试1.软件开发时,一个错误发现得越晚,为改正它所付出的代价就____ A) 越大B) 越小 C) 越不可捉摸D) 越接近平均水平2.软件测试的目的是__A__。

为了提高软件测试的效率,应该__B__。

使用白盒测试方法时,确定测试数据应该根据__C__和指定的覆盖标准。

与测试数据无关的文档是__D__。

软件的集成测试工作最好由__E__承担,以提高集成测试的效果。

可供选择的答案:A:①评价软件的质量②发现软件的错误③找出软件中的所有错误④证明软件是正确的B:①随机地选取测试数据②取一切可能的输入数据作为测试数据③在完成编码以后制定软件的测试计划④选择发现错误的可能性大的数据作为测试数据C:①程序的内部逻辑②程序的复杂程度③使用说明书④程序的功能D:①该软件的设计人员②程序的复杂程度③源程序④项目开发计划E:①该软件的设计人员②该软件开发组的负责人③该软件的编程人员④不属于该软件开发组的软件设计人员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.从下列叙述中选出5条关于软件测试的正确的叙述:(1)为了使得软件容易测试,应该使用高级的程序设计语言编制程序。

(2)软件测试是一个程序的执行过程,目的是为了发现软件中隐藏的错误。

(3)如果程序中连锁式连接了8个判定(IF)结构,则程序中总的路径数达28。

(4)白盒测试仅仅与程序的内部结构有关,完全可以不考虑程序的功能要求。

(5)为了快速完成集成测试,采用一次性继承方式是适宜的。

(6)对一批模块进行测试,发现错误多的模块中残留的错误将比其它的模块少。

(7)好的测试用例应能证明软件是正确的。

(8)边界值分析方法是取输入/输出等价类的边界值作为测试用例。

(9)等价类划分方法考虑了各等价类之间取值的组合情况下可能的结果。

(10)判定覆盖法可能查不出在判定中逻辑运算符使用有误时产生的错误。

9.概念:软件测试、白盒法、黑盒法10.为什么说在确认测试阶段,如果发现对用户需求理解的错误,要修改就要付出极大的代价?11.根据198页的公式,若给出程序流程图,则画出程序图,计算出其环路复杂度,并找出基本路径集。

第三次作业:第九章面向对象的软件工程1.OMT是一种对象建模技术,它定义了三种模型,它们分别是__A__模型,__B__模型和__C__模型。

其中,__A__模型描述了系统中对象的静态结构,以及对象之间的联系:__B__模型描述系统中与时间和操作顺序有关的系统特征,表示瞬时的行为上的系统的“控制”特征,通常可用__D__来表示;__C__模型描述了与值的变换有关的系统特征,通常可用__E__表示。

供选择的答案:A:①对象②功能③ER④静态面向对象的程序设计一般依赖于程序设计语言,为什么?B:①控制②时序③动态④实时C:①对象②功能③变换④计算D:①类图②状态图③对象图④数据流图E:①类图②状态图③对象图④数据流图2.面向对象分析的首要工作是建立____。

A.系统的功能模型B.系统的动态模型C.软件对象类定义D.问题的对象模型3.概念:对象、类4.面向对象技术的特点?第十章软件质量保证1.在软件工程中,当前用于保证软件质量的主要技术手段还是____A) 正确性证明B) 测试C) 自动程序设计 D) 符号证明2.软件的____一般由故障平均间隔时间来度量A) 可维护性B) 可靠性 C) 效率 D) 可测试性3.在软件质量因素中,软件在异常条件下仍能运行的能力称为软件的A)可靠性 B)健壮性 C)可用性 D)安全性4.现在评价软件的好坏,一般不考虑A.用户界面友好 B.程序短 C.易于修改 D.占用内存少 E.足够的可靠性5.概念:软件可靠性6.试述影响系统安全性的主要因素。

相关文档
最新文档