…
4.3 总体界面设计
<提示:后台接口类的项目该部分可以不写>
设计原则
<该项目中界面设计的要求、限定等设计中要注意的原则>
设计思路
<该界面实现的设计思路,如使用XML形成界面菜单,采用CSS提供多套样式风格等>
界面风格
<界面的风格,如配色、操作等方面的考虑>
界面层次图
<较高层次的界面的层次图,如建议和功能逻辑的层次相当>
界面原型
<界面草图或美工设计的界面原型,可有主界面级、视图级、表单级等>
5 详细设计
<详细设计是将“实现架构及功能逻辑”章节中功能逻辑、体系架构的内容在实现上的细化,以在更深的层次上分解功能逻辑和实现逻辑,整体的章节结构随着功能的细化可以看作对“实现架构及功能逻辑”的迭代和细化,但子模块的顶级章节层次仍采用二级标题层次。对于该章节采用的描述工具和方法,“实现架构及功能逻辑”使用的许多工具仍能适用,但该章节更面向具体的实现逻辑,根据不同的项目和使用的工具,可采用如流程图、顺序图、协作图等等来描述实现的细节。>
<该章节的基本面向以编码为主的项目,对于许多集成类的项目,如Notes邮件配置、Tivoli单点登录实现,也建议按功能模块来划分,参考以下章节的内容,适当调整章节结构,根据情况增加一些相关的图示和描述,以表达清楚该功能的实现设计。如Notes的Internet邮件配置,需要描述邮件系统设计思路、拓扑框架及相关的配置文档;Tivoli的单点登录实现,需要描述每个相关系统采用哪种单点登录模式,应用系统和服务器相应的改变、相关的配置等等。>
<对于章节的细分,根据需求分析设计的模式可以有不同的方式,如采用功能模块分解或主题域分解。对于目前的多数项目,虽然可能采用面向对象的语言实现,但我们多数采用
面向过程的功能分解,一般建议子章节的结构采用功能逻辑分解。对于一些业务或实现上通用的功能及模块建议单独列出,集中描述。>
<对于较大的项目,如采用不同模块采用不同技术路线开发或功能组织分为几个大类,可采用分文档描述,也可在一个文档中描述。如果在一个文档中描述,大类的详细设计可采用一级标题,如5.公文管理详细设计、6.门户详细设计>
5.1 模块A 概要说明
<本模块的功能简述,如有多级层次,建议分层描述相关子模块。可采用图示或文字说明,建议以文字说明为主,功能描述可以分子章节>
<样例,简单
向内核系统登记几个proc文件,以便于向内核空间中查询安全联盟和eoute表,以及虚接口的状况;
初始化SA数据库(tdb链); 初始化SPDB数据库(eroute表); 初始化pf_key(PF_KEY套接口); > <样例,子章节
组织定义:
具体描述…
单位名称维护:
具体描述…
部门定义:
具体描述…
流程定义:
具体描述…
>
实现框架
<以下的章节结构目的是从不同的维度和视图来描述设计,供参考。实际项目中可进行扩展和裁剪,建议大家学习UML的各种图示,统一采用UML图示来表达设计方面的各种视图>
设计思路:
<描述该总体设计采用的框架、工具、方法等,以及对一些难点和复杂逻辑的处理思路> <对于通常的项目,设计思路可能包括多个部分,可以分子章节描述>
包图及描述:
<提示:数据库操作类的项目该部分可以不描述>
<该类包图,通过层次结构,以在逻辑上组织设计,在使用包图及描述中,要能体现设计和功能逻辑间的关系>
类图及描述:
<提示:数据库操作类的项目,Sieble套件类系统该部分可以不描述>
<该模块的类图,通过层次结构,以在逻辑上组织设计,在使用类图及描述中,要能体现设计和功能逻辑间的关系,同“实现架构及功能逻辑”章节不同,该章节将深入描述类实现的细节,如方法、属性等等。如果该模块比较复杂,可以分子章节来描述,并在子章节中细化设计>
设计的文件清单结构
<以树型结构并结合描述描述出系统的较高层次的源代码目录及文件结构,以便读者能很快理解模块程序结构的组织,颗粒度应到覆盖到主要的代码。>
<样例,仅供参考 XXX模块 源代码
业务功能A
业务功能A1
登记模块,并初始化
业务功能B 打印组件
打印模块,实现打印的通用功能
图片库 >
主要逻辑实现描述:
<描述逻辑功能的实现,包括类方法或函数实现。此章节的内容可能是设计的重点,对于不同的实现,可采用不同方式描述。如使用UML图示中的合作图、活动图进行动态建模。但对于过程的细节描述仍建议采用传统的方式,描述程序实现的数据结构、算法和流程逻辑。对于此章节的组织,需要从实现的业务逻辑入手,而不要突然跳出一个图来,章节要有整体感。>
<样例1,顺序图>
账户间转帐
…
顺序图:
文字描述…
<样例2,典型的过程设计文档>
登记及初始化
变量说明
1) device结构
static struct device dev_ipsec0 = {
\ NULL, /* next device */
ipsec_tunnel_probe /* setup */ };
2) 数据结构2. 3) …
函数说明
1) void call_server(void)
<功能:说明该程序应具有的功能,可采用IPO图(即输入一处理一输出图)的形式。> 功能:监听SA协商消息――IKE消息、whack消息和pfkey消息,收到上述几种消息后,再调用相应处理模块。
<性能:说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。> 性能:无
<输入项:给出对每一个输入项的特性,包括名称、标识、数据的类型和格式、数据值的有效范围、输入的方式。 数量和频度、输入媒体、输入数据的来源和安全保密条件等等。>
输入项:无
<输出项,给出对每一个输出项的特性,包括名称、标识、数据的类型和格式,数据值的有效范围,输出的形式、数量和频度,输出媒体、对输出图形及符号的说明、安全保密条件等等。>
输出项:无
<算法,详细说明本程序所选用的算法或流程,包括具体的计算公式和计算步骤,可用