当前位置:文档之家› IT技术研发文档

IT技术研发文档

IT技术研发文档
IT技术研发文档

第一部分总纲

一﹑目的:

(1)规范公司内部技术研发工作的文档经管;

(2)保持技术研发工作的完整性与连续性;

(3)防止技术流失,减少风险;

(4)使技术文档成为技术研发工作中的重要组成部分。

二﹑适用范围:本公司内部一切与技术研发有关的部门及个人,包括

(1)总经理;

(2)技术部门经理或负责人;

(3)研发工程师;

(4)测试工程师;

(5)技术支持工程师。

三﹑目标:

通过切实可行的文档经管规范,使得研发工作透明,明确,有章可循,合作无障碍,衔接环节畅通;使得所有的研发产品从开始研发——研发进程——测试——修改——阶段性结束——产品转化——升级维护过程中的所有环节都得以在相应的文档中体现。

四﹑版本:E2003V0.10(简称V0.10)。

五﹑制定原则:

(1)实用:鉴于公司目前的状况,通用性的开发模板(如国标)在很大程度上对于本公司并不实用,所以本规范将不会完全照搬此类模板,而是根据公司的具体情况制定公司内部的规范;

(2)可行:可行性是该规范的起码要求,没有可行性的规范不能成为真正的“规范”;

(3)高效:如果将国标中的所有规范内容都纳入本规范,一定可以达到目的,实现目标。但是,同时必将为相关人员增添大量的工作量,而且很多工作对于本公司来说是冗余,从而造成相关人员的抵触情绪,使规范难于贯彻。所以,本规范应力求在尽量少的模板中体现尽量多的内容;

(4)科学:本规范的制定虽然不完全照搬其他通用性的规范,但将大量参照通用规范,特别是国标中的某些部分内容,不是抛弃国标,而是以国标为原则,以保证科学性;

(5)建立在广泛意见基础上:本规范并非公司某一个人单方面的意愿,而是从公司利益出发,全体相关人员共同参与,集体的结晶。

六﹑实行过程及生效日期:

(1)V0.10版的规范为规范草稿,草稿制订完成后,将在相关部门和相关人员中进行传阅和广泛征求意见。经过三次全体相关人员参与讨论和修改,由总经理审批签字后的规范版本为0.40。

(2)V0.40为试用版本,在V0.40的试用过程中,将要求并给予相关人员以合理的时间尽量按照V0.40版的要求规范修改,补充和完善V0.40版以前(包括V0.10以前欠缺的文档)的有价值文档。在此期间,如有新的研发工作开始启动,将要求相关人员按照V0.40版的规范要求进行文档的相关操作。在此过程中,如果发现规范中需要修改和补充之处,每经过一次大幅度的修改,版本即升级到V0.5i(i=1,2,3,…n,),每经过一次小的修改或补充,版本将升级为V0.4j(j=1,2,3,…,n)。

(3)V1.00为正式版本。此时的版本已经经过讨论,试用,修改,补充和不断完善,并且V1.00以前欠缺的文档与V0.40试用过程中的文档都已经按照V0.40版本的要求整理完毕,此时的V0.40版已经成熟,可以整体升级到V1.00版。V1.00版本的文档规范将作为公司内部与技术研发工作相关的所有人员在今后相当一段时间内共同遵守的规范,并且将文档的撰写工作作为技术研发的一个重要组成部分正式纳入到技术研发工作中。

(4)V1.00规范将具有强制性和高约束力。

(注:Vi.00,i=0,1,2,…表示i版本系列;Vi.mn,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)说明

(2)模板

八﹑测试

1﹑测试流程

2﹑测试要求

(1)硬件部分

(2)软件部分

3﹑测试模板

(1)硬件部分

(2)软件部分

九﹑从研发到产品的过渡(1)要求

(2)模板

十﹑技术支持

(1)要求

(2)模板

十一﹑文档工作的评估与审核(1)评估规范

(2)审核要点

第三部分内容

一﹑版本控制规则

(1)版本状态:Beta/测试版,Release/正式版,Changing/变更

(2)版本号:版本号以三位数字表示,格式为i.jk(i=0,1,2,...,n;jk=01, (99)

a.Beta版,i=0

b.第一次正式发布的Release版,1.00

c.用Changing来表示Beta或Release版本的修改或升级

d.小的改动或升级i,j保持不变,只增加k值即可,k的升值幅度为修改或升级处的数目,当k值达到或增加至9时,j=j+1,

k=0

e.比较大的改动如,一次修改或升级处的数目>10,功能性的增加或改变,则i保持不变,增加j值。如果是功能性的修改或

变动,每有一项j+1;如果是>10的非功能性的修改,每10处修改,j+1,个数部分用k来表示

f.重大变动,i值增加

g.累计功能变动超过百次,i+1,jk=00

二﹑立项

立项经管(Project Initialization Management,PIM)的目的是采纳符合公司最大利益的立项建议,通过立项经管使该建议成为正式的工程(合法化)。杜绝不符合公司最大利益的立项建议被采纳,避免公司人力资源的,资金,时间的浪费。

立项经管是决策行为,目标是“做正确的事情”(do right things)。而立项之后的研发经管活动是保证工程团队“正确地做事情”(do things right)。“正确的决策”+“正确地执行”才有可能产生好的产品。

1﹑说明:

(1)立项:任何一次研发工作的启动,包括全新的工程和在以往的工程基础上进行升级或改版的工程,都需要进行立项的工作。(2)工程分级:为了明晰立项的工作,使之有条理,可操作,所以将工程区分为一级工程和二级工程两个不同的等级a﹑一级工程:包括全新的工程的启动,原有工程的重大改版和升级

b﹑二级工程:在以往工程的基础上进行的非重大的版本修改和完善

(3)工程审批:

a﹑所有一级工程必须由工程负责人提交工程申请计划书,并就工程的相关情况向总经理和技术总监书面陈述或面对面沟通,得到总经理和技术总监的审批签字后方能启动;

b﹑一级工程必须附加需求分析与可行性分析

c﹑二级工程可以由部门经理指定或由工程负责人申请得到部门经理审批签字后即可执行,不必交由总经理和技术总监审批签字;

d﹑对于二级工程,必须将工程计划申请书(纸介质)交由技术文档负责人归档,总经理及技术总监对二级工程的进展情况具有知情权,而工程负责人具有向总经理和技术总监汇报(主动或被动)工程相关情况的义务;

e﹑工程申请计划书一式两份:纸介质文档与电子文档。纸介质文档作为技术档案由专门负责人员备份归档。电子文档按规范要求存储在公司指定的文档服务器上。

(4)权利,责任与义务

a﹑总经理,技术总监,部门经理对其所具有审批权限的工程申请计划书具有否决的权利;

b﹑工程申请人有权要求否决人说明被否决的理由,而且否决人必须在被否决的工程申请计划书中陈述否决理由;

c﹑具有审批权限的人对于工程的合理性,需求性,可行性等判断负有全权责任;

2﹑工程申请计划书

工程申请计划书/立项建议书

三﹑需求分析:

如果说立项经管是为了解决do right things和do things right的问题,那么需求分析就是要解决do what things的问题。需求产生目标,目标引领方向。好的需求分析不仅要解决“需要做什么”,同时明确“什么不需要做”。最好的,可能产生最大利益的产品是“恰如其分”的产品。所谓“恰如其分”就是:产品的功能恰好满足那些特定的需求,产品功能不多也不少。一般的情况下,归纳总结出“需好做什么”比区分“什么不需要做”要来的容易,但“什么不需要做”的界定往往会影响到成本投入和利益产出的比例。

1﹑说明:

(1)需求分析工作的安排:进行一项产品的开发工作的一般流程应该是:市场调查—需求分析—可行性研究—立项审核—概要设计(总体设计)—详细设计—单元测试—集成测试—修改完善—工程评估,审核—批量生产—投放市场—技术支持与售后服务。(2)需求的种类:需求的本质上都来源于市场,但是在具体表现上又有所不同。有的需求直接由用户提出,目标明确;而有些需求则是我们从市场的零星反馈中归纳总结出来的,带有预见性和自主性。

(3)需求分析的主要目的:从市场的反馈或对市场的观察与预见中归纳总结出市场的需求,并用理性的思维对这些需求进行分析和归纳总结,将需求明确,为后面的工作奠定基础。

(4)需求分析的作用:需求分析是市场与技术的转换点。经过需求分析后,工作的重心即由市场转移到技术,明确的需求分析是真正进行研发工作的起点,是进行产品开发一系列后序工作的基础。

(5)需求在进行研发的过程中如果发生变更,需要填写“需求变更说明书”

2﹑模板1

需求分析说明书/报告

A需求:紧急,重要

B需求:重要,不紧急

C需求:非A,B类需求

模板2

需求/功能变更说明书

四﹑技术可行性分析

可行性分析是进行研发工作的重要环节,详细周到的可行性分析与论证为即将启动的工程把握一道至关重要的关口。

技术可行性分析要求从技术层面上分析论证工程的可行性,即能否“做得到,做得快,做得好”。可行性分析报告由工程申请责任人归纳总结,撰写,并提交到工程评审委员会审阅。

有工程申请/建议书,需求定义和需求报告仍然不能进行实质性的开发,必须要进行可行性分析,可行性分析包括几个部分(1)市场分析:

a.分析归纳总结市场的发展趋势,说明产品处于市场的什么发展阶段,粗略估计产品的生命周期

b.本产品和同类产品的价格比对

c.统计产品当前市场总额,竞争对手所占的份额,分析本产品有哪些比较优势,可能占有多少市场份额

d.为产品定位,即确定产品用户群,分析产品消费群体特征,消费方式及影像市场的因素分析

(2)政策分析

a.分析有无相关政策“支持”或“限制”

b.分析有无地方政府或其他机构的“扶持”或“干扰”

(3)竞争分析

a.分析竞争对手的市场状况,产品的优点与缺点

b.预测可能形成的竞争的特点与周期

(4)技术可行性分析

(5)时间和资源可行性分析

a.按正常的运作,从产品开发到投入市场,时间上是否来得及

b.计划中的人员能否及时到位

c.计划中的软硬件需求能否及时到位

d.成本核算能否负担得起

(6)知识产权分析

a.是否已经存在某些专利将妨碍本产品的开发与推广

b.产品能否得到知识产权的保护

技术可行性分析报告

五﹑功能定义

1.说明:功能定义是对do what things的明确界定,是针对明确的需求来定义产品功能的过程。是产品设计的实质性阶段,此后

的研发工作将围绕功能定义展开,功能定义说明书是参与研发的人员进行工作的基础文档,是产品测试与评审,用户手册的编制,市场宣传的主要依据。

2.模版

功能定义说明书

六﹑概要设计

1、硬件部分:为了简化操作流程,使文档既能体现设计原理与设计思路,又具有良好的操作性,所以对于硬件部分的概要设计要求只要求给出原理图,思路描述,主要器件,主要器件的技术参数。

概要设计报告(H)

●按照重要,关键性器件—>主要器件—>辅助性器件的顺序描述主要器件及技术参数栏。

●每一种参考资料都有自己的编号如:EPF2003NOX-05-H-R1

2、软件部分:软件部分的概要设计需要提交的报告有:概要设计报告,界面设计报告,数据库设计报告

概要设计报告(S)

﹡如果系统比较复杂,首先将系统分解成若干子系统,对各个子系统绘制逻辑图,说明子系统的功能*解释如何以及为什么如此分解系统

﹡说明子系统间如何如何协调工作,以实现元系统的功能

﹡如果子系统N仍然需要分解成模块,则

(1)绘制模块逻辑图

(2)陈述分解理由

(3)说明模块间如何协调工作,从而实现子系统的功能

﹡如果系统相对简单,给出用工具Visio绘制的系统逻辑结构图

界面设计报告

界面设计报告(S)

数据库设计报告主要完成数据库的物理设计,即表的结构设计与对表结构的第三范式处理

数据库设计报告(S)

七﹑详细设计

1. 硬件部分,硬件部分的详细设计主要体现在下位机软件的代码上,所以详细设计文档的内容集中在对代码的要求上面,代码要求(1)所有的代码模块必须用文件的方式组织

(2)在每一个文件中的开头以注释的方式写如下内容:

Copyright(c)2003,**公司,硬件开发部

*All rights reserved

*文件名称:

*文件标识:文件标识可以统一规定,也可以自己选择

*摘要:简要描述该文件的内容

*

*当前版本:

*作者:输入作者或修改者的名字

*完成日期:

*

*取代版本:

*原作者:

*完成日期:

(3)如果用C语言开发

a.必须将.H文件与.C文件区分开来,在.H中定义全局变量,结构,联合,自定义群体等,如链表;函数的声明

b.在定义函数体前,以注释方式写如下内容

*函数的主要作用

*输入输出参数的含义

(4)全局变量的定义要集中,并说明用途

(5)主要变量必须在定义之后说明用途

(6)所有函数的定义必须给出函数的作用

详细设计报告(H)

2.软件部分

软件部分的详细设计报告内容相对较多,所以设计报告分成若干部分

详细设计报告(SP1)

主要控件一栏包括:

●第三方控件,如MapX,FlatStyle等,在使用此类控件中必须给出此控件的作用,来源如购买,Share等;必须简要描述

此类控件的使用方法,如果控件本身带有资料描述,必须以附录资料的形式给出资料

●主要的类/结构:程序中所有用到的类,包括自己独立封装的类,从固有的类中集成下来的类,简要陈述类的作用。如果

回使用建模工具,则需要用类图来描述出类的结构,继承关系等。

●主要的数据结构,如结构(记录),链表,栈,队列,图,树及作用

●关键算法:关键不是复杂,任何一个程序都有关键算法,这里的“关键”的引申含义为:主要,重要。必须给出算法的

作用与实现的思路过程描述

相关主题
文本预览
相关文档 最新文档