软件工程期末考试主要知识点电子版

上传人:第*** 文档编号:37044055 上传时间:2018-04-06 格式:DOC 页数:4 大小:39.50KB
返回 下载 相关 举报
软件工程期末考试主要知识点电子版_第1页
第1页 / 共4页
软件工程期末考试主要知识点电子版_第2页
第2页 / 共4页
软件工程期末考试主要知识点电子版_第3页
第3页 / 共4页
软件工程期末考试主要知识点电子版_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《软件工程期末考试主要知识点电子版》由会员分享,可在线阅读,更多相关《软件工程期末考试主要知识点电子版(4页珍藏版)》请在金锄头文库上搜索。

1、4.七条基本原理:(1)用分阶段的生命周期计划严格管理;(2)坚持进行阶段评审;(3)实行严 格的产品控制;(4)采用现代程序设计技术;(5)结果应能清楚地审查;(6)开发小组的人员应 该少而精;(7)承认不断改进软件工程实践的必要性。 10、RUP 是 Rational 软件公司进过多年的商业化经验的六条最有效的软件按开发经验:迭 代式开发、管理需求、使用基本构件的体系结构、可视化建模、验证软件质量、控制软件 变更 11、.微软过程生命周期的阶段以及各阶段的里程碑:(1)规划阶段(项目目标得到认可);(2) 设计阶段(完成产品设计);(3)开发阶段(完成开发工作);(4)稳定阶段(准备好可发

2、布版本); (5)发布阶段(完成产品发布) 13、可行性研究的目的是用最小的成本在较短的时间内确定问题是否能够解决。 14. 对问题的每一种解法一般需要进行 1.技术可行性 2.经济可行性 3.操作可行性 4.法律 可行性 15. 在可行性研究阶段使用的描述工具有哪些?系统流程图,数据流图,数据字典。 16. 系统流程图:是概括地描述物理系统的传统工具表达的是数据在系统各部件之间的、 流动的情况。其基本思想是用图形符号从黑盒子描绘组成系统的各个部件(程序、文 档、数据库、人工过程等)数据流图:是一个图形化技术,它描述信息流和数据从输 入一点到输出的过程中所经受的变换。数据字典:关于数据的信息的

3、集合,即对数据 流图中包含的所有元素的定义的集合 17. 数据流图仅反映系统必须完成的逻辑功能,所以只是描绘数据在软件中流动和被处理 的逻辑过程 18. 数据字典的基本元素:数据流、数据元素、数据存储、处理 21. 在进行成本效益分析时首先需要估计成本。成本估计可以使用那些技术?代码行技 术、任务分解技术、自动估计成本技术 22. 需求分析阶段的具体任务是什么?确定对系统的综合要求、分析系统的数据要求;导 出系统的逻辑模型;修正系统开发计划 23. 需求分析最终结果是什么体现的?分析模型、软件需求规格说明书 24. 需求分析阶段完成的文档有哪些?分析模型、软件需求规格说明书 25. 需求分析阶

4、段使用的图形工具有哪些?数据流图、E-R 图、状态转换图、层次方框图、 watnier 图、IPO 图 26. 在大型数据处理系统的功能分析与设计中,数据库的概念设计对应于系统开发的哪个 阶段?对应需求分析阶段 27. 最常用的表示概念性数据模型的方法是什么?E-R 图 28. 一般说来,应该从哪几个方面来验证需求分析的正确性?一致性、完整性、现实行、 有效性 29. 什么有穷状态机?有穷状态机有何作用?有穷状态机又哪几部分组成?有穷状态机: 一个 5 元组(JKTSF)J 有穷非空状态集 K 有穷的非空输入集 T 是一个从(J-F)*K 到 J 的转换函数、S 属于 J,初始状态。FJ,终态

5、集 30. 用形式化方法描述系统规格说明有什么好处?可以准确地描述一个系统,因此是表现 规格说明的一种形式化方法。好处:1、能够简洁准确地描述物理现象、对象或动作的 结果 2、可以在不同的软件工厂活动之间平滑地过渡 3、提供了高层确认的手段 31、总体设计过程的两个主要阶段:1.系统设计阶段,确定系统的具体实现方案。2、结构 设计阶段,确定软件结构。 32、总体设计过程应遵循的设计原理:模块化、抽象、逐步求精、信息隐藏和局部化、模 块独立 33、耦合:是对一个软件结构内不同模块之间互连程度的度量 内聚:标志着一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自 然扩展。 模块的作

6、用域:受该模块内一个判定影响的所有模块的集合 模块的控制域:这个模块本身以及所有直接或间接从属于它的模块的集合 34、功能模块是最高程度的内聚。功能顺序通信过程时间逻辑偶然 35、尽量使用数据耦合,少用控制耦合和特性耦合 36、模块独立性:具有独立功能而且和其他模块之间没有过多的相互作用的模块。 37、模块的独立程度可以用内聚和耦合来衡量。 38、391、改进软件结构提高模块独立性(通过模块分解合并软件的初步结构,力求降低 耦合,提高内聚) 2、模块规模应适中(过大的模块往往分解不充分,但进一步分解必须 符合问题结构,过小的模块开销大于有效操作,而且模块数目过多将使系统接口复杂) 3、深度、宽

7、度、扇出和扇入都应该适当(深度表示软件结构中控制的层数,宽度是软件结 构内同一个层次上的模块总数的最大值,扇出是一个模块直接控制的模块数目,扇入表明多少个上级模块直接调用它) 4、模块的作用域应该在控制域之内 5、力争降低模块的接 口的复杂程度(模块接口复杂是软件发生错误的一个重要的原因) 6、设计单入口单出口 的模块 7、模块功能应该可以预测 40、软件结构图中的模块扇入能反映程序重用率,扇入越大则共享该模块的上级模块的上 级模块数目越多 41、软件结构图方框的直线表示调用关系,而不像层次方框图那样表示组成关系 42、信息流可以分为以下两类:交换流、事务流 43、变换分析:一系列设计步骤的总

8、称,经过这些步骤把具有交换流特点的数据流图按预 定确定的模式映射成软件结构 事务分析:当在数据流具有明显的事务特点时候,就应该采用此方法。 44、1、复查基本系统模型 2、复查并精化数据流图 3、确定数据流图具有变换特性还是事 务特性 4 确定输入流和输出流的边界,从而孤立出变换中心 5、完成“第一级分解” 6、 完成“第二级分解” 7、使用设计衡量和启发式规则对第一次分割得到的软件结构进一步 精化 49、软件详细设计的主要任务:确定怎样具体地实现用户需要的软件系统 50、结构程序设计的概念最早由 E.W.Dijkstra 提出 51、结构设计的基本特点:1,以三种基本结构的组合描述程序 2,

9、个程序使用模块话结构 3,有限制的使用转移语句 4,以控制结构为单位,每个结构只有一个入口一个出口,各单 位之间接口简单逻辑清晰 5,采用结构化程序设计语言书写程序,并采用一定的书写格式 使程序结构清晰易于阅读 6,注意程序设计风格。 52、设计人机界面应该考虑的四个设计问题:系统响应时间,用户帮助设施,出错信息处 理,命令交互 53、设计人机界面时有哪些可供借鉴的经验?1,一般交互指南 2,信息指示指南 3,数据 输入指南 54、对用户设计的人机界面的模型进行早期复审的评估标准有:1,系统及其界面的规格说 明书的长度和复杂程序,预示了用户学习使用该系统所需要的工作量 2,命令或动作的数 量,

10、命令的平均参数个数或动作中单个操作的个数,预示了系统的交互时间和总体效率 3,设计模型中包括的动作,命令和系统状态的数量,预示了用户学习使用该系统时需要记 忆的内容的多少 4,界面风格帮助设施和出错处理协议,预示了界面的复杂程序及用户接 受该界面的程度。 55、在详细设计阶段使用的图形工具有哪些?程序流程图,盒图,PAD 图(判定表,判定 树,过程设计语言) 56、PAD 图的优点:1,使用表示结构化控制结构的 PAD 符号所设计出来的程序必然是结 构化程序 2,PAD 图所描绘的程序结构十分清晰 3,用 PAD 图表现程序逻辑易读易懂易记 4,容易将 PAD 图转换成高级语言源程序 5,既可

11、用于表示程序逻辑,也也可用于描绘数 据结构 5,PAD 图的符号支持自顶向下逐步求精方法的使用。 57、 面向数据结构的程序设计方法有哪些?Jackson 方法和 Warnier 方法 58、. Jackson 方法是一种什么样的程序设计方法?分析并确定输入数据和输出数据的逻 辑结构,并用 Jackson 图描绘这些数据结构。找出输入数据结构和输出数据结构中有 对应关系的数据单元 59、. 简述 Jackson 图的基本功能。便于表示层析节后,而且是对结构形象自向下分解的 有力工具。 61. 广泛使用的程序复杂度的定量度量方法有哪些?McCabe 方法 Halstead 方法 62. 怎样计算

12、程序的环形复杂度 V(G)?3 种方法 流图中的区域数等于环形复杂度。流图 G 的环形复杂度 V(G)=E-N+Z,其中 E 是流图中边的条数,N 是结点数。流图 G 的 环形复杂度 V(G)=P+1,其中 P 是流图中判定结点的数目。 63. 实践表明,环形复杂度 V(G)等于 10 是模块规模的合理上限 64. 把程序流程图中处理框退化为点,连接不同处理框的箭头视为连接不同点的有向孤, 这样得到的有向图称为什么?程序流程图流图 75、. 好的程序除了功能正确以外,还有哪些重要标准?软件的可靠性、可读性好,容易 理解,容易测试,容易修改和维护 76、 什么是程序图?实质上“退化了的”程序流程

13、图,它仅仅描绘程度的控制流程,完全 不表现对数据的具体操作及分支或循环的具体条件 77、为了使源程序代码逻辑简明清晰、易读易懂,应该遵循那些编码规则?程序内部文档、 数据说明、语句构造、输入输出、效率。 78、对于结构化编程来说,选择高级语言时应该考虑哪些因素?1,理想的模块化机制 2, 可读性好的控制结构和数据结构 3,编译程序应该尽可能多地发现程序中的错误 4,有良好 的独立编译机制 5 系统用户的要求 6,可以使用的编译程序 7,可以得到的软件工具 8,工程规模 9,程序员的知识 10,软件可移植性要求 11,软件的应用领域 80、软件测试的目标:暴露程序的错误。 81、软件测试的标准:

14、1,所有测试都应该能追溯的用户要求 2,应该远在测试开始之前就 制定出测试计划 3,把 Pareto 原理应用到软件测试中 4,应该从小规模测试开始,并逐步 进行大规模测试 5,穷举测试是不可能的 6,为了达到最佳的测试效果,应该由独立的第三 方从事测试工作。 82、黑盒测试:如果已经知道了产品应该,具有的功能,可以通过测试来检验是否每个功 能都能正常使用,是功能测试,是在程序接口进行的测试。 白盒测试:如果知道产品的内部工作过程,可以通过测试来检验产品内部动作是否按照规 格说明书的规定正常进行,是结构测试 83、软件测试的步骤:1,模块测试(单元测试) 2,子系统测试(模块相互间的协调和通信

15、)3,系统测试 4,验收测试(确认测试)用户 积极参与下才进行的,目的在于验证系统确定能够满足用户的需求 5,平行运行 84、大型软件的测试应至少分为哪几个基本阶段?1,单元测试 2,集成测试 3,验收测试 85单元测试的重点:模块接口、局部数据结构、重要的执行通路、出错处理通路、边界 条件 86、渐增式集成测试有:自顶向下和自底向上两种策略 87、Alpha 测试由用户在开发者的场所进行,并且在开发者对用户的“指导”下进行测试, 在受控的环境中进行的;Beta 测试:由软件的最终用户们在一个或多个客户场所进行,不 受控的环境下进行的。这两种测试在验收测试阶段中使用的 88、测试的任务是设法确

16、定错误的准确位置并且改正它 89 软件可靠性:是程序在给定的时间间隔内,按照规格说明书的规定成功的运行的概率。 92、黑盒测试的技术主要有:等价划分、边界值分析、错误推测 93、白盒测试技术主要有:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆 盖、点覆盖、边覆盖、路径覆盖 94、对分法的基本思路:如果知道每个变量在程序内若干个关键点的正确值,则可以用赋 值语句或输入语句在程序中点附近“注入“这些变量的正确值,然后运行程序并检查所得 到的输出,如果输出结果是正确的,则错误在程序的前半部分。反之,错误原因在程序的 后半部分。对错误原因所在的那部分在重复使用这个方法,直到把错误范围缩小到容易诊 断的程度为止 95、估计软件中隐含故障总数的意义:因为该故障既直接标记软件的可靠程度,又是计算 软件平均无故障时间的重要参数 96 植入故障法:在测试之前有程序中随机地植入一些错误,测试之后根据测试小组发现的 错误中的原有的和植入的两种错误的比例,来估计程序中原有错误的总数 Et。 分别测试法:使用两个测试员,彼此独立地测试同一个程序的两个副本,把其中一个测试 员发现

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号