山东大学-软件过程与管理复习重点整理
1. 1.IDEALIDEAL 模型包含那几个阶段及含义?模型包含那几个阶段及含义? IDEAL 模型解决了软件组织在各种质量改进环境下的需要,包括了软件过程改进周期 中的五个阶段 I: Initiating 开始 D: Diagnosing 诊断、评价 E: Establishing 建立 A: Acting 执行 L: Leveraging 调整 2. 2.CMM/CMMICMM/CMMI、、PSPPSP、、TSPTSP、、RUPRUP、、XPXP、、SCRUMSCRUM、、PDCAPDCA、、MSGMSG、、SEPGSEPG、、WBSWBS、、SPISPI CMM:软件能力成熟度模型。五个级别:初始级、可重复级、已定义级、已经管理级、 优化级 CMMI:软件能力成熟度模型集成(整合三个模型:SE-CM、SW-CMM、SDCE) PSP:个体软件过程(着重于软件开发人员的个人能力提升,体现在估算能力、计划能 力、计划执行以及质量管理等方面) TSP:团队软件过程(能够提供:①一个已经定义的团队构建过程②一个团队作业框架 ③一个有效的管理环境) RUP:统一过程(6 条开发经验“最佳实践” :迭代式开发、管理需求、使用基于构件 的体系结构、可视化建模、验证软件质量、控制软件变更) XP:极限编程(是敏捷过程中最负盛名的一个,有效实践有:重构、使用隐喻、 TDD、 验收测试、结对编程) SCRUM:是一种迭代式增量软件开发过程,通常用于敏捷软件开发 PDCA:Plan-Do-Check-Action计划-执行-检查-行动/戴明环 MSG:管理层指导组 SEPG:软件工程过程组 WBS:工作分解结构(以可交付成果为导向的对满足项目目标和开发交付产物的项目 相关工作进行的分解) SPI:软件过程改进 3. 3.软件过程与软件质量的关系软件过程与软件质量的关系 软件工程是为了以一种高效的方式提供高质量的软件产品的工程学科。 以往的经验和理 论表明,产品的质量取决于过程的质量。 只有很好地控制了生产过程的质量, 才能获得高质 量的产品。软件的开发效率也部分取决于软件过程的效率。 1)低劣的设计是导致在软件开发中返工、不易维护以及用户不满的主要原因。 2)充分设计可以显著减少最终程序的规模,提升质量。 3)设计本身也是一种排错的过程 4. 4.PROBEPROBE 估算产品规模的基本流程估算产品规模的基本流程 5. 5.相关性和显著性描述什么相关性和显著性描述什么 相关性——描述的是两组变化的数据之间相互关联的程度。 显著性——描述的是两组数据的相关关系出现的偶然程度,显著性越小越好。 6. 6.应用应用 PROBEPROBE 方法估算规模时,方法估算规模时,A A,,B B,,C C,,D D 四类方法的数据要求是什么四类方法的数据要求是什么 7. 7.质量指标的含义和计算质量指标的含义和计算 ① Yield指标:用来度量每个阶段在消除缺陷方面的效率 Phase Yield(某个阶段缺陷消除的效率)= 100 * (某阶段发现的缺陷个数)/(某阶段注入的缺陷个数+进入该阶段前遗留的缺陷个数) Process Yield(第一次编译之前消除缺陷的效率)= 100 * (第一次编译前发现的缺陷个数)/(第一次编译前注入的缺陷个数); ② A/FR :用以指导软件工程师合理安排评审和测试时间的指标 = PSP 质检成本/PSP 失效成本 (1)理论上,A/FR 的值越大,往往意味着越高的质量。 (2)过高的 A/FR 往往意味着做了过多的评审,反而会导致开发效率的下降。 (3)在 PSP 中 A/FR 的期望值就是 2.0 ③ PQI:用以度量 PSP 过程的整体质量 =设计质量*设计评审质量*代码评审质量*代码质量*程序质量 设计质量:设计的时间应该大于编码的时间 设计评审质量:设计评审的时间应该大于设计时间的50% 代码评审质量:代码评审时间应该大于编码时间的50% 代码质量:代码的编译缺陷密度应当小于10 个/千行 程序质量:代码单元测试缺陷密度应当小于5 个/千行 ④ Review Rate 评审速度:用以指导软件工程师开展有效评审的指标 (PSP 中,代码评审速度小于200 LOC/小时,文档评审速度小于4 Page/小时) ⑤ DRL 缺陷消除效率比:度量不同缺陷消除手段消除缺陷的效率 =其他阶段每小时发现的缺陷数/该测试阶段每小时发现的缺陷数 8. 8.两阶段小组评审的过程,如何估算小组评审之后评审对象遗留的缺陷数两阶段小组评审的过程,如何估算小组评审之后评审对象遗留的缺陷数 (1) 小组评审只有两个人参加。 假设评审人员 A 和 B 分别发现了 a 个缺陷和 b 个缺陷, 其中 c 个缺陷两人同时发现。利用捕鱼(统计学中经典的估算池塘中鱼总数的方法, 即先捕 一网,对所有捕获的鱼进行标记,再将鱼放回池塘,过一段时间,再捕一网,那么通过该网 中被标记的鱼的数目和未被标记的鱼的数目比例,即可大致测算整个池塘的鱼总数的方法。 这个是解释,考试不用谢。打字手疼。 )的思想,选择a-c 和 b-c 中较大值,如果相等则可以 任选一值。假设 a-c 是选定的值,那么就可以估算出评审对象经过小组评审之后,还遗留 a*b/c-(a+b-c)个缺陷。 (2)小组有多人参加。小组评审如果有多人参与,那么情况就会相对复杂,我们采取 一个简化的计算方法, 即选择某个独立发现缺陷最多的评审员作为A, 而其他所有参与人员 的整体作为 B。 那么我们仍然可以使用上述的方式来估算小组评审之后评审对象中遗留的缺 陷数。 9. 9.失效成本、质检成本、预防成本的差异失效成本、质检成本、预防成本的差异 是质量成本的三个组成部分 失效成本——分析失效现象、查找原因、做必要的修改所消耗的成本。 质检成本——评价软件产品,确定其质量状况所消耗的成本。 预防陈本——识别缺陷根本原因、采取措施预防其再次发生所消耗的成本。 为了操作方便,在PSP 中对上述定义稍作简化,PSP 中主要关注失效成本和质检成本, 而预防成本一般包含在总结阶段以及平时评审检查表的维护中,因此,不专门进行计算。 PSP 中定义的失效成本为编译时间和单元测试时间之和, PSP 中定义的质检成本为设计评审 时间与代码评审时间之和 10.10. PSPPSP 中各设计模板的作用中各设计模板的作用 操作规格模板 OST :描述系统与外界的交互,可以用来定义测试场景和测试用例,也 可以作为和系统用户讨论需求的基础 功能规格模板 FST :描述系统对外的接口,是一种静态信息的描述 状态规格模板 SST: 可以精确定义程序的所有的状态、 状态之间的转换以及伴随着每次 状态转换的动作 逻辑规格模板 LST:可以精确描述系统的内部静态逻辑。 (为了消除描述的二义性,一 般建议用伪代码配合形式化符号来描述设计结果) 11.11. 正确的状态机设计应该满足哪些要求正确的状态机设计应该满足哪些要求(完整性和正交性) 状态转换完整性:对于状态机中任何一个状态, 对应的所有条件组合, 下一个状态的转 换都有定义。 状态转换正交性: 对于状态机中任何一个状态, 其所有下一个状态的转换条件不