-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy path第四章错题.html
20 lines (19 loc) · 14.7 KB
/
第四章错题.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<html>
<head>
<title>第四章错题</title>
<basefont face="微软雅黑" size="2" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="exporter-version" content="Evernote Windows/307425 (zh-CN, DDL); Windows/10.0.0 (Win64);"/>
<style>
body, td {
font-family: 微软雅黑;
font-size: 10pt;
}
</style>
</head>
<body>
<a name="667"/>
<h1>第四章错题</h1>
<div>
<span><div><div><span style="font-size: 11pt;">软件过程模型:</span></div><div><span style="font-size: 11pt;">瀑布模型:容易理解,管理成本低;强调开发早期计划及需求调查;客户必须完整、正确表达需求</span></div><div><span style="font-size: 11pt;">增量模型:软件可以快速交付,可以减少用户需求变更,承担风险小,可维护性高;不足必须对用户的变更要求进行规划,否则造成后来增量不稳定。</span></div><div><span style="font-size: 11pt;">演化模型:适合对软件需</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">求缺乏准确认识情况</span><span style="font-size: 11pt;">,演化模型有 原型和螺旋。</span></div><div><span style="font-size: 11pt;">螺旋模型:唯一一个</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">增加了风险分析</span><span style="font-size: 11pt;">的模型,周期分为 制定计划,风险分析,实施工程,用户评估</span></div><div><br/></div><div><span style="font-size: 11pt;">根据软件工程活动对软件工具分类,</span><span style="font-size: 11pt; color: rgb(156, 0, 76);">逆向工程</span><span style="font-size: 11pt;">属于</span><span style="font-size: 11pt; color: rgb(227, 0, 0);"> 维护工具</span></div><div><br/></div><div><span style="font-size: 14pt;"><span style="font-size: 14pt; color: rgb(255, 0, 0);">**</span>审评:</span></div><div>对<span style="color: rgb(255, 0, 0);">功能结构</span>审评,必须明确<span style="color: rgb(188, 0, 88);">数据结构</span>,需要检查 <span style="text-decoration: underline;">数据结构,功能结构,数据结构与功能结构之间的对应关系</span></div><div>对<span style="color: rgb(227, 0, 0);">模块结构</span>:<span style="text-decoration: underline;">控制流结构,数据流结构,模块结构与功能结构对应关系</span>。</div><div><br/></div><div><br/></div><div><span style="font-size: 14pt;">配置管理</span>:用于整个软件工程过程。主要目标是标识变更,控制变更,确保变更正确的实现 <span style="color: rgb(255, 0, 0);">软件配置项、版本控制、变更控制</span></div><div><font>有效的变更控制,需要借助配置数据库和基线的概念。</font></div><div>配置数据库:<b><font style="color: rgb(255, 0, 0);">开发库、受控库、产品库</font></b>。</div><div>开发库称为动态库、程序员库或工作库,用于保存开发人员当前正在开发的配置实体。</div><div>受控库也称为主库,包括当前基线加上对基线的变更。</div><div>产品库也称为静态库、发行库、软件仓库,包含已发布使用的各种基线的存档。</div><div><span style="font-size: 14pt;">CMM(能力成熟模型):</span></div><div> 1)初始级:杂乱无章,没有明确定义步骤</div><div> 2) 可重复级: 建立项目管理过程和实践来<span style="color: rgb(227, 0, 0);">跟踪项目费用、进度、功能</span></div><div><span style="color: rgb(227, 0, 0);"> </span><span style="color: rgb(227, 0, 0);"> </span> 3)已定义级:定义完整的文档,管理的技术给出明确定义,引用CASE环境提高质量和产生率</div><div> 4)管理级: 设定质量和生产目标。</div><div> 5)优化级: 通过过程反馈和新观念,新技术的反馈使过程不断持续改进。</div><div>CMMI(能力成熟度集成模型)共有6(0--5)个能力等级分别对应如下:</div><ul><li><div>等级0 <b><font style="color: rgb(227, 0, 0);">未执行过程</font></b>,表明过程域的一个或多个特定目标<font style="color: rgb(227, 0, 0);">没有被满足</font></div></li><li><div>等级 1 <font style="color: rgb(227, 0, 0);">已执行级 </font> 指过程通过转化可识别输入工作产品,产生可识别的输出工作产品,<font style="color: rgb(227, 0, 0);">关注过程域的特定目标的完成。</font></div></li><li><div> 等级 2 <font style="color: rgb(227, 0, 0);">已管理级 </font> 指过程作为已管理的过程制度化,针对<font style="color: rgb(227, 0, 0);">单个过程</font>实例的<font style="color: rgb(227, 0, 0);">能力</font></div></li><li><div>等级 3 <font style="color: rgb(227, 0, 0);">已定义级</font> 过程作为已定义的过程制度化,关注过程的<font style="color: rgb(227, 0, 0);">组织级标准化和部署</font>。</div></li><li><div> 等级4 <font style="color: rgb(227, 0, 0);">量化管理级</font> 指过程作为<font style="color: rgb(227, 0, 0);">定量管理</font>的过程制度化;</div></li><li><div>等级 5 <font style="color: rgb(227, 0, 0);">优化级 </font> 指过程作为<font style="color: rgb(227, 0, 0);">优化</font>的过程制度化,表明过程得到很好地执行且<font style="color: rgb(227, 0, 0);">持续的改进</font></div></li></ul><div><span style="font-size: 12pt;">非功能需求: 对软件产品的相应</span><span style="font-size: 12pt; color: rgb(227, 0, 0);">时间</span><span style="font-size: 12pt;">、</span><span style="font-size: 12pt; color: rgb(255, 0, 0);">吞吐率</span><span style="font-size: 12pt;">、价格等属性要求</span>。</div><div><br/></div><div><span style="font-size: 14pt;">软件模块传入传出: </span></div><div><span style="font-size: 11pt;">传入 指的是从下级模块获得数据,处理后返回给上级。</span></div><div><span style="font-size: 11pt;">传出 指的是从上级模块获得数据,处理后返回给下级</span></div><div><span style="font-size: 11pt;">转换 从上级的获得数据,经过特定处理,转换成其他形式 返回给上级</span></div><div><br/></div><div><span style="font-size: 14pt;">模块作用范围:</span></div><ol><li><div>一<span style="font-size: 11pt;">个模块的作用范围 指受该模块内</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">一个判定影响</span><span style="font-size: 11pt;">的</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">所有</span><span style="font-size: 11pt;">模块的</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">集合</span><span style="font-size: 11pt;">。</span></div></li><li><div><span style="font-size: 11pt;">一个模块的控制范围 指模块本身以及所有下属模块的集合</span></div></li><li><div><span style="font-size: 11pt;">一个模块的作用范围应在其控制范围之内,且</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">判定所在的模块</span><span style="font-size: 11pt;">应在其影响的模块在</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">层次上</span><span style="font-size: 11pt;">尽量靠近。(通过 </span><span style="font-size: 11pt; color: rgb(255, 0, 0);">上移判定点</span><span style="font-size: 11pt;">,下</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">移受判定影响的模块</span><span style="font-size: 11pt;">)</span></div></li></ol><div><span style="font-size: 14pt;">统一过程(UP)</span></div><div><span style="font-size: 11pt;">它是一种用例和风险驱动,以架构为中心,迭代并且增量的开发过程。</span></div><div><span style="font-size: 11pt;">包含四个阶段 </span></div><div><span style="font-size: 11pt;"> 1)</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">起始阶段</span><span style="font-size: 11pt;"> 专注项目的初创活动,产生的主要工作产品有 文档、初级用例模型、业务模型。 它的里程碑 <font style="color: rgb(227, 0, 0);">生命周期目标</font></span></div><div><span style="font-size: 11pt;"> 2)</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">精化阶段</span><span style="font-size: 11pt;">: 理解最初的领域范围之后进行<font style="color: rgb(227, 0, 0);">需求分析和架构演进 </font>产品有用例模型、分析模型、初始的设计模型、修订的风险列表、项目计划以及初始用户手册。它的里程碑是 <font style="color: rgb(227, 0, 0);">生命周期框架</font></span></div><div><span style="font-size: 11pt;">3)</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">构建阶段</span> <span style="font-size: 11pt;">:关注系统的构建,产生实现模型。产品有 设计模型、软件构件、测试计划及步骤、测试用例以及支持文档。 它的里程碑是<font style="color: rgb(227, 0, 0);"> 初始运作功能</font></span></div><div><span style="font-size: 11pt;">4)</span> <span style="font-size: 11pt; color: rgb(227, 0, 0);">移交阶段</span> <span style="font-size: 11pt;">: 关注于软件提交方面的工作,产生软件增量。产品 有 提交的软件增量、测试报告和综合用户反馈。它的里程碑是 <font style="color: rgb(227, 0, 0);">产品发布</font></span></div><div><span style="font-size: 14.6667px;">每次迭代有 <font style="color: rgb(227, 0, 0);">5个核心</font>工作流: 需求工作流,精化和结构需求的分析工作流,设计工作流、构建软件实现、测试工作流,</span></div><div><br/></div><div><span style="font-size: 11pt; font-weight: bold;">Gant图 与Pert图</span><span style="font-size: 11pt;">:甘特图是一种能</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">清晰描</span><span style="font-size: 11pt;">述每个任务的</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">开始和截止</span><span style="font-size: 11pt;">,能有效获得</span><span style="font-size: 11pt; color: rgb(255, 0, 0);">任务并行进行</span><span style="font-size: 11pt;">的信息的项目管理工具。</span></div><div><br/></div><div><span style="font-size: 14.6667px;">软件过程改进(SPI):它的实施</span><span style="font-size: 14.6667px; color: rgb(255, 0, 0);">对象是</span><span style="font-size: 14.6667px;">软件企业的</span><span style="font-size: 14.6667px; color: rgb(255, 0, 0);">软件过程</span><span style="font-size: 14.6667px;">,也就是</span><span style="font-size: 14.6667px; color: rgb(255, 0, 0);">软件产品</span><span style="font-size: 14.6667px;">的生产过程,也</span><span style="font-size: 14.6667px; color: rgb(227, 0, 0);">包含维护之类</span><span style="font-size: 14.6667px;">的过程,而对于其他的过程并不关注。不是一次性就能达到最终目标,而是</span><span style="font-size: 14.6667px; color: rgb(227, 0, 0);">需要反复进行</span><span style="font-size: 14.6667px;">。在软件过程改进时,如果发现问题,</span><span style="font-size: 14.6667px; color: rgb(255, 0, 0);">需要转化为软件过程改进计划</span><span style="font-size: 14.6667px;">。</span></div><div><br/></div><div><span style="font-size: 14pt;">测试</span></div><div><span style="font-size: 11pt;">一个好的测试用例可能发现至今为止尚未发现的错误的测试用例。一次成功的测试用例是发现至今为止尚未发现的错误的测试,一个高效的测试是指用少量测试用例,发现被测软件尽可能多的错误。软件测试</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">不能说明</span><span style="font-size: 11pt;">软件中不</span><span style="font-size: 11pt; color: rgb(227, 0, 0);">存在错误</span><span style="font-size: 11pt;">。</span></div><div><span style="font-size: 14pt;">一个测试用例</span><span style="font-size: 14pt; color: rgb(227, 0, 0);">只能</span><span style="font-size: 14pt;">覆盖</span><span style="font-size: 14pt; color: rgb(255, 0, 0);">一个</span><span style="font-size: 14pt;">无效等价类</span></div><div><span style="box-sizing: border-box; outline: 0px; cursor: pointer; word-break: break-all; font-size: 16px; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; font-family: "PingFang SC", "Microsoft YaHei", SimHei, Arial, SimSun; font-variant-caps: normal; font-variant-ligatures: normal;">其中,</span><span style="box-sizing: border-box; outline: 0px; cursor: pointer; word-break: break-all; font-size: 16px; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); font-family: "PingFang SC", "Microsoft YaHei", SimHei, Arial, SimSun; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: bold;">自底向上策略通过不断合并底层模块来测试更高层模块的方式进行</span><span style="box-sizing: border-box; outline: 0px; cursor: pointer; word-break: break-all; font-size: 16px; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; font-family: "PingFang SC", "Microsoft YaHei", SimHei, Arial, SimSun; font-variant-caps: normal; font-variant-ligatures: normal;">。在该方法中,需要写驱动程序来调用待测试的底层模块,主要的设计问题需要到测试后期才能发现</span><span style="box-sizing: border-box; outline: 0px; cursor: pointer; word-break: break-all; font-size: 16px; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; font-family: "PingFang SC", "Microsoft YaHei", SimHei, Arial, SimSun; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: bold;">。由于从最底层的模块开始测试,因此过程中不需要写桩模块。当测试过程中发现错误时,需要进行回归测试</span><span style="box-sizing: border-box; outline: 0px; cursor: pointer; word-break: break-all; font-size: 16px; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; font-family: "PingFang SC", "Microsoft YaHei", SimHei, Arial, SimSun; font-variant-caps: normal; font-variant-ligatures: normal; font-weight: bold;">。</span></div></div><div><br/></div><div><span style="font-size: 14pt;">黑盒测试技术: 等价类划分、边界值分析、错误推测和因果图等。</span></div></span>
</div></body></html>