软件项目文档详细说明.docx
- 文档编号:11468994
- 上传时间:2023-03-01
- 格式:DOCX
- 页数:39
- 大小:745.66KB
软件项目文档详细说明.docx
《软件项目文档详细说明.docx》由会员分享,可在线阅读,更多相关《软件项目文档详细说明.docx(39页珍藏版)》请在冰豆网上搜索。
软件项目文档详细说明
项目相关
2019年7月
1软件项目的六个阶段
1.1可行性与计划研究阶段
1.2需求分析阶段
1.3需求设计阶段。
1.4需求实现阶段。
1.5需求测试阶段。
1.6运行与维护阶段
2软件文档分类
2.1开发文档
《功能要求》(包含技术规范书)、
《投标方案》(包括前言、需求分析、技术方案、项目管理、技术支持、系统报价、项目进度)、
《需求分析》、《技术分析》、《系统分析》、《数据库文档》、《功能函数文档》、《界面文档》、《编译手册》、《QA文档》、《项目总结》
2.2产品文档
《产品简介》、《产品技术白皮书》、《评测报告》、《安装手册》、《使用手册》、《维护手册》、《用户报告》、《销售培训》
3设计文档内容
3.1软件开发计划
3.2需求规格说明书
2.3软件概要设计说明
2.4数据库设计说明
2.5软件详细设计说明
2.6可执行程序生成说明
2.7软件测试计划
2.8软件测试说明
2.9软件测试报告
2.10安装部署手册
2.11源代码交付说明
2.12上线部署方案
2.13上线部署实施报告
2.14软件终验测试方案
2.15软件终验测试报告
4项目文档格式要求
所有文档应包括封面、文档变更记录、目录和正文四个部分。
封面应包括文档提供方的名称、项目名称、项目阶段、文件名称、文件版本和总页数。
应有文档维护记录。
发生重大版本变更时,应保存不同版本的技术文档,同时应保存必要的变更说明和变更审核记录。
1软件开发计划
(一)文档内容要求
1引言
1.1标识
本条应包含本文档的完整标识,以及本文档适用的系统和软件的完整标识,包括标识号、标题、缩略词语、版本号和发行号。
1.2系统概述
本条应简述本文档适用的系统和软件的用途,应描述系统和软件的一般特性;概述系统开发、运行和维护的历史;标识项目的业主方、用户、承建方、监理方等;标识当前和计划的运行现场等。
1.3文档概述
概述本文档的用途和内容,并描述与其使用有关的保密性和私密性的要求。
1.4与其他计划之间的关系
描述本计划和其他项目管理计划的关系。
1.5输入基线
给出编写本项目开发计划的输入基线,如业务需求说明书等。
2引用文件
应列出本文档引用的所有文档的编号、标题、修订版本、日期和来源。
3.项目范围及约束条件
3.1交付产品
列出本项目的交付产品成果,包括软件程序、交付文档等,以及各交付成果的交付期限。
3.2业务需求和约束条件
分条阐述项目的业务需求和约束条件;
3.3其它方面的需求和约束条件
分条阐述其它方面的约束,如项目进度要求、保密性等。
3.4项目目标
综述项目进度目标、成本目标、质量目标。
4项目总体计划
4.1软件开发过程和里程碑
描述要采用的软件开发过程。
计划应覆盖论及它的所有合同条款,确定已计划的开发阶段(适用)、目标和各阶段要执行的软件开发活动。
里程碑设置分条阐述里程碑/阶段名称、期限、里程碑标志说明(进入条件和输出)、评审方式等。
提供一张工作产品矩阵表,描述各工作产品的编号、名称、产生阶段、评审方式等。
工作产品包括各阶段产生的过程文档和技术文档等,是工作任务分解和配置管理计划制定的重要依据。
4.2软件开发方法
描述或引用要使用的软件开发方法,包括为支持这些方法所使用的手工、自动工具和过程的描述。
4.3软件产品标准
描述或引用在表达需求、设计、编码、测试用例、测试过程和测试结果方面要遵循的标准和要求。
对要使用的各种编程语言应提供编码标准。
4.4评审途径
阐述软件内部评审的方式,以及需方或授权代表(总集、监理)实施软件产品和活动评审的途径和方式。
4.5软件配置管理
描述针对本项目所采用和遵循的软件配置管理方法.包括配置项的标识、控制、状态统计、审核、交付等。
具体的配置项识别和管理可在配置管理计划中另文给出。
4.6软件质量保证
描述针对在本项目所采用和遵循的软件质量保证方法。
包括软件质量保证评估、软件质量保证记录和处理、第三方独立性保证等。
质量保证计划也可另文给出。
承建方应在计划中落实下述内部审核和检查工作:
软件计划审核:
在软件计划编制阶段结束后必须进行软件计划审核,以确保在软件开发计划、软件配置管理计划、软件质量保证计划中所规定的计划的合适性。
软件需求审核:
在软件需求分析阶段结束后必须进行软件需求审核,以确保在软件需求规格说明中所规定的各项需求的合适性。
软件概要设计审核:
在软件设计结束后必须进行软件设计的审核,以评价软件概要设计说明、数据结构设计说明中所描述的软件设计在总体结构、外部接口、主要部件功能分配、全局数据结构以及各主要部件之间的接口等方面的合适性;以及在数据结构、功能、算法和过程描述等方面的合适性。
软件详细设计、编码阶段的审核:
在软件详细设计和编码实现完成之后要对软件详细设计说明、软件测试计划、软件测试说明(含软件测试用例)、目标程序生成说明进行审核,以确认业主方的业务需求是否得到满足,验证软件需求规格说明中的需求是否已由软件设计说明描述的设计实现,软件设计说明表达的设计是否已由编码实现。
出厂测试审核:
在完成出厂测试之后要对源代码交付验证说明、软件测试报告(含源代码交付验证报告)以及按照合同要求应提交给业主方的所有文档(如:
软件用户手册等)进行审核,以评价待交付的程序及文档的质量是否满足出厂交付要求、覆盖了业主方的业务需求、做好了交付准备。
部署审核:
在配合监理方和业主方完成测试工作后承建方进入系统部署阶段,在完成软件部署并配合完成系统联调联试后,要对部署实施报告进行审核,以验证部署实施的真实性以及外部接口的正确性。
4.7问题跟踪和处理(更正活动)
描述软件更正活动中要遵循的方法,包括不同阶段的问题发现、纪录、报告、处理、审核和更正流程,问题/bug跟踪系统的选用等。
须论及出厂测试、需方验证测试、试运行三个阶段。
4.8档案收集
阐述作为承建方在项目进行过程中进行自身档案收集管理的方法,包括纸质档案。
5项目估算及进度计划
5.1工作任务分解
分解项目工作任务,得出工作任务分解结构(WBS)。
5.2规模估算
估算项目规模,如需新编的代码行数、文档页数等。
5.3工作量估算
根据规模估算及项目经验,估算项目工作量。
5.4进度计划
在工作任务分解结构(WBS)、工作量估算的基础上,进行活动排序、资源分配,进而编制进度计划甘特图,标识各活动的依赖关系、资源分配情况、起止时间等。
5.5风险估计及应对方法
逐条给出识别的风险及其风险估计量化指标(可能性、严重性等级)、相应的对策和缓解方案。
建议以列表的方式给出。
6项目跟踪与变更管理
6.1项目日常跟踪
阐述项目日常跟踪方法,包括由业主方和授权代表(监理方)参与的项目跟踪。
6.2里程碑评审
阐述或引用项目各里程碑评审的方法。
6.3变更管理
包括计划变更、需求变更等的处理流程、机制和方法。
7项目组织和资源
7.1项目组织
本条应描述本项目要采用的组织结构,包括涉及的组织机构、机构之间的关系、执行所需活动的每个机构的权限和职责。
7.2项目资源
本条应描述适用于本项目的资源。
主要包括:
a.人力资源,分条说明投入此项目的人员、职责、投入阶段、地理位置和涉密程度等;
b.开发人员要使用的设施,包括执行工作的地理位置、要使用的设施、保密区域和运用合同项目的设施的其他特性;
c.为满足合同需要,需方应提供的设备、软件、服务、文档、资料及设施及需要提供的时间。
8内部培训
根据项目的技术要求和项目成员的情况,确定是否需要进行项目培训,并制订培训计划。
如不需要培训,应说明理由。
9注解
本章应包含有助于理解本文档的一般信息(例如原理)。
本章应包含为理解本文档需要的术语和定义,所有缩略语和它们在文档中的含义的字母序列表。
附录
附录可用来提供那些为便于文档维护而单独出版的信息(例如图表、分类数据)。
为便于处理,附录可单独装订成册。
附录应按字母顺序(A,B等)编排。
(二)内容审核要点:
1.项目范围阐述与合同及其附件要求等是否一致;
2.工作任务分解与项目范围/需求是否一致;
3.工作任务分解、工作量估计和活动进度安排是否合理;
4.计划内容是否包括软件项目管理的各个必要的方面;
5.工作产品定义是否包含需方所要求的各相关必要文档;
6.组织机构和人力资源安排和分配是否合理并符合合同相关要求;
7.项目日常跟踪管理是否具有可操作性;
8.项目开发过程中的问题/bug处理机制是否具有可操作性;
9.档案收集管理是否具有可操作性。
10.是否制定了合适的配置管理策略和质量保证策略。
2软件需求规格说明书
(一)文档内容要求
1引言
1.1编写目的
说明编写这份用户需求说明书的目的,指出预期的读者范围。
1.2范围
说明系统的业务范围以及功能界限的划分。
1.3术语和缩略语
提供此文档中用到的专门术语的定义和缩写词的原词组。
1.4参考资料
列出此文档所参考的文档。
这些文档可以是合同、标准、指南、和其他的用户需求说明书。
2需求概述
2.1项目背景
提供对项目的整体描述。
如果此文档定义的项目是一个更大的项目的一个构件,应提供同更大项目或系统的关系和这个项目会提供的功能。
并且提供和明确两者之间的关系。
2.2操作环境
描述使软件运行的运行环境。
给出了软件运行所需的硬件平台、操作系统和软件平台等细节。
如果功能/子模块/子项目涉及仅仅是整体的产品/项目、硬件/软件环境的子集,也在这里指出。
2.3设计和实现限制
包括客户在所采用的技术和运行环境等方面的特定要求,以及其它影响开发人员自由选择的问题,必要时说明原因。
2.4假设、依赖和外部风险
明确在准备此文档时所做的假设和外部依赖条件,这些假设会影响需求的状态。
对外部项目或软件的接口服务的依赖条件也可在这里说明。
明确客户应该会关心的外部风险,如:
第三方供应的软件和硬件应该准时送到、所依赖软件是否按时提供等等。
对需求优先等级的定义也需要给出。
3功能需求
以下详细描述系统功能需求。
如果需要,用例图及其描述可以作为附录。
功能点、子功能或功能可以指定缺省优先级。
3.1<功能名称1>
所有的功能名、子功能名、功能点都需要以某种全文档唯一的方式进行编号,以备审核、设计、实现、测试时引用。
功能、子功能都要规定优先等级。
3.1.1功能概述
对本功能进行概要描述。
如有需要,可用结构图来描述本功能中各模块的结构关系。
3.1.2相关业务流程
根据需要,提供相应的业务流程图。
3.1.3<子功能名称1>
3.1.3.1子功能描述
对子功能作文字描述。
如果需要,对子功能流程进行流程描述,并提供子功能业务流程图。
3.1.3.2<功能点1>
对于每一功能点,需要具体描述其各种需求,由下列部分组成,可以以表格的形式给出:
a.功能点编号
b.功能点描述
具体描述该功能点所提供的功能。
c.操作
这里说明用户要求的常规的和特殊的操作。
d.输入
描述该功能的所有输入数据,如输入源、数量、度量单位、时间设定和有效输入范围等。
e.输出
详细描述该功能的所有输出数据,如输出目的地、数量、度量单位、时间关系、有效输出范围、非法值的处理、出错信息等。
f.业务表单
如果需要,描述该模块所涉及的业务表单。
g.处理或算法
定义获得预期输出结果的全部操作,包括输入数据的有效性检查、操作的顺序、异常情况的响应、把输入转换成相应输出的方法、输出数据的有效性检查等。
f.数据库要求
如果需要,指出对于数据库表设计方面的要求
3.1.3.3<功能点2>功能需求
……
3.1.4<子功能名称1>功能需求
……
3.2<功能名称2>功能需求
……
4外部接口需求
所有接口都必须提供唯一标识。
4.1用户接口
提供用户使用软件产品时的接口需求。
例如,如果系统的用户通过显示终端进行操作,就必须指定如下要求:
a.对屏幕格式的要求;
b.报表或菜单的页面格式和内容;
c.程序功能键的可用性。
屏幕接口要求细节很多,建议提供界面demo。
4.2硬件接口
要指出软件产品和系统硬部件之间每一个接口。
包括支撑什么样的设备,如何支撑这些设备,有何约定。
4.3软件接口
需要说明3方面的软件接口内容:
1.说明需使用的其他软件产品(例如,数据管理系统、工作流软件、中间件产品等);
2.说明需要使用到的其它应用软件系统所提供的接口功能;
3.说明需要提供出来供其它应用软件系统调用的公用接口功能服务。
对这些接口要尽量做形式化描述。
5.成品软件定制需求:
如果本项目是在成熟的成品软件基础上进行进一步的定制开发,需要在此说明本项目所依据的成品软件版本。
并根据成品软件的功能,对照本项目需求,以列表的方式明确说明哪些功能点需要进行进一步的定制开发。
6.性能需求
以下详细说明软件各项性能需求,(如适用)包括以下方面。
6.1数据容量
根据实际情况,确定数据容量。
6.2时间特性
说明系统在响应时间、更新处理时间、数据转换与传输时间、运行时间等方面所需达到的时间特性。
6.3吞吐量
系统需要支持并发的处理能力。
6.4安全性
系统安全方面的需求描述。
6.5其它质量属性
指明软件产品在可靠性、可移植性、实用性、可维护性等方面的目标和需求。
应尽量以明确的、量化的、可检验的方式来描述。
7.其他需求
7.1可测试性需求
指出可测试性方面的需求。
如对于只能在生产环境才能满足的测试条件,如何在出厂测试时用变通的方式解决。
7.2安装和操作
定义软件安装和操作方面的需求,例如安装的环境要求,以及安装的方式等。
7.3安全保密
定义有关产品安全保密方面的要求和说明。
如果没有这方面的要求,注明无安全保密性要求。
7.6维护服务
对软件的升级、维护以及服务方面的需求说明,包含维护方式和提供服务的方式,以及服务的质量要求,时间要求等。
8辅助部分
8.1未确定的问题
说明目前尚未确定的问题,以及对这些问题的处理的计划。
8.2风险分析
说明本项目面临的主要风险,例如需求可实现性、需求变动、时间压力、技术复杂度、人力资源不足等,并提出规避或预防措施。
8.3编程工具
说明对开发的工具要求,包含编程语言,使用的开发环境,以及其中涉及到的其它工具的要求,例如建模工具,分析工具,配置管理工具等。
8.4其它支撑软件
软件运行说必需的环境的说明,包含软件使用到地第三方的组件以及应用程序的说明。
9项目的交付
9.1交付形式
项目的交付方式的说明,包含交付的产品、文档,以及交付的方式等。
9.2测试要求
说明需要对目标系统进行哪些方面的测试,如功能测试、集成测试、压力测试等,以及各种测试的功能覆盖面要求。
(二)内容审核要点:
1.功能描述是否完备,是否通盘考虑了业务需求说明书所述内容;
2.文档内容是否充分反应了与用户的沟通成果;
3.功能描述是否明确,是否有二义性、含糊的或相互矛盾的需求内容;
4.功能点是否细化到合理程度;
5.对外接口服务的描述是否全面并细化到合理程度;
6.对于外部依赖条件的描述是否准确全面;
7.是否提供了用户所需的人机界面的必要描述(如以demo方式);
9.对性能指标是否进行了必要的说明;
10.是否给出了必要的数据库设计方面的要求;
3软件概要设计说明
(一)文档内容要求
1引言
1.1编写目的
说明编写这份概要设计说明书的目的,指出预期的读者。
(对于由多个子系统构成的系统,可以根据需要针对子系统编写单独的软件概要设计说明)
1.2背景
说明:
a.待开发软件系统的名称;
b.列出此项目的任务提出者、开发者、用户以及将运行该软件的位置;
1.3术语和缩略语
列出本文件中用到的专门术语的定义和外文首字母组词的原词组。
1.4参考资料
列出有关的参考文件,如:
a.本项目的经核准的计划任务书或合同,上级机关的批文;
b.属于本项目的其他已编制文件;
c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准、专业技术标准。
列出这些文件的标题、文件编号、发表日期、出版单位和来源。
2总体设计
2.1需求规定
说明对本系统的主要的输入输出项目、处理的功能性能要求。
可以引用软件规格说明文档以避免重复。
2.2运行环境
简要地说明对本系统的运行环境(包括硬件环境和支持环境)的规定。
2.3设计思想
2.1.1系统构思
说明本系统设计的系统构思。
2.1.2关键技术与算法
说明本系统设计采用的关键技术和主要算法。
2.1.3关键数据结构
简要说明本系统实现中的最主要的数据结构。
2.2系统总体结构
以图表的形式说明本系统的系统元素(各层模块、子模块、公用模块等)的划分,扼要说明各系统元素的标识和功能,分层次说明各系统元素之间的关系。
2.3基本处理流程
2.3.1系统流程图
用流程图的方式说明本系统的主要控制流程和处理流程。
2.3.2数据流程图
根据需要,用数据流程图说明本系统的主要数据及其流转过程,并说明流转过程中的处理动作。
2.4功能需求与模块的关系
说明各项功能需求的实现同各模块的分配关系。
要与软件规格说明中的功能编号相一致。
2.6尚未解决的问题
说明在概要设计过程中尚未解决而设计者认为在系统完成之前必须解决的各个问题。
3接口设计
3.1外部接口
说明本系统同外界的所有接口设计。
包括本系统与硬件之间的接口设计、本系统与各支持软件之间的接口设计、对外提供的接口服务的设计。
3.2内部接口
说明本系统之内的各个系统元素之间的接口的安排。
4性能设计及质量属性考虑
通过设计落实在软件规格说明中的各种性能及质量属性规定。
5数据库设计
说明本系统内所使用的数据结构设计要点及与程序模块间的关系。
对数据库表的设计一般以另文方式(数据库设计说明)给出。
(二)内容审核要点:
1.是否全面考虑了软件需求规格说明文档的功能需求;
2.所述功能名称及编号与软件需求规格说明文档是否一致;
3.总体结构是否清晰合理;
4.是否包括对外提供的接口服务的形式化表述和设计内容;
5.数据结构设计内容的全面性及合理性;
4数据库设计说明
(一)文档内容要求
1概述
1.1编写目的
描述该文档的编写目的。
1.2参考资料
列出此文档所参考的文档,如软件需求规格说明、软件设计说明等。
1.3分类
(若有)对存储数据分类进行简要说明(数据可以按照子系统进行划分)。
·第全局类数据及其说明
·第二类数据及其说明
·第三类数据及其说明
…
1.4使用它的程序
描述对应不同分类的数据,所使用它的外部程序或者业务系统。
1.5约定
描述数据库设计方面的标识约定、设计约定、特殊约定等。
2数据定义
2.1全局数据
主要应用范围:
作用:
数据库定义文件:
ER图文件:
2.1.1表结构设计
2.1.1.1表一与触发器
表一结构说明,包括:
表名、表说明(内容、作用)、索引、各列属性。
各列属性,包括:
列英文名、列中文名、数据类型、长度、列取值含义等。
触发器列表,包括:
名称、说明、定义等。
2.1.1.2表二与触发器
……
2.1.2视图设计
2.1.2.1视图一
定义:
用途:
2.1.2.1视图二
……
2.1.3存储过程设计
2.1.3.1过程一
定义:
用途:
输入:
输出:
2.1.3.2过程二
……
2.2第二类数据
主要应用范围:
作用:
数据库定义文件:
ER图文件:
2.2.1表结构设计
……
2.2.2视图设计
……
2.1.3存储过程设计
……
3数据库角色定义
3.1第一类角色
角色职能:
角色权限:
3.2第二类角色
……
4数据库安全设计
针对数据库安全方面的要求进行的设计,包括保密性、安全性等方面。
5数据库备份设计
针对数据的备份要求,描述数据库的备份策略、备份和恢复的手段、备份计划、操作步骤等方面的内容。
(二)内容审核要点:
1.本文档内容与软件设计文档、软件需求文档是否一致性;
2.所述内容是否完备;
3.本文档内容本身是否前后一致;
4.表结构描述是否清楚明确;
5.(若有)触发器描述是否清楚明确;
6.(若有)视图描述是否清楚明确;
7.(若有)存储过程描述是否清楚明确;
8.数据库角色设置是否清楚合理。
9.是否满足了安全、备份的要求。
5软件详细设计说明
(一)文档内容要求
1引言
1.1编写目的
说明编写这份详细设计说明书的目的,指出预期的读者范围。
1.2背景
说明:
a.待开发的软件系统的名称;
b.列出本项目的任务提出者、开发者、用户以及将运行该项软件的单位。
1.3术语和缩略语
列出本文件中用到的专门术语的定义和缩写词的原词组。
1.4参考资料
列出要用到的参考资料,如:
a.本项目的经核准的计划任务书或合同、上级机关的批文;
b.属于本项目的其他已发表的文件,包括软件需求说明书、软件概要设计说明等;
c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。
列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。
2系统结构
以表格方式列出本程序系统内的每个程序(包括每个模块和子程序)的名称、标识符和它们之间的层次结构关系。
并用文字说明每个程序完成的功能,以及互相之间的调用关系。
3程序1(标识符)设计说明
从本章开始,逐个地给出各个层次中的每个程序的详细设计。
以下给出的提纲是针对一般情况的。
对于一个具体的模块,可能根据需要在其说明条目上有适当增减。
3.1程序描述
给出对该程序的简要描述,主要说明安排设计本程序的目的意义,并且说明本程序的特点。
3.2功能
说明该程序应具有的功能,可采用IPO图(即输入-处理-输出图)的形式。
3.3性能
说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。
3.4输入项
给出对每一个输入项的特性,包括名称、标识、数据的类型和格式、数据值的有效范围、输入的方式、数量和频度、输入媒体、输入数据的来源和安全保密条件等等。
3.5输出项
给出对每一个输出项的特性,包括名称、标识、数据的类型和格式、数据值的有效范围、输出的形式、数量和频度、输出媒体、对输出图形及符号的说明、安全保密条件等等。
3.6算法
详细说明本程序所选用的算法,具体的计算公式和计算步骤。
3.7流程逻辑
用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。
3.8接口
用图的形式说明本程序所隶属的上一层模块及隶属于本程序的下一层模块、子程序,说明参数赋值和调用方式,说明与本程序相直接关联的数据结构。
3.11限制条件
说明本程序运行中所受到的限制条件。
3.12单元测试
说明对本程序进行单元测试的计划和方式,包括单元测试用例的设计等。
3.13尚未解决的问题
说明在本程序的设计中尚未解决而设计者认为在软件完成之前应解决的问题。
4程序2(标识符)设计说明
......
(二)内容审核要点:
1.本文档内容与概要设计说明、软件需求规格说明等文档
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 项目 文档 详细 说明