大学软件工程复习

发布 2022-01-11 23:03:28 阅读 9733

1. 螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动,关键不足在于不能适应需求的动态变更。

2. 软件不只是用程序设计语言(如pascal ,c,visual basic 等)编写的程序,编写程序**只是软件开发的一个部分。

3. 快速原型模型可以有效地适应用户需求的动态变化。

4. 生产高质量的软件产品是软件工程的首要目标。

5. 软件开发人员对用户需求的理解有偏差,这将导致软件产品与用户的需求不一致,是产生软件危机的一个原因。

6. 开发一个软件项目总存在某些不确定性,即存在风险。有些风险如果控制得不好,可能导致灾难性的后果。

7. 缺乏处理大型软件项目的经验。是产生软件危机的一个原因。

8. 瀑布模型本质上是一种线性顺序模型,增量模型本质上是一种快速原型模型。

9. 可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出可行或不可行的回答。

10. 软件生存周期模型包括瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型等。

11. 软件是一种逻辑产品。

12. 可行性研究要进行一次简化的,压缩了的需求分析。

13. “软件危机”是指软件开发和维护**现的一系列问题,成本高、生产率低、质量得不到保证、需求不能充分理解都是是软件危机的表现形式。

14. 原型化方法是用户和设计者之间执行的一种交互过程,适用于需求不确定性高的系统。

15. 软件工程中的各种方法是完成软件工程项目的技术手段,它们支持软件工程的各个阶段。

16. 研究开发所需要的成本和资源是属于可行性研究中的经济可行性研究的一方面。

17. 快速原型模型的主要特点之一是及早提供工作软件。

18. 软件生存周期模型是描述软件开发过程中各种活动如何执行的模型.

19. 软件工程由方法,工具和过程三部分组成,称软件工程的三要素。

20. 基于计算机系统的软件要素中的软部件由程序,数据和文档组成。

21. 瀑布模型是以文档为驱动、适合于软件需求明确的软件项目的模型。

22. 螺旋模型是风险驱动的,而瀑布模型是文档驱动的。

23. 从事物的组成部件及每个部件的属性,功能来认识事物。这种方法被称为面向对象的方法。

24. 从事物的属性侧面来描述事物的方法就是面向数据的方法。

25. 面向对象(object oriented)方法是将现实世界的事物以对象的方式映射到计算机世界的方法。

26. 一个好的开发人员应具备的素质和能力包括善于与周围人员团结协作,建立良好的人际关系,善于听取别人的意见,具有良好的书面和口头表达能力。

27. 为了充分发挥开发人员的潜力,缩短工期,软件工程项目的任务分解与安排应尽力挖掘可并行开发的部分。

28. 任务是管理有关项目工作的最小的单元。

29. 任务是一项已经定义得很好的工作,该工作可分配给一个项目参与者或分配给一个团队。

30. 软件需求是指用户对目标软件系统在功能,性能,行为,设计约束等方面的期望。

31. 数据流图就是用来刻画数据流和转换的信息系统建模技术。

32. 用户对软件需求的描述不精确,往往是产生软件危机的原因之一。

33. 需求分析阶段的成果主要是需求规格说明,该成果与软件设计,编码,测试直至维护都有较大关系。

34. 软件需求是指用户对目标软件系统在功能,性能,行为,设计约束等方面的期望。

35. 数据流图就是用来刻画数据流和转换的信息系统建模技术。

36. 需求规格说明书是需求分析阶段最重要的技术文档之一。

37. 需求分析最终结果是产生需求规格说明书。

38. dfd中的每个加工至少需要一个输入流和一个输出流。

39. 需求分析阶段的任务是确定软件系统的功能。

40. 需求分析的任务不包括系统设计。

41. 需求规格说明书的作用包括:作为软件验收的依据、用户与开发人员对软件要做什么的共同理解、作为软件设计的依据等

42. 在结构化分析方法中,用以表达系统内数据的运动情况的工具有数据流图。

43. 结构化分析方法(sa是一种面向数据流的需求分析方法.

44. 验证软件需求正确性的四个方面包括一致性、完整性、现实性、有效性。

45. 在面向对象软件开发方法中,类与类之间主要有继承和聚集的关系。

46. 面向对象的特征主要包括多态性、继承性、封装性。

47. 软件开发过程中,抽取和整理用户需求并建立问题域精确模型的过程叫面向对象的分析。

48. 软件概要设计的主要任务就是软件结构的设计,面向数据流的设计方法是将数据流映射成软件结构。

49. 软件模块之间的耦合性越弱越好。

50. 模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。

51. 内聚度标志一个模块内部各成分彼此结合的紧密程度,按其高低程度可分为七级,内聚度越高越好。

52. 在模块耦合性类型中,模块之间独立性最差的类型是内容耦合,在实际编程时一定要避免出现,为了提高模块的独立性,模块之间最好是数据耦合。模块耦合越弱,则说明模块的独立性强。

53. 在软件结构图中,扇入数大说明该模块的重用率高。

54. 为了提高模块的独立性,模块内部最好是功能内聚,模块的内聚性最高的是功能内聚。

55. 软件结构图中,模块框之间若有直线连接,表示它们之间存在调用关系一个软件的宽度是指其控制的跨度,一个软件的深度是指其控制的层数,一个模块的扇入数是指能直接控制该模块的模块数,一个模块的"扇出数"是指该模块直接控制的其他模块数。

56. 当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为内容耦合。

57. 在进行软件结构设计时应该遵循的最主要的原理是模块独立原理。

58. 变换型数据处理问题的工作过程大致分为三步,即取得数据,变换数据和给出数据。

59. 按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析设计和事务分析设计。

60. 衡量模块的独立性的两个定性的度量标准是内聚度和耦合度。

61. 软件详细设计的主要任务是对算法和数据结构进行的详细设计,软件详细设计主要采用的方法是结构化程序设计。

63. 过程描述语言可以用于算法和数据结构的描述。

64. 结构化程序设计方法是使用三种基本控制结构构造程序,程序的三种基本控制结构是顺序,选择和循环。

65. 在详细设计阶段,经常采用的工具有盒图、pad图、pdl语言、判定表和判定树等工具,其中pad图为自动分析数据提供了有力的工具。

66. 盒图也称为n-s图,种表达方式取消了流程线,它强迫程序员以结构化方式思考和解决问题。

67. 当模块中包含复杂的条件组合,只有判定表和判定树能够清晰地表达出各种动作之间的对应关系。

68. 模块的内部过程描述就是模块内部的算法设计,它的表达形式就是详细设计语言.

69. 程序的三种基本控制结构的共同特点是只有一个入口和一个出口。

70. 调试的目的是确定错误的位置和引起错误的原因,并加以改正。

71. 汇编语言是面向机器的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。

72. 以详细设计说明书为输入,将该输入用某种程序设计语言翻译成计算机可以理解并最终可运行的**的过程叫编码过程。

73. 面向对象的开发方法中,uml是面向对象技术领域内占主导地位的标准建模语言。

74. 软件测试是执行程序发现并排除程序中潜伏的错误的过程。

75. 是对软件规格说明,软件设计和编码的最全面也是最后的审查。

76. 软件测试并不能发现软件中所有潜伏的错误,通过软件测试没有发现错误,不能说明软件是正确的。

77. 动态测试方法中根据测试用例的设计方法不同,分为黑盒和白盒两类。

78. 黑盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。

79. 自顶向下的渐增式测试初期一般不可以并行进行。

80. 在现实项目中,路径测试和穷举测试是经常难以实现。

81. 单元测试的测试对象是程序模块。

82. 计算机辅助静态分析是软件测试方法中的静态测试方法之一。

83. 基本路径测试、循环覆盖测试、逻辑覆盖测试属于白盒测试技术。

84. 等价类划分、边界值分析测试等属于黑盒测试技术。

85. 逻辑覆盖一般包括语句覆盖、判定覆盖、 条件覆盖、条件/判定覆盖、边覆盖、路径覆盖等。

86. 将软件组装成系统的一种测试技术叫集成测试。

87. 软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们都属于动态测试。

88. 在设计测试用例时,边值分析是用的最多的一种黑盒测试方法。

89. 在进行软件测试时,首先应当进行单元测试,然后再进行集成测试,最后再进行有效性测试。

90. 质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划.有组织的活动,质量保证是为了使用产品实现用户要求的功能。

91. 在结构测试用例设计中,有语句覆盖,条件覆盖,判定覆盖(即分支覆盖),路径覆盖,其中路径覆盖是最强的覆盖准则.

92. 自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和宽度优先策略。

93. 为了提高测试的效率,应该选择发现错误可能性大的数据作为测试数据。

94. 使用白盒测试方法时,确定测试数据应根据程序的内部逻辑和指定的覆盖标准。

95. 黑盒测试在设计测试用例时,主要需要研究需求规格说明与概要设计说明。

96. 软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为可靠性。

97. 软件维护是软件生命周期的最后一个阶段,软件生命周期中所花费用最多的阶段是软件维护。

98. 在软件维护的内容中,有四种维护:校正性维护,完善性维护,适应性维护,预防性维护,其中占维护活动工作量比例最高的是完善性维护,最少的一般是预防性维护。

99. 为改正软件系统中潜藏的错误而进行的维护活动称为纠错性维护。

100. 根据用户在软件使用过程中提出的建设性意见而进行的维护活动称为改善性维护,完善性维护是提高或完善软件的性能。

101. 为适应软件运行环境的变化而修改软件的活动称为适应性维护。

102. 为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础的软件维护称为预防性维护。

103. 软件中因修改软件而造成的错误称为维护的***。

104. 非结构化维护用于软件的配置中只有源**维护。

105. 维护中,因误删除一个标识符而引起的错误是编码***。

106. 软件可维护性,是指软件产品交付使用后,在实现改正潜伏的错误,改进性能等属性,适应环境变化等方面工作的难易程度。

107. 软件可靠性是指在给定的时间间隔内,程序成功运行的概率。

108. 由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的***。

109. 软件可修改性,是指允许对软件系统进行修改而不增加其复杂性,110. 所有软件维护申请报告要按规定方式提出,该报告也称软件问题报告。

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

济南大学软件工程复习大纲

2013年复习内容。一 概念类 形式 填空 选择 简答 简要绘图 1 软件 软件生命周期 软件工程 软件过程及经典过程模型 软件工程三要素 方法 工具 过程 1 软件 软件是计算机系统中与硬件相互依存的另一部分,它包括程序 相关数据及其说明文档。2 软件生命周期 问题定义 可行性研究 需求分析 总体...

软件工程复习

单选填空简答思考题。1 传统的软件瀑布生命模型包括哪六个方面?需求 分析 设计 实现 交付后维护 退役2 传统瀑布生命模型的中交付后维护包括哪三种?改正性维护 适应性维护 完善性维护3 现代维护和传统维护的观点有何不同?1 传统维护的观点是先开发后维护。2 现代维护的观点是无论是在软件安装前还是安装...

软件工程复习

软件工程复习资料。备注 1.老师反复强调我们之前做过的作业要熟练掌握 需求陈述 实验课画的模型 自己画。的数据流图 2 蓝颜色的字都是老师上课补充的,还有很多需要自己去补充,欢迎修正完善。核心问题 在考试做大是要表述清楚详细,关。键词要有 问题定义 专用名词表要解决的问题是什么?达要准确,不能更改 ...