驱动软件开发流程规范.doc_第1页
驱动软件开发流程规范.doc_第2页
驱动软件开发流程规范.doc_第3页
驱动软件开发流程规范.doc_第4页
驱动软件开发流程规范.doc_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

驱动软件开发流程规范Ver.1.1 试行1. 概述驱动软件开发流程规范(下文简称本规范)的用户:1) 软件部经理。2) 软件部开发人员。3) 软件部项目经理。4) 技术部经理。5) 技术部技术支持。6) 技术部测试人员。7) 其它一切参与和关注驱动软件开发的人员。本规范的对象是软件部的驱动软件开发过程。开发过程涉及的内容包括项目、产品和知识,三者之间的关系描述如下。项目是一个特殊的将被完成的有限任务,它是在一定时间内,满足一系列特定目标的多项相关工作的总称。产品是项目开发输出的结果。知识是项目开发过程中积累的经验和教训。在开发过程中,项目被分为许多小型Issue(任务、缺陷)分步或并行完成;项目开发输出产品,产品应用的信息作用到项目开发;项目开发中能提炼知识,知识可应用到项目开发。2. 驱动软件开发管理平台(如何搭建服务器和客户端环境)驱动软件开发管理平台(下文简称本平台)是实施本规范的设备和工具基础,本规范就是为本平台量身打造的。其物理架构描述如下图,用户应根据下图安装相应的软件:上图中的模块描述如下:模块类型模块描述服务器端服务器计算机服务器,IP:00Windows操作系统、其它支撑软件Windows操作系统:Windows2003JAVA环境:jdk-1_5_0_08-windows-i586-p.exe数据库:mysql-5.0.27-win32.zipSVN ServerSVN是Subversion的缩写,SVN是比VSS和CVS功能更加强大的文件版本控制工具,SVN可理解为CS结构。SVN Server即SVN的服务端,与SVN Client共一个安装程序:Subversion 1.4.0,安装后自带命令行工具Tortoise SVNTortoise SVN构建于SVN之上,是SVN的图像化界面工具,基本上可以替代SVN的自带命令行工具。本平台选用的版本为:Tortoise SVN 1.4.0产品产品文件。如工程源文件、输出文件、安装包JIRA ServerJIRA是澳大利亚Atlassian公司开发的一款优秀的问题跟踪及管理软件工具,可以对各种类型的问题进行跟踪管理,包括缺陷、任务、需求、改进等。JIRA采用J2EE技术,能够跨平台部署。JIRA Server即JIRA的服务端,本平台选用的版本为:Atlassian JIRA Enterprise v3.7.2,服务器安装成功并启动后,只需使用普通的IE浏览器即可访问JIRA Server项目包括:1) 项目文件。如项目基本信息、计划书、进度表、设计方案。2) Issue文件。如Issue基本信息Confluence ServerConfluence是澳大利亚Atlassian公司开发的一款企业级的WIKI软件,用在团队成员之间彼此分享信息、文档协作和集体讨论。Conluence与JIRA集成后其功能更加强大。Confluence Server即Confluence的服务端,本平台选用的版本为:Atlassian confluence-2.2.9-std,服务器安装成功并启动后,只需使用普通的IE浏览器即可访问Confluence Server知识知识库。如工具使用方法、调试方法、编程经验网络局域网公司内网客户端客户端计算机任何一台能通过局域网访问服务器的计算机Windows/Linux操作系统、其它支撑软件Windows系列/Linux系列SVN ClientSVN是Subversion的缩写,SVN是比VSS和CVS功能更加强大的文件版本控制工具,SVN可理解为CS结构。SVN Client即SVN的客户端,与SVN Server共一个安装程序:Subversion 1.4.0,安装后自带命令行工具Tortoise SVNTortoise SVN构建于SVN之上,是SVN的图像化界面工具,基本上可以替代SVN的自带命令行工具。本平台选用的版本为:Tortoise SVN 1.4.0IExplorerInternet Explorer浏览器(操作系统自带的浏览器即可)规范操作方法和操作规范具体见下文用户服务器管理人员、软件部:经理/项目经理平台面向的用户3. 操作方法(如何操作工具软件)操作方法包括工具软件的安装、配置和使用方法,用户阅读时可跳过无关章节。相关安装程序和文档可在“00set_up_2开发工具软件开发驱动软件开发管理平台”找到。3.1. JIRA3.1.1. 安装、配置非服务器管理人员可跳过本节。中/英文名称英jira-manual3.6.pdfjira-manual-install.pdfjira-manual-config.pdf中JIRA用户使用指南-简化版.pdf安装java环境.pdf使用JIRA搭建企业问题跟踪系统.pdf工作流介绍.pdf3.1.2. 使用中/英文名称英jira-manual3.6.pdfjira-manual-user.pdf中JIRA白皮书Ver2.pdfJIRA实例使用指南.pdJIRA用户使用指南-简化版.pdf3.1.3. 用户帐户管理用户帐户由软件部经理分配和管理。用户可以通过邮件向软件部经理申请,邮件地址:。3.1.4. 访问地址00:80803.2. Confluence3.2.1. 安装、配置非服务器管理人员可跳过本节。中/英文名称中Confluence安装指南.pdf3.2.2. 使用暂缺,用户可以踊跃推荐。3.2.3. 用户帐户管理用户帐户由软件部经理分配和管理。用户可以通过邮件向软件部经理申请,邮件地址:。3.2.4. 访问地址00:80813.3. SVN3.3.1. 安装、配置和使用非服务器管理人员且非软件部开发人员可跳过本节。中/英文名称中svn-book.pdf3.3.2. 用户帐户管理用户帐户由软件部经理分配和管理。用户可以通过邮件向软件部经理申请,邮件地址:。3.3.3. 访问地址(建立中)3.4. Tortoise SVN3.4.1. 安装、配置和使用非服务器管理人员且非软件部开发人员可跳过本节。中/英文名称中访问/tsvn/4. 操作规范(操作工具软件时应遵守的规范)4.1. 项目开发JIRA不同于普通的缺陷管理工具,它既可管理缺陷也可管理项目,在项目开发过程中,项目被分为许多小型Issue(任务、缺陷)分步或并行完成,当全部的Issue被解决,项目也随之完成。本平台使用JIRA与项目进度表结合的方式管理项目,JIRA控制Issue的进度,WORD进度表控制项目的进度。4.1.1. 项目项目有开发和维护两个类别,分别在项目文件信息和项目开发过程有所区别,详见下文。项目文件信息描述如下表。文件类型开发维护描述项目计划书WORD文档,立项时编写,作为附件保存到项目的“文档”(Issue名称)。样本见“00set_up_2开发工具软件开发驱动软件开发管理平台文档样本项目计划书样本.doc”。项目基本信息JIRA字段,立项时编写,字段信息说明如下表,字段描述Project Name项目的名称,例如:值描述SynCTI维护SynCTI驱动平台DOC开发和维护文档的项目,包括硬件安装说明书、产品手册、程序员手册等,软件部文档项目组专用Asterisk维护Asterisk支持Project Category项目的类别,有以下可选值:值描述开发在现有驱动平台上开发新功能(如支持新型号的板卡、新增协议支持)或开发新的驱动平台维护维护已有驱动平台Key项目的关键字,由英文字母组成,值以实际设置为准Web项目的网址,不用Project Team项目团队,值以实际设置为准Issue Type Scheme问题类型策略,非服务器管理人员可不关注,值以实际设置为准Notification Scheme通知策略,非服务器管理人员可不关注,值以实际设置为准Permission Scheme权限策略,非服务器管理人员可不关注,值以实际设置为准Issue Security Scheme安全策略,非服务器管理人员可不关注,值以实际设置为准Field Configuration Scheme字段配置策略,非服务器管理人员可不关注,值以实际设置为准Issue Type Screen Scheme问题类型屏幕策略,非服务器管理人员可不关注,值以实际设置为准Workflow Scheme工作流策略,非服务器管理人员可不关注,值以实际设置为准CVS ModulesCVS模块,不用Mail Configuration邮件配置,非服务器管理人员可不关注,值以实际设置为准描述项目的概述,值以实际设置为准注:项目创建时项目的相关字段就已基本确定,以后一般不再修改。非服务器管理人员,无权修改项目的相关字段。项目进度表WORD文档,项目开发过程中编写,作为附件保存到项目的“文档”(Issue名称)。样本见“00set_up_2开发工具软件开发驱动软件开发管理平台文档样本项目进度表样本.doc”。IssuesJIRA管理的对象,是项目开发过程中的任务或者缺陷。具体文件信息和操作规范见下文。项目开发过程描述如下图。上图中各个状态的含义描述如下表。状态名称描述开发项目处于开发状态,可能是预研、方案设计、编码、调试、测试、试用或编写文档阶段。开发过程中,可以在项目中创建多个Issue,这些Issue可以并行或者分步解决,当全部Issue都被解决,项目也随之完成。Issue的说明见下文。对于开发人员来说,开发就是解决Issue的过程。对于项目经理(或者项目负责人)来说,开发过程中必须使用项目进度表对项目进行总结和计划(注:只有开发类的项目必须),并每周召开一次项目会议。等待评审项目已经完成,即项目中的所有Issue都已解决。完成项目评审通过,项目结束。终止项目在开发过程中被终止,项目结束。上图中各个操作的含义描述如下表。操作名称开发维护立项操作前提:1) 收到上级的立项指示操作方法:1) 在JIRA中创建项目并填写项目基本信息,在项目中创建“文档”(Issue)2) 编写项目计划书,作为附件保存到“文档”(Issue)3) 编写项目进度表,保存到VSS管理的“大项目进度表”(地址:00语音部开发中项目进度表)经理必须完成以下事项:1) 在JIRA中创建项目并填写项目基本信息完成操作前提:1) 项目所有的Issue都已解决2) 压力测试通过操作方法:1) 准备评审资料,包括项目计划书、项目进度表、测试方案、测试报告2) 申请评审操作前提:1) 项目所有的Issue都已解决2) 接到上级的指示:不再维护该产品操作方法:1) 申请评审评审操作方法:1) 召集项目相关人员对项目进行评审,如果项目达到预期目标则评审通过,否则再次进入开发状态操作方法:1) 召集项目相关人员对项目进行评审,如果所有的Issue都已解决则评审通过,否则再次进入开发状态终止操作前提:1) 接到上级的项目终止指示操作方法:1) 备份已有成果,然后终止项目操作前提:1) 接到上级的指示:不再维护该产品操作方法:1) 备份已有成果,然后终止项目4.1.2. IssueJIRA的Issue是指缺陷、任务、改进或新增功能,有明确的负责人、时间安排和进度描述等。Issue文件信息说明如下表。图例:金色底纹表示自定义字段,浅青绿底纹表示由JIRA自动更新的字段。字段描述项目问题所属项目,可选值为已创建的项目名称问题类型有以下可选值:值描述Bug缺陷,已实现功能的缺陷,如驱动蓝屏、重启、非法操作、功能错误,文档描述错误Improvement改进,已实现功能的不足,如提高语音质量、提高驱动效率New Feature新增功能,新需求,如驱动新增API函数、新增协议支持、新增板卡支持,文档补充Task任务,不涉及修改代码或文档的工作,如新增Linux内核支持、协助硬件开发人员查问题、协助销售人员推销板卡、协助技术支持解决客户的应用问题简要描述问题的简要描述,应简洁明了,如“SHT-8B-CT/PCI卡收不到FSK主叫号码”优先级有以下可选值:值描述Blocker灾难,导致系统崩溃,例如蓝屏、重启、非法操作,必须马上处理Critical重要,无法使用,如状态机迁移问题、录音录不到声音、DTMF漏收Major(default)中等,可用,但是功能受到影响,如音质不好Minor轻微,可用,但是需要改进或优化,如Test功能不全Trivial无足轻重,如果有时间则修改截止日期预期完成的日期模块出现问题的模块影响版本问题从哪个版本开始影响修复版本问题从哪个版本开始被修复环境问题发生的环境,如板卡型号、操作系统等详细描述对问题的详细描述操作系统有以下可选值:值描述Common(default)Windows and Linux系列WindowsWindows系列LinuxLinux系列来源技术部OA系统的故障报告单号或者其它描述客户名称向技术支持报告问题的客户名称,便于销售查询设计要求设计要求是Issue审查通过的标准报告人(Reporter)报告者,可以是任意用户,一般是技术支持、测试人员分派人(Assigner)分派人可以是开发人员、项目经理或经理。但是,开发人员只能将Issue分派给自己,项目经理只能将Issue分派给本组开发人员分派给(Assignee)Issue接收者负责人(Issue Lead)对于开发类项目,负责人是项目计划书上定的项目负责人。对于维护类项目,有项目经理的Assignee负责人项目经理,没有项目经理的Assignee负责人是经理解决方式即问题关闭的原因,有以下可选值:值描述Fixed (Default)问题解决Wont Fix不解决Duplicate重复报告Incomplete描述不清Cannot Reproduce不能重现未解决问题尚未解决备注问题有关键更新时必须编写,其内容作为问题日志Key问题的关键字创建时间创建问题的日期时间更新日期上次更新的日期,对问题的任何动作都视为更新改动记录通过JIRA的接口对问题进行修改的记录投票对问题的解决结果进行投票表决时的票数,由投票的总人数决定关注人关注问题的总人数状态有以下可选值:值描述Open已打开Assigned已分配In Progress处理中Resolved已解决Checked已审查Closed已关闭Reopened重新打开Issue解决过程描述如下图。上图中各个操作的含义描述如下表:下表图例:茶色底纹表示必须赋值的字段,其它表示可选赋值的字段。Screen Type是指字段显示的屏幕类型(非服务器管理人员可不关注)。操作名称描述创建(SOpen)l 描述:创建Issuel 条件:1) Reporter确认问题需要软件部参与解决2) Reporter搜索JIRA,确认JIRA中不存在该问题l 字段变化:字段描述项目问题类型简要描述优先级截止日期模块影响版本修复版本环境详细描述操作系统来源客户名称报告人l Screen Type:sn1分配(OpenAssigned)l 描述:为Issue分配Assigner、Assignee和Issue Leadl 条件:1) 核实通过:问题需要软件部参与解决,并且问题的相关描述完整无误l 字段变化:字段描述问题类型简要描述优先级截止日期模块影响版本修复版本环境详细描述操作系统来源客户名称设计要求报告人分派人分派给负责人备注l Screen Type:sn2l JIRA自动邮件通知:Reporter、Assignee、Issue Lead关闭(OpenClosed)l 描述:关闭Issuel 条件:1) 核实不通过:问题不需要软件部参与解决或问题相关描述不清楚,解决方式可以是:Wont Fix、Duplicate、Incomplete或Cannot Reproducel 字段变化:字段描述解决方式分派人备注写明具体原因l Screen Type:sn3l JIRA自动邮件通知:Reporter接收(AssignedIn Progress)l 描述:接收并开始处理Issuel 字段变化:字段描述备注l Screen Type:sn4l JIRA自动邮件通知:Reporter、Issue Lead解决(In ProgressResolved)l 描述:完成处理、升级或终止Issuel 条件:1) 开发结束,解决方式可以是:Fixed、Wont Fix、Duplicate、Incomplete或Cannot Reproducel 字段变化:字段描述解决方式备注写明具体原因l Screen Type:sn5l JIRA自动邮件通知:Reporter、Issue Leadl 备注:如果Issue需要测试,必须将测试方案(样本见“00set_up_2开发工具软件开发驱动软件开发管理平台文档样本测试方案样本.doc”)以附件保存到JIRA提交测试(ResolvedChecked)l 描述:提交技术部测试l 条件:1) 审查通过:如果解决方式是Fixed,代码、测试方案达标;如果解决方式是其它,理由充分2) Issue需要技术部测试l 字段变化:字段描述备注l Screen Type:sn4l JIRA自动邮件通知:Reporter、Assignee、陈莹关闭(ResolvedClosed)l 描述:关闭Issuel 条件:1) 审查通过:如果解决方式是Fixed,代码、测试方案达标;如果解决方式是其它,理由充分2) Issue不需要技术部测试l 字段变化:字段描述备注l Screen Type:sn4l JIRA自动邮件通知:Reporter、Assignee审查通不过(ResolvedReopened)l 描述:审查通不过,需要继续处理l 条件:1) 审查通不过:如果解决方式是Fixed,代码、测试方案不达标;如果解决方式是其它,理由不充分l 字段变化:字段描述备注注:JIRA自动设置“解决方式”字段为未解决l Screen Type:sn4l JIRA自动邮件通知:Reporter、Assignee关闭(CheckedClosed)l 描述:关闭Issuel 条件:1) 测试通过l 字段变化:字段描述备注l Screen Type:sn4l JIRA自动邮件通知:Reporter、Assignee、Issue Lead测试通不过(CheckedReopened)l 描述:测试通不过,需要继续处理l 条件:1) 测试通不过l 字段变化:字段描述备注注:JIRA自动设置“解决方式”字段为未解决l Screen Type:sn4l JIRA自动邮件通知:Reporter、Assignee、Issue Lead重新打开(ClosedReopened)l 描述:问题需要重新打开继续处理l 条件:1) 如果解决方式是Fixed,经过确认问题没有解决;如果解决方式是其它,问题的描述被完善l 字段变化:字段描述问题类型简要描述优先级截止日期模块影响版本修复版本环境详细描述操作系统来源客户名称设计要求报告人分派人分派给负责人备注注:JIRA自动设置“解决方式”字段为未解决l Screen Type:sn2l JIRA自动邮件通知:Assignee、Issue Lead接收(ReopenedIn Progress)l 描述:接收并开始处理Issuel 字段变化:字段描述备注l Screen Type:sn4l JIRA自动邮件通知:Reporter、Issue Lead4.2. 产品升级每个项目都有相应的产品,产品升级是项目开发的结果。产品文件包括源文件、输出文件和安装包,源文件和输出文件由SVN管理,安装包由技术部负责管理。文件流转过程描述如下图:Issue进入“Resolved”状态前由开发人员完成编译/转换/拷贝,产品发布前由技术部完成打包。SVN库的目录结构举例说明如下:库名称子目录名称XXXTrunkBranches4900(待发布分支)项目XXX(开发分支B)耗时、复杂、代码改动大的Issue XXX(开发分支B)Tags4731(已发布分支)4800(已发布分支)SVN库的操作流程图:SVN库的操作流程说明:流程名称描述开发项目l 如

温馨提示

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

评论

0/150

提交评论