软件测试的组织和管理-51Testing.ppt
文本预览下载声明
软件测试的组织和管理 山东省软件评测中心 韩庆良 目标 与软件企业项目管理人员、测试管理人员对测试管理进行交流。 提高对测试工作、测试管理的重要性的认识,以改进我们的测试过程。 从理论角度来认识软件测试和测试管理。 主要内容 团队建设(组织结构、人员组成、规模、人员培训) 过程规划(软件过程、测试过程、测试的阶段、规划自己的过程) 测试过程实施(计划、设计、实施、执行、评估、缺陷跟踪) 过程改进(成熟度模型、改进) 测试工具 (一)团队建设 测试部门的组织形式 测试组的人员组成 测试组的规模 测试人员的培训 组织形式-常见测试组组织结构 烟囱测试组(小型) 烟囱测试组(大型) 集中测试组 IVV(独立验证与确认)测试组 SMT(系统方法与测试)组 组织形式-烟囱测试组 测试人员由临时人员组成,通常有2-5人组成,直接向项目经理负责。大型的组可以划分为几个小组,设测试经理。项目经理负责制定测试计划文档。企业没有正规的方法将测试程序、方法、相关的知识经验传递下去,测试质量难以保证。优点是成本低,不需要对测试人员提供培训、生活保障等服务。 组织形式-集中测试组 企业成立专职、独立的测试部门,通常由10-30人组成。集中测试组为每个项目配备几个全职的测试人员。部分企业中可能还负责执行项目中软件质量管理和性能规范制定的工作。可以将相关的知识、经验传递下去。 IVV组-组织形式 通常由软件开发组织之外的人员或其中的独立人员组成,如转包商。其参与检查、验证是否遵循标准、进行软件文档的质量保证检测,主要完成系统测试。可以将其看作一个最苛求的用户。 组织形式-SMT组 通常作为企业的内部顾问组的方式存在。主要负责方法及标准的知识交流、编制开发和测试指南、开发测试方法、测试工具评估与培训,其同不同的项目组进行协作,对其进行指导。通常不负责具体测试工作的执行。由软件专家组成。 组织形式-企业或项目组织结构样例 微软的项目组织 组织形式-企业或项目组织结构样例 组织形式-企业或项目组织结构样例 人员组成-成功测试组的10大因素 业务知识:测试工程师应具备业务知识,并和用户紧密接触。 技术知识:熟悉所测试的产品用到的技术,并掌握测试工具、方法等相关技术。 任务划分:将业务任务和技术任务相互独立。 资源管理:业务资源和技术资源相互结合。 与开发组的关系:同开发人员协同工作。 生存周期早期介入:测试应在开发周期的早期介入。 测试过程:有成熟的测试过程管理规范。 灵活性/适应性:能够适应不同的测试项目。 度量:掌握度量的方法,以改进工作。 过程改进:应致力于工作的不断改进。 人员组成-测试组组成 测试经理:负责测试流程、沟通、测试工具的引入、人员管理、测试计划/设计/开发及执行。 测试组长:沟通、测试工具引入、人员管理、费用/过程状态报告、测试计划/设计/开发及执行。 测试工程师:执行测试计划,进行设计/开发及执行。 测试组规模-影响因素 企业文化或测试成熟度 测试需求范围 工程师技能水平 测试工具及应用水平 业务知识 组织形式 测试工作介入时间 测试组规模-确定方法(一) 开发比例法:根据开发人员数量按照一定比例来确定测试工程师的数量。开发人员指进行设计、开发、编译以及进行单元测试的人员。 测试组规模-确定方法(二) 百分比法:根据测试人员应该占到项目组中人员的百分比数量。 测试组规模-确定方法(三) 测试程序法:根据测试程序数量,以及每个程序可能的执行时间,计算出人小时,再根据完成周期计算测试组规模。 测试组规模-确定方法(四) 任务计划法:根据历史记录中类似项目工作量,比较新项目同历史项目的工作量,历史项目乘以相应的因子。 步骤:先将任务分解,根据历史记录乘以一个因子,计算出新项目的所以任务工作量。再根据该工作量和完成周期计算测试组规模。 人员培养-人员要求 适应各种环境的知识背景 学习速度快 组织能力 解决问题的能力 创造性 分析/编程能力 业务领域的知识 交流与协调能力 测试经验 关注细节 书写与语法技能 一个好的测试人员更难得 人员培养-成长的路径 初级测试工程师-测试工程师-高级测试工程师-测试组负责人-测试负责人-测试经理-产品/业务经理。 技术技能:测试工具\测试自动化编程\编程语言\操作系统\网络、数据库\测试生存周期 (1-2年) 测试过程:评审、制订和改进过程,指导初级工程师工作,了解业务领域。 (3-4年) 测试组工作:任务安排、跟踪和报告,监管测试工程师,掌握测试周期支持工具。(4-6年) 项目管理:管理项目,与客户交流,管理测试人员。(6-12年) 产品管理:项目或产品研发指导、促进产品销售、确定业务机会、承担盈亏责任。(12年以上) (二)测试过程规划 软件过程 测试过程 测试的阶段 规划测
显示全部