1、.软件研发部文档编号版本A1密级商密A项目名称Xx系统项目来源Xx系统架构设计说明书(内部资料 请勿外传)编 写:日 期:检 查:日 期:审 核:日 期:批 准:日 期:XXXX科技有限公司版权所有 不得复制文档变更记录序号变更(+/-)说明作者版本号日期批准12目 录1、 引言51.1 背景51.2 术语和缩略语51.3 参考资料52、 总体设计62.1 需求规定62.2 架构设计目标和约束62.2.1 运行环境62.2.2 开发环境62.3 设计思想72.4 架构体系72.5 重要业务流程72.5.1 流程182.5.2 流程282.5.3 流程382.6 模块划分82.6.1 模块一92
2、.6.2 模块二103、 接口设计103.1 系统外部接口103.1.1 数据库接口103.1.2 第三方接口113.1.3 通信接口113.2 系统内部接口113.2.1 系统数据流133.2.2 系统状态机153.2.3 系统部署图154、 运行设计164.1 进程/任务的设计174.1.1 前台RCP客户端174.1.2 后台系统174.2 数据存储174.2.1 数据库模型174.2.2 文件174.2.3 系统参数174.2.4 其它数据184.3 出错处理185、 特性设计185.1 性能185.1.1 规模分析与实现195.1.2 性能分析与实现195.1.3 内存占用195.1
3、.4 响应速度要求195.2 可靠性195.3 安全性195.4 可维护性196、 部署206.1 部署模式206.1.1 部署方式一206.1.2 部署方式二206.2 许可协议207、 附录201、 引言描述本文的参考依据、资料以及大概内容。1.1 背景项目产生或者开发背景,必要性等。1.2 术语和缩略语缩略语、系统主用名词、术语等解释1.3 参考资料编写本文和阅读本文是需要查阅的资料有关文档,注明出处、作者和版本。(架构设计重点在于将系统分层并产生层次内的模块、阐明模块之间的关系)2、 范围2.1 软件名称英文名称:TopEng-CSP中文名称:客户服务平台2.2 软件功能请参考XXX子
4、系统 软件需求规格说明书.doc2.3 软件应用请参考系统 软件需求规格说明书.doc2.4 需求边界明确范围边界,做什么,不做什么。3、 总体设计3.1 架构设计目标和约束架构设计总体目标和一些有关架构方面的约束,比如技术约束或者设计上约束。3.1.1 运行环境序号项目详细信息后台软件环境Linux, JRE1.6以上 Tomcat5.5容器, mysql4.0/以上前台软件环境Windows XP, Windows 2000, windows vista数据库3.1.2 开发环境序号项目详细信息1操作系统开发编译系统:JDK 1.6, 操作系统: windows系列2编程语言JAVA、Ja
5、va Javascript、HTML、CSS3编程工具Eclipse 3.44网络平台100M Ethernet3.2 设计思想阐明进行架构设计的思想,可参考一些架构设计的模式,需结合当前系统的实际情况而定。3.3 架构体系根据架构分析和设计思想产生系统的架构图,并对架构图进行描述,说明分层的原因、层次的职责,并根据架构图绘制系统的物理部署图,描述系统的部署体系。3.4 重要业务流程(有多少个就写多少个流程图)流程图类型不做严格要求,只要图和描述表达设计思想即可;重要业务流程数据流向等。3.4.1 流程13.4.2 流程23.4.3 流程33.5 模块划分根据架构图进行模块的划分并阐明模块划分
6、的理由,绘制模块物理图以及模块依赖图。有多少模块就写多少个模块3.5.1 模块一3.5.1.1 模块一描述根据模块物理图描述各模块的职责,并声明其对其他模块的接口要求。这是本系统中的上层应用,包括提供各种功能的插件以及用户界面,主要为用户提供输入条件和输出结果,也就是查询条件的输入和数据展示,也包括基本数据的录入和管理功能,由如下的插件应用构成,子模块描述实时监控插件负责提供实时监控功能3.5.1.2 模块一业务流程说明图+文字描述。样例;3.5.1.3 模块一接口设计对模块接口进行设计,并提供一定的伪代码。3.5.2 模块二3.5.2.1 模块二描述根据模块物理图描述各模块的职责,并声明其对
7、其他模块的接口要求。这是本系统中的上层应用,包括提供各种功能的插件以及用户界面,主要为用户提供输入条件和输出结果,也就是查询条件的输入和数据展示,也包括基本数据的录入和管理功能,由如下的插件应用构成,子模块描述实时监控插件负责提供实时监控功能3.5.2.2 模块二业务流程说明图+文字描述。样例;3.5.2.3 模块二接口设计对模块接口进行设计,并提供一定的伪代码。4、 接口设计对场景以及问题域进行分析,构成系统的架构级设计,阐明对于系统的分层思想。4.1 系统外部接口4.1.1 数据库接口本系统未使用数据库连接池技术,但软件中存在Apache Dbcp 数据库连接池JAR包l 后台服务采用JD
8、BC连接MYSQL数据库,由于本系统存在多个数据库,每活动线程最多拥有一个数据库连接,外部请求在使用完成后不需要显式关闭。4.1.2 第三方接口4.1.3 通信接口4.2 系统内部接口l 应用子系统这是本系统中的上层应用,包括提供各种功能的插件以及用户界面,主要为用户提供输入条件和输出结果,也就是查询条件的输入和数据展示,也包括基本数据的录入和管理功能,由如下的插件应用构成,模块描述实时监控插件负责提供实时监控功能虚拟身份插件负责提供真实/虚拟身份的查询,轨迹查询的功能案件管理插件负责提供对案件的管理和报警等功能线索分析插件负责提供同时上下机查询,碰撞分析和CCIC库管理等功能情报分析插件负责
9、提供对内容的查询和QQ好友分析等功能实名登记插件负责提供对实名登记查询和违规卡的管理功能场所管理插件负责提供对上网场所的管理和运行状态综合统计信息等功能系统管理插件负责完成整个系统的管理,包括用户密码,和基本数据的管理功能l 后台子系统相对与应用插件,后台数据子系统的主要功能是接受来自插件应用的请求,并为请求提供实际操作功能。模块描述实时监控后台负责提供实时监控虚拟身份后台负责提供真实/虚拟身份的查询,轨迹查询的功能案件管理后台负责提供对案件的管理和报警等功能线索分析后台负责提供同时上下机查询,碰撞分析和CCIC库管理等功能实名登记后台负责提供对实名登记查询和违规卡的管理功能场所管理后台负责提
10、供对上网场所的管理和运行状态综合统计信息等功能系统管理后台负责完成整个系统的管理,包括用户密码,和基本数据的管理功能l 文本分析子系统负责对协议文本文件的索引,包括IM聊天记录文件,POST内容记录文件等的索引和查询功能模块描述文本索引模块负责提供对文本文件的索引,采用LUCENCE技术索引查询模块负责提供对内容的查询和QQ好友分析等功能l 配置中心子系统配置中心子系统负责为后台服务和客户端配置文件的配置提供GUI的配置途径5、 运行设计本系统在设计时为了保证客户端的响应动态响应前台的请求而动态生成任务外,同时启动多个后台服务。5.1 进程/任务的设计5.1.1 前台RCP客户端取客户端配置放
11、内存(经配置可以使用JAR包XML配置文件而省略这一步)删除5.1.2 后台系统对于多表查询,使用任务方式委托JDK线程池对不同表进行查询。整个后台服务初始完成以后,将生成以下任务(或线程),此任务为单一线程,并未做线程池并发处理,任务线程串行处理任务5.2 数据存储5.2.1 数据库模型重要数据模型5.2.2 文件系统用文件系统结果、接口等。5.2.3 系统参数配置参数、环境参数等datasource.config 数据源列表serverlist.config 报警的服务器列表system-id 自识别的城市ID5.2.4 其它数据内存等5.3 出错处理本章节应列出出错原因及提示信息 6、
12、特性设计特性设计可以根据产品用途、行业标准等实际情况对章节进行调整。6.1 性能描述系统常态下系统要求,重要有代表业务性能指标。以及在架构设计中保证性能,方案和设计要求6.1.1 规模分析与实现6.1.2 性能分析与实现6.1.3 内存占用6.1.4 响应速度要求6.2 可靠性标准是72小时无故障。例如为保证72小时,在故障处理设计实现方式、要求等。还有异常处理 6.3 安全性用户和权限管理、数据范围权限的控制、通讯是否加密,加密方式强度和要求,防止数据篡改、攻击等6.4 可维护性实施、系统升级等,包括可移植性、可修改性、可扩充性7、 部署7.1 部署模式7.1.1 部署方式一部署硬件、网络等详细要求,提供部署图。7.1.2 部署方式二7.2 许可协议许可协议方式和版权加密控制方式。8、 附录精选文档