文档库 最新最全的文档下载
当前位置:文档库 › 软件工程名词解释

软件工程名词解释

软件工程名词解释
软件工程名词解释

名词解释

1.软件测试2.静态测试3.动态测试4.黑盒测试5.白章)(第8章)8(第(第(第8章)8章)盒测试6.语句覆盖7.判定覆盖8.条件覆盖9.判定章)6章)(第6章)(第6(第章)(第8/条件覆盖10.条件组合覆盖11.路径覆盖12.测试用例(第86章)(第6(第6章)章)(第13.驱动模块14.桩模块15.单元测试16.集成测试(第8章)(第8(第6章)章)章)(第617.确认测试18.渐增式测试19.非渐增式测试20.调试章)8章)8(第(第章)8章)(第21.人的因素的含义22.基线23.软件配置管理24.软章(第9章)(第12(第11章)(第12章)件配置项25. 软件概要设计26. 模块27. 模块化28. 章)5章)(第(第12章)5(第(第5章)抽象29. 信息隐蔽30. 模块独立性31. 耦合性32. 无章)55章)章)(第(第5章)5(第(第直接耦合33. 数据耦合34. 标记耦合35. 控制耦合章)5章)章)(第5章)(第5(第(第536. 公共耦合37. 内容耦合38. 内聚性39. 偶然内聚(第55(第5章)章)章)(第5章)(第40. 逻辑内聚41. 时间内聚42. 通信内聚43. 顺序内聚(第章)5章)5章)(第5(第5(第44. 功能内聚45. 软件结构图46. 结构化设计47. 变换流章)5章)章)(第5章)(第5(第48. 事务流49. JSP50. JSD 章)章)6章)(第6(第(第6(第6章)答案:

1. 软件测试指为了发现软件中的错误而执行软件的过程。它的目标是尽可能多地发现软件中存在的错误,将测试结果作为纠错的依据。

2. 静态测试指被测试的程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。

3. 动态测试指通过运行程序发现错误。

4. 黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求,又称为功能测试或数据驱动测试。

5. 白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。

6. 语句覆盖指设计足够的测试用例,使被测程序中每个语句至少执行一次。

7. 判定覆盖指设计足够的测试用例,使被测程序中每个判定表达式至少获得一次“真”值或“假”值,从而使程序的每个分支至少都通过一次,因此判定覆盖又称分支覆盖。

8. 条件覆盖指设计足够测试用例,使判定表达式中每个条件的各种可能的值至少出现一次。

条件覆盖指设计足够的测试用例,使得判定表达式中每个条件的所有可能取值至少/判定9.

出现一次,并使每个判定表达式所有可能的结果也至少出现一次。

10. 条件组合覆盖指设计足够的测试用例,使得每个判定表达式中条件的各种可能的值的组合都至少出现一次。

11. 路径覆盖指设计足够的测试用例,覆盖被测程序中所有可能的路径。

12. 测试用例指为寻找程序中的错误而精心设计的一组测试数据。

13. 驱动模块指用来模拟被测模块的上级调用模块,其功能比真正的上级模块简单得多,它只完成接受测试数据,以上级模块调用被测模块的格式驱动被测模块,

接收被测模块的测试结果并输出。

14. 桩模块指用来代替被测试模块所调用的模块,其作用是返回被测试模块所需的信息。

15. 单元测试指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。

16. 集成测试指在单元测试基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。也称组装测试或联合测试。

17. 确认测试指检查软件的功能与性能是否与需求规格说明书中确定的指标相

符合,又称有效性测试。

18. 渐增式测试指逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试。每加入一个新模块进行一次集成测试,重复此过程直到程序组装完毕。

19. 非渐增式测试指首先对每个模块分别进行单元测试,然后把所有的模块按设计要求组装在一起进行测试。

20. 调试指确定错误的原因和位置,并改正错误的过程,也称纠错。

21. 1)人对感知过程的认识,包括视觉、阅读时的认知心理、记忆、归纳与演绎推理等;

2)用户已有的技能和行为方式;

3)用户所要求的完成的整个任务以及用户对人机交互部分的特殊要求。

22. 已经通过正式复审和批准的某规约或产品,它因此可以作为进一步开发的基础,并且只能遵循正式的变化控制过程得到改变。

23. 软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:标识变更、控制变更、确保变更正确地实现、报告有关变更。SCM是一组管理整个软件生存期各阶段中变更的活动。

24. 软件配置项是软件工程中产生的信息项,它是配置管理的基本单位,对已成为基线的SCI,虽然可以修改,但必须按照一个特殊的正确的过程进行评估,确认每一处的修改。

.计算机系统工程1.

答:计算机系统工程是用工程、科学和数学的原则与方法研制基于计算机的系统的有关技术方法和过程。

25. 软件概要设计又称结构设计,这是一个把软件需求转换为软件表示(只是描述软件的总的体系结构)的过程。

26. 模块在程序中是数据说明、可执行语句等程序对象的集合,或者是单独命名和编址的元素,在软件的体系结构中,模块是可组合、分解和更换的单元。

27. 模块化指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的

过程。每个模块完成一个特定的子功能,所有模块按某种方法组装起来,成为一个整体,完成整个系统所要求的功能。

28 抽象是认识复杂现象过程中使用的思维工具,即抽出事物本质的共同特性而暂不考虑它的细节,不考虑其他因素。

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

30 模块独立性指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。

31. 耦合性也称块间关系,指软件系统结构中各模块间相互联系紧密程度的一种

度量。

32. 无直接耦合指两个模块之间没有直接关系,它们分别从属于不同模块的控制和调用,它们之间不传递任何信息。

33. 数据耦合指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中值传递。

34. 标记耦合指两个模块之间传递的是数据结构。

35. 控制耦合指一个模块调用另一个模块时,传递的是控制变量(如开关、标志等),被调用模块通过该控制变量的值有选择地执行块内某一功能。

36. 公共耦合指通过一个公共数据环境相互作用的那些模块间的耦合。公共数据环境可以是全程变量或数据结构、共享的通信区、内存的公共覆盖区及任何存储介质上的文件、物理设备等。

37. 内容耦合指一个模块直接调用另一个模块的内部数据,或通过非正常入口而转入另一个模块内部。

38. 内聚性又称块内联系,指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。.

39. 偶然内聚指一个模块内的各处理元素之间没有任何联系。

40. 逻辑内聚指模块内执行几个逻辑上相似的功能,通过参数确定该模块完成哪一个功能。

41. 时间内聚指需要同时执行的动作组合在一起形成的模块。

42. 通信内聚指模块内所有处理元素都在同一个数据结构上操作(有时称为信息内聚),或者指各处理使用相同的输入数据或者产生相同的输出数据。

43. 顺序内聚指一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入。

44. 功能内聚指模块内所有元素共同完成一个功能,缺一不可。因此模块不能再分割。

45. 软件结构图是软件系统的模块层次结构,反映了整个系统的功能实现。

46. 结构化设计又称面向数据流的设计,它是以需求分析阶段产生的数据流图为基础,按一定的步骤映射成软件结构。

47. 变换流指数据流图(简称DFD)具有明显的输入、变换和输出界面。

48. 事务流指数据流图中输入流被分离成许多数据流,形成许多加工路径,并根据输入值选择其中一条路径来执行。

49. JSP方法定义一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构。适于详细设计阶段。

50.JSD主要以活动事件为中心,通过由一串活动顺序组合构成进程,建立系统模型,最后实现该模型。

四、简答题(每题4分,5道题,共20分)

1.在基于计算机的系统中一般都包含哪些系统要素?(第1章)

答:包含的系统要素:①硬件;②软件;③人;④文档;⑤数据库;⑥过程。2.在硬件工程中,硬件定义阶段的任务有哪些?(第1章)

答:硬件定义阶段的任务是:

1)制定硬件开发计划,确定项目成本和工程进度;

2)进行硬件需求分析,给出硬件规格说明。

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

3.在硬件工程中,硬件设计阶段的任务有哪些?(第1章)

答:硬件设计阶段的任务是:

1)设计分析,画出设计图;

2)必要时建造原型(即样机)并对其进行测试;

)制造分析,画出生产图。3.

4.在硬件工程中,硬件制造与销售维护阶段的任务是什么?(第1章)

答:硬件制造与销售维护阶段的任务是:按照质量保证计划生产硬件产品并销售,相应的服务机构对硬件产品进行售后服务。

5.在人机工程中,人机界面的开发过程主要包括哪几个步骤?(第6章)

答:1)活动分析。

2)动作定义和设计。

3)动作的实现。

4)用户环境设计。

5.原型设计。

6.简述数据库工程完成的主要任务有哪些?(第6章)

答:数据库工程完成的主要任务有:

1)调查用户对信息和信息处理的需求,进行可行性论证、成本估算,制定项目计划。

2)选择支持数据库系统的硬件和软件。

3)数据库设计与实现。

4)数据的收集与存储。

5)运行、管理与维护。

7.可行性研究的任务主要有哪几个方面? (第3章)

答:可行性研究的任务主要有:

1)经济可行性研究;

2)技术可行性研究;

3)运行操作可行性研究;

4)法律可行性研究;

5)开发方案的选择。

8.简述可行性研究的步骤。(第3章)

答:典型的可行性研究的主要步骤如下:

1)复审初步分析结果;

2)研究现有的系统;

3)导出新系统的高层逻辑模型;

4)导出新系统的高层物理解法;

5)推荐建议的方案;

)评审、复审和决策。6.

9.基于计算机系统的成本主要由哪4个部分组成?(第2章)

答:基于计算机系统的成本主要由以下4个部分组成:

1)购置并安装软硬件及有关设备的费用;

2)系统开发费用;

3)系统安装、运行和维护费用;

4)人员培训费用。

10.技术可行性研究主要包括哪些分析,各分析的任务如何?(第3章)

答:1)风险分析。其任务是论证在给定的约束条件下,能否实现系统所需的功

能和性能。

2)资源分析。其任务是论证是否具备系统开发所需的各类人员、软硬件资源和工作环境等。

3)技术分析。其任务是论证现有的技术水平和开发能力是否支持开发的全过程,并达到系统功能和性能的目标。

11.试画出基于计算机的系统结构模板。(第6章)

答:基于计算机的系统结构模板如下图所示:

用户界面处理

处理与控制功能输输出入处处维护与自测试处理理理

512.系统建模和模拟的主要步骤有哪些?(第章)答:系统建模和模拟的主要步骤如下: 1)分析问题,确定模拟的目标。 2)建立模型。 3)借助模型对现实系统进行模拟,并评价模拟结果。)间进行迭代,直至得到满意的结果4)如果模拟结果不正确,则修改模型,然后在43)和为止。 5)撰写模拟文档。9.对系统规格说明的技术评审主要解决哪些问题?(第13章)答:对系统规格说明的技术评审主要解决的问题有:)系统规格说明中的定义是否正确,是否正确地描述了项目的范围,是否准确地定义了系统1 的功能、性能和界面,开发人员和用户对系统的目标是否有共同的认识等。.

2)系统功能的复杂性是否与开发风险、成本和进度预测保持一致。

3)系统及各子系统功能定义是否足够详细。

4)系统与环境及各子系统之间的接口定义是否详细、有否遗漏。

5)是否指明系统性能、可靠性和可维护性等需求。

6)是否为以后的开发打下坚实的基础。

14.对系统规格说明的管理复审主要解决哪些问题?(第9章)

答:对系统规格说明的管理复审主要解决的问题有:

1)系统是否有稳定的商业需求,是否有经济和社会效益。

2)系统开发是否还有其他的选择方案。

3)系统各部分开发风险如何。

4)系统开发所需资源是否具备。

5)成本和进度计划是否合理等。

15.软件产品的特点是什么?(第1章)

答:①软件开发与硬件研制相比,更依赖于开发人员的业务素质、智力、人员的组织、合作和管理。

②大型软件仍然存在着潜伏的错误。

③软件产品开发成功后,只需对原版软件进行复制,即可生产出任意多的同样的产品。

④还有,软件在使用过程中的维护工作比硬件要复杂得多。

⑤由于软件不是物理产品,所以它不会磨损和老化。

16.软件危机的表现有哪些?(第1章)

答:1)对软件开发成本和进度的估计常常很不准确。

2)用户对已完成的软件不满意的现象时有发生。

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

4)软件常常是不可维护的。

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

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

7)软件开发生产率提高的速度远跟不上日益增长的软件需求。

17.产生软件危机的原因主要有哪些?(第1章)

答:1)用户对软件需求的描述不精确。

2)软件开发人员对用户需求的理解有偏差。

)缺乏处理大型软件项目的经验。3.

4)开发大型软件易产生疏漏和错误。

5)缺乏有力的方法学的指导和有效的开发工具的支持。

6)面对日益增长的软件需求,人们显得力不从心。

18.软件工程的7条基本原理是什么?(第12章)

答:1)用分阶段的生存周期计划严格管理

2)坚持进行阶段评审

3)实行严格的产品控制

4)采用现代程序设计技术

5)结果应能清楚地审查

6)开发小组的人员应少而精

7)承认不断改进软件工程实践的必要性

19.软件工程的7条原则是什么?(第12章)

答:1.抽象。

2.信息隐藏。

3.模块化。

4.局部化。

5.一致性。

6.完全性。

7.可验证性。

20.软件生存周期如何划分?(第11章)

答:可将软件生存周期划分为3个过程共9个阶段。

软件定义过程:由可行性研究和需求分析2个阶段组成;

软件开发过程:由概要设计、详细设计、实现、组装测试、验收测试5个阶段组成;

软件使用与维护过程:由使用与维护和退役2个阶段组成。

21.常见的软件开发模型有哪些? (第1章)

答:有瀑布模型、原型模型、螺旋模型、喷泉模型、变换模型、基于四代技术的模型、基于知识的智能模型等。

22.瀑布模型适合于哪类软件系统的开发?(第1章)

答:瀑布模型一般适用于功能、性能明确、完整、无重大变化的软件系统的开发。例如操作系统、编译系统、数据库管理系统等系统软件的开发。

章)1.瀑布模型的缺点主要有哪些?(第23.

答:1)在软件开发的初期阶段就要求做出正确、全面、完整的需求分析对许多应用软件来说是极其困难的。

2)在需求分析阶段,当需求确定后,无法及时验证需求是否正确、完整。

3)不支持产品的演化,缺乏灵活性,使软件产品难以维护。

24.实现快速原型的开发途径有哪三种?(第5章)

1)仅模拟软件系统的人机界面和人机交互方式。

2)开发一个工作模型,实现软件系统中重要的或容易产生误解的功能。

3)利用一个或几个类似的正在运行的软件向用户展示软件需求中的部分或全部功能。

25.原型模型适于哪种情况的软件开发?(第5章)

答:原型模型适合于那些不能预先确切定义需求的软件系统的开发,更适合于那些项目组成员(包括分析员、设计员、程序员和用户)不能很好交流或通信有困难的情况。

26.螺旋模型的每一个周期包括哪几个阶段?(第1章)

答:螺旋模型的每一个周期都包括计划(需求定义)、风险分析、工程实现和用户评价与阶段评审4个阶段。

27.螺旋模型的优点有哪些?(第1章)

答:螺旋模型的主要优点有:

1)支持用户需求的动态变化。

2)原型可看作形式的可执行的需求规格说明,易于为用户和开发人员共同理解,还可作为继续开发的基础,并为用户参与所有关键决策提供了方便。

3)螺旋模型特别强调原型的可扩充性和可修改性,原型的进化贯穿整个软件生存周期,这将有助于目标软件的适应能力。

4)为项目管理人员及时调整管理决策提供了方便,进而可降低开发风险。28.螺旋模型适于哪种情况的软件开发?(第1章)

答:螺旋模型支持需求不明确、特别是大型软件系统的开发,并支持面向规格说明、面向过程、面向对象等多种软件开发方法,是一种具有广阔前景的模型。29.软件项目管理的主要任务是什么?(第12章)

答:软件项目管理的主要任务是根据选定的软件开发过程框架(即软件开发模型)和对其估算的结果制定软件项目实施计划;再根据计划对人员进行组织、分工;按照计划的进度,以及成本管理、风险管理、质量管理的要求,控制并管理软件开发和维护的活动,最终以最小的代价完成软件项目规定的全部任务。

章)3.成本管理的主要任务是什么?(第30.

答:成本管理的主要任务是估算软件项目的成本,作为立项和签合同的依据之一,并在软件开发过程中按计划管理经费的使用。

31.质量管理的主要任务是什么?(第10章)

答:质量管理的主要任务是制定软件质量保证计划,按照质量评价体系控制软件质量要素,对阶段性的软件产品进行评审,对最终软件产品进行确认,确保软件质量。

32.常用的软件项目的估算方法主要有哪4种?(第3章)

答:1)自顶向下的估算方法

2)自底向上的估算方法

3)差别估算法

4)根据实验或历史数据给出软件项目工作量或成本的经验估算公式。

33.软件质量的定义?(第11章)

答:1983年,ANSI/IEEE std729标准给出了软件质量的定义如下:

软件质量是软件产品满足规定的和隐含的与需求能力有关的全部特征和特性,包括:

相关文档