
1.1 标识
a)本文档标识号:[文档标识号];
b)本文档标题:[文档标题];
c)本文档适用于[软件名称],软件标识为:[项目标识号],软件版本号为[软件版本号],发行号为[软件发行号];
d)本文档版本号为[文档版本号];
e)缩略语列表
表1 缩略语列表
| 序号 | 缩略语 | 含义 |
本条应概述本文档所适用系统和软件的用途。它还应描述系统与软件的一般特性;概述系统开发、运行和维护的历史;标识项目的需方、用户、开发方和保障机构等:标识当前和计划的运行现场;列出其他有关文档。
1.3 文档概述
本条应概述本文档的用途和内容,并描述与它的使用有关的保密性方面的要求。
2 引用文档
本章应列出引用文档的编号、标题、编写单位、修订版及日期,还应标识不能通过正常采购活动得到的文档的来源。
表2 引用文档列表
| 序号 | 标题 | 编号标识版本 | 日期 | 编制单位 |
本章应根据需要分条给出CSCI级设计决策,即CSCI行为设计的决策(忽略其内部实现,从用户角度出发描述系统将怎样运转以满足需求)和其他影响组成该CSCI的软件单元的选择与设计的决策。如果在需求中所有这些决策是明确的,或者这些决策要推迟到CSCI的软件单元的设计时指出,则本章应如实陈述。针对关键性需求(例如对安全性或保密性关键的需求)作出的设计决策,应在专门的章条中加以叙述。如果设计决策依赖于系统状态或方式,则应指明这一依赖性。本条应给出或引用理解这些设计所需的设计约定。
3.1 需求概述
概括描述软件的总体需求。该项内容必须和“研制任务书”、“需求规格说明书”保持一致。
3.2 系统任务和目标
描述软件的建设任务、建设目标。
3.3 系统功能
描述软件实现的主要功能。
3.4 指标要求
描述软件的技术、功能等指标要求。
3.5 设计思路
提出软件设计的总体思路和方法。
3.6 技术环境
描述软件的开发环境、运行环境、测试环境。
3.7 外部接口关系
描述与本软件相关的外部接口关系。如果存在的总体接口设计文档,应该与相关文档保持一致。
4 CSCI体系结构设计
本章应分为以下几条描述CSCI体系结构设计。如果设计的全部或部分依赖于系统的状态或方式,用此依赖性应予指明。如果设计信息在多于一个条中出现,它只需被提供一次,而在其他条中;本条应提供或引用为了理解设计所需要的设计约定。
4.1 部件组成
用图和文字说明软件的组成结构,细化到部件一级。
4.2 体系结构
用图和文字说明软件的技术体系结构。
4.3 系统流程
用图和文字说明系统流程,必要时逐条描述。
4.4 应用部署
说明软件的部署形式,必要时按照逻辑部署和物理部署分别说明。
4.5 关键技术
提出软件的关键技术和解决途径。
4.6 关键指标分析
分析软件关键指标,提出关键指标的设计落实思路。
5 CSCI部件设计
5.1 [部件]
5.1.1 功能描述
描述部件实现的功能。
5.1.2 部件组成
以组成结构图和文字描述相结合的方式描述部件的组成结构。
标识部件单元。
表3 单元描述表
| 序号 | 软件单元 | 标识符 | 用途 | 开发状态/类型 |
| [改进/重用/新增] | ||||
描述部件的基本处理方法。
5.1.4 数据流图
描述(画图参考UML符号规范): 输入的数据流―> 关键的处理过程和工具 ->得到输出结果
5.1.5 界面设计
用图表示整体界面布局,必要时提出界面设计风格、使用习惯等具体要求。
5.1.6 接口关系
用图和文字的形式描述部件与其他部件、系统、子系统的关系。
5.2 执行方案
本条应说明软件单元间的执行方案,可采用图表和描述,来说明软件单元间的动态关系,即CSCI运行期间软件单元间的相互作用情况,(若适用)应包括执行控制流程、数据流、动态控制序列、状态转换图、时序图、单元间的优先关系、中断处理、时序/排序关系、例外处理、并发执行、动态分配与去除分配、对象/进程,任务的动态创建/删除、以及动态行为的其他方面。
5.3 接口设计
5.3.1 接口标识和接口图
本条应说明赋予每个接口的项目唯一的标识符,(若适用)应通过名称、编号、版本及文档引用来标识接口实体(软件单元、系统、配置项、用户等)。该标识应说明哪些实体具有固定的接口特性(从而把接口需求分配给这些接口实体):说明哪些实体正在开发或修改(这些实体已有各自的接口需求)。(若适用)应通过接口图来描述这些接口。
表4 接口关系描述表
| 接口名称 | 接口标识 | 接口实体 | 接口实体特性 | 接口需求分配 | 接口含义及用途 | |
| 发送方 | ||||||
| 接收方 | ||||||
| 发送方 | ||||||
| 接收方 | ||||||
本条(从4.3.2开始)应通过项目唯一的标识符来标识接口,应简要地标识接口实体,根据需要可分条描述单方或双方接口实体的特性。如果一指定的接口实体未包含在本SDD中(例如,一个外部系统),而描述接口实体需要提到其接口特性时,这些特性应作为假设予以陈述、或以“当[未涵盖的实体]这样做时,[所指定的实体]将……”的形式描述。本条可引用其他文档(例如数据字典、协议标准、用户接口标准)代替在此所描述的信息。本设计说明应包括以下内容(若适用),以任何适合于所提供的信息的顺序提供,并应从接口实体角度说明这些特性之间的区别(例如关于数据元素的大小、频率或其他特性的不同期望值):
a) 接口实体分配给接口的优先级。
b) 要实现的接口类型(例如实时数据传输、数据的存储和检索等)。
c) 接口实体将提供、存储、发送、访问、接收的各个数据元素的特征,例如:
1)名称/标识符:
a)项目唯一的标识符;
b)非技术(自然语言)名称:
c)数据元素名称:
d)技术名称(如在代码或数据库中的变量名或字段名):
e)缩略名或同义名。
2)数据类型(字母、数字、整数等)。
3)大小与格式(如:字符串的长度和标点符号)。
4)计量单位(如:m等)。
5)可能值的范围或枚举(如:O一99)。
6)准确性(正确程度)和精度(有效数位数)。
7)优先级、定时、频率、容量、序列以及其他约束条件(例如数据元素是否可以被更新、业务规则是否适用)。
8)保密性约束。
9)来源(建立/发送的实体)和接受者(使用,接收的实体)。
d) 接口实体将提供、存储、发送、访问、接收的数据元素组合体(记录、消息、文件、数组、显示、报表等)的特征,例如:
1)名称/标识符:
a)项目唯一的标识符;
b)非技术(自然语言)名称;
c)技术名称(如在代码或数据库中的记录名或数据结构名):
d)缩略名或同义名。
2)数据元素组合体中的数据元素及其结构(编号、顺序和分组情况)。
3)介质(例如磁盘)以及介质上数据元素/数据组合体的结构。
4)显示和其他输出的视听特性(例如颜色、布局、字体、图标和其他显示元素、蜂鸣声和亮度)。
5)数据组合体之间的关系,如排序/存取特性。
6)优先级、定时、频率、容量、序列及其他约束,例如数据组合体是否可被更新、业务规则是否适用。
7)保密性约束。
8)来源(建立/发送的实体)和接受者(使用/接收的实体)。
e) 接口实体用于接口的通信方法的特征。如:
1)项目唯一的标识符;
2)通信链接/带宽/频率/介质及其特征;
3)消息格式;
4)流控制(如:序列编号和缓冲区分配);
5)数据传输率、周期或非周期、传输间隔;
6)路由、寻址及命名约定;
7)传输服务,包括:优先级和等级;
8)安全性,保密性考虑,如:加密、用户鉴别、隔离和审核。
f) 接口实体用于接口的协议的特征,如:
1)项目唯一的标识符;
2)协议的优先级别/层次:
3)打包,包括分段与重组、路由和寻址:
4)合法性检查、错误控制和恢复过程;
5)同步,包括连接的建立、保持和终止:
6)状态、标识和其他报告特性。
g) 其他特征,例如接口实体的物理兼容性(尺寸、公差、负荷、电压和接插件的兼容性等)。
表5接口描述
| 接口名称 | ||||||
| 接口标识符 | ||||||
| 接口方式 | ||||||
| 发送方 | ||||||
| 接收方 | ||||||
| 接口数据元素说明 | ||||||
| 数据集名称或表名 | 数据元素名称 | 数据长度(字节) | 数据类型 | 值域范围 | 备注 | |
本章应包含:
a) 从本文档所标识的每个软件部件,到分配给它的CSCI需求的可追踪性。
b) 从每个CSCI需求,到被分配这些需求的软件部件的可追踪性。
表6 需求追踪表
| 软件部件 | CSCI需求 | ||
| 部件标识 | 章节号 | 需求名称 | 章节号 |
