关注【本头条号】更多关于制度、流程、体系、岗位、模板、方案、工具、案例、故事、图书、文案、报告、技能、职场等内容,弗布克15年积累免费与您分享!
阅读导航→
01 软件研发计划书
02 软件需求说明书
03 详细设计说明书
04 用户操作手册
05 程序维护手册
06 软件研发总结报告
研发部
一、软件研发计划书
软件研发计划书(撰写指引)
一、引言
(一)编写目的
本报告的主要作用是确定各个研发阶段的研发情况和主要的负责人,有序进行项目的研发,减少研发中的不必要损失。
(二)背景介绍
1.待开发的软件系统名称。
2.本软件研发提出者、开发者、用户及实现该软件的计算中心或计算机网络。
3.该软件系统同其他系统或其他机构基本的相互来往关系。
(三)定义
列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
(四)参考资料
1.本次研发项目经核准的计划任务书或合同及有关部门的批文。
2.属于本次研发项目的其他已发表的文件。
3.列出本文件中各处引用的文件、资料,包括所要用到的软件开发标准。列出这些文件资料的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的路径。
二、研发工作概述
(一)工作内容
简要说明在本次研发中必须进行的各项主要工作。
(二)主要参加人员
扼要说明参加本项目开发工作的主要人员情况,包括他们的技术水平。
(三)条件与限制
1.完成项目应具备的条件。
2.研发部已具有的条件。
3.尚需创造的条件。
(四)产品
1.程序。列出需移交给用户的程序的名称、所用的编程语言及存储形式,并通过引用有关文件逐项说明其功能和特性。
2.文件。列出需移交给用户的每种文件的名称及内容要点。
3.服务。列出需向用户提供的各项服务,如安装培训、维护与运行支持等,应逐项规定开始日期、所提供支持的级别和服务的期限。
4.非移交的产品。说明开发集体应向本单位交出但不必向用户移交的产品(文件甚至某些程序)。
(五)验收标准
对于上述这些应交出的产品和服务,逐项说明或引用资料说明验收标准。
(六)项目交付期限
(七)本计划的批准者和批准日期
三、研发实施计划
(一)工作任务的分解与人员分工
对于项目开发中需完成的各项工作,从需求分析、设计、实现、测试直到维护,包括文件的编制、审批、打印、分发工作,用户培训工作,软件安装工作等,按层次进行分解,指明每项任务的负责人和参加人员。
(二)接口人员
说明负责接口工作的人员及其职责,接口人员包括以下三类人员。
1.负责本项目同用户接口的人员。
2.负责本项目同本公司各管理机构,如财务部门、质量管理部等部门接口的人员。
3.负责本项目同各分合同负责单位接口的人员等。
(三)进度控制
编制工作列表,对于需求分析、设计、编码实现、测试、移交、培训和安装等工作阶段,给出每项工作任务的预定开始日期、完成日期及所需的资源,规定各项工作任务完成的先后顺序以及表征每项工作任务完成的标志性事件。
(四)预算管理
逐项列出本开发项目所需要的劳务(包括人员数量和时间)以及经费的预算(包括办公费、差旅费、机时费、资料费、通讯设备与专用设备的租金等)和来源。
(五)关键问题与难点
逐项列出能够影响整个项目成败的关键问题和技术难点,指出这些问题对项目的影响。
(六)风险管理
清晰列出存在的风险及应急方案。
四、支持条件
说明为支持本次研发工作所需要的各种条件和设施。
(一)计算机系统支持
逐项列出研发过程中和运行时所需的计算机系统支持,包括计算机、外围设备、通讯设备、模拟器、编译(或汇编)程序、操作系统、数据管理程序包、数据存储能力和测试支持能力等,逐项给出有关到货日期和使用时间的要求。
(二)需要用户承担的工作
逐项列出需要用户承担的工作和完成期限,包括需要用户提供的条件及提供的时间。
(三)由外单位提供的条件
逐项列出需要外单位分合同承包者承担的工作和完成的时间,包括需要由外单位提供的条件和提供的时间。
(四)专题计划要点
说明本次研发中需制订的各个专题计划(如分合同计划、研发人员培训计划、测试计划、安全保密计划、质量保证计划、配置管理计划、用户培训计划、系统安装计划等)的要点。
二、软件需求说明书
软件需求说明书(撰写指引)
一、引言
(一)编写目的
说明编写这份需求说明书的目的,指出预期的阅读范围。
(二)背景说明
1.本项目的名称和所开发出来的软件系统的名称。
2.此软件的任务提出者、开发者、用户等。
(三)定义
列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
(四)参考资料
列出要用到的参考资料。
1.本项目已核准的计划任务书或合同及上级机关的批文。
2.属于本项目的其他已发表的文件。
3.本文件中各处所引用的文件、资料,包括所要用到的软件开发标准,列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的路径。
(五)说明实际参加人员、时间及工作划分
说明参加本次研发工作的负责人、参加人员、起止时间及实际工作量。按研发阶段划分,细化每位研发人员在各研发阶段所用的研发时间及实际工作量。
二、任务概述
(一)目标
1.叙述该项软件研发的意图、应用目标、作用范围以及其他背景材料。
2.解释被研发软件与其他有关软件之间的关系。
(1)如果本软件产品是一项独立的软件,而且全部内容自含,则应说明这一点。
(2)如果所定义的产品是一个更大的系统的一个组成部分,则应说明本产品与该系统中其他各组成部分之间的关系。
(二)用户的特点
列出本软件最终用户的特点,充分说明操作人员、维护人员的受教育水平和技术专长以及本软件的预期使用频度。
(三)假定和约束条件
列出进行本软件开发工作的假定和约束条件,例如经费限制、开发期限等。
三、需求规定
(一)对功能的规定
用列表的方式(例如IPO表即输入、处理、输出表的形式),逐项定量、定性地叙述对软件提出的功能要求,说明输入什么、经怎样的处理、得到什么输出,说明软件应支持的终端数和应支持的并行操作的用户数。
(二)对性能的规定
1.精度
说明对该软件的输入、输出数据的精度要求,包括传输过程中的精度。
2.时间特性要求
说明对于该软件的时间特性要求,包括响应时间、更新处理时间、数据转换与传送时间、解题时间等。
3.灵活性
说明对该软件的灵活性要求,即当需求发生某些变化时,该软件对这些变化的适应能力。
(1)操作方式上的变化。
(2)运行环境的变化。
(3)同其他软件的接口的变化。
(4)精度和有效时限的变化。
(5)计划的变化或改进。
(6)对于为了提供这些灵活性而进行的专门设计的部分应该加以标明。
(三)输入输出要求
1.解释各输入输出数据的类型,并逐项说明其媒体、格式、数值范围、精度等。
2.对软件的数据输出及必须标明的控制输出量进行解释并举例,包括对硬拷贝报告(正常结果输出、状态输出及异常输出)以及图形或显示报告的描述。
(四)数据管理能力要求
说明需要管理的文卷和记录的个数、表和文卷的大小规模,要按可预见的增长对数据及其分量的存储要求做出估算。
(五)故障处理要求
列出可能的软件、硬件故障以及对各项性能而言所产生的后果和对故障处理的要求。
(六)其他专门要求
如用户单位对安全保密的要求,对使用方便的要求,对可维护性、可补充性、易读性、可靠性、运行环境可转换性的特殊要求等。
四、运行环境规定
(一)设备
列出运行该软件所需要的硬设备,说明其中的新型设备及其专门功能,包括以下五个方面的内容。
1.处理器型号及内存容量。
2.外存容量、联机或脱机、媒体及其存储格式、设备的型号及数量。
3.输入及输出设备的型号和数量、联机或脱机。
4.数据通信设备的型号和数量。
5.功能键及其他专用硬件。
(二)支持软件
列出支持软件,包括要用到的操作系统、编译(或汇编)程序、测试支持软件等。
(三)接口
说明该软件同其他软件之间的接口、数据通信协议等。
(四)控制
说明控制该软件的运行方法和控制信号,并说明这些控制信号的来源。
研发部
三、详细设计说明书
详细设计说明书(撰写指引)
一、引言
(一)编写目的
说明编写这份详细设计说明书的目的,指出预期的读者。
(二)项目背景
(三)文中特殊的定义与缩写
(四)参考资料
1.软件研发计划书。
2.需求规格说明书。
3.概要设计说明书。
二、总体设计
1.需求概要。
2.软件结构。
三、程序1(××模块)设计说明
(一)程序描述
给出对该程序的简要描述,主要说明安排设计本程序的目的和意义,并说明本程序的特点。
(二)功能
说明该程序应具有的功能,可采用IPO图(即输入—处理—输出图)的形式。
(三)性能
说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。
(四)输入项
给出对每一个输入项的特性说明,包括名称、标识、数据的类型和格式,数据值的有效范围,输入的方式、数量和频度,输入媒体,输入数据的来源,安全保密条件,等等。
(五)输出项
给出对每一个输出项的特性说明,包括名称、标识、数据的类型和格式,数据值的有效范围,输出的形式、数量和频度,输出媒体,对输出图形及符号的说明,安全保密条件,等等。
(六)算法
详细说明本程序所选用的算法,及具体的计算公式和计算步骤。
(七)流程逻辑
用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。
(八)接口
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序直接相关联的数据结构(数据库、数据文卷)。
(九)存储分配
根据需要,说明本程序的存储分配。
(十)注释设计
说明准备在本程序中安排的注释。
1.加在模块首部的注释。
2.加在各分支点处的注释。
3.对各变量的功能、范围、缺省条件等所加的注释。
4.对使用的逻辑所加的注释。
(十一)限制条件
说明本程序运行中所受到的限制条件。
(十二)测试计划
说明对本程序进行单体测试的计划,包括对测试的技术要求、输入数据、预期结果、进度安排、人员职责、设备条件驱动程序及模块等的规定。
(十三)尚未解决的问题
说明在本程序的设计中尚未解决并且设计者认为在软件完成之前应解决的问题。
四、程序2(××模块)设计说明
用类似程序1(××模块)的方式,详细说明程序2(××模块)乃至第n个程序的设计思路。
四、用户操作手册
用户操作手册(撰写指引)
一、引言
(一)编写目的
(二)背景
(三)定义
(四)参考资料
二、用途
(一)功能
结合本软件的研发目的逐项说明本软件所具有的各项功能以及它们的极限范围。
(二)性能
1.精度,即逐项说明对各项输入数据的精度要求和本软件输出数据达到的精度,包括传输中的精度要求。
2.时间特性,定量说明本软件的时间特性,如响应时间、更新处理时间、数据传输转换时间、计算时间等。
3.灵活性,说明本软件所具有的灵活性,即当用户需求(如对操作方式、运行环境、结果精度、时间特性等的要求)发生某些变化时,本软件的适应能力。
(三)安全保密
说明本软件在安全、保密方面的设计考虑和实际达到的能力。
三、运行环境
(一)硬设备
列出为运行本软件所需要的硬设备的最小配置,主要有以下四个方面的内容。
1.处理机的型号、内存容量。
2.所需要的外存储器、媒体、记录格式、设备的型号和台数。
3.联机或者脱机。
4.数据传输设备和转换设备的型号、台数。
(二)支持软件
说明为运行本软件所需要的支持软件,主要有以下四种类型。
1.操作系统的名称、版本号。
2.程序语言的编译/汇编系统的名称和版本号。
3.数据库管理系统的名称和版本号。
4.其他支持软件。
(三)数据结构
列出为支持本软件的运行所需要的数据库或数据文卷。
四、使用过程说明
(一)安装与初始化
一步一步地说明为使用本软件而需进行的安装与初始化过程,包括程序的存储形式、安装与初始化过程中的全部操作命令、系统对这些命令的反应与答复、表征安装工作完成的测试实例等。如果有的话,还应说明安装过程中所需用到的专用软件。
(二)输入
规定输入数据和参量的准备要求。
1.输入数据的现实背景
(1)实际情况。
(2)情况出现的频度。
(3)情况来源。
(4)输入媒体。
(5)出于安全保密考虑而对访问这些输入数据所加的限制。
(6)质量管理,例如对输入数据合理性的检验以及当输入数据有错误时应采取的措施,如建立出错情况的记录等。
(7)支配,例如,如何确定输入数据是保留还是废弃,是否要分配给其他的接受者等。
2.输入格式
(1)说明对初始输入数据和参量的格式要求,包括语法规则、数据长度、格式基准、标号、顺序、标点、词汇表、省略和重复等方面的要求。
(2)给出用来表示输入开始或结束的控制信息。
3.输入举例
为每个完整的输入形式提供样本,包括以下五个方面。
(1)控制或首部,例如用来表示输入种类和类型的信息、标识符输入日期、正文起点和对所用编码的规定。
(2)主体,输入数据的主体,包括数据文卷的输入表述部分。
(3)尾部,用来表示输入结束的控制信息、累计字符总数等。
(4)省略,指出哪些输入数据是可省略的。
(5)重复,指出哪些输入数据是重复的。
(三)输出
1.输出数据的现实背景,说明输出数据的现实背景。
(1)使用,这些输出数据是给谁的,用来干什么的。
(2)使用频度,例如每周的、定期的或备查的。
(3)媒介,如打印、CRI显示、磁带、卡片、磁盘。
(4)质量管理,例如关于合理性检验、出错纠正的规定。
(5)支配,例如,如何确定输出数据是保留还是废弃,是否要分配给其他接受者等。
2.输出格式
给出对每一类输出信息的解释。
(1)首部,如输出数据的标识符、输出日期和输出编号。
(2)主体,输出信息的主体,包括分栏标题。
(3)尾部,包括累计总数和结束标记。
3.输出举例
为每种输出类型提供例子,并对例子中的每一项进行说明。
(1)定义,每项输出信息的意义和用途。
(2)来源,是从特定输入中抽出、从数据库文卷中取出,还是从软件的计算过程中得到。
(3)特性,输出的值域、计量单位以及在什么情况下可缺省等。
(四)文卷查询
这一条的编写针对具有查询能力的软件,内容包括同数据库查询有关的初始化、准备及处理所需要的详细规定,说明查询的能力、方式以及所使用的命令和所要求的控制规定。
(五)出错处理和恢复
1.列出由软件产生的出错编码或条件以及应由用户承担的修改纠正工作。
2.指出为了确保再启动和恢复的能力,用户必须遵循的处理过程。
(六)终端操作
当软件是在多终端系统上工作时,应编写本条,以说明终端的配置安排、连接步骤、数据和参数输入步骤以及控制规定,说明通过终端操作进行查询、检索、修改数据文卷的能力、语言、过程以及辅助性程序等。
研发部
五、程序维护手册
程序维护手册(撰写指引)
一、引言
(一)编写目的
阐明编写手册的目的,指明读者对象。
(二)研发单位
说明软件研发项目的提出者、开发者、用户和使用场所。
(三)定义和缩写
列出报告中所用到的专门术语的定义和缩写词的全称。
(四)参考资料
列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源以及保密级别。
二、系统说明
(一)系统用途
说明系统具备的功能、输入和输出。
(二)安全保密
说明系统安全保密方面的考虑。
(三)总体说明
说明系统的总体功能,对系统、子系统和作业作出综合性的介绍,并用图表的方式给出系统主要部分的内部关系。
(四)程序说明
说明系统中每一程序、分程序的细节和特点。
1.功能
2.方法
3.输入
4.处理
(1)用图表说明程序中的运行逻辑流程。
(2)程序主要转移条件。
(3)对程序的约束条件。
(4)程序结束时的出口要求。
(5)与下一个程序的通信与联结(运行、控制)。
(6)由该程序产生并供处理程序段使用的输出数据类型和存放单元。
(7)程序运行所用存储量、类型及存储位置等。
(8)输出。
(9)接口。
(10)表格。
(11)特有的运行性质。
三、操作环境要求
(一)设备
(二)支持软件
(三)数据库
(四)标识符
(五)数据库的存储媒体
四、维护过程
(一)规则
1.设计原则
(1)密切结合结构(数据)设计和行为(处理)设计。
(2)有机结合硬件、软件、技术和管理的界面。
(3)在具体程序实现过程中,对记录、字段的引用参照物。
(4)在设计过程中参照××程序设计方法。
2.设计程序变更的准则
(1)检查可供选择的设计方案,寻找一种与程序的原始设计原理相容的变更设计。
(2)努力使设计简化。
(3)能满足可变性要求。
(4)不降低程序质量。
(5)用可测试并具备测试方法的术语描述设计。
(6)考虑处理时间、存储量和操作过程方面的变化。
(7)考虑变更对用户服务的干扰以及实施变更的代价和时间。
3.修改程序代码的准则
(1)必须要先熟悉整个程序的控制流程。
(2)不做不必要的修改。
(3)不影响原始程序的风格和相容性。
(4)记录所做过的修改。
(5)审查软件质量是否符合标准。
(6)更新程序文档以反映修改并保留修改前的程序代码版本。
4.重新验证程序的准则
(1)首先测试程序故障,然后测试程序的未改动部分,最后测试程序的修改部分。
(2)不允许做修改的维护程序员是惟一能够重新验证程序的人。
(3)鼓励终端用户参与到重新测试进程中来。
(4)在重新验证进程中,记录出错的次数与类型,并把结果同所提供的测试功能进行比较,以便估量出程序是否退化。
(二)验证过程
每当软件被修改后,都要校验其正确性。维护人员应该有选择地做重新测试工作,不仅要证实新的逻辑的正确性,而且还要校验程序的未修改部分是否无损害,并且整个程序要运行正确。若发现错误,则要马上进行修正。
(三)出错及纠正方法
(四)专门维护过程
说明文档其他地方没有提到的专门维护过程。
1.维护该软件系统的输入输出部分(如数据库)的要求、过程和验证方法。
2.运行程序库维护系统所必需的要求、过程和验证方法。
3.对闰年、世纪变更所需的临时性修改等。
(五)专门维护程序
列出维护软件系统使用的后备技术和专用程序(如文件恢复程序、淘汰过时文件的程序等)的目录,并加以说明。
1.维护作业的输入输出要求。
2.输入的详细过程及在硬件设备上建立、运行并完成维护作业的操作步骤。
五、程序清单及流程图(略)
六、软件研发总结报告
软件研发总结报告(撰写指引)
一、引言
(一)编写目的
说明编写这份项目开发总结报告的目的,指出预期的阅读范围。
(二)背景说明
1.本项目的名称和所开发出来的软件系统的名称。
2.此软件的任务提出者、开发者、用户及安装此软件的计算中心。
(三)参考资料
列出要用到的参考资料,包括以下内容。
1.本项目已核准的计划任务书或合同及上级机关的批文。
2.属于本项目的其他已发表的文件。
3.本文件中各处所引用的文件、资料,包括所要用到的软件开发标准,列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的路径。
(四)说明实际参加人员、时间及工作划分
说明参加本次研发工作的负责人、参加人员、起止时间及实际工作量。按研发的阶段划分,细化每位研发人员在各研发阶段所用的研发时间及实际工作量。
二、研发结果
(一)产品说明
说明最终完成的产品,内容包括以下四个方面。
1.程序系统中各个程序的名字及其之间的层次关系,以千字节为单位的各个程序的程序量、存储形式和数量。
2.程序系统共有哪几个版本,各自的版本号及各个版本之间的区别。
3.每个文件的名称。
4.所建立的每个数据库。如果研发中制订过配置管理计划,要同这个计划相比较。
(二)主要功能和性能
1.逐项列出本软件产品所实际具有的主要功能和性能。
2.对照可行性研究报告、项目开发计划、功能需求说明书的有关内容,说明原定的研发目标完成情况,指出差异并说明原因。
(三)基本流程
用图给出本程序系统实际、基本的处理流程。
(四)项目规模总结
根据软件研发的各个阶段,总结该软件产品完成的功能模块数量与计划的出入情况,给出对比图表,并对比较结果进行分析。
(五)项目人员总结
总结该软件产品研发各个阶段人员的变化情况与计划的出入情况,并对比较结果进行分析。
(六)进度及工作量总结
总结实际完成软件产品所用的时间及工作量与原计划的出入情况。
(七)费用控制总结
列出原定计划费用与实际支出费用的对比情况。
1.工时,以“人/月”为单位,并按不同级别统计。
2.计算机的使用时间。
3.物料消耗、出差费等其他费用支出情况。
4.明确说明费用使用控制情况,并分析其主要原因。
三、研发工作评价
(一)对生产效率的评价
1.程序的平均生产效率,即每人每月生产的行数,以模块为单位进行比较。
2.文件的平均生产效率,即每人每月生产的千字数。
3.列出原定计划数,与实际情况进行对比。
(二)对技术方法的评价
给出对在开发中所使用的技术、方法、工具、手段的评价。
(三)对产品质量的评价
说明在测试中检查出来的程序编制中的错误发生率,如果开发过程中制订过质量保证计划,要同计划相比较。可以从下面五个方面对产品质量进行评价。
1.历次测试发现的Bug数。
2.同种原因产生的Bug数。
3.同种类型的Bug数。
4.各等级的Bug数。
5.同一Bug出现的次数。
(四)出错原因的分析
给出对于研发中出现的错误的原因分析。
四、经验与教训
列出从这项研发工作中所得到的最主要的经验与教训及对今后项目开发工作的建议。可从以下九个方面总结研发中获得的经验与教训。
1.管理人员的管理水平。
2.研发人员的合理分工。
3.研发人员的技术水平。
4.研发人员的更换。
5.研发人员的配合及协作。
6.用户的密切配合。
7.需求及设计的更改。
8.研发过程中计划的合理调整。
9.其他。
本文由弗布克原创,版权归属弗布克,欢迎转发,禁止转载,抄袭、洗稿,侵权必究。
领取本资料的Word、PDF版完整内容方法:
1.本资源编号:741。
2.关注 评论 转发,然后私信“资料”。
更多相关资料可点击下面“了解更多”。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。