山东大学-软件过程与管理复习重点整理

上传人:jiups****uk12 文档编号:37689880 上传时间:2018-04-21 格式:DOC 页数:7 大小:1.01MB
返回 下载 相关 举报
山东大学-软件过程与管理复习重点整理_第1页
第1页 / 共7页
山东大学-软件过程与管理复习重点整理_第2页
第2页 / 共7页
山东大学-软件过程与管理复习重点整理_第3页
第3页 / 共7页
山东大学-软件过程与管理复习重点整理_第4页
第4页 / 共7页
山东大学-软件过程与管理复习重点整理_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《山东大学-软件过程与管理复习重点整理》由会员分享,可在线阅读,更多相关《山东大学-软件过程与管理复习重点整理(7页珍藏版)》请在金锄头文库上搜索。

1、1.IDEAL 模型包含那几个阶段及含义?模型包含那几个阶段及含义? IDEAL 模型解决了软件组织在各种质量改进环境下的需要,包括了软件过程改进周期 中的五个阶段 I: Initiating 开始 D: Diagnosing 诊断、评价 E: Establishing 建立 A: Acting 执行 L: Leveraging 调整2.CMM/CMMI、PSP、TSP、RUP、XP、SCRUM、PDCA、MSG、SEPG、WBS、S PI CMM:软件能力成熟度模型。五个级别:初始级、可重复级、已定义级、已经管理级、 优化级 CMMI:软件能力成熟度模型集成(整合三个模型:SE-CM、SW-

2、CMM、SDCE) PSP:个体软件过程(着重于软件开发人员的个人能力提升,体现在估算能力、计划 能力、计划执行以及质量管理等方面) TSP:团队软件过程(能够提供:一个已经定义的团队构建过程一个团队作业框 架一个有效的管理环境) RUP:统一过程(6 条开发经验“最佳实践”:迭代式开发、管理需求、使用基于构 件的体系结构、可视化建模、验证软件质量、控制软件变更) XP:极限编程(是敏捷过程中最负盛名的一个,有效实践有:重构、使用隐喻、 TDD、验收测试、结对编程) SCRUM:是一种迭代式增量软件开发过程,通常用于敏捷软件开发 PDCA:Plan-Do-Check-Action 计划-执行-

3、检查-行动/戴明环 MSG:管理层指导组 SEPG:软件工程过程组 WBS:工作分解结构(以可交付成果为导向的对满足项目目标和开发交付产物的项目 相关工作进行的分解) SPI:软件过程改进3.软件过程与软件质量的关系软件过程与软件质量的关系 软件工程是为了以一种高效的方式提供高质量的软件产品的工程学科。以往的经验和 理论表明,产品的质量取决于过程的质量。只有很好地控制了生产过程的质量,才能获得 高质量的产品。软件的开发效率也部分取决于软件过程的效率。 1)低劣的设计是导致在软件开发中返工、不易维护以及用户不满的主要原因。 2)充分设计可以显著减少最终程序的规模,提升质量。 3)设计本身也是一种

4、排错的过程4.PROBE 估算产品规模的基本流程估算产品规模的基本流程5.相关性和显著性描述什么相关性和显著性描述什么 相关性描述的是两组变化的数据之间相互关联的程度。 显著性描述的是两组数据的相关关系出现的偶然程度,显著性越小越好。6.应用应用 PROBE 方法估算规模时,方法估算规模时,A,B,C,D 四类方法的数据要求是什么四类方法的数据要求是什么7.质量指标的含义和计算质量指标的含义和计算 Yield 指标:用来度量每个阶段在消除缺陷方面的效率 Phase Yield(某个阶段缺陷消除的效率)=100 * (某阶段发现的缺陷个数)/(某阶段注入的缺陷个数+进入该阶段前遗留的缺陷个数)

5、Process Yield(第一次编译之前消除缺陷的效率)= 100 * (第一次编译前发现的缺陷个数)/(第一次编译前注入的缺陷个数); A/FR :用以指导软件工程师合理安排评审和测试时间的指标 = PSP 质检成本/PSP 失效成本 (1)理论上,A/FR 的值越大,往往意味着越高的质量。 (2)过高的 A/FR 往往意味着做了过多的评审,反而会导致开发效率的下降。 (3)在 PSP 中 A/FR 的期望值就是 2.0 PQI:用以度量 PSP 过程的整体质量 =设计质量*设计评审质量*代码评审质量*代码质量*程序质量 设计质量:设计的时间应该大于编码的时间 设计评审质量:设计评审的时间

6、应该大于设计时间的 50% 代码评审质量:代码评审时间应该大于编码时间的 50% 代码质量:代码的编译缺陷密度应当小于 10 个/千行 程序质量:代码单元测试缺陷密度应当小于 5 个/千行 Review Rate 评审速度:用以指导软件工程师开展有效评审的指标 (PSP 中,代码评审速度小于 200 LOC/小时,文档评审速度小于 4 Page/小 时) DRL 缺陷消除效率比:度量不同缺陷消除手段消除缺陷的效率 =其他阶段每小时发现的缺陷数/该测试阶段每小时发现的缺陷数8.两阶段小组评审的过程,如何估算小组评审之后评审对象遗留的缺陷数两阶段小组评审的过程,如何估算小组评审之后评审对象遗留的缺

7、陷数 (1)小组评审只有两个人参加。假设评审人员 A 和 B 分别发现了 a 个缺陷和 b 个缺 陷,其中 c 个缺陷两人同时发现。利用捕鱼(统计学中经典的估算池塘中鱼总数的方法, 即先捕一网,对所有捕获的鱼进行标记,再将鱼放回池塘,过一段时间,再捕一网,那么 通过该网中被标记的鱼的数目和未被标记的鱼的数目比例,即可大致测算整个池塘的鱼总数的方法。这个是解释,考试不用谢。打字手疼。 )的思想,选择 a-c 和 b-c 中较大值,如 果相等则可以任选一值。假设 a-c 是选定的值,那么就可以估算出评审对象经过小组评审 之后,还遗留 a*b/c-(a+b-c)个缺陷。 (2)小组有多人参加。小组评

8、审如果有多人参与,那么情况就会相对复杂,我们采取 一个简化的计算方法,即选择某个独立发现缺陷最多的评审员作为 A,而其他所有参与人 员的整体作为 B。那么我们仍然可以使用上述的方式来估算小组评审之后评审对象中遗留 的缺陷数。9.失效成本、质检成本、预防成本的差异失效成本、质检成本、预防成本的差异 是质量成本的三个组成部分 失效成本分析失效现象、查找原因、做必要的修改所消耗的成本。 质检成本评价软件产品,确定其质量状况所消耗的成本。 预防陈本识别缺陷根本原因、采取措施预防其再次发生所消耗的成本。 为了操作方便,在 PSP 中对上述定义稍作简化,PSP 中主要关注失效成本和质检成本, 而预防成本一

9、般包含在总结阶段以及平时评审检查表的维护中,因此,不专门进行计算。 PSP 中定义的失效成本为编译时间和单元测试时间之和,PSP 中定义的质检成本为设计评 审时间与代码评审时间之和10. PSP 中各设计模板的作用中各设计模板的作用 操作规格模板 OST :描述系统与外界的交互,可以用来定义测试场景和测试用例, 也可以作为和系统用户讨论需求的基础 功能规格模板 FST :描述系统对外的接口,是一种静态信息的描述 状态规格模板 SST:可以精确定义程序的所有的状态、状态之间的转换以及伴随着每 次状态转换的动作 逻辑规格模板 LST:可以精确描述系统的内部静态逻辑。 (为了消除描述的二义性,一 般

10、建议用伪代码配合形式化符号来描述设计结果)11. 正确的状态机设计应该满足哪些要求正确的状态机设计应该满足哪些要求(完整性和正交性) 状态转换完整性:对于状态机中任何一个状态,对应的所有条件组合,下一个状态的 转换都有定义。 状态转换正交性:对于状态机中任何一个状态,其所有下一个状态的转换条件不能相 同,简言之,在一个正确状态机中,任何一个状态,当对应的条件组合一样时,其下一个 状态必须唯一定义 验证方法: 1) 检验状态机,消除死循环和陷阱状态。 2) 检查状态转换,验证完整性和正交性。 3) 评价状态机,检验是否体现设计意图12. PSP 中验证设计主要有哪些方法?各有什么优势和不足中验证

11、设计主要有哪些方法?各有什么优势和不足 状态机验证: 符号化验证:将描述设计的逻辑规格(一般用伪代码程序表示)用代数符号来表示, 然后系统地开展分析和验证 步骤: 1)识别伪码程序中的关键变量2)将这些变量用代数符号表示,重写伪码程序 3)分析伪码程序的行为 优缺点:实施简单,可以给出一般化的验证结果,很多时候是唯一提供全面验证的方式 应用于验证复杂算法,特别是遗留系统的改造,来识别和理解原有的设计 不适用于有复杂逻辑的场合,纯手工的验证,容易引入一些人为的错误执行表验证:用一种有序的方法来跟踪伪码程序的执行状况,分析程序行为,从而验证设计 步骤: 1)识别伪码程序的关键变量; 2)构建表格,

12、表格左侧填入主要程序步骤,右侧填入关键变量; 3)初始化被选定的变量; 4)跟踪被选择的关键变量的变化情况,从而判断程序行为 优缺点:可以用以复杂逻辑的验证,实施简单,结果可靠每次只能验证一个用例,手工验证既耗时,容易出错跟踪表验证:是对执行表验证方法的一种扩充 步骤: 1)识别伪码程序的关键变量; 2)构建表格,表格左侧填入主要程序步骤,右侧填入关键变量; 3)初始化被选定的变量; 4)识别将伪码程序符号化的机会,并加以符号化; 5)定义并且优化用例组合; 6)跟踪被选择的关键变量的变化情况,从而判断程序行为正确性验证:将伪码程序当成数学定理,采用形式化方法加以推理和验证 步骤: 1)分析和

13、识别用例; 2)对于复杂伪码程序的结构,应用正确性检验的标准问题逐项加以验证; 3)对于不能明确判断的复杂程序结构,使用跟踪表等辅助验证13. 解释客户需求、产品需求和产品组件需求的区别和联系解释客户需求、产品需求和产品组件需求的区别和联系 客户需求:描述客户的期望。客户在实际工作中碰到了一些问题,希望通过软件系统 来帮忙解决这些问题,客户的这种解决问题的愿望,就是客户需求。 产品需求:描述开发团队所提供的解决方案。针对客户需求,开发团队设计出一个可 以帮助客户解决工作中碰到的问题的方案,该方案往往就表述为产品需求。 产品组件需求:描述组成产品的各个组件的需求价格。 联系: 产品需求是对客户需

14、求的一个提炼和精化,把客户需求真正表述为开发人员够理解的 语言,同样,产品需求需要进行验证,以确保客户的真实意图得到了体现。 产品组件需求与产品需求相比,这是在更细小的颗粒上,更为细致地描述了上述解决 方案中的某个组建的功能、性能、形式等。14. 产品集成有哪些典型的策略,优缺点是什么产品集成有哪些典型的策略,优缺点是什么 大爆炸集成策略:将所有已经完成的组件放在一起,进行一次集成测试用例最少,每个用例测试次数最少 难以定位缺陷位置,系统越复杂,规模越大,问题越突出 逐一添加集成策略:与大爆炸集成策略相反,采取一次添加一个组建的方式进行集成 很容易定位缺陷的位置 需要测试的用例最多,大量的回归

15、测试会消耗很多时间 集簇集成策略:是对逐一添加集成策略的改进,把有相似功能或者有关联的模块优 先进行集成,形成可以工作的组件,然后以组件为单位继续进行较高层次的集成 测试效率提升,可以尽早获得一些可以工作的组件,有利于其他组件测试工作的开展 缺点是过于关注个别组件,缺乏系统的整体观,不能尽早发现系统级的缺陷 扁平化集成策略:要求尽快构建一个可以工作的扁平化系统,优先集成高层的部件, 然后逐步将各个组件、模块的真正实现加入系统 可以尽早发现系统层面的缺陷 是为了确保完成系统,需要大量的打“桩” ,即提供一些直接提供返回值的伪实现, 不能覆盖整个系统应该处理的多种状态。15. 项目计划阶段需要制定

16、哪些计划?约定的内容是什么?项目计划阶段需要制定哪些计划?约定的内容是什么? 任务计划、日程计划、质量计划、风险计划 项目各项计划完成之后,需要与各类计划的相关干系人开展评审工作,解决计划中相 互矛盾与不一致的地方,并获得参与项目的各方对项目计划的承诺。 1)识别每一项计划所需支持,并与相关干系人协商承诺 2)记录所有的承诺,包括完整的承诺和临时的承诺,并确保由适当层次的人员签署 3)适时与资深管理人员一起审查承诺16. 什么是风险?风险应对的方法。什么是风险?风险应对的方法。 风险:可能会给项目目标的实现带来负面影响的潜在问题 风险转嫁:通过某种安排,在放弃部分利益的同时,将部分的项目风险转嫁到其他 的团队或者组织 风险解决:采取一些有效措施,使得风险的来源不再存在。是一种预防性的手段。 如针对面临的技术风险,采取技术调研、引进技术专家的手段,使得原有的风险来源不再 存在或者存在可能性极低。 风险缓解:容忍风险的存在,采取一些措施监控风险,不让风险对项目最终目标的 实现造成负面影响。需要制定

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

当前位置:首页 > 行业资料 > 其它行业文档

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