《技术研发文档模版.docx》由会员分享,可在线阅读,更多相关《技术研发文档模版.docx(26页珍藏版)》请在课桌文档上搜索。
1、技术研发文档模版一.目的:(1) 规范公司内部技术研发工作的文档管理;(2) 保持技术研发工作的完整性与连续性;(3) 防止技术流失,减少风险:(4) 使技术文档成为技术研发工作中的重要构成部分。二、适用范围:本公司内部一切与技术研发有关的部门及个人,包含(1) 总经理:(2) 技术部门经理或者负责人:(3) 研发工程师:(4) 测试工程师;(5) 技术支持工程师。三、目标:通过切实可行的文档管理规范,使得研发工作透明,明确,有章可循,合作无障碍,衔接环节畅通:使得所有的研发产品从开始研发一一研发进程一一测试一一修改一一阶段性结束一一产品转化一一升级保护过程中的所有环节都得以在相应的文档中表达
2、。四、版本:E2003V0.10(简称VO.IO)。五、制定原则:(1) 有用:鉴于公司目前的状况,通用性的开发模板(如国标)在很大程度上关于本公司并不有用,因此本规范将不可能完全照搬此类模板,而是根据公司的具体情况制定公司内部的标准;(2) 可行:可行性是该标准的起码要求,没有可行性的标准不能成为真正的“标准”;(3) 高效:假如将国标中的所有规范内容都纳入本标准,一定能够达到目的,实现目标。但是,同时必将为有关人员增添大量的工作量,而且很多工作关于本公司来说是冗余,从而造成有关人员的抵触情绪,使标准难于贯彻。因此,本标准应力求在尽量少的模板中表达尽量多的内容:(4) 科学:本标准的制定尽管
3、不完全照搬其他通用性的标准,但将大量参照通用标准,特别是国标中的某些部分内容,不是抛弃国标,而是以国标为原则,以保证科学性:(5) 建立在广泛意见基础上:本标准并非公司某一个人单方面的意愿,而是从公司利益出发,全体有关人员共同参与,集体的结晶。六.实行过程及生效日期:(1) V0.10版的规范为规范草稿,草稿制订完成后,将在有关部门与有关人员中进行传阅与广泛征求意见。通过三次全体有关人员参与讨论与修改,由总经理审批签字后的规范版本为O.4Oo(2) V0.40为试用版本,在V0.40的试用过程中,将要求并给予有关人员以合理的时间尽量按照V0.40版的要求规范修改,补充与完善V0.40版往常(包
4、含V0.10往常欠缺的文档)的有价值文档。在此期间,如有新的研发工作开始启动,将要求有关人员按照V0.40版的规范要求进行文档的有关操作。在此过程中,假如发现规范中需要修改与补充之处,每通过一次大幅度的修改,版本即升级到V0.5i(i=l,23.n.),每通过一次小的修改或者补充,版本将升级为V0.4j(j=l,2.3,.,n)0(3) VLOO为正式版本。如今的版本已经通过讨论,试用,修改,补充与不断完善,同时VLOO往常欠缺的文档与V0.40试用过程中的文档都已经按照V0.40版本的要求整理完毕,如今的V0.40版已经成熟,能够整体升级到VLOO版。VLOO版本的文档规范将作为公司内部与技
5、术研发工作有关的所有人员在今后相当一段时间内共同遵守的规范,同时将文档的撰写工作作为技术研发的一个重要构成部分正式纳入到技术研发工作中。(4) VLOO规范将具有强制性与高约束力。(注:Vi.00,i=0,1.2,表示i版本系列:VLmn,i,m,n=0,1,2,表示i版本系列下的改动或者升级)第二部分目录索引一、版本操纵规则二.立项1、说明2、模板三、需求分析1 .说明2 .模板四、可行性分析1、说明2,模板五、功能定义1 .说明2 .模板六.概要设计1、硬件部分(1) 说明(2) 模板2.软件部分(1) 说明(2) 模板七、全面设计1.硬件部分(1) 说明(2) 模板2.软件部分(1) 说
6、明(2) 模板八、测试1 .测试流程2 .测试要求(1) 硬件部分(2) 软件部分3、测试模板(1) 硬件部分(2) 软件部分九.从研发到产品的过渡(1) 要求(2) 模板十、技术支持(1) 要求(2) 模板十一.文档工作的评估与审核(1) 评估标准(2) 审核要点第三部分内容一、版本操纵规则(1) 版本状态:Beta/测试版,ReIeaSe/正式版,Changing/变更(2) 版本号:版本号以三位数字表示,格式为i.jk(i=0,L2n;jk=0199)a.BeIa版,i=0b.第一次正式公布的ReleaSe版,1.00c.用Changing来表示Beta或者Release版本的修改或者升
7、级d.小的改动或者升级i,j保持不变,只增加k值即可,k的升值幅度为修改或者升级处的数目,当k值达到或者增加至9时,j=j+Lk=0e.比较大的改动如,一次修改或者升级处的数目10,功能性的增加或者改变,则i保持不变,增加j值。假如是功能性的修改或者变动,每有一项j+1:假如是10的非功能性的修改,每10处修改,j+1,个数部分用k来表示f.重大变动,i值增加g.累计功能变动超过百次,i+l,jk=OO二、立项立项管理(ProjeelInitializationManagement,PIM)的目的是采纳符合公司最大利益的立项建议,通过立项管理使该建议成为正式的项目(合法化)。杜绝不符合公司最大
8、利益的立项建议被采纳,避免公司人力资源的,资金,时间的浪费。立项管理是决策行为,目标是“做正确的情况”(d。rightthings)0而立项之后的研发管理活动是保证项目团队“正确地做情况”(dothingsright)。”正确的决策”+“正确地执行”才有可能产生好的产品。1.说明:(!)立项:任何一次研发工作的启动,包含全新的项目与在以往的项目基础上进行升级或者改版的项目,都需要进行立项的工作。(2) 项目分级:为了明晰立项的工作,使之有条理,可操作,因此将项目区分为一级项目与二级项目两个不一致的等级a.一级项目:包含全新的项目的启动,原有项目的重大改版与升级b、二级项目:在以往项目的基础上进
9、行的非重大的版本修改与完善(3) 项目审批:a、所有一级项目务必由项目负责人提交项目申请计划书,并就项目的有关情况向总经理与技术总监书面陈述或者面对面沟通,得到总经理与技术总监的审批签字后方能启动;b.一级项目务必附加需求分析与可行性分析c.二级项目能够由部门经理指定或者由项目负责人申请得到部门经理审批签字后即可执行,不必交由总经理与技术总监审批签字;d.关于二级项目,务必将项目计划申请书(纸介质)交由技术文档负责人归档,总经理及技术总监对二级项目的进展情况具有知情权,而项目负责人具有向总经理与技术总监汇报(主动或者被动)项目有关情况的义务:e.项目申请计划书一式两份:纸介质文档与电子文档。纸
10、介质文档作为技术档案由专门负责人员备份归档。电子文档按规范要求存储在公司指定的文档服务器上。(4) 权利,责任与义务a、总经理,技术总监,部门经理对其所具有审批权限的项目申请计划书具有否决的权利;b、项目申请人有权要求否决人说明被否决的理由,而且否决人务必在被否决的项目申请计划书中陈述否决理由:c.具有审批权限的人关于项目的合理性,需求性,可行性等推断负有全权责任;2.项目申请计划书项目申请计划书/立项建议书项目编号EPF2003NOX-01级别H一级项目二级项目类别口指定项目H申请项目版本说明V0.10申请人Su申请日期2003-8-18负责人Su组成员Su,Zhang,Yu项目名称基于GP
11、RS的图像传输产品名称G-BIU(Hardware,GPRS-BascdImageUnit),G-BIUST(Software,G-BIUSupportToolkit)理由陈述资源配置需求成本简要核算(暂时可不添此项)目标近期(年月日年月日)中长期(年月日年月日)远期(年月日年月日)问题与解决问题(在此陈述进行该项目可能遇到与需要解决的问题,除了技术层面外,还包含设备,人员配备等方方面面的要紧问题)解决方法针对以上的问题,提出解决建议备注说明审批结果口通过口否决审批日期审批人签字审批意见三、需求分析:假如说立项管理是为熟悉决dorightthings与dothingsright的问题,那么需求
12、分析就是要解决dowhatthings的问题。器求产生目标,目标引领方向。好的需求分析不仅要解决“需要做什么”,同时明确“什么不需要做。最好的,可能产生最大利益的产品是“恰如其分”的产品。所谓“恰如其分”就是:产品的功能恰好满足那些特定的需求,产品功能不多也很多。通常的情况下,总结出“需好做什么”比区分“什么不需要做”要来的容易,但“什么不需要做”的界定往往会影响到成本投入与利益产出的比例。1 .说明:(1) 需求分析工作的安排:进行一项产品的开发工作的通常流程应该是:市场调查一需求分析一可行性研究一立项审核一概要设计(总体设计)一全面设计一单元测试一集成测试一修改完善一项目评估,审核一批量生
13、产一投放市场一技术支持与售后服务。(2) 需求的种类:需求的本质上都来源于市场,但是在具体表现上又是完全不一致的。有的需求直接由用户提出,目标明确;而有些需求则是我们从市场的零星反馈中总结出来的,带有预见性与自主性。(3) 需求分析的要紧目的:从市场的反馈或者对市场的观察与预见中总结出市场的需求,并用理性的思维对这些需求进行分析与总结,将需求明确,为后面的工作奠定基础。(4) 需求分析的作用:需求分析是市场与技术的转换点。通过需求分析后,工作的重心即由市场转移到技术,明确的需求分析是真正进行研发工作的起点,是进行产品开发一系列后序工作的基础。(5) 需求在进行研发的过程中假如发生变更,需要填写
14、“需求变更说明书”需求分析说明书/报告配置编号EPF2003NOX-02作者提交时间2003-8-18目标用户陈述产品的目标用户需求陈述内容级别1ABC2解决方法简单描述针对需求的初步解决意向附加说明讨论意见项目评审委员会结论A需求:紧急,重要B需求:重要,不紧急C需求:非A,B类褥求需求/功能变更说明书配置编号EPF2003NOX-02-01历史版本V2.00改后版本V2.17产品名称G-BIU(GPRS-BasedImageUnit)负责人时间2003-8-19变更项变更内容变更属性变更原因是否同意1ADM口是否23附加说明变更属性中A代表增加,D代表删除,M代表修改项目评审委员会结论项目
15、评审委员会给出是否进行变更的意见,由评委会主席签字生效四、技术可行性分析可行性分析是进行研发工作的重要环节,全面周到的可行性分析与论证为马上启动的项目把握一道至关重要的关口。技术可行性分析要求从技术层面上分析论证项目的可行性,即能否“做得到,做得快,做得好”。可行性分析报告由项目申请责任人总结,撰写,并提交到项目评审委员会批阅。有项目申请/建议书,需求定义与需求报告仍然不能进行实质性的开发,务必要进行可行性分析,可行性分析包含几个部分(1) 市场分析:a.分析总结市场的进展趋势,说明产品处于市场的什么进展阶段,粗略估计产品的生命周期b.本产品与同类产品的价格比对c.统计产品当前市场总额,竞争对
16、手所占的份额,分析本产品有什么比较优势,可能占有多少市场份额d.为产品定位,即确定产品用户群,分析产品消费群体特征,消费方式及影像市场的因素分析(2) 政策分析a.分析有无有关政策“支持”或者“限制”b.分析有无地方政府或者其他机构的“扶持”或者“干扰”(3) 竞争分析a.分析竞争对手的市场状况,产品的优点与缺点b.预测可能形成的竞争的特点与周期(4) 技术可行性分析(5) 时间与资源可行性分析a.按正常的运作,从产品开发到投入市场,时间上是否来得及b.计划中的人员能否及时到位c.计划中的软硬件需求能否及时到位d.成本核算能否负担得起(6) 知识产权分析a.是否已经存在某些专利将妨碍本产品的开
17、发与推广b.产品能否得到知识产权的保护技术可行性分析报告配置编号EPF2003NOX-03报告撰写人提交时间2003-8-19可行性论述由项目负责人总结,撰写要紧从能否“做得到”,“做得快”,“做得好”的角度分析假如能“做得到”,“做得快”,“做得好”,需要给出通过如何的方法保证假如不能,需要给出理由讨论意见由技术秘书总结撰写人提交报告后到项目评审委员会后,项目评审委员组织人员对报告的“可行性论述”展开讨论,技术秘书总结各方意见,记述在此栏项目评审委员会意见项目评审委员会给出整体意见,供决策人参考五、功能定义1 .说明:功能定义是对doWhaithings的明确界定,是针对明确的需求来定义产品
18、功能的过程。是产品设计的实质性阶段,此后的研发工作将围绕功能定义展开,功能定义说明书是参与研发的人员进行工作的基础文档,是产品测试与评审,用户手册的编制,市场宣传的要紧根据。2 .模版功能定义说明书配置编号EPF2003NOX-04负责人提交时间2003-8-19功能项功能描述123附加说明项目评审委员会意见项目评审委员会给出整体意见,供决策人参考六、概要设计1、硬件部分:为了简化操作流程,使文档既能表达设计原理与设计思路,又具有良好的操作性,因此关于硬件部分的概要设计要求只要求给出原理图,思路描述,要紧器件,要紧器件的技术参数。概要设计报告(三)配置编号EPF2003NOX-05-H负责人时
19、间2003-8-19原理图在此添入原理图配置编号,原理图配置编号由技术文档秘书统编制,编号编制方法待讨论,(改动:EPF2003NOX-05-H-01)设计思路描述基本要求:负责人务必对关键的设计思想进行清晰的描述要紧器件及技术参数器件名称用途技术参数参考123要紧参考资料资料名称来源编号12 按照重要,关键性器件一要紧器件一辅助性器件的顺序描述要紧器件及技术参数栏。 每一种参考资料都有自己的编号如:EPF2003NOX-05-H-R12、软件部分:软件部分的概要设计需要提交的报等有:概要设计报告,界面设计报告,数据库设计报告概要设计报告(三)配置编号EPF2003NOX-05-S-01作者提
20、交时间2003-8-19当前版本V1.20历史版本V1.00,V1.07,V1.17术语与缩写解释术语解释G-BIAS即GPS-BasedIntegratedApplicationSystem设计约束* 系统应当遵循的标准或者规范* 软硬件环境(包含运行环境与开发环境)的约束* 接11/协议的约束* 用户界面的约束车软件质量约束,包含正确性,健壮性,可靠性,效率(性能),易用性,清晰性,安全性,可扩展性,兼容性,可移植性。(假如有约束,逐一填写:假如不存在约束,可不填)设计策略* 扩展策略一为了方便扩展,现在采取的措施* 复用策略一说明本系统在当前与将来的夏用策略* 折衷策略一假如存在两个要紧
21、目标难以同时优化时如何折衷系统总体结构描述开发环境配置软件硬件网络要紧开发工具及语言运行环境要求软件包含操作系统,第三方软件平台硬件网络数据库参考资料资料配置编号来源12其他说明*假如系统比较复杂,首先将系统分解成若干子系统,对各个子系统绘制逻辑图,说明子系统的功能* 解释如何与为什么如此分解系统* 说明子系统间如何如何协调工作,以实现元系统的功能* 假如子系统N仍然需要分解成模块,则(1) 绘制模块逻辑图(2) 陈述分解理由(3) 说明模块间如何协调工作,从而实现子系统的功能*假如系统相对简单,给出用工具Visio绘制的系统逻辑结构图界面设计报告界面设计报告(三)配置编号EPF2003NOX
22、-05-S-02作者时间2003-8-19当前版本VL20历史版本V1.00,vl.07,vl.17界面结构及风格绘制界面视图(1) 主界面:需要给出界面元素的作用与操作(2) 子界面:给出子界面的要紧作用第三方界面元素控件,组件,函数库及其来源名称来源作用12数据库设计报告要紧完成数据库的物理设计,即表的结构设计与对表结构的第三范式处理数据库设计报告(三)配置编号EPF2003NOX-05-S-03作者时间2003-8-19当前版本V1.20历史版本V1.00,vl.07,vl.17表汇总表名功能描述1A2B3CA列名数据类型(经度范围)约束条件备注12补充说明角色与权限能够访问的表与列访问
23、权限/11色A角色B七、全面设计1.硬件部分,硬件部分的全面设计要紧表达在下位机软件的代码上,因此全面设计文档的内容集中在对代码的要求上面,代码要求(1) 所有的代码模块务必用文件的方式组织(2) 在每一个文件中的开头以注释的方式写如下内容:Copyright(c)2003,*公司,硬件开发部* A11rightsreserved* 文件名称:* 文件标识:文件标识能够统一规定,也能够自己选择* 摘要:简要描述该文件的内容* 当前版本:* 作者:输入作者或者修改者的名字* 完成日期:* 取代版本:* 原作者:* 完成日期:(3) 假如用C语言开发a.务必将H文件与.C文件区分开来,在.H中定义
24、全局变量,结构,联合,自定义群体等,如链表;函数的声明b.在定义函数体前,以注释方式写如下内容学函数的要紧作用*输入输出参数的含义(4) 全局变量的定义要集中,并说明用途(5) 要紧变量务必在定义之后说明用途(6) 所有函数的定义务必给出函数的作用全面设计报告(三)配置编号EPF2003NOX-06-H作者时间2003-8-20当前版本历史版本所有函数定义列表函数定义要紧用途外部接口12流程图外部接口/库接口/库名要紧用途来源I2通讯协议X内部通讯协议外部协议1填入内部通讯协议文档配置编号如SMPP,S7等2其他说明2.软件部分软件部分的全面设计报告内容相对较多,因此设计报告分成若干部分全面设
25、计报告(SPI)配置编号EPF2003NOX-06-S-01作者时间2003-8-20当前版本历史版本系统架构假如能用图表示,务必用图表示,不好用图表示的部分,能够用文字描述要紧控件/组件名称作用来源使用12类/结构类名作用12要紧的数据结构一数据结构描述12关键算法算法作用实现过程12自定义消息消息名称消息IDInvoke条件12其他说明要紧控件一栏包含: 第三方控件,如MapX,FIatStyIe等,在使用此类控件中务必给出此控件的作用,来源如购买,Share等:务必简要描述此类控件的使用方法,假如控件本身带有资料描述,务必以附录资料的形式给出资料 要紧的类/结构:程序中所有用到的类,包含
26、自己独立封装的类,从固有的类中集成下来的类,简要陈述类的作用。假如回使用建模工具,则需要用类图来描述出类的结构,继承关系等。要紧的数据结构,如结构(记录),偌表,栈,队列,图,树及作用 关键算法:关键不是复杂,任何一个程序都有关键算法,这里的“关键”的引申含义为:要紧,重要。务必给出算法的作用与实现的思路过程描述全面设计报告(SP2)配置编号EPF2003NOX-06-S-02作者时间2003-8-20当前版本历史版本外部接口接口作用参数描述1MaP.DistanceQ23内部接口(方法/函数/过程)接口作用宿主参数描述123其他说明所谓接口,只是是函数在特定概念下的称谓。外部接口,程序中所使
27、用的外部函数。比如,在使用M叩X控件时,需要使用MaP.Distance。接II函数来计算距离,那么既需要描述出MaP.Distance。的作用与参数描述 内部接口:所谓宿主,即指包含此接口的自定义或者从固有类继承而来的类,假如是全局函数,宿主栏填写G全面设计报告(SP3)配置编号EPF2003NOX-06-S-03作者时间2003-8-20当前版本历史版本流程图配置编号1EPF2003NOX-06-S-03-CF-0I2其他说明 流程图要紧描述程序的关键流程,对关键的推断根据是:假如没有此流程图描述,则对他人懂得此程序存有障碍 由于流程图通常占用较大空间,因此将其作为全面设计报告(SP3)的
28、附件八、测试测试是产品研发中相当重要的部分,在IT领域越来越受到人们的普遍重视。高水平的测试不仅能够发现表面存在的bug,还能够发现产品内部设计缺陷,消除潜在隐患,提出修改完善建议等。测试,在产品研发中所占用的时间比例大约是整个研发周期的1/47/3。但是,鉴于公司的实际情况,需要制定有效的,符合公司使用要求,有用的测试规程。产品测试规定为两个部分(1) 内部测试:即指开发人员自己进行的测试工作,基本要求是在通常情况下,产品能够正常启动运行即可(2) 产品测试:当内部测试完成以后,测试人员进行产品测试,测试的根据为项目建议书,概要设计报告,功能定义报告,全面设计报告(3) 集成测试:及产品的各
29、个功能部分一起运作下的测试产品测试在目前看来,最要紧的是要测试产品的功能,测试功能的要紧根据则是功能定义报告。在产品测试前,开发人员务必提供一套测试样本。产品测试报告(HPl)配置编号EPF2003NOX-07-H-01测试人负责人测试时间2003-8-21产品名称版本历史版本测试环境及工具测试项功能是否通过备注1YesNo2遗留问题问题描述问题级别原因分析1RYO2测试结论测试人签字手写问题级别:(1) R:即Red,红色级别,重大问题,关键问题,如执行某项功能时,导致系统死机(死循环),崩溃等(2) YMJYellow,黄色级别,功能性问题,某项功能无法通过(3) O用JOrange,橙色
30、级别,功能能够实现,但操作十分不便产品测试报告(HP2)配置编号EPF2003NOX-07-H-02测试人负责人测试时间2003-8-21产品版本历史版本测试环境及工具问题项功能问题原因是否解决是否通过iYesNoYesNom遗留问题问题描述问题级别原因分析IRYO2测试结论测试人签字手写开发人员签字手写此模板“问题项”中的“问题原因”与“是否解决”由开发人员填写。(产品初次测试需要测试人员填写“产品测试报告(HP1),将测试报告交给项目负责人,项目负责人组织开发人员分析问题原因,并填写“产品测试报告(HP2M,再交给测试人员,如此反复,直到问题全部解决)软件测试模板与上同。产品测试报告(SP
31、I)配置编号EPF2003NOX-07-S-01测试人负责人测试时间2003-8-21产品版本历史版本测试环境及工具测试项功能是否通过备注1YesNo2新问题问题描述问题级别原因分析1RYO2测试结论测试人签字手写产品测试报告(SP2)配置编号EPF2003NOX-07-S-02测试人负责人测试时间产品版本历史版本测试环境及工具问题项功能问题原因是否解决是否通过iYesNoYesNom遗留问题问题描述问题级别原因分析1RY()2测试结论测试人签字手写开发人员签字手写九、从研发到产品的过渡:产品通过测试阶段,工作由研发转移到生产。关于软件部分,将测试后得到的最终版本做成一套安装包,安装包的制作应
32、遵循一定的规范,总结如下(1) 在安装过程中,务必有明确的产品名称标示,版本信息,版权信息(2) 务必有安装说明,开发人员能够将一些关键的注意事项交给生产(客服),由生产整理,总结,最终形成安装手册(3) 务必有自动卸载功能(4) 在程序中主界面中(标题栏),务必有明确的产品名称,版本信息关于硬件部分,开发人员需要向生产部门提供如下文档:研发一生产移交报告配置编号EPF2003NOX-08-H作者交接时间2003-8-21产品名称版本历史版本物料清单名称用途建议选用备注说明123软件代码配置编号,要紧用来写CPU,EPF2003NX-08-H-01注意事项对在生产过程中的注意事项寄予说明生产负责人签字手写作者签字手写此报告为最终报告,即生产负责人与研发人员反复沟通后产生。十、技术支持:技术支持指在产品投入市场后的活动,方面负责帮助用户对产品的使用,方面负责将产品在使用过程中的问题反馈的生产,再到研发。用户反馈卡: