




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件过程管理,-Ch.5 软件过程的技术管理,软件过程的技术管理,为了解决软件问题,重要的第一步就是将整个软件开发任务看做一个可控的、可度量的以及可改进的过程。 瓦特汉弗莱(Watt Humphrey),本章提纲,5.1 软件过程的技术架构 5.2 软件过程的问题分析和决策方法 5.3 软件过程的技术路线 5.4 知识传递 5.5 软件过程管理工具,5.1 软件过程的技术架构,5.1.1 过程技术架构的层次和内容 5.1.2 软件过程资源的管理,5.1.1 过程技术架构的层次和内容,层次,内容,5.1.2 软件过程资源的管理,5.2 软件过程的问题分析和决策方法,5.2.1 过程问题解决的系统
2、方法 5.2.2 原因分析和缺陷分析 5.2.3 决策分析与决定,5.2.1 过程问题解决的系统方法,5.2.2 原因分析和缺陷分析,在开发周期的每个阶段实施根本原因分析(root cause analysis),为有效开展缺陷预防活动提供依据 。 通过制订原因分析计划、选择缺陷分析数据而找出原因、实施建议措施、评价变更的效果、记录数据等多个环节,最终完成这一活动 。 经常使用的工具有:数据库系统、过程建模工具、统计分析包。,5.2.3 决策分析与决定,选择决策技术和结构层次,制订决策分析与决定的计划; 建立作为决策基础的评价准则; 建立并运用决策分析指导原则,确定推荐的候选方案; 选择评价方
3、法,对照准则评价候选方案。 选择解决方案,5.3软件过程的技术路线,5.3.1 软件项目过程的技术解决流程 5.3.2 技术解决计划的建立和实施 5.3.3 开发设计 5.3.4 编程和单元测试 5.3.5 验证、确认与测试,5.3.1 软件项目过程的技术解决流程,制订技术解决计划。 系统定义、候选方案和评估准则。 系统操作概念和使用场景。 系统架构设计。 系统构件的详细设计。 实现设计完成编程和单元测试。 通过复审、测试完成对系统的验证。 软件发布或部署。 软件的操作和维护。,技术解决流程示意图,5.3.2 技术解决计划的建立和实施,建立并维护技术解决的组织方针,反复进行产品构件的选择、产品
4、和产品构件的设计以及产品构件设计的实现、验证工作。 设计技术路线,确定技术路线中关键的难题和初步的解决办法。 根据项目的规模以及财力,确定技术解决人力资源、硬件资源和技术解决工具。 技术解决方案准则应该包含对软件生命周期设计问题的处理。 为每个候选解决方案拟订产品运行和用户交互作用的时间场景。 应充分考虑新技术所带来的风险,要计划好一些应急的措施或备用的成熟的技术。,技术工具,设计规范工具。 仿真程序和建模工具。 原型设计工具。 场景定义和管理工具。 需求跟踪工具。 交互式文档编制工具。,5.3.3 开发设计,系统定义 设计标准和准则的属性 设计方法 产品构件设计 设计文档,通用软件设计规范。
5、 用户界面标淮。 设计安全标准。 技术限制。 设计容差。 部件标准,原型设计方法。 基于信息隐蔽原则的Parnas设计方法。 结构化设计方法。 问题分析法(PAM) 面向对象的设计方法。 面向数据结构的软件设计方法 (Jackson方法和Warnier方法) 面向构件的设计,5.3.4 编程和单元测试,主要的编程思想 推荐的编程方法 编程准则和规范 单元测试方法 代码重构,测试驱动编程 采用成熟而先进的方法 遵守已定义的编程准则和规范 经常进行代码互为审查、走查 充分的单元测试 。 每日构建 定期进行代码重构,结构化程序设计。 面向对象的程序设计。 自动代码生成。 软件代码复用。 使用适用的设
6、计模板。,结构化、模块化。 清晰性、简易性。 语言标准、规则。 变量命名约定。 正在使用语言的特定规则,如指针使用、内存释放。 可接受的语言结构。 软件构件的结构和分层。 足够的注释行。,语句覆盖测试。 分支覆盖测试。 条件覆盖测试。 谓词覆盖测试。 路径覆盖测试。 边界值测试。 特殊值测试。,5.3.5 验证、确认与测试,验证(verification)是指验证或检验软件是否已正确地实现了产品规格书所定义的系统功能和特性,验证过程提供证据表明,软件相关产品与所有生命周期活动的要求相一致。 确认(validation)是为了保证所生产的软件可追溯到用户需求的一系列活动,确认过程提供证据,表明软
7、件是否满足客户需求,并解决了相应问题。 测试(testing)是为了发现软件的缺陷,减少产品质量的潜在风险。测试是实现验证活动和确认活动的最有效的手段和途径。,V&V,Verification:Are we building the product right?是否正确地构造了软件?即是否正确地做事,验证开发过程是否遵守已定义好的过程规范。 Validation: Are we building the right product? 是否构造了正确的软件?即是否正在做用户真正所需要的产品,详细 比较见表5-4,5.4 知识传递,纵向传递是一个具有很强时间顺序性的接力过程,指软件产品和技术知识从
8、需求分析阶段到设计阶段、从设计阶段到编程阶段、从开发阶段到维护阶段、从产品上一个版本到当前版本的知识传递过程。 横向传递是指软件产品和技术知识在不同团队之间的传递过程 知识传递的有效方法,5.5 软件过程管理工具,5.5.1 需求管理工具 5.5.2 面向对象的分析设计工具 5.5.3 配置管理和变更管理工具,5.5.1 需求管理工具,IBM-Rational AnalystStudio Telelogic DOORS Borland Caliber,5.5.2 面向对象的分析设计工具,IBM-Rational Rose是面向对象技术分析设计工具的代表,是可视化的建模工具 面向对象技术分析设计工具很多,如表5-5所示,其中SVG是W3C的一种图形矢量标准,可以在网上快速加载矢量图和UML图,强大的事件及脚本功能,也使得UML图具有更强的交互性和更为丰富的表达能力。,5.5.3 配置管理和变更管理工具,配置管理的主要工作包括通过创建软件配置管理库、定义配置项(包括需求、分析设计模型、代码、文档、测试用例、测试数据等)以及建立和维护软件的基线。 变更请求管理的主要工作包括控制和记录配置项内容的变更,建立和维护一个系统并使其追踪和管理变更请求及问题报告。,(1) 开源工具CVS(Concurrent Versions System,并发版
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年甘肃省武威第二十中学语文中考部编版4月模拟试卷(含答案)
- 高职课程质量保证体系
- Unit1 What's he like?(教学设计)-2024-2025学年人教PEP版英语五年级上册001
- 四年级语文:写人作文教案素材-试卷下载
- 人教部编版三年级下册28 枣核一等奖教学设计
- 小学语文人教部编版六年级下册那个星期天第1课时教学设计及反思
- 上海市金山区九年级历史下册 第三单元 两极下的竞争 第10课 冷战与热战教学设计 北师大版
- 《二、填写制作体会》教学设计 2024-2025学年初中信息技术人教版七年级上册
- 内部培训刑法知识题库
- 12 我的环保小搭档 第二课时(教学设计)-部编版道德与法治二年级下册
- 2025年河南交通职业技术学院单招职业适应性测试题库及答案1套
- 严重过敏反应诊断和临床管理专家共识(2025年版)解读
- 国际压力性损伤-溃疡预防和治疗临床指南(2025年版)解读课件
- 2025-2030中国电子支付行业市场发展分析及发展前景与投资战略研究报告
- 2025年中国PCR扩增仪市场发展前景预测及投资战略咨询报告
- 数学全等三角形课件++2024-2025学年北师大版七年级数学下册
- LBT 235-2022绿色食品设施甜樱桃生产操作规程
- 编织老师考试试题及答案
- 2025年03月重庆市涪陵区新妙镇选聘本土人才1人笔试历年参考题库考点剖析附解题思路及答案详解
- 2025-2030巴基斯坦基础建设行业市场现状供需分析及投资评估规划分析研究报告
- 2024年湖南常德烟草机械有限责任公司招聘笔试真题
评论
0/150
提交评论