软件工程导论名词

软件工程导论名词
软件工程导论名词

1、什么是软件?

答:1).满足功能要求和性能的指令或计算机程序集合; 2.)处理信息的数据结构;3.)描述程序功能以及程序如何操作和使用所要求的文档;

2、软件危机定义:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。

3、软件工程定义:软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地、高效的开发出高质量的软件并有效地维护它,这就是软件工程。

4、软件生存周期:一个软件从开始计划起,到废弃不用止,称为软件的生存周期。

5、瀑布模型:即生存周期模型,是软件工程的基础模型。其核心思想是按工序将问题化简,将功能的实现与设计分开,便于分工协作。

6、增量模型:是瀑布模型的顺序特征与快速原型法德迭代特征相结合的产物。这种模型把软件看成一系列相互联系的增量,在看法过程的各次迭代中,每次完成其中的一个增量。

7、快速原型:是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。快速原型模型的第一步是快速建立一个能反映用户主要需求的原型系统,让用户在计算机上试用它,通过实践来了解目标系统的概貌

8、可行性研究:

可行性研究的目的:就是用最小代价在尽可能短的时间内确定问题是否能够解决。9、需求分析:

需求分析的任务:它的基本任务是准确地回答“系统必须做什么?”这个问题。需求分析的任务不是确定系统如何完成它的工作,而是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。

10、数据流图:是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。

(或者:数据流图:它以图形的方式反映系统的数据流程)

11、数据词典:是描述数据信息的集合,它对数据流图中的各个元素按规定格式进行详细的描述和确切的解释,是数据流图的补充工具。

12、概要设计:又称为总体设计或初步设计,总体设计过程通常由两个主要阶段组成:系统设计阶段,确定系统的具体实现方案;结构设计阶段,确定软件结构。

13、模块:是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它。

14、信息隐蔽:模块中所包括的信息不允许其它不需这些信息的模块调用

15、内聚:一个模块内部各个元素彼此结合的紧密程度的度量。

内聚性。又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语句之间、程序段之间)联系得越紧密,则它的内聚性就越高。

16、耦合:一个软件结构内不同模块之间互连程度的度量。

耦合性。也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息。

17、PAD图:是问题分析图的英文缩写,它是用结构化程序设计思想表现程序逻辑结构的图形工具。PAD图也设置了五种基本控制结构的图示,并允许递归使用。

18、PDL:过程设计语言(PDL)也称伪码,它是正文形式表示数据和处理过程的设计工具。

19、详细设计:

20、Jackson设计方法:Jackson方法是最著名的面向数据结构的设计方法,而不是面向数据流的设计方法。它是以信息驱动的,是将信息转换成软件的程序结构

21、程序设计风格:编码风格又称程序设计风格或编程风格,实际上指编程的原则。表现为五个方面:

源程序文档化:符号名的命名、程序的注释、标准的书写格式

22、软件测试目标: 测试是为了发现程序中的错误而执行程序的过程

23、黑盒测试(功能测试):如果已经知道了产品应该具有的功能,可以通过测试来检验是否每个功能都能正常使用。P151

(或者:黑盒测试——按照程序的功能测试程序,检验与程序功能有关的输入、输出与程序执行是否正确。有四种方法既等价分类法、边界值分析法、错误猜测法和因果图法)24、白盒测试(结构测试):如果知道产品内部工作过程,可以通过测试来检验产品内部动作是否按照规格说明书的规定正常进行。P151

(或者:白盒测试——按照程序内部的结构测试程序,检验程序中的每条路径是否都能按预定要求正确工作。有两种测试法既逻辑覆盖测试法和路径测试法.)

25、软件测试步骤:

1)单元测试(模块测试) 2).子系统测试3). 系统测试 4). 验收测试(确认测试)5.)平行运行 P151

26、渐增式测试方式:把下一个要测试的模块同已经测试好的那些模块结合起来进行测,测试完后再把下一个应该测试的模块结合起来进行测。P157

27、非渐增式测试方式:分别测试模块,再把所有模块按设计要求放在一起组成所要的程序。P157

28、调试:是在测试发现错误之后排除错误的过程。P176

29、软件维护的定义:所谓软件维护就是在软件已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程。

30、改正性维护:纠正开发期间未发现的遗留错误,即在程序使用期间发现的程序错误进行诊断和改正的过程;

31、适应性维护:是为了和变化的环境适当地配置而进行的修改软件的活动,是既必要又经常的维护活动。是软件适应新的运行环境而进行的工作;

32、完善性维护:满足用户在使用过程中提出增加新的功能或修改已有功能,以满足用户日益增长的需要而进行的工作;该维护活动通常占软件维护工作的大部分;

33、预防性维护:为了改善未来的可维护性或可靠性而修改软件的工作。

34、面向对象方法:

面向对象方法的出发点和基本原则:是尽可能模拟人类习惯的思维方式,使开发软件的方法与过程尽可能接近人类认识世界解决问题的方法与过程,也就是使描述问题的问题空间(也称问题域)与现实解法的解空间(也称求解域)在结构上尽可能一致。

35、对象是对问题域中某个实体的抽象,设立某个对象就反映了软件系统具有保存有关它的信息并且与它进行交互的能力。P209

面向对象方法学中的对象是由描述该对象属性的数据以及可以对这些数据施加的所有操作封装在一起构成的统一体。. P209

36、类:用于表示某些对象的共同特征(属性和操作),对象是类的实例。

(类是支持继承的抽象数据类型,而对象就是类的实例。P211)

37、属性:属性就是类中定义的数据,它是对客观世界实体所具有的性质的抽象。P212

38、方法:方法就是对象所能执行的操作,也就是类中所定义的服务。方法描述了对象执行操作的算法,响应消息的方法。P212

39、消息:就是要求某个对象执行在定义它的那个类中所定义的某个操作的规格说明书。P212

40、对象模型:对象模型表示静态的、结构化的系统的“数据”性质。它是对模拟客观世界实体的对象以及对象彼此间的关系的映射,描述了系统的静态结构。P216

41、动态模型:它是基于事件共享而相互关联的一组状态图的集合。P224

42、功能模型:功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么”,因此更直接地反映了用户对目标系统的需求。通常,功能模型由一组数据流图组成。

43、状态图:状态转换图(简称状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为。P65

44、用例图:

一幅用例图包含的模型元素有系统、行为者、用例及用例之间的关系。P224

45、民主程序员组:

46、主程序员组:

47、判定树:

判定树的优点:它的形式简单到不需要任何说明,一眼就可以看出其含义,因此易于掌握和使用。48、判定表:能够清晰地表示复杂的条件组合与应该做的动作之间的关系。

软件工程导论(第5版)课后习题答案

1-5 根据历史数据可以做出如下的假设: 对计算机存储容量的需求大致按下面公式描述的趋势逐年增加:M=4080e0.28(Y-1960) 存储器的价格按下面公式描述的趋势逐年下降:P1=0.3×0.72Y-1974(美分/位) 如果计算机字长为16位,则存储器价格下降的趋势为:P2=0.048×0.72Y-1974(美元/字) 在上列公式中Y代表年份,M是存储容量(字数),P1和P2代表价格。 基于上述假设可以比较计算机硬件和软件成本的变化趋势。要求计算: (1) 在1985年对计算机存储容量的需求估计是多少?如果字长为16位,这个存储器的价格是多少? (2) 假设在1985年一名程序员每天可开发出10条指令,程序员的平均工资是每月4000美元。如果一条指令为一个字长,计算使存储器装满程序所需用的成本。 (3) 假设在1995年存储器字长为32位,一名程序员每天可开发出30条指令,程序员的月平均工资为6000美元,重复(1)、(2)题。 ●(1)在1985年对计算机存储容量的需求,估计是 M=4080e0.28(1985-1960)=4474263(字) ●如果字长为16位,则这个存储器的价格是 ●P=0.048*0.72 1985-1974*4474263=$5789 ●(2)如果一条指令的长度为一个字,则使存储器装满程序共需4474263条指令。 ●在1985年一名程序员每天可开发出10条指令,如果每月有20个工作日,则每人 每月可开发出10×20条指令。 ●为了开发出4474263条指令以装满存储器,需要的工作量是: 4474263/200=22371(人月) ●程序员的月平均工资是4000美元,开发出4474263条指令的成本是 22371*4000=¥89484000 ●(3)在1995年对存储容量的需求估计为: M=4080E0。28(1995-1960)=73577679(字)=4080E9.8 ●如果字长为32位,则这个存储器的价格是: P=0.003*32*0.72(1995-1974)*73577679=$7127 ●如果一条指令为一个字长,则为使存储器装满程序共需73,577,679条指令。 ●在1995年一名程序员每天可开发出30条指令,每月可开发出600条指令,为了开 发出可装满整个存储器的程序,需要的工作量为 73577679/600=122629(人月) ●开发上述程序的成本为: 122629*6000=$735776790 1-6 什么是软件过程?它与软件工程方法学有何关系?

软件工程导论期末考试题

一、单项选择题 1.适合于面向对象方法学的软件生存周期模型是( B ) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 2.从实用角度看,数据规范化程度在大多数场合选用第( C )范式。 A. 1 B.2 C.3 D.5 3. 可行性分析研究的目的是( A )。 A.项目值得开发否 B.争取项目 C.开发项目 D.规划项目 4. 模块的内聚性最高的是 ( D ) A.逻辑内聚 B.时间内聚 C.偶然内聚 D.功能内聚 5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 ( B ) A. 软件工程 B. 软件危机 C. 软件周期 D. 软件产生 6. 需求分析阶段的任务是确定( D ) A.软件开发方法 B.软件开发工具 C.软件开发费 D.软件系统的功能 7. 完整的软件结构通常用( B )图来表示。 A. IPO 图 B. HIPO 图 C.PAD 图 D.DFD 图 8. 在白盒法技术测试用例的设计中( A )是最弱的覆盖标准。 A.语句 B.路径 C.条件组合 D.判定 9?对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。 A.结合 B.隐藏 C.封装 D.抽象 10. 在数据流图中,圆代表( C )。 A.源点 B.终点 C.加工 D.模块 11. 模块内聚度越高,说明模块内各成分彼此结合的程度越( B )。 A.松散 B.紧密 C.无法判断 D.相等 12. 软件测试方法中,黑盒、白盒测试法是常用的方法,其中黑盒测试主要用于测试( B )。 A.结构合理性 B.软件外部功能 C.程序正确性 D.程序内部逻辑 13. 面向对象开发方法中, ( C )是占主导地位的标准建模语言。 A.Booch 方法 B.Coad 方法 C.UML 语言 D.OMT 方法 14. 软件需求分析的主要任务是准确地定义出要开发的软件系统是( C ) A.如何做 B.怎么做 C.做什么 D.对谁做 15. 结构化程序设计的一种基本方法是( C ) A.筛选法 B.迭代法 C.逐步求精法 D.递归法 二、填空题 1. 目前使用最广泛的软件工 程学方法分别是传统方法学和(面向对象方法学 ) )和事务流。 文档 ) 。 ( 重复 )三种结构。 自顶向下 的集成测试方法,对软件结构中下层使 6. 软件维护包括 ( 改正性维护 )、适应性维护、完善性维护、预防性维护。 7. 面向对象方法学建模得到的三个基本子模型是 (对象建模 ) .动态模型、功能模型。 8. 复杂大型问题的对象模型通常由主题 2. 数据流图中信息流的类型有(变换流 3. 软件的定义是:软件 =程序+数据+ 4. 经典结构程序设计包括顺序、选择和 5. 集成测试时对软件结构中上层使用 用 ( 自底向上 ) 的集成测试方法。

软件工程导论复习资料全

名词解释: 1.软件生命周期模型 软件生存周期模型:是描述软件开发过程中各种活动如何执行的模型。 软件生存周期主要模型:瀑布模型、增量模型、螺旋模型、喷泉模型、变换模型和基于知识的模型等 2. 模块独立性 模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且 接口简单。模块独立的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。 3. 软件的可维护性 软件可维护性指软件能够被理解、校正、适应及增强功能的容易程度。 4. 软件工程 软件工程指用科学知识和技术原理来定义、开发、维护软件的一门学科。或者说,软件工程就是运用工程学的基本原理和方法来组织管理软件的生产、研究、开发、管理、维护的过程、方法和技术。 5.数据字典 字据字典:简称DD,就是用来定义数据流图中的各个成分具体含义的,它以一种准确的\无二义性的说明方式为系统的分析\设计及维护提供了有关元素的一致的定义和详细 的描述。 6、静态测试 静态测试是采用人工检测和计算机辅助静态分析的方法对程序进行检测。 7、面向对象:面向对象OO=类+对象+继承+通信 8、需求分析 需求分析是指:开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求述转化为完整的需求定义,再由需求定义转换到相应的形式主义功能规约(需求规格说明)的过程。 9、软件危机 软件危机(Software Crisis) 是计算机软件在它的开发和维护过程中所遇到的一系列严重问题。概括地说,主要包含两方面的问题:如何开发软件,怎样满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。 10、软件生存周期 软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。软件生存周期包括:可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等。 简答: 1.软件生存周期有哪几个阶段? ①可行性研究②需求分析③总体设计④详细设计⑤编码⑥测试⑦维护 2.白盒测试法有哪些逻辑覆盖标准? ① 语句覆盖②判定覆盖③条件覆盖④判定/条件覆盖⑤条件组合覆盖⑥点覆盖、边覆盖、路径覆盖 3.软件的维护有哪4种类型?①校正性维护②适应性维护③完善性维护④ 预防性维护。4.软件成分的重用有哪3个级别?:①代码重用②设计结果重用③分析结果重用 5.设计任务管理子系统有哪7个任务?

软件工程导论重点内容

第一章软件工程概述 重点掌握的容:软件和软件工程的基本概念 一.什么是软件? 1.满足功能要求和性能的指令或计算机程序集合; 2.处理信息的数据结构; 3.描述程序功能以及程序如操作和使用所要求的文档; 软件的特点: 软件是一种逻辑实体,而不是具体的物理实体,因而它具有抽象性。 软件是通过人们的智力活动,把知识与技术转换成信息的一种产品,是在研制、开发中被创造出来的 在软件运行和使用的期间,没有硬件那样的机械磨损、老化问题 软件的开发和运行经常受到计算机系统的限制,对计算机系统有着不同程度的依赖性 软件的开发至今尚未完全摆脱手工的开发式 软件的开发费用越来越高,成本相当昂贵。 二.软件危机以及产生软件危机的原因? 1.软件开发生产率提高的速度,远远跟不上计算机迅速普及的趋势。软件产品“供不应求”。 2.软件成本在计算机系统总成本中所占的比例逐年上升。 3.软件开发人员和用户之间的信息交流往往很不充分,用户对“已完成的”的软件系统不满足的现象经常发生。 4.软件产品的质量不容易保证。 5.软件产品常常是不可维护的。 6.软件产品的重用性差,同样的软件多次重复开发。

7.软件通常没有适当的文档资料。 产生软件危机的原因可归结为两个重要的面: 软件生产本身存在的复杂性; 软件开发所使用的法和技术。 三、软件危机 1、软件危机定义:软件危机是指在计算机软件的开发和维护过程中所遇到的一系列重问题。 2、软件危机的两个主要问题:如开发软件,以满足对软件日益增长的需求; 如维护数量不断膨胀的已有软件。 3、软件危机的典型表现:(1) 对软件开发成本和进度的估计常常很不准确。 (2) 用户对“已完成的”软件系统不满意的现象经常发生。 (3) 软件产品的质量往往靠不住。 (4) 软件常常是不可维护的。 (5) 软件通常没有适当的文档资料。 (6) 软件成本在计算机系统总成本中所占的比例逐年上升。 (7) 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 软件工程 1、软件工程定义:软件工程是指导计算机软件开发和维护的一门工程学科。采用工程的概念、原理、技术和法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术法结合起来,以经济地、高效的开发出高质量的软件并有效地维护它,这就是软件工程。 软件工程准则可以概括为7条基本原则:

软件工程导论(第五版)课后习题测验答案

《软件工程导论》课后习题答案 第一章软件工程概论 1-1 1.什么是软件危机? 软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面: (1)用户对开发出的软件很难满意。 (2)软件产品的质量往往靠不住。 (3)一般软件很难维护。 (4)软件生产效率很低。 (5)软件开发成本越来越大。 (6)软件成本与开发进度难以估计。 (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。 2.软件危机有那些典型表现? (1)对软件开发成本和进度的估计常常很不准确。 (2) 用户对“已完成的”软件系统不满意的现象经常发生。 (3)软件产品的质量往往靠不住。 (4)软件常常是不可维护的。 (5)软件通常没有适当的文档资料。 (6) 软件成本在计算机系统总成本中所占的比例逐年上升。 (7) 软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。 3.为什么会产生软件危机? (1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。(2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。 (3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 4.怎样克服软件危机? (1) 充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2) 推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3) 根据不同的应用领域,开发更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。 总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。 1-3、

软件工程导论》期末考试试题与答案

《软件工程导论》期末考试-试题与答案 一、填空题 1.软件工程中的结构化分析 SA 是一种面向________的分析方法。 2.软件模块独立性的两个定性度量标准是_________________。 3.软件开发是一个自顶向下逐步细化和求精的过程,而软件测试是一个________的过程。 4. ________和数据字典共同构成了系统的逻辑模型 5. ___________是一种黑盒测试技术,这种技术把程序的输入域划分为若干个数据类,据此导出测试用例。二、单选 题 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. Jackson 方法是在软件开发过程中常用的方法,使用 Jackson 方法时可以实现______。A.从数据结构导出程序结构B.从数据流图导出初始结构图C.从模块结构导出数据结构D.从模块结构导出程序结构 7.软件测试时为了________而执行程序的过程。A.纠正 错误B.发现错误 C.避免错误 D.证明错误 8.在软件系统中,一个模块应具有什么样的功能,这是由_____决定的。A.总体 设计B.需求分析C.详细设计D.程序设计 9.面向对象分析是对系统进行_________的一种方法。A.需求 分析B.程序设计C.设计评审D.测试验收 10.软件文档是软件工程实施中的重要部分,它不仅是软件开发各阶段的重要依据,而 且影响软件的_______。A.可理解 性B.可维护性C.可扩展性D.可 移植

软件工程导论复习资料解答

软件工程导论复习题汇总 一、选择题 1.软件重用的单位是A。 A.软件模块B.功能 C.系统D.语句 2.软件生存周期借用了 D 中产品生存周期的概念。 A.计算机科学B.需求 C.数学D.工程 3.项目开发计划是 D 文档。 A.技术性B.管理性 C.设计D.需求分析 4.在结构化分析(SA)中, C 与数据流图共同构成了系统的逻辑模型,是需求规格说明书的主要组成部分。 A.模块图B.E-R图 C.数据字典D.程序流程图 5.为了提高模块的独立性,模块之间最好是A 。 A.数据耦合B.控制耦合 C.公共耦合D.内容耦合 6.对一个开始是模糊的模块进行处理过程分解时,下面说法错误的是 D 。 A.用顺序方式对过程分解,确定各部分的执行顺序 B.用选择方式对过程分解,确定某个部分的执行条件 C.用循环方式对过程分解,确定某个部分进行重复的开始和结束的条件 D.对处理过程仍然模糊的部分反复使用循环方式对过程进行分解 7.软件测试的关键问题是A 。 A.如何选择测试用例B.如何采用综合策略 C.如何验证程序的正确性D.如何组织软件评审 8.软件生存期的 D 工作与软件的可维护性有密切的关系。 A.详细设计阶段B.编码阶段 C.测试阶段D.每个阶段 9.增量模型属于一种 B 模型。 A.整体开发B.非整体开发 C.较早产生工作软件D.灵活性差 10.下列说法正确的是 D 。 A.动态模型指出发生了什么 B.对象模型确定什么时候发生 C.功能模型确定发生的客体 D.动态模型描述的系统属性是触发事件、事件序列、状态、事件与状态的组织11.用类库这种机制和结构来实现 D 中的信息共享。 A.同一应用B.不同应用 C.同一个类D.不同类

软件工程导论复习知识点

一、软件: 软件定义: 软件=程序+文档+数据 软件特点: 1、具有抽象性 2、没有明显的制造过程 3、软件的维护比硬件的维护要复杂得多 4、对计算机系统有着不同程度的依赖性 5、尚未完全摆脱手工艺的开发方式 6、软件本身是复杂的 7、软件成本相当昂贵 8、相当多的软件工作涉及到社会因素软件的发展: 程序设计、程序系统、软件工程 软件危机: 软件危机指的是软件开发和维护过程中遇到的一系列严重问题。 软件危机的问题: 如何开发软件,怎样满足对软件的日益增长的需求;如何维护数量不断膨胀的已有软件。 软件危机表现: 1.开发成本难以控制,进度不可预计; 2.软件系统的质量和可靠性很差,难以满意; 3.软件文档相当缺乏,软件系统不可维护; 4.软件开发生产率很低,软件产品供不应求。 5.软件产品成本十分昂贵。

软件危机产生原因: 1、软件本身的特点 2、对软件开发与维护存在许多错误认识和做法 3、软件开发与维护的方法不正确 解决软件危机途径: 1、将软件开发看成是一种组织严密、管理严格、各类人员协同配合共同完成的工程项目。 2、研究和推广成功的软件开发技术和方法。 3、开发和使用好的软件工具。 软件生命周期: 软件所经历的定义、开发、使用和维护直到废弃所经历的时期。 程序设计环境: 源程序编辑,编译或解释,链接,调试和运行工具的集合 软件工程环境: 软件定义,设计和实现,测试和维护等各个阶段所使用的软件工具的集合 二、软件工程: 软件工程定义: 研究如何应用一些科学理论和工程上的技术来指导软件的开发,用较少的投资获得高质量的软件的一门学科。 软件工程性质: 涉及计算机科学、工程科学、管理科学、数学等领域,着重于如何建造一个软件系统。用工程科学中的观点来进行费用估算、制定进度、制定计划和方案。用管

《软件工程导论》第五版-张海藩-编著-总结

《软件工程导论》第五版张海藩编著总结 分类:Computer System2011-01-04 10:14 6417人阅读评论(10) 收藏举报 测试数据结构工具任务文档软件测试 总结重点: ?Unit1 ?软件危机包含两方面の问题:一是如何开发软件,怎样满足人们对软件日益增长の需求?二是如何维护软件,使它们持久地满足人们の要求。 ?软件工程学定义:把软件当作一种工业产品,采用工程学の原理来管理和组织软件の开发和维护,称为软件工程。 ?软件是指程序、数据和文档三者共同构成の配置。 ?包含与数据处理系统操作有关の程序、规程、规则以及相关文档の智力创作称为软件。文档是描述程序开发过程の,是智力创作の真实记录,是创作活动の历史档案和结晶。 ?软件の描述性定义:软件由计算机程序,数据结构和文档组成。 ?软件质量定义为“与软件产品满足规定の和隐含の需求能力有关の特征和特性の全体” 具体来说: 1)软件产品中能满足给定需求の性质和特性の总体; 2)软件具有所期望の各种属性の组合程度。 ?将软件质量属性划分为六个特性(功能性、可靠性、易用性、效率、维护性和可移植性),这六个属性是面向用户の观点——面向管理の观点,且是定性描述の。 ?软件质量度量体系:内部度量可用于开发阶段の非执行软件产品,外部度量只能在生存周期过程中の测试阶段和任何运行阶段使用。 ?软件工程项目の基本目标:(1)低成本;(2)满足功能要求;(3)高性能;(4)易移植;(5)易维护。 ?软件工程方法学就是要从技术和管理上提供如何去设计和维护软件。 ?软件开发方法:面向数据流(约旦)方法、面向数据结构方法、面向对象方法。 ?结构程序设计是进行以模块功能和处理过程设计为主の详细设计の基本原则。它の主要观点是采用自顶向下、逐步求精の程序设计方法;使用三种基本控制结构构造程序,任何程序都可由顺序、选择、循环三种基本控制结构构造。 ?用来辅助软件开发、运行、维护、管理、支持等过程中活动の软件称为软件工具(CASE)。 ?软件生存周期定义:软件产品从形成概念开始,经过开发、使用和维护,直到最后不再使用の整个过程。各阶段の任务彼此间尽可能の相对独立,同一阶段内各项任务の性质尽可能の相同。软件の开发就是“按软件顺时间发展の过程分阶段进行”の。 ?软件生存周期模型: 瀑布模型(阶段间具有顺序型和依赖性,清楚地区分逻辑设计与物理设计、尽可能推迟程序の物理实现,是文档驱动模型,遵循结构化设计);

软件工程导论-期末题库(完整版)

1.填空题 1.一般来说,可以从__一致性__、_完整性___、_现实性____和_有效性___四个方面验证软件需求的正确性。 2.IPO图是_输入、处理和输出图_的简称,它是美国IBM公司发展完善起来的一种图形工具。 3.系统流程图是描述__物理模型__的传统工具,用图形符号表达了系统中各种元素之间的_____信息流动_____情况。 4.数据流图中的箭头表示数据流,椭圆或圆形表示数据处理,矩形表示数据的源点/终点。 5.软件测试的步骤按顺序分别是:___单元测试_____、子系统测试、系统测试(子系统和系统测试通常称为集成测试)、__确认测试__和_____系统测试(集成测试)____ 6.软件生命周期一般可分为_问题定义_、可行性研究、_需求分析_、设计编码、_测试_、运行与维护阶段。 7.可行性研究主要集中在以下四个方面_经济可行性_、__技术可行性____、__法律可行性___和抉择。 8.在结构化设计中,HIPO图应用在总体设计阶段,由IPO图和_层次图_两部分组成。9.复杂问题的对象模型通常由下述五个层次组成:主题层、___类与对象_层、__结构___层、_属性_层和__服务_层。 10.实施精化设计的目标是基于模块的“高内聚低耦合”的原则,提高模块的_独立性。11.软件生命周期一般可分为___问题定义_、可行性研究、__需求分析__、概要设计__、详细设计、编码、__软件测试_、运行与维护阶段。 12.面向对象的数据存储管理模式分为__文件__、_关系数据库__和__面向对象数据库___三种。 13.单元测试一般以_白盒_测试为主,__黑盒__测试为辅。 14.软件工程三要素包括_方法_、__工具___和__过程___,其中, _过程_支持软件开发的各个环节的控制和管理。 15.类构件的重用方式有_实力重用__、__继承重用______和_ 多态重用__三种。16.能力成熟度模型分为5个等级:初始级、____可重复____级、__已定义___级、____已管理__级和__优化____级。 2.判断题 1. 向滞后的项目中增加人手会使得项目更加滞后。(T)

“软件工程导论”重点、难点

“软件工程导论”的授课内容重点、难点 --供期末考试(教考分离)命题参考 一、教材:软件工程—原理、方法与应用(第3版),史济民等编著,高等教育出版社 二、任课教师: 陈征、于海雯 三、授课内容及重点、难点 第1章绪论 重点:软件的基本概念,软件危机,软件工程学的范畴,传统软件工程和面向对象软件工程的比较。 第2章软件生存周期与软件过程 重点:软件生存周期的基本概念,传统软件开发模型(瀑布模型、快速原型模型、增量模型、螺旋模型)的特点,可行性研究的内容,风险分析的3项活动。 第3章结构化分析与设计 重点:结构化分析的任务和步骤,数据流图的组成符号,画分层的数据流图,数据字典的条目,加工逻辑的描述工具(判定表和判定树等),结构化设计的任务和步骤,面向数据流的设计方法(变换映射和事务映射),模块划分的原则,详细设计的目的与任务,常用的详细设计工具(程序流程图和N-S图等)。 难点:画分层的数据流图,画判定表和判定树,变换映射和事务映射。 第4章面向对象与UML 重点:面向对象的基本概念,UML中的9种图(4种静态图、5种动态图)的基本结构,类与类之间的4种关系(关联、聚集、泛化、依赖)的含义,类图的画法。 难点:类图的画法。 第7章7.1 软件设计概述 重点:软件设计的基本概念(模块化、抽象与细化、信息隐藏、模块独立性),内聚性(7种类型)和耦合性(7种类型)的含义。 第8章编码与测试 重点:编码的风格,编码语言的选择,测试的目的,黑盒测试和白盒测试的测试用例设计方法,多模块程序的测试策略(单元测试、集成测试、确认测试和系统测试)。 难点:黑盒测试和白盒测试的测试用例设计。

软件工程导论期末考试简答题

简答题 1、什么是软件工程?它目标和内容是什么? 软件工程就是用科学的知识和技术原理来定义,开发,维护软件的一门学科。软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。软件工程内容:包括开发技术和开发管理两个方面。 2、软件开发中有哪几种过程模型?哪些适用于面向对象的软件开发? 软件开发中常见的软件过程模型有瀑布模型、原型模型、螺旋模型、喷泉模型、统一软件过程等。 其中喷泉模型、统一软件过程适用于面向对象的软件开发。 3、什么是结构分析方法?该方法使用什么描述工具? 结构化分析:简称SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分析策略。顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从抽象到具体的过渡。使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑。 4、什么是软件概要设计?该阶段的基本任务是什么? 把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。称为概要设计或结构设计。 基本任务:⑴设计软件系统结构⑵进行数据结构及数据库的设计⑶编写概要设计的文档⑷评审 5、软件维护有哪些内容? (1)校正性维护。在软件交付使用后,一些隐含的错误在某些特定的使用环境下会暴露出来。为了识别和纠正错误,修改软件性能上的缺陷,应进行确定和修改错误的过程,这个过程就称为校正性维护。 (2)适应性维护。为了使应用软件适应计算机硬件、软件环境及数据环境的不断发生的变化而修改软件的过程称为适应性维护。 (3)完善性维护。为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为完善性维护。 (4)预防性维护。为了提高软件的可维护性和可靠性而对软件进行的修改称为预防性维护。 6、软件测试要经过哪些步骤?这些测试与软件开发各阶段之间有什么关系? 软件测试要经过的步骤是:单元测试→集成测试→确认测试→系统测试。 单元测试对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。该阶段涉及编码和详细设计文档。 集成测试是为了检查与设计相关的软件体系结构的有关问题,也就是检查概要设计是否合理有效。 确认测试主要是检查已实现的软件是否满足需求规格说明书中确定了的各种需求。 系统测试是把已确认的软件与其他系统元素(如硬件、其他支持软件、数据、人工等)结合在一起进行测试。以确定软件是否可以支付使用。 7、什么是软件生存周期?它有哪几个活动? 软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。 包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,维护。 8、衡量模块独立性的两个标准是什么?各表示什么含义? 内聚和耦合。内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计目标。 耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独立性越差,以低耦合为设计目标。 9、什么是结构分析方法?结构化分析方法通过哪些步骤来实现? 结构化分析:简称SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分析策略。顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从抽象到具体的过渡。实现的步骤:⑴了解当前系统的工作流程,获得当前系统的物理模型。⑵抽象出当前系统的逻辑模型。⑶建立目标系统的逻辑模型。⑷作进一步补充和优化。

软件工程导论课程教学大纲

《软件工程导论》课程教学大纲 一、课程性质、地位和作用 《软件工程导论》是是软件工程专业的专业基础课程,属必修课。 本课程主要讲述建造软件系统的基本方法、技术、流程、工具及规范等。通过学习可以使学生了解软件工程的基本概念、基本原理、实用的开发方法和技术;了解软件工程各领域的基本内容和发展动向;学习用工程化的方法开发软件项目,初步掌握开发过程中应遵循的流程、准则、标准和规范。本门课程为将来从事软件开发学生的软件工程师之路奠定坚实的基础。 二、课程教学对象、目的和要求 本课程适用于软件工程、计算机应用等从事软件开发的本科专业。课程教学目的、要求: (一)从教学内容上,应使学生了解软件工程的基本概念,主要包括软件与软件开发的基本过程,软件危机与软件工程。掌握个人软件开发过程的基本内容和方法,了解软件开发模型及结构化软件设计方法,以及软件质量保证基本内容。(二)从能力方面,应使学生通过对软件工程基本概念和方法的学习和课后练习,培养学生养成规范化个人开发的良好习惯,培养学生按照软件工程的基本过程和方法来设计和开发软件。 (三)从教学方法上,在课堂理论教学中,采用学生可以理解的软件开发素材,通过一边实践一边讲解的方法,讲解软件过程的基本思想和方法,通过学生完成与实践结合的作业,调动学生的积极性,使软件工程的基本思想逐步植根于学生头脑中。 三、相关课程及关系 本课程的先修课程是“C语言程序设计”和“数据结构”等程序设计课程,学习应在学生具有一定的编程能力基础上进行。本课程为后续的“软件制造工程”和“软件设计工程”等课程打下了必要的理论基础。 四、课程内容及学时分配 总学时:32学时 (一)绪论1学时 1、软件工程及其重要性 2、软件开发需要软件工程 3、软件工程课程体系架构(需要什么软件工程) 、课堂的组织、学习方法、章节安排与考核4. 要求学生了解软件工程的起源,软件工程在软件开发中的作用,了解软件工程课程体系。 (二)软件与软件工程4学时 1、软件及软件分类 2、软件工程的由来及概念 3、软件生命周期 4、软件开发与软件开发方法 5、软件工程工具和环境 6、软件开发项目管理介绍

软件工程导论第五版复习重点(必考题)

(最后部分为每年必考题) 第一章 1. .软件工程的定义:软件工程是应用计算机科学、数学及管理科学等原理开发软件的工程。它借鉴传统工程的原则、方法,以提高质量,降低成本为目的. 2. 软件危机的概念:软件危机是指计算机软件的开发和维护过程中所遇到的一系列严重的问题。 3. 产生软件危机的原因:(1) 开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。 (2) 软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3) 尤其是随着软件规模越来越大,复杂程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。 4. 面向对象方法学的四个要点:1.把对象作为融合了数据及在数据上的操作行为的统一的软件构件 2.把所有对象都划分成类3.按照父类(或称为基类)与子类(或称为派生类)的关系,把若干个相关类组成一个层次结构的系统(也称为类等级)。4.对象彼此间仅能通过发送消息互相联系。 5. 软件生命周期:软件定义(问题定义,可行性研究,需求分析)、软件开发(总体设计,详细设计,编码,单元测试,总体测试)、运行维护(持久地满足用户的需要) 6. 瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型,概念.方法.优缺点.区别。 7. 微软过程把软件生命周期划分为成5个阶段:规划阶段,设计阶段,开发阶段,稳定阶段,发布阶段。 第二章 1.可行性包括:技术可行性,经济可行性,操作可行性。 2. 系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形势描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。系统流程图表达的是数据在系统各部件之间流动的情况,而不是对数据加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。4. 书库流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只描绘数据在软件中流动和被处理的逻辑过程。数据流图是系统逻辑功能的图形表示。 5. 用系统流程图描绘一个系统时,系统的功能和实现每个功能的具体方案是混在一起的。有数据元素组成的数据的方式只有下述3种基本类型:顺序(即以确定次序连接两个或多个分量)。选择即从两个或多个可能的元素中选取一个重复即把指定的分量重复零次或多次

软件工程导论期末试题A(带答案)

评阅教师得分四川大学期末考试试题(闭卷)(2014~2015学年第1学期) 课程号: 311078040 课程名称:软件工程导论(A卷)任课教师:洪玫,刘东权,李旭伟等 适用专业年级:软件工程 2013级学号:姓名: 2. 请将答案全部填写在本试题纸上; 3. 考试结束,请将试题纸、添卷纸和草稿纸一并交给监考老师。 ????????????????????????????? 一、单项选择题(本大题共20小题,每小题1分,共20分) 提示:在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在 下表中。错选、多选或未选均无分。 1. Software is the collection of ( ). (A) Programs (B) Data (C) Documents (D) All of above 2.Which of the items listed below is not one of the software engineering layers? ( ) (A) Process (B) Methods (C) Tools (D) Manufacturing 3.The prototyping model of software development is ( ). (A) A reasonable approach when requirements are well defined. (B) The best approach to use for projects with large development teams. 注:试题字迹务必清晰,书写工整。本题共11页,本页为第1页

软件工程导论(整理版)

SA——结构化分析方法 可行性研究:可行性研究实质上是要进行一次大大压缩简化了的系统分析和设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过程; 技术可行性:对待开发的系统进行功能、性能和限制条件的分析,确定在现有的资源条件下,技术风险有多大,系统能否实现; 经济可行性:这个系统的经济效益能超过它的开发成本吗? 社会可行性:实用性怎样 5. 耦合性:耦合是指一个模块与其它模块之间的联系,又称为块间联系,是模块之间相对独立性的度量; 6. 内聚性:内聚是指模块内部各个成分之间的关系,又称为块内联系,是模块功能相对强度的度量; 7. 模块的控制范围:一个模块的控制范围是指该模块本身及其所属的(直接或间接调用的)所有模块的集合; 8. 模块的作用范围:受该模块内一个判定影响的所有模块的集合;9. 软件结构:软件结构图; 10.模块:在软件中,通常把用一个名字就可以调用的一段程序称为模块; 1. 编码:所谓编码就是把软件设计结果翻译成用某种程序设计语言书写的程序; 2. 程序设计风格:所谓程序设计风格是指书写源程序的习惯、程序代码的逻辑结构与习惯的编程技术。从软件工程要求出发,程序设计风格应包括以下要素:①源程序文档化②数据说明③语句构造④输入输出 ●白盒测试技术:逻辑覆盖和基本路径覆盖 ●黑盒测试技术:等价类划分、边界测试、错误推测、因果图 ●软件测试步骤:单元测试、集成测试和确认测试 1. 校正性维护:满足用户对已开发产品的性能与运行环境不断提高的要求,进而达到延长软件寿命的目的; 2.适应性维护:对程序使用期间发现的程序错误进行诊断和改正的过程,配合变化了的环境进行修改软件的活动; 3. 完善性维护:满足用户在使用过程中提出增加新的功能或修改已有功能的建议而进行的工作; 4. 预防性维护:为了改善未来的可维护性或可靠性而修改软件的工作。

(完整版)软件工程导论(第5版)习题二答案

P53 习题二 4.目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于 不能随时观察病人的病情变化,还可能会延误抢救时机。某医院打算开发一个以计算机为中心的患者监护系统,试写出问题定义,并且分析开发这个系统的可行性。 医院对患者监护系统的基本要求是随时接收每个病人的生理信号(脉搏体温血压心电图等)定时记录病人情况以形成患者日志,当某个病人的生理信号超出医生规定的安全范围试向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。 答: 问题定义:某医院打算开发一个以计算机为中心的患者监护系统是为了更好地让医生监护病人的生理信号(脉搏、血压、心电图等)的变化,定时记录病人情况以形成患者日志,防止没能及时发现危重病人的病情恶化而耽误抢救时机的现象出现;当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告信息,此外,护士在需要时还可以要求系统印出某个指定病人的病情报告。 可行性研究: (1)技术可行性:开发系统的计算机硬件已经非常普及,现在的计算机各方面的技术都非常成熟,相对来说开发此系统的技术也要求比较简单,因此在技术方面是可行的;同时医院还必须有一定量的系统管理和维护的专业人员。医院的患者监护系统由三部分构成:监护中心、护士监听部分和 Internet医疗网站。监护中心通过Internet与护士监护部分、Internet连接、把监听到的患者声音、视频信息以及影像资料通过通讯网络实时传送到护士监听部分(便于护士随时掌握患者的生理状况)和Internet医疗中心(有利于实现生理数据的共享)。 因此技术上分析是可行的。 (2)经济可行性:随着经济越来越发达,人们可以支付的治疗疾病的花费也挺高了,因此其开发具有广阔的市场。目前住院病人主要由护士护理,这样做不仅需要大量护士,而且由于不能随时观察病人的病情变化,还可能会延误抢救时机。当前的社区医疗保健系统还不够完善,大多数据收集工作主要采取手工方式;并且信息不利于共享,采集的资料存在一台计算机里,社区中心与居民之间不能建立起随时访问和被采访的关系。 (3)操作可行性:计算机的普及使人们对以计算机为中心的患者监护系 统的使用做了铺垫,系统的操作人员需要经过专业的人员指导以及培训。 (4)法律可行性:医院想要使用患者监护系统需要购买正版的软件,机 器设置也需要通过正当途径购买。 5.北京某高校可用的电话号码有以下几类:校内电话号码由4位数字组成, 第1位数字不是零;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,若是本地电话再接着拨8位数字(第一位不是0),若是外地电话则拨3位区码再拨8位电话号码(第一位不是0)。 用2.5.2小节讲诉的数据定义的方法,定义上述电话号码。 答:电话号码=[校内电话号码|校外电话号码]

软件工程导论期末试题

软件工程导论期末考试试题 一.选择(20分) 1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和( C)。 A、详细计划 B、可行性分析 C、运行阶段 D、测试与排错 2、从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大(C )。 A、详细设计阶段 B、概要设计阶段 C、需求分析阶段 D、测试和运行阶段 3、在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试中的系统测试阶段的目标(A )。 A、需求分析阶段 B、详细设计阶段 C、概要设计阶段 D、可行性研究阶段 4、软件工程的出现主要是由于(C )。 A.程序设计方法学的影响 B.其它工程科学的影响 C. 软件危机的出现 D.计算机的发展 5、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是(C ) A、硬件环境 B、软件开发的环境 C、软件开发工具和软件开发的环境 D、开发人员的素质 6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 ( B) A、相互排斥 B、相互补充 C、独立使用 D、交替使用 7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C ) A、基于瀑布模型的结构化方法 B、基于需求动态定义的原型化方法 C、基于对象的面向对象的方法 D、基于数据的数据流开发方法

8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B ) A、结构化方法 B、原型化方法 C、面向对象的方法 D、控制流方法 9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B ) A、控制流 B、数据流 C、程序流 D、指令流 10、软件开发的结构化生命周期方法将软件生命周期划分成(A ) A、计划阶段、开发阶段、运行阶段 B、计划阶段、编程阶段、测试阶段 C、总体设计、详细设计、编程调试 D、需求分析、功能定义、系统设计 二.填空(20分) 21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素 表达了系统中各种元素之间的(信息流动)情况。 22.成本效益分析的目的是从(经济)角度评价开发一个项目是否可行。 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先 策略和(宽度优先策略) 。 24.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图 来看,一条独立路径是至少包含有一条(在其他独立路径中未有过)的边的路径。 25.汇编语言是面向(机器) 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。 26.在JSP方法中解决结构冲突的具体办法是(中间数据结构或中间文件)。 27.详细设计的任务是确定每个模块的内部特性,即模块的算法、(使用的数据)。 28.所有软件维护申请报告要按规定方式提出,该报告也称( 软件问题)报告。 29.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面向 维护的技术;在维护阶段用来提高维护的效率和质量的(维护支援)技术。 30.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供选 择的语言有:(FORTRAN语言)、PASCAL语言、C语言和PL/1语言。三.判断(10分)

相关文档
最新文档