软件项目管理第三章PPT课件.ppt_第1页
软件项目管理第三章PPT课件.ppt_第2页
软件项目管理第三章PPT课件.ppt_第3页
软件项目管理第三章PPT课件.ppt_第4页
软件项目管理第三章PPT课件.ppt_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章软件开发过程管理 2 目录 2020 3 18 3 2020 3 18 3 1CMM和ISO9000 SW CMM和CMMIISO9000质量标准三者之间的比较 软件项目过程管理 4 2020 3 18 3 1 1SW CMM和CMMI 软件过程是指人们用于开发和维护软件及其相关产品的一系列活动 方法 实践和革新 软件开发过程管理是指在软件开发过程中 除了先进技术和开发方法外 还有一整套的管理技术 软件过程改进是针对软件生产过程中会对产品质量产生影响的问题而进行的 它的直接结果是软件过程能力的提高 现在常见的软件过程改进方法 ISO9000 SW CMM和由多种能力模型演变而来的CMMI 5 2020 3 18 SW CMM简介为了保证软件产品的质量 1991年美国卡内基 梅隆大学软件工程研究所 CMU SEI 将软件过程成熟度框架进化为软件能力成熟度模型 CapabilityMaturityModelForSoftware 简称SW CMM 并发布了最早的SW CMM1 0版 SW CMM为软件企业的过程能力提供了一个阶梯式的进化框架 阶梯共有五级 3 1 1SW CMM和CMMI 6 2020 3 18 1初始级 2可重复级 3已定义级 4已管理级 5优化级 无序 混乱的软件过程 依赖个别人的努力和机遇 建立基本的项目管理过程 相似项目 重复以往成果 文档化 标准化和标准的软件软件过程 软件过程和产品质量有详细的度量标准 持续的对过程进行改进 图CMM分级标准 3 1 1SW CMM和CMMI 7 2020 3 18 KPA及KP除第一级外 SW CMM的每一级都是按完全相同的结构组成的 每一级包含了实现这一级目标的若干关键过程域 KPA 每个KPA进一步包含若干关键实施活动 KP 无论哪个KPA 它们的实施活动都统一按六个公共属性进行组织 即每一个KPA都包含六类KP 1 目标2 实施保证3 实施能力4 执行活动5 度量分析6 实施验证 3 1 1SW CMM和CMMI 8 2020 3 18 CMMI简介由于不同领域能力成熟度模型存在不同的过程改进 重复的培训 评估和改进活动以及活动不协调等一些问题 于是由美国国防部出面 美国卡内基 梅隆大学软件工程研究所 CMU SEI 于2001年12月发布的CMMI1 1版本包括四个领域 软件工程 SW 系统工程 SE 集成的产品和过程开发 IPPD 采购 SS 3 1 1SW CMM和CMMI 9 2020 3 18 3 1 1SW CMM和CMMI CMMI有两种不同的实施方法连续式 主要是衡量一个企业的项目能力阶段式 主要是衡量一个企业的成熟度CMMI的五个台阶完成级管理级定义级量化管理级优化级每一个台阶都是上面一阶台阶的基石 要上高层台阶必须首先踏上较低一层台阶 10 2020 3 18 3 1 2ISO9000质量标准 ISO9000所谓 ISO9000 不是指一般意义上的一个质量保证标准 而是一族系列标准的统称 作用强化品质管理 提高企业效益 增强客户信心 扩大市场份额 获得了国际贸易 通行证 消除了国际贸易壁垒 节省了第二方审核的精力和费用 在产品品质竞争中永远立于不败之地 有效地避免产品责任 有利于国际间的经济合作和技术交流 11 2020 3 18 3 1 2三者之间的比较 选择SW CMM还是CMMI的考虑实施企业的业务特点 实施企业对过程改进的熟悉程度 实施企业对过程改进项目的预算 实施企业是否可以使用阶段式的演进路线 实施CMM与CMMI可以平滑的转换 ISO9001与CMM的关系ISO9001和CMM既有区别又相互联系 两者不可简单地互相替代 取得ISO9001认证并不意味着完全满足CMM某个等级的要求 取得CMM第2级 或第3级 不能笼统地认为可以满足ISO9001的要求 12 目录 2020 3 18 13 2020 3 18 3 2传统软件开发生命周期 软件生命周期软件从需求确定 设计 开发 测试直至投入使用 并在使用中不断地修改 增补和完善 直至被新的系统所替代而停止该软件的使用的全过程 可划分为以下子阶段1 可行性研究2 需求分析和定义3 总体设计4 详细设计5 编码 实现 6 软件测试 运行 维护 14 2020 3 18 3 2传统软件开发生命周期 确定软件生存周期管理的主要阶段1 选择合适的生存期模型 2 标识和定义生存期的的任务 即创建软件生存期 3 建立管理和技术上的的软件生产过程 4 整个周期内对生存期过程的管理 软件项目生存期模型的基本特征 1 描述了开发的主要阶段2 定义了每一个阶段要完成的主要过程和活动3 规范了每一个阶段的输入和输出4 提供了一个框架 可以将必要的活动映射到该框架中 常用的模型 瀑布模型 螺旋模型 进化模型 原型模型 增量模型等 本节分别对这几种传统的软件开发生命周期模型予以介绍 15 2020 3 18 瀑布模型总结文档驱动的模型阶段间具有顺序性和依赖性项目开发周期较长实际项目很少按照该模型给出的顺序进行 3 2 1瀑布模型 生存周期阶段划分 16 2020 3 18 3 2 1瀑布模型 WaterFallmodel适合的项目 项目的需求在项目开始前很明确解决方案在项目开始前也很明确类似的项目如 公司的财务系统库存管理系统短期项目 17 2020 3 18 3 2 2原型模型 18 2020 3 18 3 2 2原型模型 Prototypingmodel特点在需求定义之前 需要快速构建一个系统根据构建系统的优缺点 用户给开发人员提出反馈意见根据反馈意见修改软件需求规格 以便系统可以更正确地反映用户的需求减少各种假设以及风险 19 2020 3 18 Prototype模型适合的项目 项目的需求在项目开始前不明确需要减少项目需求的不确定性类似的项目如 确定显示界面第一次开发的产品 验证可行性 3 2 2原型模型 20 2020 3 18 3 2 3增量模型 21 2020 3 18 增量模型总结融合了瀑布模型和原型的迭代特征 每一个增量均发布一个可操作产品 3 2 3增量模型 22 2020 3 18 增量模型适合的项目 项目开始 明确了需求的大部分 但是需求可能会发生变化对于市场和用户把握不是很准 需要逐步了解对于有庞大和复杂功能的系统进行功能改进 就需要一步一步实施的 3 2 3增量模型 23 2020 3 18 这个模型可看作是重复执行的多个瀑布模型 3 2 4进化模型 24 2020 3 18 进化模型适合的项目 项目开始 需求和设计不明确且可能发生显著变化 有多个用户组 可能产生需求冲突的 系统功能需要向用户演示以便于项目的演进 项目引进了新的 未经验证的技术 3 2 4进化模型 25 2020 3 18 3 2 5螺旋模型 26 2020 3 18 螺旋模型总结基于风险驱动的开发模型 使用原型法或其它方法来尽量降低风险 适用于需求不明确的大规模软件项目 3 2 5螺旋模型 27 2020 3 18 目录 28 3 3 1极限模型 极限模型简介2001年 为了避免许多公司的软件团队陷入不断增长的过程泥潭 一批业界专家一起概括出了一些敏捷开发过程的方法 SCRUM Crystal 特征驱动软件开发 FeatureDrivenDevelopment 简称FDD 自适应软件开发 AdaptiveSoftwareDevelopment 简称ASD 以及最重要的极限编程 eXtremeProgramming 简称XP 2020 3 18 29 2020 3 18 3 3 1极限模型 极限编程将开发阶段的4个活动 分析 设计 编码和测试 混合在一起 在全过程中采用迭代增量开发 反馈修正和反复测试 30 2020 3 18 XP开发模型核心思想 交流 Communication 简单 Simplicity 反馈 Feedback 勇气 Courage 3 3 1极限模型 31 2020 3 18 优点采用简单计划策略 不需要长期计划和复杂模型 开发周期短 在全过程采用迭代增量开发 反馈修正和反复测试的方法 能够适应用户经常变化的需求 缺点目前主要在小规模项目上应用并取得成功 但是否适用于中等规模或大规模软件产品 需慎重考虑 由于这个模型较新产品交付后维护成本是否降低 不能确定 对编码人员的经验要求高 3 3 1极限模型 32 2020 3 18 3 3 2Rational统一过程 RUP 33 2020 3 18 用例驱动Concise simple andunderstandable以体系结构为中心Effectivebasisforlarge scalereuse增量和迭代开发基于风险前驱的原则 渐进地展开分析 设计及其相关活动 每个迭代都会提供一次验证和调整模型机会 推动软件质量的提升 3 3 2Rational统一过程 RUP 34 2020 3 18 V模型 接收测试 系统测试 项目规化 需求分析 总体设计 详细设计 编码和调试 集成测试 单元测试 3 3 3V模型 35 2020 3 18 V模型模型适合的项目 项目的需求在项目开始前很明确解决方案在项目开始前也很明确对系统的性能安全很严格的项目类似的项目如 航天飞机等公司的财务系统 3 3 3V模型 36 2020 3 18 微软产品周期模型 产品规划阶段 测试阶段 产品开发阶段 发布阶段 M1 Mn CC ZBB RTM W RC1 RCn Alpha GoldenMasters Beta ProductVision FunctionSpec QFEs 3 3 4微软产品开发周期模型 37 2020 3 18 目录 38 2020 3 18 3 4 1质量概述 质量的概念 质量的多种定义符合目的或者用途 JosephJuran 用户的感觉就是质量 AVFeigenbaum 符合顾客在其合理价格下对产品的要求 SudIngle 产品或者服务满足明确和隐含需要能力的性能特性的总体 BS4778 39 2020 3 18 3 4 1质量概述 质量定义 质量是满足要求的程度 包括符合规定的要求和满足顾客的需求 40 2020 3 18 3 4 1质量概述 软件质量 软件质量是软件满足明确说明或者隐含的需求的程度明确说明 查询功能隐含说明 查询速度 41 2020 3 18 3 4 1质量概述 软件质量框架模型 42 2020 3 18 3 4 1质量概述 McCall质量模型 43 2020 3 18 3 4 1质量概述 主观质量模型 ICEDT模型 直观性产品的使用是否合乎人们的通常想法 一致性产品的运行是否有一贯性 效率产品是否可以让用户迅速和经济地完成其任务 耐久性产品是否稳定和可靠 体贴产品是否充分考虑了用户的需求 44 2020 3 18 3 4 1质量概述 质量的重要性 质量管理是项目管理的最高统一 三大目标的统一 45 2020 3 18 3 4 1质量概述 低劣软件质量的关联关系 低劣软件质量 高额的维护费用 缺乏质量重视 对性能改善的冲动 希望软件快些 省些 好些 市场被竞争对手侵占 软件生产率的低下 减少新开发项目资源 46 2020 3 18 3 4 1质量概述 质量管理理论的发展过程 工匠自控 质量检查 1920 1940 质量控制 TQM 质量保证 1960 1970 47 2020 3 18 3 4 1质量概述 软件质量管理的发展过程 发展时期 程序设计 程序系统 年代 成品 开发组织方式 开发技术特点 开发工具 质量管理特征 软件工程 至50年代末 至70年代初 至今 程序 软件 软件产品 个体 项目设计组 软件作坊 软件机构 软件工厂 靠开发者个人技巧 机器代码 汇编语言 个人设计 个人使用 手工技巧 无维护观念 无系统化方法 程序设计理论深入 模块化 自顶向下 逐步求精 不重视维护问题 高级语言 操作系统 数据管理系统 靠少数人协调把关 系统化 规范化 全员化 逐步产生与各种方法相应的工具 开发环境 结构化设计理论和方法面向对象方法 快速原型技术 48 2020 3 18 3 4 2质量管理过程 质量管理的对象过程的质量产品的质量 49 2020 3 18 3 4 2质量管理过程 软件质量管理过程 软件项目的质量计划软件质量保证软件质量控制 50 2020 3 18 3 4 2质量管理过程 质量计划 确定项目应达到的质量标准决定如何满足质量标准的计划安排和方法 51 2020 3 18 3 4 2质量管理过程 质量保证 QA 通过评价项目整体绩效 建立对质量要求的信任提供项目和产品可视化的管理报告例如 总体设计规格 质量审计Isitdoneright 这个任务本身并不能提高产品的质量一般由质量保证部门人员实施 52 2020 3 18 质量保证的要点 对项目进行评价推测能否达到质量指标建立对项目的信心 3 4 2质量管理过程 53 2020 3 18 质量保证的重要输出文件SOA 质量保证文件 3 4 2质量管理过程 54 2020 3 18 质量控制 QC 确定项目结果与质量标准是否相符 同时 确定消除不符的原因和方法控制产品的质量 及时纠正缺陷例如 评审 单元测试Isitrightdone 这个任务本身提高产品的质量一般由开发人员实施 3 4 2质量管理过程 55 2020 3 18 质量控制的要点 检查工作结果按照标准跟踪检查确定措施消灭质量问题 3 4 2质量管理过程 56 2020 3 18 软件项目质量控制的主要活动 技术评审代码走查代码评审单元测试集成测试压力测试系统测试接收测试缺陷追踪 3 4 2质量管理过程 57 2020 3 18 质量保证与质量控制 P1 P2 P3 Product QA QC QA 3 4 2质量管理过程 58

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论