软件开发的流程及微软的产品开发实践

上传人:壹****1 文档编号:591371444 上传时间:2024-09-17 格式:PPT 页数:57 大小:1.63MB
返回 下载 相关 举报
软件开发的流程及微软的产品开发实践_第1页
第1页 / 共57页
软件开发的流程及微软的产品开发实践_第2页
第2页 / 共57页
软件开发的流程及微软的产品开发实践_第3页
第3页 / 共57页
软件开发的流程及微软的产品开发实践_第4页
第4页 / 共57页
软件开发的流程及微软的产品开发实践_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《软件开发的流程及微软的产品开发实践》由会员分享,可在线阅读,更多相关《软件开发的流程及微软的产品开发实践(57页珍藏版)》请在金锄头文库上搜索。

1、软件开发的流程软件开发的流程及微软的产品开发实践及微软的产品开发实践 微软微软 嵌入型操作系统嵌入型操作系统部部项目经理项目经理 栾跃栾跃Bill LuanBill LuanProgram ManagerProgram ManagerWindows Embedded, MicrosoftWindows Embedded, MicrosoftBLuanBLuanMM讲题目录讲题目录w引言:引言:项目管理理论的介绍项目管理理论的介绍 w项目软件开发的流程及特征项目软件开发的流程及特征w软件产品和系统开发项目的管理软件产品和系统开发项目的管理w微软的传统文化及关键实践介绍微软的传统文化及关键实践介绍

2、w问答问答项目管理的定义项目管理的定义项目管理是为了完成一个项目的需求和目的所进行的管理工作。它应由专门的项目管理人员来负责,使用必要的知识、技术、工具等将项目管理的九个领域的知识对整个项目的五个阶段的流程运作进行管理来达到项目的最终目的。项目管理人员不仅要完成项目预定的范围、时间、费用、和质量的目标,他们还必须建立并充分利用与五个流程相对应的规章制度来促进项目的顺利进展、满足所有项目参与者的期望和他们的工作要求。 引言:项目管理理论的介绍引言:项目管理理论的介绍项目管理的项目管理的九九个领域性知识个领域性知识uu项目综合的管理项目综合的管理项目综合的管理项目综合的管理 (Project In

3、tegration Management)(Project Integration Management)uu项目范围的管理项目范围的管理项目范围的管理项目范围的管理 (Scope Management)(Scope Management)uu项目时间的管理项目时间的管理项目时间的管理项目时间的管理 (Time Management)(Time Management)uu项目费用的管理项目费用的管理项目费用的管理项目费用的管理 (Cost Management)(Cost Management)uu项目质量的管理项目质量的管理项目质量的管理项目质量的管理 (Quality Management

4、)(Quality Management)uu项目人才资源的管理项目人才资源的管理项目人才资源的管理项目人才资源的管理 (Human Resource Management)(Human Resource Management)uu项目信息交流的管理项目信息交流的管理项目信息交流的管理项目信息交流的管理 (Communication Management)(Communication Management)uu项目风险的管理项目风险的管理项目风险的管理项目风险的管理 (Risk Management)(Risk Management)uu项目外包的管理项目外包的管理项目外包的管理项目外包的管理

5、 (Procurement Management)(Procurement Management)引言:项目管理理论的介绍引言:项目管理理论的介绍 参见 Schwalbe, Project Management 2002 项目流程的概念及五个流程阶段项目流程的概念及五个流程阶段uu流程流程 (Process)(Process) 指的是完成每项工作的先后顺指的是完成每项工作的先后顺序和特定的运行周期序和特定的运行周期 uu项目流程的管理是指对项目运作过程的管理项目流程的管理是指对项目运作过程的管理uu项目管理理论将项目流程划分了五个阶段:项目管理理论将项目流程划分了五个阶段:uu项目的起动阶段项

6、目的起动阶段项目的起动阶段项目的起动阶段uu项目的计划阶段项目的计划阶段项目的计划阶段项目的计划阶段uu项目的执行阶段项目的执行阶段项目的执行阶段项目的执行阶段uu项目的控制阶段项目的控制阶段项目的控制阶段项目的控制阶段uu项目的结束阶段项目的结束阶段项目的结束阶段项目的结束阶段引言:项目管理理论的介绍引言:项目管理理论的介绍项目流程管理的基本概念项目流程管理的基本概念结束结束 计划计划 控制控制 执行执行 起动起动 引言:项目管理理论的介绍引言:项目管理理论的介绍讲题目录讲题目录w引言:引言:项目管理理论的介绍项目管理理论的介绍 w项目软件开发的流程及特征项目软件开发的流程及特征w软件产品和

7、系统开发项目的管理软件产品和系统开发项目的管理w微软的传统文化及关键实践介绍微软的传统文化及关键实践介绍w问答问答软件开发项目的流程概念和管理软件开发项目的流程概念和管理项目软件开发的流程及特征项目软件开发的流程及特征软件开发项目的流程软件开发项目的流程 - - 被重复的计划和执行阶段被重复的计划和执行阶段 项目软件开发的流程及特征项目软件开发的流程及特征对以上开发操作里程的分析对以上开发操作里程的分析 (1)(1)uu此通用此通用流程时间表为各种开发项目的参考。流程时间表为各种开发项目的参考。各工作项目的时间长短需要视项目具体的要各工作项目的时间长短需要视项目具体的要求来决定求来决定, ,

8、且有的里程且有的里程( (如如RC1, RC2RC1, RC2) )可有可无可有可无. .uu关键点:关键点:uu功能需求必先于设计构划功能需求必先于设计构划功能需求必先于设计构划功能需求必先于设计构划. . 程序设计必后于设计构程序设计必后于设计构程序设计必后于设计构程序设计必后于设计构划划划划. . 设计构划书的周密严谨关系到整个产品开发的设计构划书的周密严谨关系到整个产品开发的设计构划书的周密严谨关系到整个产品开发的设计构划书的周密严谨关系到整个产品开发的成败和质量成败和质量成败和质量成败和质量. .uu测试要与测试要与测试要与测试要与程序设计同步进行程序设计同步进行程序设计同步进行程序

9、设计同步进行, , 以便及时纠错以便及时纠错以便及时纠错以便及时纠错. .项目软件开发的流程及特征项目软件开发的流程及特征对以上开发操作里程的分析对以上开发操作里程的分析 (2)(2)uu关键点:关键点:uu每个项目的时间进度表的制定应包括所有重每个项目的时间进度表的制定应包括所有重要的里程碑要的里程碑. 项目进度的跟踪以它们为准项目进度的跟踪以它们为准.uu对开发前期的工作项目花的工夫越多对开发前期的工作项目花的工夫越多, 如功能如功能需求总结和设计构划书的撰写尽量做到周密需求总结和设计构划书的撰写尽量做到周密严谨严谨, 和用户同一认识和用户同一认识, 后期的工作项目如编后期的工作项目如编程

10、测试等造成返工重做的机率就越小程测试等造成返工重做的机率就越小, 会对整会对整个项目的高效率和低开支起很大的促进作用个项目的高效率和低开支起很大的促进作用.项目软件开发的流程及特征项目软件开发的流程及特征讲题目录讲题目录w引言:引言:项目管理理论的介绍项目管理理论的介绍 w项目软件开发的流程及特征项目软件开发的流程及特征w软件开发项目管理的指南软件开发项目管理的指南w微软的传统文化及关键实践介绍微软的传统文化及关键实践介绍w问答问答 w软件开发项目管理的指南软件开发项目管理的指南w软件项目需求管理的指南软件项目需求管理的指南w软件设计规范书撰写的指南软件设计规范书撰写的指南w开发管理的指南开发

11、管理的指南w测试的管理指南测试的管理指南w团队建设的指南团队建设的指南软件项目需求管理的指南软件项目需求管理的指南uu功能需求是描述一个产品或项目该做什么功能需求是描述一个产品或项目该做什么, 该提该提供什么功能供什么功能, 该完成什么任务的总结该完成什么任务的总结uu任何一个项目在开发前都有一列功能需求任何一个项目在开发前都有一列功能需求uu它可来自客户的要求它可来自客户的要求它可来自客户的要求它可来自客户的要求, , 或市场的反馈或市场的反馈或市场的反馈或市场的反馈, , 或利用新技术增或利用新技术增或利用新技术增或利用新技术增加新功能以便使产品更新换代的驱动加新功能以便使产品更新换代的驱

12、动加新功能以便使产品更新换代的驱动加新功能以便使产品更新换代的驱动uu它是一个项目的最前期的管理它是一个项目的最前期的管理它是一个项目的最前期的管理它是一个项目的最前期的管理, , 也是把握项目范围的也是把握项目范围的也是把握项目范围的也是把握项目范围的关键关键关键关键 - - 设计是建立于功能需求的基础上的设计是建立于功能需求的基础上的设计是建立于功能需求的基础上的设计是建立于功能需求的基础上的: : 功能需求功能需求功能需求功能需求总结越完善总结越完善总结越完善总结越完善, , 设计就会越周密设计就会越周密设计就会越周密设计就会越周密, , 测试就会越彻底测试就会越彻底测试就会越彻底测试就

13、会越彻底, , 项目项目项目项目的质量就越好的质量就越好的质量就越好的质量就越好. .软件开发项目管理的指南软件开发项目管理的指南软件项目需求管理的指南软件项目需求管理的指南如果没有完善的功能需求总结会发生什么如果没有完善的功能需求总结会发生什么?uu功能需求不正确会导致设计错误功能需求不正确会导致设计错误功能需求不正确会导致设计错误功能需求不正确会导致设计错误, , 导致推翻设计重导致推翻设计重导致推翻设计重导致推翻设计重新来过新来过新来过新来过, , 造成人力和时间的浪费造成人力和时间的浪费造成人力和时间的浪费造成人力和时间的浪费uu和客户对功能需求的理解不一致和客户对功能需求的理解不一致

14、和客户对功能需求的理解不一致和客户对功能需求的理解不一致, , 导致客户最终不导致客户最终不导致客户最终不导致客户最终不接受产品或系统接受产品或系统接受产品或系统接受产品或系统, , 或不断要求再加新功能或不断要求再加新功能或不断要求再加新功能或不断要求再加新功能uu模糊不清的功能需求总结导致关键功能缺失模糊不清的功能需求总结导致关键功能缺失模糊不清的功能需求总结导致关键功能缺失模糊不清的功能需求总结导致关键功能缺失, , 或开或开或开或开发人员瞻自加入不需要的功能发人员瞻自加入不需要的功能发人员瞻自加入不需要的功能发人员瞻自加入不需要的功能, , 造成浪费造成浪费造成浪费造成浪费uu不完善的

15、功能需求总结导致无法建立准确的项目不完善的功能需求总结导致无法建立准确的项目不完善的功能需求总结导致无法建立准确的项目不完善的功能需求总结导致无法建立准确的项目计划和时间表计划和时间表计划和时间表计划和时间表, , 也使项目进度的追踪困难大也使项目进度的追踪困难大也使项目进度的追踪困难大也使项目进度的追踪困难大软件开发项目管理的指南软件开发项目管理的指南软件开发项目管理的指南软件开发项目管理的指南软件项目需求管理的指南软件项目需求管理的指南uu功能需求总结是受多方面因素影响的功能需求总结是受多方面因素影响的软件开发项目管理的指南软件开发项目管理的指南软件项目功能需求总结撰写的指南软件项目功能需

16、求总结撰写的指南 (1)应有的章节应有的章节应有的章节应有的章节撰写内容撰写内容撰写内容撰写内容 ( (分析思考分析思考分析思考分析思考) )的纲领的纲领的纲领的纲领前言或梗概前言或梗概前言或梗概前言或梗概uu产品或项目的开发的目的产品或项目的开发的目的产品或项目的开发的目的产品或项目的开发的目的uu该文件使用的准则该文件使用的准则该文件使用的准则该文件使用的准则, , 文件读者范围及要求文件读者范围及要求文件读者范围及要求文件读者范围及要求uu其它有关参考资料其它有关参考资料其它有关参考资料其它有关参考资料商务需求商务需求商务需求商务需求 uu竞争这和竞争产品的分析总结竞争这和竞争产品的分析

17、总结竞争这和竞争产品的分析总结竞争这和竞争产品的分析总结uu为满足客户或赢得市场竞争所必须完成的功能为满足客户或赢得市场竞争所必须完成的功能为满足客户或赢得市场竞争所必须完成的功能为满足客户或赢得市场竞争所必须完成的功能使用者需求使用者需求使用者需求使用者需求 uu产品的客户产品的客户产品的客户产品的客户uu客户的特征及使用者的培训要求客户的特征及使用者的培训要求客户的特征及使用者的培训要求客户的特征及使用者的培训要求功能需求总结功能需求总结功能需求总结功能需求总结uu产品或项目的开发范围产品或项目的开发范围产品或项目的开发范围产品或项目的开发范围uu产品或项目功能的阐述产品或项目功能的阐述产

18、品或项目功能的阐述产品或项目功能的阐述 uu产品或系统运行的环境产品或系统运行的环境产品或系统运行的环境产品或系统运行的环境uu产品使用界面的要求产品使用界面的要求产品使用界面的要求产品使用界面的要求软件开发项目管理的指南软件开发项目管理的指南软件项目功能需求总结撰写的指南软件项目功能需求总结撰写的指南 (2)应有的章节应有的章节应有的章节应有的章节撰写内容撰写内容撰写内容撰写内容 ( (分析思考分析思考分析思考分析思考) )的纲领的纲领的纲领的纲领系统需求系统需求系统需求系统需求 uu运行环境的要求,包括运行平台、网络、及其它运行环境的要求,包括运行平台、网络、及其它运行环境的要求,包括运行

19、平台、网络、及其它运行环境的要求,包括运行平台、网络、及其它硬件的要求硬件的要求硬件的要求硬件的要求 uu与其它系统兼容的要求,包括与操作系统、数据与其它系统兼容的要求,包括与操作系统、数据与其它系统兼容的要求,包括与操作系统、数据与其它系统兼容的要求,包括与操作系统、数据库、浏览器、及其它运用软件的兼容要求库、浏览器、及其它运用软件的兼容要求库、浏览器、及其它运用软件的兼容要求库、浏览器、及其它运用软件的兼容要求 uu与外部其它系统和组件的接口的要求与外部其它系统和组件的接口的要求与外部其它系统和组件的接口的要求与外部其它系统和组件的接口的要求 uu现存系统的操作和运行要求现存系统的操作和运

20、行要求现存系统的操作和运行要求现存系统的操作和运行要求uu系统的整体使用界面的要求系统的整体使用界面的要求系统的整体使用界面的要求系统的整体使用界面的要求 性能需求性能需求性能需求性能需求 uu开发产品的对输入的反应速度要求开发产品的对输入的反应速度要求开发产品的对输入的反应速度要求开发产品的对输入的反应速度要求uu运行速度的快慢要求运行速度的快慢要求运行速度的快慢要求运行速度的快慢要求 uu反馈的准确性的要求反馈的准确性的要求反馈的准确性的要求反馈的准确性的要求 uu使用界面的清晰度的要求使用界面的清晰度的要求使用界面的清晰度的要求使用界面的清晰度的要求 软件开发项目管理的指南软件开发项目管

21、理的指南软件项目功能需求总结撰写的指南软件项目功能需求总结撰写的指南 (3)应有的章节应有的章节应有的章节应有的章节撰写内容撰写内容撰写内容撰写内容 ( (分析思考分析思考分析思考分析思考) )的纲领的纲领的纲领的纲领质量需求质量需求质量需求质量需求uu整个软件的已知的缺陷和故障的数量整个软件的已知的缺陷和故障的数量整个软件的已知的缺陷和故障的数量整个软件的已知的缺陷和故障的数量uu测试的要求测试的要求测试的要求测试的要求uu对意外事件、使用操作中的错误、及数据的错误对意外事件、使用操作中的错误、及数据的错误对意外事件、使用操作中的错误、及数据的错误对意外事件、使用操作中的错误、及数据的错误的

22、应付能力的应付能力的应付能力的应付能力uu对信息和数据超载的应付能力对信息和数据超载的应付能力对信息和数据超载的应付能力对信息和数据超载的应付能力uu系统的稳定性系统的稳定性系统的稳定性系统的稳定性, , 安全性的要求安全性的要求安全性的要求安全性的要求非功能需求非功能需求非功能需求非功能需求 uu必须遵守的国家、地区、和企业界里的某些标准必须遵守的国家、地区、和企业界里的某些标准必须遵守的国家、地区、和企业界里的某些标准必须遵守的国家、地区、和企业界里的某些标准和规章条例和规章条例和规章条例和规章条例uu合同中客户的其它特别要求合同中客户的其它特别要求合同中客户的其它特别要求合同中客户的其它

23、特别要求开发局限开发局限开发局限开发局限 uu影响到开发成功的因素影响到开发成功的因素影响到开发成功的因素影响到开发成功的因素uu所需的人才、费用、技术、设备、及其它资源所需的人才、费用、技术、设备、及其它资源所需的人才、费用、技术、设备、及其它资源所需的人才、费用、技术、设备、及其它资源软件开发项目管理的指南软件开发项目管理的指南从使用方案到功能设计的三步法从使用方案到功能设计的三步法使用方案使用方案对客户产品使用对客户产品使用产品的方法和过程的产品的方法和过程的具体描述具体描述 功能需求功能需求每一个使用方法中每一个使用方法中解决具体问题解决具体问题所需要的功能所需要的功能功能设计功能设计

24、每一个具体的功能和每一个具体的功能和性能特点的设计性能特点的设计软件开发项目管理的指南软件开发项目管理的指南从使用方案到功能设计的三步法从使用方案到功能设计的三步法使用方案使用方案 A功能需求功能需求 A1功能设计功能设计 A1-1功能设计功能设计 A1-2功能需求功能需求 A2功能设计功能设计 A2-1使用方案使用方案 B功能需求功能需求 B1功能设计功能设计 B1-1功能设计功能设计 B1-2功能需求功能需求 B2功能设计功能设计 B2-1功能设计功能设计 B1-3功能设计功能设计 B2-2怎样管理功能需求总结的流程怎样管理功能需求总结的流程? (1)uu制定一套功能需求改变的流程制定一套

25、功能需求改变的流程: 任何需求改变的任何需求改变的决定都得经过这套流程的批准决定都得经过这套流程的批准uu组建一个需求改变管理班组建一个需求改变管理班, 核审任何需求改变核审任何需求改变uu对任何功能需求改变的要求对任何功能需求改变的要求, 都要进行此改变对都要进行此改变对已在进行的项目中其它部分影响的分析已在进行的项目中其它部分影响的分析uu对任何已批准的需求改变作受其影响的跟踪对任何已批准的需求改变作受其影响的跟踪, 记记录由此带来的对设计录由此带来的对设计, 编程编程, 测试测试, 文档编写等其文档编写等其它项目部分的带来的工作增量及时间的推迟它项目部分的带来的工作增量及时间的推迟软件开

26、发项目管理的指南软件开发项目管理的指南怎样管理功能需求总结的流程怎样管理功能需求总结的流程? (2)uu制定功能需求的基准线制定功能需求的基准线: 将项目开始时和客户已将项目开始时和客户已经同意的功能需求作一记录经同意的功能需求作一记录. 以后任何不同于此以后任何不同于此基础线的需求改变都得经过事先设定的功能需求基础线的需求改变都得经过事先设定的功能需求改变流程的审核和批准改变流程的审核和批准.uu对任何需求改变的历史都做档案记录对任何需求改变的历史都做档案记录 日期日期, 要要求求, 改变的理由改变的理由, 内容内容, 工作量工作量, 版本版本, 等等等等.uu衡量项目功能需求的稳定性衡量项

27、目功能需求的稳定性 项目中改动有多少项目中改动有多少, 以便有具体的数字来做控制需求改变的指南以便有具体的数字来做控制需求改变的指南.软件开发项目管理的指南软件开发项目管理的指南uu当你有了这套需求改变的管理制度当你有了这套需求改变的管理制度uu你能向客户展示你项目管理的流程中怎样控你能向客户展示你项目管理的流程中怎样控制需求改变制需求改变uu你更便于和客户对项目的要求统一认识你更便于和客户对项目的要求统一认识uu完善的控制需求改变管理将帮助你完善的控制需求改变管理将帮助你”守住你守住你的防线的防线” 保护项目质量保护项目质量, 时间表时间表, 及你的利及你的利润润uu使客户能更好地理解你为什

28、么可以拒绝需求使客户能更好地理解你为什么可以拒绝需求改变或设计改变的要求改变或设计改变的要求, 或为什么需求改变或或为什么需求改变或设计改变会导致费用升高或质量降低设计改变会导致费用升高或质量降低.软件开发项目管理的指南软件开发项目管理的指南w软件开发项目管理的指南软件开发项目管理的指南w软件项目需求管理的指南软件项目需求管理的指南w软件设计规范书撰写的指南软件设计规范书撰写的指南w开发管理的指南开发管理的指南w测试的管理指南测试的管理指南w团队建设的指南团队建设的指南软件设计规范书撰写的指南软件设计规范书撰写的指南uu设计规范书设计规范书(Design Specification)(Desi

29、gn Specification)是什么是什么?uu设计构划书是描写软件产品或系统具体功能特设计构划书是描写软件产品或系统具体功能特性和设计方案的文件性和设计方案的文件uu它是整个产品或系统的蓝图它是整个产品或系统的蓝图- 开发设计和测试开发设计和测试计划都以次为基础进一步撰写计划都以次为基础进一步撰写uu它由设计项目经理负责撰写它由设计项目经理负责撰写, 组织核审组织核审, 并根并根据开发过程中的由编程设计改动作随时的订正据开发过程中的由编程设计改动作随时的订正, 使文件中的设计与具体的编程随时保证同步使文件中的设计与具体的编程随时保证同步.软件开发项目管理的指南软件开发项目管理的指南软件开

30、发项目管理的指南软件开发项目管理的指南软件设计规范书撰写的指南软件设计规范书撰写的指南 (1)应有的章节应有的章节应有的章节应有的章节撰写内容的纲领撰写内容的纲领撰写内容的纲领撰写内容的纲领前言前言前言前言uu题目、作者、日期、版本题目、作者、日期、版本题目、作者、日期、版本题目、作者、日期、版本uu用简短的段落阐述软件产品或系统的目的。用一用简短的段落阐述软件产品或系统的目的。用一用简短的段落阐述软件产品或系统的目的。用一用简短的段落阐述软件产品或系统的目的。用一句话来列出该产品的最重要的三到五项功能特性句话来列出该产品的最重要的三到五项功能特性句话来列出该产品的最重要的三到五项功能特性句话

31、来列出该产品的最重要的三到五项功能特性来做开场白来做开场白来做开场白来做开场白开发范围开发范围开发范围开发范围uu此章节列出软件产品或系统开发项目该包括的功此章节列出软件产品或系统开发项目该包括的功此章节列出软件产品或系统开发项目该包括的功此章节列出软件产品或系统开发项目该包括的功能,及哪些虽然很值得但此项目不包括的功能。能,及哪些虽然很值得但此项目不包括的功能。能,及哪些虽然很值得但此项目不包括的功能。能,及哪些虽然很值得但此项目不包括的功能。开发理由开发理由开发理由开发理由uu此章节回答以下问题:为什么要开发此产品或系此章节回答以下问题:为什么要开发此产品或系此章节回答以下问题:为什么要开

32、发此产品或系此章节回答以下问题:为什么要开发此产品或系统;为什么要按此设计来开发此产品或系统。统;为什么要按此设计来开发此产品或系统。统;为什么要按此设计来开发此产品或系统。统;为什么要按此设计来开发此产品或系统。开发目标开发目标开发目标开发目标uu此章节回答以下问题:此产品或系统完成后要达此章节回答以下问题:此产品或系统完成后要达此章节回答以下问题:此产品或系统完成后要达此章节回答以下问题:此产品或系统完成后要达到什么目的,能解决什么客户或使用者的问题,到什么目的,能解决什么客户或使用者的问题,到什么目的,能解决什么客户或使用者的问题,到什么目的,能解决什么客户或使用者的问题,在运行速度,效

33、率,使用方便性,质量等方面的在运行速度,效率,使用方便性,质量等方面的在运行速度,效率,使用方便性,质量等方面的在运行速度,效率,使用方便性,质量等方面的目标目标目标目标软件开发项目管理的指南软件开发项目管理的指南软件设计规范书撰写的指南软件设计规范书撰写的指南 (2)应有的章节应有的章节应有的章节应有的章节撰写内容的纲领撰写内容的纲领撰写内容的纲领撰写内容的纲领功能需求功能需求功能需求功能需求uu此章节回答以下问题:此产品或系统要能提供此章节回答以下问题:此产品或系统要能提供此章节回答以下问题:此产品或系统要能提供此章节回答以下问题:此产品或系统要能提供什么样的功能,功能要达到什么样的特性与

34、效什么样的功能,功能要达到什么样的特性与效什么样的功能,功能要达到什么样的特性与效什么样的功能,功能要达到什么样的特性与效益。哪些是必须有的功能与效益,哪些是可有益。哪些是必须有的功能与效益,哪些是可有益。哪些是必须有的功能与效益,哪些是可有益。哪些是必须有的功能与效益,哪些是可有可无的可无的可无的可无的使用概况方案使用概况方案使用概况方案使用概况方案uu此章节回答以下问题:各关健功能会被怎样使此章节回答以下问题:各关健功能会被怎样使此章节回答以下问题:各关健功能会被怎样使此章节回答以下问题:各关健功能会被怎样使用,使用者与客户是谁,使用者应有的水平,用,使用者与客户是谁,使用者应有的水平,用

35、,使用者与客户是谁,使用者应有的水平,用,使用者与客户是谁,使用者应有的水平,及教育或培训客户的要求是什么。及教育或培训客户的要求是什么。及教育或培训客户的要求是什么。及教育或培训客户的要求是什么。运行需求运行需求运行需求运行需求uu此章节回答以下问题:此产品或系统对运行环此章节回答以下问题:此产品或系统对运行环此章节回答以下问题:此产品或系统对运行环此章节回答以下问题:此产品或系统对运行环境的各种要求境的各种要求境的各种要求境的各种要求, , 如操作平台要求如操作平台要求如操作平台要求如操作平台要求, , 硬件要求硬件要求硬件要求硬件要求, , 网络网络网络网络要求要求要求要求, , 系统安

36、全要求系统安全要求系统安全要求系统安全要求, , 使用时按规章执行的要求使用时按规章执行的要求使用时按规章执行的要求使用时按规章执行的要求, , 等等等等等等等等. .开发时间表开发时间表开发时间表开发时间表uu此章节列出该项目的开发时间表此章节列出该项目的开发时间表此章节列出该项目的开发时间表此章节列出该项目的开发时间表, , , , 对每一具体对每一具体对每一具体对每一具体开发任务所需的人力及时间的初步估计开发任务所需的人力及时间的初步估计开发任务所需的人力及时间的初步估计开发任务所需的人力及时间的初步估计, , , , 及所及所及所及所有的项目里程碑有的项目里程碑有的项目里程碑有的项目里

37、程碑软件开发项目管理的指南软件开发项目管理的指南软件设计规范书撰写的指南软件设计规范书撰写的指南 (3)应有的章节应有的章节应有的章节应有的章节撰写内容的纲领撰写内容的纲领撰写内容的纲领撰写内容的纲领成功所依赖的成功所依赖的成功所依赖的成功所依赖的因素因素因素因素uu此章节列出对所有可以估计到的外在制约的因此章节列出对所有可以估计到的外在制约的因此章节列出对所有可以估计到的外在制约的因此章节列出对所有可以估计到的外在制约的因素素素素, , , , 特别是写明哪些因素是该项目成功所依赖特别是写明哪些因素是该项目成功所依赖特别是写明哪些因素是该项目成功所依赖特别是写明哪些因素是该项目成功所依赖的的

38、的的, , , , 如特别的人才如特别的人才如特别的人才如特别的人才, , , , 设备设备设备设备, , , , 所需的技术所需的技术所需的技术所需的技术, , , , 等等等等等等等等. . . .未解决的问题未解决的问题未解决的问题未解决的问题uu此章节列出任何尚未解决的问题此章节列出任何尚未解决的问题此章节列出任何尚未解决的问题此章节列出任何尚未解决的问题, , , , 或有待近一或有待近一或有待近一或有待近一步调查商讨才能定出答案的有关设计方案和计步调查商讨才能定出答案的有关设计方案和计步调查商讨才能定出答案的有关设计方案和计步调查商讨才能定出答案的有关设计方案和计划划划划, , ,

39、 , 及任何与客户间尚未同意的事项及任何与客户间尚未同意的事项及任何与客户间尚未同意的事项及任何与客户间尚未同意的事项, , , , 等等等等等等等等. . . .产品功能设计产品功能设计产品功能设计产品功能设计的具体描述的具体描述的具体描述的具体描述uu此此此此章节列出此产品或系统所有设计细节章节列出此产品或系统所有设计细节章节列出此产品或系统所有设计细节章节列出此产品或系统所有设计细节 对每对每对每对每个功能及设计,及运用时的使用界面,做详细个功能及设计,及运用时的使用界面,做详细个功能及设计,及运用时的使用界面,做详细个功能及设计,及运用时的使用界面,做详细的解释。的解释。的解释。的解释

40、。uu对使用界面的设计,配备大量图例,对每个控对使用界面的设计,配备大量图例,对每个控对使用界面的设计,配备大量图例,对每个控对使用界面的设计,配备大量图例,对每个控制键,使用界面,该显示的文字,图像,出错制键,使用界面,该显示的文字,图像,出错制键,使用界面,该显示的文字,图像,出错制键,使用界面,该显示的文字,图像,出错的回馈,等等,作具体地解说。的回馈,等等,作具体地解说。的回馈,等等,作具体地解说。的回馈,等等,作具体地解说。软件开发项目管理的指南软件开发项目管理的指南软件设计规范书示例软件设计规范书示例- 用表列出使用行为用表列出使用行为UI Element:UI Element:M

41、ain window view, when an individual Category node is selected in the SLD Browser windowMain window view, when an individual Category node is selected in the SLD Browser windowBehavior: Behavior: 1.1.When the user clicks on any Category Node Categories, CD should display this pane on When the user cl

42、icks on any Category Node Categories, CD should display this pane on the right hand side.the right hand side.2.2.At the top portion of the pane, it should contain the standard properties for all Category At the top portion of the pane, it should contain the standard properties for all Category objec

43、ts: Name, Description, Version, Owner, etc.objects: Name, Description, Version, Owner, etc.3.3.Platform information for the Category node is shown in a read-only text box below. There is Platform information for the Category node is shown in a read-only text box below. There is a Platform button tha

44、t allows the user to select a secondary platform. It works the same way a Platform button that allows the user to select a secondary platform. It works the same way as that described in 2.11.1.as that described in 2.11.1.4.4.Extended Properties: User can attach any number of Extended Properties to a

45、 Category Extended Properties: User can attach any number of Extended Properties to a Category using the Advanced button. This is the same as described in section 2.11.2 above.using the Advanced button. This is the same as described in section 2.11.2 above.Menu:Menu:All menu items should be enabled

46、accordingly. All menu items should be enabled accordingly. Toolbar Toolbar buttons:buttons:1. All toolbar buttons should be enabled.1. All toolbar buttons should be enabled.2. Tool tips should be all enabled for all buttons, even on the grayed out buttons.2. Tool tips should be all enabled for all b

47、uttons, even on the grayed out buttons.Window TitleWindow TitleThe window title bar should display the product name “Windows XP Embedded Component The window title bar should display the product name “Windows XP Embedded Component Designer”, followed by a “-“, followed by the selected SLD file name,

48、 followed by a “:”, followed by the Designer”, followed by a “-“, followed by the selected SLD file name, followed by a “:”, followed by the selected category node name.selected category node name.For example, “For example, “Windows XP Embedded Component Designer Windows XP Embedded Component Design

49、er NetworkDriver.SLD:Software:SystemsNetworkDriver.SLD:Software:Systems” ”Status bar Status bar texttextThe name of the NEL node, for example, if it is a Category node:The name of the NEL node, for example, if it is a Category node:Category:Software:System:ApplicationCategory:Software:System:Applica

50、tion Management Management软件开发项目管理的指南软件开发项目管理的指南软件设计规范书示例软件设计规范书示例-用图示来解释设计及使用用图示来解释设计及使用 软件开发项目管理的指南软件开发项目管理的指南软件设计规范书示例软件设计规范书示例-用图示来解释设计及使用用图示来解释设计及使用 软件开发项目管理的指南软件开发项目管理的指南软件设计规范书示例软件设计规范书示例- 每个性能都加入测试的要求每个性能都加入测试的要求每个性能都加入测试的要求每个性能都加入测试的要求Feature Name:Feature Name:A command line switch to suppo

51、rt silent mode for the A command line switch to support silent mode for the DOS program SDI2HD.EXEDOS program SDI2HD.EXEUsage Syntax:Usage Syntax:l lIf any user needs to run the tool in batch mode and want If any user needs to run the tool in batch mode and want toto suppress any output, he can invo

52、ke the tool with the suppress any output, he can invoke the tool with the silent mode switch.silent mode switch.l lCommand line switch of /Q for quiet mode.Command line switch of /Q for quiet mode.Comments:Comments: With this switch enabled, no any output will be displayed. If With this switch enabl

53、ed, no any output will be displayed. If there are other switched also specified, /Q will silent the there are other switched also specified, /Q will silent the output from them all. /Q has the precedence over other output from them all. /Q has the precedence over other switches.Whenswitches.When run

54、ning in silent mode, the default value for running in silent mode, the default value for any selection is yes and the defaults will be used. any selection is yes and the defaults will be used. ExampleExample: :sdi2hd sdi2hd d:MySDIFile.SDId:MySDIFile.SDI /d1 /Q /d1 /Qsdi2hd sdi2hd d:MySDIFile.SDId:M

55、ySDIFile.SDI /d1 /I /Q /d1 /I /Q (Even of /I is used , (Even of /I is used , SDI head information will not be displayed in this case).SDI head information will not be displayed in this case).Test Test Requirements:Requirements:Ensure that when /Q is used, no screen out is generated. Ensure that when

56、 /Q is used, no screen out is generated. If there are more than one command line switches are If there are more than one command line switches are used, all the screen display output will be suppressed.used, all the screen display output will be suppressed.w软件开发项目管理的指南软件开发项目管理的指南w软件软件开发的种类开发的种类w软件项目

57、需求管理的指南软件项目需求管理的指南w软件设计规范书撰写的指南软件设计规范书撰写的指南w开发管理的指南开发管理的指南w测试的管理指南测试的管理指南w团队建设的指南团队建设的指南开发管理的一些指南开发管理的一些指南 (1) uu写任何程序前一定要先有设计构划书写任何程序前一定要先有设计构划书uu任何复杂的系统程序要先有构架设计书任何复杂的系统程序要先有构架设计书uu对系统组件有明确的功能定义对系统组件有明确的功能定义.uu对组件的接口的设计事先有完整的纪录对组件的接口的设计事先有完整的纪录.uu构架设计书由构架设计师或开发工程师的领构架设计书由构架设计师或开发工程师的领导人员来撰写导人员来撰写.

58、uu构架设计书要通过项目经理和测试人员在内构架设计书要通过项目经理和测试人员在内的审核及通过的审核及通过, 才能开始编写程序才能开始编写程序.软件开发项目管理的指南软件开发项目管理的指南开发管理的一些指南开发管理的一些指南 (2) uu建立程序原代码的提交库,并建立完整建立程序原代码的提交库,并建立完整的原代码的提交的流程管理制度的原代码的提交的流程管理制度uu原代码只允许一人改动原代码只允许一人改动原代码只允许一人改动原代码只允许一人改动. . 改动前先要从提交库申改动前先要从提交库申改动前先要从提交库申改动前先要从提交库申请出原代码请出原代码请出原代码请出原代码. . 改动后再送进提交库改

59、动后再送进提交库改动后再送进提交库改动后再送进提交库. .uu改动完先要在开发工程师的机器上编译改动完先要在开发工程师的机器上编译改动完先要在开发工程师的机器上编译改动完先要在开发工程师的机器上编译, , 与其它与其它与其它与其它组件一起运行过组件一起运行过组件一起运行过组件一起运行过, , 确证没有致命的缺陷后,才能确证没有致命的缺陷后,才能确证没有致命的缺陷后,才能确证没有致命的缺陷后,才能送进原代码的提交库送进原代码的提交库送进原代码的提交库送进原代码的提交库. .uu在产品发行前在产品发行前在产品发行前在产品发行前, , 整个提交库都被锁上整个提交库都被锁上整个提交库都被锁上整个提交库

60、都被锁上, , 只有被批只有被批只有被批只有被批准的缺陷修补的原代码才能提交进库准的缺陷修补的原代码才能提交进库准的缺陷修补的原代码才能提交进库准的缺陷修补的原代码才能提交进库. .软件开发项目管理的指南软件开发项目管理的指南开发管理的一些指南开发管理的一些指南 (3) uu建立原代码互审的管理制度建立原代码互审的管理制度uu每个软件开发工程师遍写的原代码都有致少一每个软件开发工程师遍写的原代码都有致少一每个软件开发工程师遍写的原代码都有致少一每个软件开发工程师遍写的原代码都有致少一个以上的同事对程序进行审查个以上的同事对程序进行审查个以上的同事对程序进行审查个以上的同事对程序进行审查. .u

61、u建立原代码编写的规范建立原代码编写的规范uu每个软件开发工程师都应按照规范进行程序设每个软件开发工程师都应按照规范进行程序设每个软件开发工程师都应按照规范进行程序设每个软件开发工程师都应按照规范进行程序设计计计计, , 包括编写的风格包括编写的风格包括编写的风格包括编写的风格, , 格式格式格式格式, , 组件接口的规范组件接口的规范组件接口的规范组件接口的规范, , 解解解解说词的撰写说词的撰写说词的撰写说词的撰写, , 等等等等等等等等. .软件开发项目管理的指南软件开发项目管理的指南测试管理的一些指南测试管理的一些指南 (1) uu根据设计构划书撰写测试计划根据设计构划书撰写测试计划u

62、u测试计划要请项目经理和开发工程师一起进行测试计划要请项目经理和开发工程师一起进行测试计划要请项目经理和开发工程师一起进行测试计划要请项目经理和开发工程师一起进行审查审查审查审查. .uu测试计划用列表式将所有的测试方案写下测试计划用列表式将所有的测试方案写下测试计划用列表式将所有的测试方案写下测试计划用列表式将所有的测试方案写下. .uu每个具体地的测试方案都有专人执行,并记录每个具体地的测试方案都有专人执行,并记录每个具体地的测试方案都有专人执行,并记录每个具体地的测试方案都有专人执行,并记录每个测试方案的结果每个测试方案的结果每个测试方案的结果每个测试方案的结果. . 任何缺陷都记录下来

63、任何缺陷都记录下来任何缺陷都记录下来任何缺陷都记录下来. . uu测试与开发同步进行测试与开发同步进行uu在部分组件编写完后就进行在部分组件编写完后就进行在部分组件编写完后就进行在部分组件编写完后就进行. .软件开发项目管理的指南软件开发项目管理的指南测试管理的一些指南测试管理的一些指南 (2) uu测试计划执行中的注意事项测试计划执行中的注意事项uu由测试员发现的缺陷分给开发工程师修改纠错由测试员发现的缺陷分给开发工程师修改纠错由测试员发现的缺陷分给开发工程师修改纠错由测试员发现的缺陷分给开发工程师修改纠错. .uu修改完毕由测试员先进行初步质量验证修改完毕由测试员先进行初步质量验证修改完毕

64、由测试员先进行初步质量验证修改完毕由测试员先进行初步质量验证 (Smoke (Smoke Test)Test), , 通过后才能由开发工程师送进原代码的提通过后才能由开发工程师送进原代码的提通过后才能由开发工程师送进原代码的提通过后才能由开发工程师送进原代码的提交库交库交库交库. .uu每次任何影响到其它组件的程序纠错改动每次任何影响到其它组件的程序纠错改动每次任何影响到其它组件的程序纠错改动每次任何影响到其它组件的程序纠错改动, , 不仅不仅不仅不仅是经过改动的程序要重新测试是经过改动的程序要重新测试是经过改动的程序要重新测试是经过改动的程序要重新测试, , 任何可能受到影任何可能受到影任何

65、可能受到影任何可能受到影响的其它组件或程序也必须重测响的其它组件或程序也必须重测响的其它组件或程序也必须重测响的其它组件或程序也必须重测 (Regression Test)(Regression Test). .uu发行前要进行全程测试发行前要进行全程测试发行前要进行全程测试发行前要进行全程测试 (Full Test Pass)(Full Test Pass). .软件开发项目管理的指南软件开发项目管理的指南团队建设及管理的艺术团队建设及管理的艺术uu建立分工清晰的团队建立分工清晰的团队uu从项目管理从项目管理, 产品或系统的设计,编程,产品或系统的设计,编程, 测试,到使用书的编写,都有专人

66、负责。测试,到使用书的编写,都有专人负责。uu具体的分工不能越职,如设计师搞测试。具体的分工不能越职,如设计师搞测试。uu并将各部分该完成的时间表统一在整个并将各部分该完成的时间表统一在整个项目的时间表里,公布于整个团队。项目的时间表里,公布于整个团队。软件开发项目管理的指南软件开发项目管理的指南软件软件开发队伍的组织结构及功能开发队伍的组织结构及功能副总裁副总裁 (VP)总经理总经理 (GM) 产品单元经理产品单元经理 (PUM)产品组经理产品组经理Group Manager客户教育经理客户教育经理UE Manager文档编辑员文档编辑员UE Manager产品组项目经理产品组项目经理Gro

67、up Program Manager (GPM)开发经理开发经理Developer Manager质量保证经理质量保证经理QA Manager项目经理项目经理Program Manager (PM)软件工程师软件工程师Software Developer (SDE)测试工程师测试工程师Test Engineer (QA)测试软件工程师测试软件工程师Software Developer in Test(SDET)设计项目经理设计项目经理Feature PM发行项目经理发行项目经理Release PM产品使用性工程师产品使用性工程师Usability Engineer使用设计工程师使用设计工程师U

68、I Designer开发团队常用的人员配备及工作分配开发团队常用的人员配备及工作分配 (1)(1)l l发行经理发行经理 (Release PM)(Release PM)作用:项目流程的总管作用:项目流程的总管作用:项目流程的总管作用:项目流程的总管负责产品发行和开发项目流程的管理负责产品发行和开发项目流程的管理负责产品发行和开发项目流程的管理负责产品发行和开发项目流程的管理 - - 对整个项目的流对整个项目的流对整个项目的流对整个项目的流程设定规章制度程设定规章制度程设定规章制度程设定规章制度 制定项目的时间进度表和里程碑制定项目的时间进度表和里程碑制定项目的时间进度表和里程碑制定项目的时间

69、进度表和里程碑, , 和产品发行够格的衡量和产品发行够格的衡量和产品发行够格的衡量和产品发行够格的衡量标准标准标准标准对整个项目的进程进行追踪、并向整个团队通报对整个项目的进程进行追踪、并向整个团队通报对整个项目的进程进行追踪、并向整个团队通报对整个项目的进程进行追踪、并向整个团队通报, , 对出现对出现对出现对出现的问题及时协调并解决的问题及时协调并解决的问题及时协调并解决的问题及时协调并解决. .掌握掌握掌握掌握“ “除害三国会议除害三国会议除害三国会议除害三国会议” ” (Bug Triage)(Bug Triage) 和和和和 “ “战争会议战争会议战争会议战争会议” ” (War M

70、eeting)(War Meeting) 负责软件产品发行工作的管理负责软件产品发行工作的管理负责软件产品发行工作的管理负责软件产品发行工作的管理软件开发项目管理的指南软件开发项目管理的指南开发团队常用的人员配备及工作分配开发团队常用的人员配备及工作分配 (2)(2)l l设计经理设计经理 (Feature PM)(Feature PM)作用:产品功能的设计师和使用客户的代言人作用:产品功能的设计师和使用客户的代言人作用:产品功能的设计师和使用客户的代言人作用:产品功能的设计师和使用客户的代言人确定项目范围和做需求管理总结。负责产品种各功能确定项目范围和做需求管理总结。负责产品种各功能确定项目

71、范围和做需求管理总结。负责产品种各功能确定项目范围和做需求管理总结。负责产品种各功能和性能的设计和性能的设计和性能的设计和性能的设计. . 撰写产品功能设计构划书撰写产品功能设计构划书撰写产品功能设计构划书撰写产品功能设计构划书(Specification) (Specification) 进行功能进行功能进行功能进行功能设计和使用界面设计设计和使用界面设计设计和使用界面设计设计和使用界面设计帮助其它团队制定开发计划、测试计划、和文档计划帮助其它团队制定开发计划、测试计划、和文档计划帮助其它团队制定开发计划、测试计划、和文档计划帮助其它团队制定开发计划、测试计划、和文档计划对功能设计作随时的必

72、要调整和修改对功能设计作随时的必要调整和修改对功能设计作随时的必要调整和修改对功能设计作随时的必要调整和修改与发行经理通气、合作、对所负责的与发行经理通气、合作、对所负责的与发行经理通气、合作、对所负责的与发行经理通气、合作、对所负责的功能的开发进度功能的开发进度功能的开发进度功能的开发进度进行追踪、对时间表进行随时的必要调整进行追踪、对时间表进行随时的必要调整进行追踪、对时间表进行随时的必要调整进行追踪、对时间表进行随时的必要调整 软件开发项目管理的指南软件开发项目管理的指南开发团队常用的人员配备及工作分配开发团队常用的人员配备及工作分配 (3)(3)l l其他附助经理其他附助经理 (Oth

73、er Auxiliary PMs)(Other Auxiliary PMs) 作用:对项目的成功提供其它的必要支持作用:对项目的成功提供其它的必要支持作用:对项目的成功提供其它的必要支持作用:对项目的成功提供其它的必要支持 负责产品的初版使用客户联络和支持负责产品的初版使用客户联络和支持负责产品的初版使用客户联络和支持负责产品的初版使用客户联络和支持与市场部门和销售部门协调合作与市场部门和销售部门协调合作与市场部门和销售部门协调合作与市场部门和销售部门协调合作进行与文档和界面设计团队协调合作进行与文档和界面设计团队协调合作进行与文档和界面设计团队协调合作进行与文档和界面设计团队协调合作进行与产

74、品所依靠的其它内部团队协调合作进行与产品所依靠的其它内部团队协调合作进行与产品所依靠的其它内部团队协调合作进行与产品所依靠的其它内部团队协调合作软件开发项目管理的指南软件开发项目管理的指南开发团队常用的人员配备及工作分配开发团队常用的人员配备及工作分配 (4)(4)uu 软件开发工程师软件开发工程师 (Software Developer Engineer):(Software Developer Engineer): uu撰写产品编程的设计构划书撰写产品编程的设计构划书 (Develop spec.) (Develop spec.) . 根根据产品功能设计构划书和编程的设计构划书据产品功能设

75、计构划书和编程的设计构划书, 编写产品开发的程序编写产品开发的程序. uu 软件测试工程师软件测试工程师 (Software Test(Software Test Engineer):Engineer): uu根据产品功能设计构划书编写产品测试的构根据产品功能设计构划书编写产品测试的构划书划书, 并执行测试构划书定下的测试计划对产并执行测试构划书定下的测试计划对产品和组件进行测试品和组件进行测试 ( (白箱及黑箱应测试白箱及黑箱应测试, 等等) ).软件开发项目管理的指南软件开发项目管理的指南开发团队常用的人员配备及工作分配开发团队常用的人员配备及工作分配 (5)uu测试工具工程师测试工具工程

76、师(Software Developer in Test):(Software Developer in Test): uu这是在测试部门的开发工程师这是在测试部门的开发工程师. 他们的任务不他们的任务不是开发厂品是开发厂品, 而是编写产品测试所需要的自动而是编写产品测试所需要的自动测试的程序和工具测试的程序和工具. uu 使用界面及性能设计师使用界面及性能设计师 (UI Designer):(UI Designer):uu这是负责设计厂品可用性的人员这是负责设计厂品可用性的人员. 他们专做他们专做厂品的使用界面的设计厂品的使用界面的设计, 负责界面的设计统一负责界面的设计统一性性, 布局的美

77、观布局的美观, 使用流程的合理性使用流程的合理性.软件开发项目管理的指南软件开发项目管理的指南团队建设及管理的艺术团队建设及管理的艺术uu鼓励团队精神鼓励团队精神uu从项目的一开始就让所有成员都清楚地知道从项目的一开始就让所有成员都清楚地知道开发的目的和要求开发的目的和要求 (Project Vision)(Project Vision)uu掌握好工作强度的松紧掌握好工作强度的松紧: 时间计划要有张弛时间计划要有张弛, 避免长时要求员工加班加点避免长时要求员工加班加点, 并定期举办给成并定期举办给成员放松的活动。只紧不松只会降低效率员放松的活动。只紧不松只会降低效率.uu定期召开团队全体成员会

78、议定期召开团队全体成员会议, 通报项目进度通报项目进度, 及开诚布公所遇到的问题。每次项目结束后及开诚布公所遇到的问题。每次项目结束后召开成败总结经验会议召开成败总结经验会议, 改进以后的流程。改进以后的流程。软件开发项目管理的指南软件开发项目管理的指南讲题目录讲题目录w引言:学习项目管理的重要性引言:学习项目管理的重要性w项目管理理论的介绍项目管理理论的介绍w软件开发项目的管理的指南软件开发项目的管理的指南w微软的传统文化及关键实践介绍微软的传统文化及关键实践介绍w问答问答微软的传统文化及关键实践微软的传统文化及关键实践介绍介绍uu设计在先,编码在后设计在先,编码在后uu没有设计规划书就不写

79、一行编程码没有设计规划书就不写一行编程码没有设计规划书就不写一行编程码没有设计规划书就不写一行编程码uu所有的编码要有员工间的核审所有的编码要有员工间的核审uuCode Review, Buddy TestCode Review, Buddy Testuu所有的编码在加入整体汇编前必须在开发所有的编码在加入整体汇编前必须在开发工程师的机器上先汇编工程师的机器上先汇编uu“吃你自己的狗食吃你自己的狗食”: 产品发行前全体团队产品发行前全体团队成员要自己使用尚未完善的产品成员要自己使用尚未完善的产品, 并报告缺并报告缺陷陷.微软的传统文化及关键实践微软的传统文化及关键实践介绍介绍uu专门的汇编团队

80、负责整个产品的建造,并每专门的汇编团队负责整个产品的建造,并每天进行汇编。任何造成整体汇编失败的编程天进行汇编。任何造成整体汇编失败的编程必须由写此程序的开发工程师立即修改纠错必须由写此程序的开发工程师立即修改纠错 除害虫除害虫 (Fix Bug)(Fix Bug).uu整个公司所有团队使用统一的缺陷报告数据整个公司所有团队使用统一的缺陷报告数据库工具库工具. 但每个团队掌握控制自己的数据库但每个团队掌握控制自己的数据库. 任何问题都通过缺陷数据库来跟踪任何问题都通过缺陷数据库来跟踪.uu被修改后已解决的缺陷被修改后已解决的缺陷 (Fixed Bug)(Fixed Bug)必须由找必须由找到缺

81、陷的人到缺陷的人 (通常是测试人员通常是测试人员) 验证验证.微软的传统文化及关键实践微软的传统文化及关键实践介绍介绍uu被修改后已解决的缺陷还必须通过再测试,被修改后已解决的缺陷还必须通过再测试,验证修改的编码没有造成新的害虫验证修改的编码没有造成新的害虫.uu所有的害虫被分类成三种严重性的级别及所有的害虫被分类成三种严重性的级别及三种修改的优先权的级别三种修改的优先权的级别. 所有团队员工所有团队员工被要求必须先除级别高的害虫被要求必须先除级别高的害虫.uu有的团队执行有的团队执行 “害虫监狱害虫监狱” (Bug JailBug Jail)制度制度: 害虫数字超过害虫数字超过 5 个以上的

82、开发工程师在除个以上的开发工程师在除完害虫前不准编新的功能的编码完害虫前不准编新的功能的编码.微软的传统文化及关键实践微软的传统文化及关键实践介绍介绍uu所有关键性的害虫在产品发行前都要由所有关键性的害虫在产品发行前都要由“三三国会议国会议” (Triage Meeting PM, Dev, QA)(Triage Meeting PM, Dev, QA) 讨论决定是讨论决定是否要除否要除, 才能改动。才能改动。uu每次一项功能编程完成后每次一项功能编程完成后, 团队全体成员进行团队全体成员进行 “抓虫大扫除抓虫大扫除” (Bug Bash)(Bug Bash):每人在规定的时每人在规定的时间内

83、使用新的功能,将找到的害虫及时报告间内使用新的功能,将找到的害虫及时报告. 大扫除结束后抓虫的统计向全队报告大扫除结束后抓虫的统计向全队报告.uu产品发行前团队召开定时的产品发行前团队召开定时的“战前会议战前会议” (War Meeting)(War Meeting), 由团队各领导成员审核所有的害由团队各领导成员审核所有的害虫虫.总结总结uu对开发项目的种类和特性有清醒的认识有助于项目对开发项目的种类和特性有清醒的认识有助于项目对开发项目的种类和特性有清醒的认识有助于项目对开发项目的种类和特性有清醒的认识有助于项目计划和安排计划和安排计划和安排计划和安排. .uu掌握好一个产品或系统开发项目

84、的关键取决于掌握掌握好一个产品或系统开发项目的关键取决于掌握掌握好一个产品或系统开发项目的关键取决于掌握掌握好一个产品或系统开发项目的关键取决于掌握好对功能需求管理的总结、及完善的设计构划书和好对功能需求管理的总结、及完善的设计构划书和好对功能需求管理的总结、及完善的设计构划书和好对功能需求管理的总结、及完善的设计构划书和测试计划的撰写。测试计划的撰写。测试计划的撰写。测试计划的撰写。uu项目的运作流程管理有赖于完整的流程里程表和里项目的运作流程管理有赖于完整的流程里程表和里项目的运作流程管理有赖于完整的流程里程表和里项目的运作流程管理有赖于完整的流程里程表和里程碑的设定、对进度的跟踪、及即时

85、根据出现的问程碑的设定、对进度的跟踪、及即时根据出现的问程碑的设定、对进度的跟踪、及即时根据出现的问程碑的设定、对进度的跟踪、及即时根据出现的问题做修正题做修正题做修正题做修正. .uu建立一个分公清楚、职责分布完善、大家遵守制度建立一个分公清楚、职责分布完善、大家遵守制度建立一个分公清楚、职责分布完善、大家遵守制度建立一个分公清楚、职责分布完善、大家遵守制度的团队也有助于项目的成功的团队也有助于项目的成功的团队也有助于项目的成功的团队也有助于项目的成功. . 软件开发的流程及微软的产品开发实践软件开发的流程及微软的产品开发实践进一步参照进一步参照l l20032003年初由笔者所著、交大出版

86、社出版发年初由笔者所著、交大出版社出版发行的行的 “软件开发项目的管理艺术软件开发项目的管理艺术” 一书一书l l更多详细内容和章节:更多详细内容和章节:各种需求管理和产品设计的具体技巧各种需求管理和产品设计的具体技巧各种需求管理和产品设计的具体技巧各种需求管理和产品设计的具体技巧各种流程运作中帮助思考、审核的对照表各种流程运作中帮助思考、审核的对照表各种流程运作中帮助思考、审核的对照表各种流程运作中帮助思考、审核的对照表怎样进行界面设计的艺术怎样进行界面设计的艺术怎样进行界面设计的艺术怎样进行界面设计的艺术怎样运用怎样运用怎样运用怎样运用 CMM CMM 准则来帮助建立高效的开发组准则来帮助

87、建立高效的开发组准则来帮助建立高效的开发组准则来帮助建立高效的开发组织和培养高效的开发人员织和培养高效的开发人员织和培养高效的开发人员织和培养高效的开发人员做一个高效的项目管理人员的素质和艺术做一个高效的项目管理人员的素质和艺术做一个高效的项目管理人员的素质和艺术做一个高效的项目管理人员的素质和艺术等等等等等等等等 ?问答问答请与微软 嵌入型操作系统部 项目经理 栾跃 联系 Bill Luan, Microsoft, Bill Luan, Microsoft, BLuanMBLuanM谢谢大家谢谢大家 !微软 嵌入型操作系统部项目经理 栾跃原稿原稿原稿原稿: : : : 微软微软微软微软, , , , 嵌入型操作系统部嵌入型操作系统部嵌入型操作系统部嵌入型操作系统部 项目经理项目经理项目经理项目经理 栾跃栾跃栾跃栾跃2002 2002 年年 1111月月 Original Author: Bill Luan, Microsoft, Original Author: Bill Luan, Microsoft, BLuanMBLuanM

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

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