软件开发 软件模块概要设计模版.docx
《软件开发 软件模块概要设计模版.docx》由会员分享,可在线阅读,更多相关《软件开发 软件模块概要设计模版.docx(16页珍藏版)》请在冰豆网上搜索。
![软件开发 软件模块概要设计模版.docx](https://file1.bdocx.com/fileroot1/2023-6/28/97f33d5e-70bf-4a3c-b396-4de08e3b82ad/97f33d5e-70bf-4a3c-b396-4de08e3b82ad1.gif)
软件开发软件模块概要设计模版
文档编制
编写日期
系统主设计师审核
审核日期
项目经理审核
审核日期
技术总工批准
批准日期
文件模板修改纪录表
日期
修改人
修改内容描述
文档修订控制
序号
版本
修订日期
修订概述
修订人
备注
1引言
1.1编写目的
阐明编写概要设计说明书的目的。
1.2定义
列出本文中所用到的专门术语的定义和缩写词的原意。
1.3参考资料
列出有关的参考资料,如:
本项目经核准的计划任务书或合同,上级机关的批文;
属于本项目的其他已发表的文件;
本文件中各处引用的文件、资料,包括所用到的软件开发标准。
列出这些文件的标题、发表日期、出版单位等。
2概述
2.1模块的位置和作用
说明本模块在整个系统中所处的位置,以文字或结构图的方式描述处于哪个层次,与哪些模块有接口。
说明本模块的整个系统中的作用。
2.2设计功能目标
说明本模块最终要实现的功能目标。
2.3设计方案描述
简要介绍方案。
若有专门的文档,可以用。
AC需要描述如下情况是否满足:
1)支持IPV6。
整机的ACCOMM中,不涉及IPV6,暂时不考虑。
2)支持互联互通
3)热备
4)跨越NAT
5)大性能(含业务上的性能、各个通信模块之间的通信性能)
6)支持DEBUG(在线的、细分到个体粒度的细节、自动化测试)
7)编程上需要支持64bit,跨平台代码,大小头
8)支持可被监控和拉起
9)支持不同种类的AP的混接
11)支持license的控制。
12)支持各类标准化的网络模型。
13)是否有利于OEM
14)是否支持VR的情况.
2.4设计原则
描述本模块所采用的设计原则。
2.5运行环境
简要地说明对本模块的运行环境的规定,包括软件和硬件环境。
例如:
运行该模块所需的硬件设备的最小配置及当前环境的运行配置。
说明为运行该模块所需要的软件支持,如:
操作系统、编译器、通信系统、数据库管理
系统、文件管理系统、其他应用软件。
3流程图
3.1业务时序图
说明设备(比如:
AC)在整个网络中的业务流程,从而说明在此功能中,设备起什么功能。
3.2模块业务流程图
该流程在设备(AC)内部各个模块的交互的流程。
3.3系统数据流图
说明使用到的数据流图。
特别是研究是否存在多任务(多线程)对数据访问的互斥性的问题。
用流程图、文字说明模块的整体业务流程。
4模块结构设计
4.1模块总体结构设计
用结构图、文字说明模块的划分和模块间的层次关系,以及模块间的调用关系。
4.1.1子模块1(名称)结构设计(可选)
用流程图、文字说明子模块1的层次关系。
4.1.2子模块2(名称)结构设计(可选)
用流程图、文字说明子模块2的层次关系。
5模块功能设计
5.1模块功能描述
详细描述模块完成的主要功能。
5.2子模块1(名称)功能说明
详细描述子模块1所完成的功能。
5.3子模块2(名称)功能说明
详细描述子模块2所完成的功能。
6模块性能设计
详细描述模块具有的主要性能指标。
说明模块占用内存的情况。
说明模块的设计容量,及达到设计容量后对系统性能的影响。
设计容量是指设计支持的最大xxx,例如,支持的最大用户数、最大路由条目数、最大过滤策略条数等等。
如果需要创建新的任务,请描述任务优先级、占用的资源、共享数据保护。
7接口设计
若涉及到通信机制,无论是系统间的还是进程(线程),需要采用标准的流程。
如:
用户接口(根据实际情况,可用附录详细说明);
外部接口(说明本模块与外界的接口包括软件、硬件的接口,本模块与其他模块的接口);
内部接口(说明本模块内的各子模块间的接口)。
需要描述本模块提供的接口或调用的外部接口所使用的信号量,防止信号量死锁。
8数据结构设计
8.1信号量及全局变量设计
新增信号量的用途,互斥信号量的保护范围等。
如果引用了原有的信号量,也需说明所引用的用途、保护的范围等,特别注意是否会导致死锁。
说明新增的全局变量或所引用的原有全局变量。
8.2主要数据结构
如果在概要设计阶段不能确定数据结构的框架,请在详细设计文档“数据说明”条款中进行描述。
说明模块所使用的主要数据结构的名称、标识符、定义、作用等。
可以列表说明主要数据结构的用途。
例如Str1只用在子模块1,Str2只用在子模块n,Str3在子模块1和子模块n中都用,则如下表:
数据结构
子模块1
子模块n
Str1
yes
no
Str2
no
yes
Str3
yes
yes
若涉及到通信机制,无论是系统间的还是进程(线程),需要采用标准的消息。
9兼容性设计
说明版本向前、向后的兼容性,例如升级现网版本会不会出问题、版本配置方法是否兼容之前的版本
10热备设计
说明版本与热备功能相关的处理设计与描述说明。
11调试支持信息说明
需要包含统计类、debug类、log类的说明。
说明正常运行所需要的调试支持信息,对其它模块的配合要求。
12网管命令设计
说明模块新增的网管命令,请按照以下模板添加新的命令。
如果在此阶段还不能确定网管命令的名称和格式,需要在后续文档中评审。
12.1格式说明
命令格式
a)如果命令支持no,则在命令前加上[no]
b)命令行关键字用加粗字体
c)参数使用斜体字
d)“[]”括起来的部分在命令配置时是可选的。
e){x|y|...}表示从两个或多个选项中选取一个。
f)[x|y|...]表示从两个或多个选项中选取一个或者不选。
g)表示从n到m的整数,包括n和m。
命令功能
详细说明该命令的功能。
参数解释
说明参数的使用方法,取值范围,默认值,采用的数据类型等。
如:
参数
描述
取值范围
PoolName
地址池的名字
字节长度为0~30
all
显示所有地址池
all
命令模式
指明该命令的配置模式。
如:
用户模式、特权模式、全局模式、wireless模式、network模式、AP模式、SSID策略模式、advanced模式、时间策略配置模式、WAPI证书策略配置模式、MAC过滤策略配置模式、AP版本信息配置模式、WMM配置模式、PSK配置模式、AP通用模板配置模式等
使用指南
应用场景
应用场景
前置条件
使用限制
命令配置特征
不能重复配置,也不能修改,只能用no命令取消
修改类型
重复配置,指明重复配置的条目数和关键字
板间分发
指定板的命令,
分发到所有板
系统分发
linux
vx
linux和vx都可用
举例
举例说明该命令该如何使用,如果命令本身有输出内容,请对输出内容的字段进行解释
相关命令
说明必须相关联需要同时配置的命令
12.2示例
12.2.1showip-pool
命令格式
showip-poolPoolName
showallip-pool
命令功能
显示地址池的相关配置信息和资源使用情况。
参数解释
参数
描述
取值范围
PoolName
地址池的名字
字节长度为0~30
all
显示所有地址池
all
命令模式
特权模式
使用指南
应用场景
已经配置ip-pool
命令配置特征
执行命令
板间分发
无
系统分发
无
举例
显示地址池的相关配置信息和资源使用情况。
BNOS#showip-poolsta1
BNOS#showIp-poolsta1'sinformation
================================
Ip-poolname:
sta1(1#)*地址池名称*
Networkaddress:
1.1.1.0
Subnetmask:
255.255.255.0
Broadcastaddress:
1.1.1.255
Allocatemode:
dhcp-bgatealloc*分配模式*
Allocatepriority:
HIGH*分配的优先级*
Ip-poolproperty:
level2
Numberofaddressoccupiedbydevice:
1.1.1.1
Defaultrouter:
(none)
Actualrouter:
(none)
Servicepolicyname:
qian*服务策略*
Filterpolicyname:
(none)
Auth-accountingrule:
needauth,noacct
PrimaryDNSserver:
202.96.134.133
PrimaryWINSserver:
(none)
SecondaryWINSserver:
(none)
Routeroption:
1.1.1.1
Leaseoption:
100
---
Numberofaddressinip-pool:
256*地址池中存在的地址数目*
Numberofremainedaddressformanagement:
3*保留地址*
Numberofuserfreeofauthentication:
0
Numberofauthenticateduser:
0
Numberofunauthenticateduser:
0
Numberoffreeaddress:
253*可供使用的IP地址*
Numberofaddressallocatedbydhcp(temporarily):
0
Servicepolicyafterauthentication:
default
表11showip-pool显示信息解释表
Ip-poolname
地址池名称
Networkaddress
网络地址
Subnetmask
子网掩码
Broadcastaddress
广播地址
Allocatemode
分配模式
Allocatepriority
分配的优先级
Ip-poolproperty
地址池的优先级
Numberofaddressoccupiedbydevice
已经分发的地址数目
Defaultrouter
默认路由
Actualrouter
实际路由
Servicepolicyname
服务策略
Filterpolicyname
过滤策略
Auth-accountingrule
认证计费规则
PrimaryDNSserver
主DNS服务器
PrimaryWINSserver
主WINS服务器
SecondaryWINSserver
次WINS服务器
Routeroption
路由选项
Leaseoption
租期选项
---
Numberofaddressinip-pool
地址池中存在的地址数目
Numberofremainedaddressformanagement
保留地址
Numberofuserfreeofauthentication
免认证用户数目
Numberofauthenticateduser
认证用户数目
Numberofunauthenticateduser
未认证用户数目
Numberoffreeaddress
可供使用的IP地址
Numberofaddressallocatedbydhcp(temporarily)
Dhcp临时分配的地址数目
Servicepolicyafterauthentication
认证后的服务策略
12.2.2interface
命令格式
[no]interfaceinterfacetype[[slotid/]moduleid/]portid
[no]interfaceinterfacetype[[slotid/]moduleid/]portid.subif
命令功能
创建接口/子接口,并进入接口/子接口配置模式
参数解释
参数
描述
取值范围
interfacetype
接口接口类型
FastEthernet|GigabitEthernet|XGigabitEthernet|Logic|NULL
Slotid
槽位号
1~16
Moduleid
模块号,732板卡的前面板的模块号为1,前扣板的模块号为2
1|2
portid
端口号类型
物理/逻辑端口号范围0~15
NULL类型端口号范围0~7
subif
子接口号
0~255
命令模式
全局配置模式
使用指南
应用场景
对于FastEthernet|GigabitEthernet|XGigabitEthernet类型的接口:
创建接口:
[[slotid/]moduleid/]portid
创建子接口:
[[slotid/]moduleid/]portid.subif
lSlotid–槽位号,当配置本板的接口时,槽位号可省略;当配置的是其他板的接口时,必须填上该板的槽位号;
lModuleid–732板卡的前面板的模块号为1,前扣板的模块号为2
lPortid–端口号,前面板范围0-4,前扣板的GigabitEthernet范围0-7,前扣板的XGigabitEthernet范围0-1
lSubif–子接口号,范围0-255
对于Logic类型的接口:
创建接口:
[slotid/]portid
创建子接口[[slotid/]portid.subif
lSlotid–槽位号,不填槽位号,则对整机的每块板子都生效;填上槽位号,则仅配置该指定的板子;
lPortid–范围0-15
lSubif–子接口号,范围0-255
对于NULL类型的接口:
lSlotid–槽位号,不填槽位号,则配置本系统;填上槽位号,则仅配置该指定的板子;
lPortid–范围0-7
命令配置特征
可重复配置,关键字:
端口类型,端口id
板间分发
分发到所有板
系统分发
linux分发到vxworks执行,linux自己也执行
举例
(假设配置的都是0口;子接口100;有指定槽位号时,槽位号为4)
配置前面板,mouild=1
CLI(config)#interfaceGigabitEthernet1/0
CLI(config)#interfaceGigabitEthernet1/0.100
CLI(config)#interfaceGigabitEthernet4/1/0
CLI(config)#interfaceGigabitEthernet4/1/0.100
配置前扣板XG模块,其中mouild=2
CLI(config)#interfaceXGigabitEthernet2/0
CLI(config)#interfaceXGigabitEthernet2/0.100
CLI(config)#interfaceXGigabitEthernet4/2/0
CLI(config)#interfaceXGigabitEthernet4/2/0.100
配置Logic类型接口
CLI(config)#interfaceLogic0
CLI(config)#interfaceLogic0.100
CLI(config)#interfaceLogic4/0
CLI(config)#interfaceLogic4/0.100
配置NULL类型接口
CLI(config)#interfaceNULL0
CLI(config)#interfaceNULL3/0
相关命令
Showinterface[interfacetypeportid]
13其他设计
如:
模块的容错设计;
可靠性设计;
安全保密设计;
维护设计等。
若对如下情况做了设计,需要单独说明,可以单独列目录来完成。
1)支持IPV6。
2)支持互联互通
3)热备
4)跨越NAT
5)大性能(含业务上的性能、各个通信模块之间的通信性能)
6)支持DEBUG(在线的、细分到个体粒度的细节、自动化测试)
7)编程上需要支持64bit,跨平台代码,大小头
8)支持可被监控和拉起
9)支持不同种类的AP的混接
11)支持license的控制。
12)支持各类标准化的网络模型。
13)是否有利于OEM
14测试点
14.1功能测试点
说明模块在功能测试中需要进行哪些方面的测试,并简要阐述测试方法;
要求能自动化测试。
14.2性能测试点
说明模块在性能测试中需要进行哪些方面的测试,并简要阐述测试方法;
要求能自动化测试。
15关键技术和难点
16尚未解决的问题
17资源
说明本模块所需要的软硬件环境、软件工具、其他软件的配合要求;