软件架构文档

assassinmt 贡献于2017-03-31

作者 杜文峰  创建于2003-08-25 08:01:00   修改者Administrator  修改于2010-01-06 23:36:00字数5002

文档摘要:通过采用许多不同的构架视图描述系统的各个方面,软件构架文档从构架的角度对整个系统进行综合概述。
关键词:

 项目名称 软件架构文档Software Architecture Document 软件架构文档Software Architecture Document 项目名称:论坛监控回复小助手 摘要 :本文档系统阐述软件“论坛回复监控小助手”的详细信息。本文档主要介绍“论坛回复监控小助手”在开发过程中的具体需求,以及设计约束条件,作为将来项目设计、测试和验收的标准。 相关文档: NEW软件需求规约V1.11.doc 修改记录: 日期 版本 说明 作者 2010-1-6 V1.0 详细信息 梁思,邓栋成,蔡锦升 目录 1 简介 3 1.1 目的 3 1.2 范围 4 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 1.3 定义、首字母缩写词和缩略语 4 1.4 参考资料 4 1.5 参考项目 4 2 系统构架 4 2.1 类1 5 2.2 类2 6 2.3 类3 6 2.4 类4 7 2.5 类5 7 2.6 类6 8 2.7 类7 8 2.8 类8 9 2.9 类9 9 2.10 类10 10 2.11 类11 10 2.12 类12 10 2.13 类13 11 2.14 类14 11 2.15 类15 11 2.16 类16 12 2.17 类17 12 2.18 类18 12 2.19 类19 13 2.20 类20 13 2.21 类21 13 3 用例活动图 13 3.1 用例实现 15 4 部署视图 20 5 实施视图 21 5.1 概述 21 5.2 层 21 6 数据视图(可选) 21 7 质量 22 1 简介 通过采用许多不同的构架视图描述系统的各个方面,软件构架文档从构架的角度对整个系统进行综合概述。 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 《论坛回复监控小助手软件需求规约》主要是描述基于Windows平台开发的一个自动跟踪监控论坛上所发帖子的回复情况的软件完整需求,其主要目的为对“论坛回复监控小助手”软件进行定义,详尽说明该软件的需求,阐述开发者对软件“论坛回复监控小助手”的初步设想,并划分的各功能模块等以及各模块的实体图等。 《论坛回复监控小助手软件需求规约》在整个项目开发阶段中控制系统的演进。在“前景”文档中添加新特性或修改特性的同时,将在《论坛回复监控小助手软件需求规约》中详细说明这些特性。下列人员使用软件需求规约: 系统分析员创建并维护前景和补充规约,它们将用作对《论坛回复监控小助手软件需求规约》的输入,并充当系统分析员、客户和其他开发人员之间的交流媒介。 用例阐释者创建并维护单个用例和 《论坛回复监控小助手软件需求规约》的其他构件,设计员在定义类的职责、操作和属性时,或在调整类使其适应实施环境时参考该《论坛回复监控小助手软件需求规约》。 实施员实施类时在《论坛回复监控小助手软件需求规约》中查找输入。 项目经理计划迭代时在 《论坛回复监控小助手软件需求规约》中查找输入。 测试员使用 《论坛回复监控小助手软件需求规约》来核实系统的一致性。 1.1 目的 软件构架文档提供软件系统构架的综合概述。它用作构架设计师和项目团队的其他成员之间的交流媒介,讨论已针对项目构架做出的重要决定。 本文档将从构架方面对系统进行综合概述,其中会使用多种不同的构架视图来描述系统的各个方面。它用于记录并表述已对系统的构架方面作出的重要决策。 《论坛回复监控小助手软件需求规约》主要目的为收集与组织所有与“论坛回复监控小助手”有关的需求。我们希望通过《论坛回复监控小助手软件需求规约》 来说明“论坛回复监控小助手”各项特性,其中包括几个来自系统用例模型中的用例,以此来说明此特性的功能性需求,以及补充规约中一系列相关的详细需求 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 1.2 范围 本文档主要涉《论坛回复监控小助手》要求和设计约束,以及通信组件和检查组件的开发内容和验证方式。 1.3 定义、首字母缩写词和缩略语 BBSA: Bulletin Board System Assistant(电子公告板系统助手,以下简称BBSA) SRS: Software Requirements Specification (软件需求规约,以下简称SRS) 1.4 参考资料 书名/文档 作者 出版社 出版日期 软件工程 王庆育 (编著) 清华大学出版社 2004年7月 软件工程 任胜兵、邢琳编 北京邮电出版社 2004年5月 软件工程 张海潘(编著) 人民邮电出版社 2006年1月 1.5 参考项目 多多助手V1.0 discuz7顶贴小助手V1.1 论坛挂机小助手 1.6 技术支持 1.6.1 网络爬虫 A. 什么是爬虫?为什么需要爬虫? n 搜索引擎缺乏方向性,导致大量无用网页。 n 搜索覆盖率不够 B. 爬虫原理 网络爬虫是一个自动提取网页的程序,它为搜索引擎从万维网上下载网页,是搜索引擎的重要组成。传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件,如图1(a)流程图所示。聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止,如图1(b)所示。另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document C. 爬虫的分类 n 通用爬虫 n 聚焦爬虫 D. 爬虫策略 n 深度优先(已较少用) n 广度优先 n 最佳优先 1.6.2 自动识别验证码 A. 为什么需要CAPTCHA?什么是CAPTCHA? 现在互联网上存在大量的恶意刷新,灌水,注册等,导致服务器瘫痪,产生大量的网络垃圾。现在互联网上出现的验证码正是为了阻止这些恶意行为。但是,随着图像识别能力的提高,验证码的功能正被削弱。 CAPTCHA项目是(全自动区分计算机和人类的图灵测试)的简称。 CAPTCHA的目的是区分计算机和人类的一种程序算法,这种程序必须能生成并评价人类能很容易通过但计算机却通不过的测试,验证码是其中一种实例。这个要求本身就是悖论,因为这意味着一个CAPTCHA必须能生成一个它自己不能通过的测试。 B. 什么是PWNTCHA?用途是? 与CAPTCHA相反的阵营就是PWNTCHA。PWNTCHA是一个程序,提供了破解验证码的功能。有外国人就直接称PWNTCHA为CAPTCHA DECODER。而PWNtcha的官网上说“This project’s goal is to demonstrate the inefficiency of many captcha implementations.” 在许多种CAPTCHA上,PWNTCHA的成功率达到90%以上,甚至100%。但PWNTCHA的作者非常坦白地说:“PWNtcha is now lagging 3 years behind captcha technology and is therefore no longer a very interesting piece of software”,而且,PWNTCHA除了能对付数字和英文字母外,对于其他语言他是无能为力的。 C. 新兴的破解CAPTCHA方法 1. 利用现成的网站(很多是吸引眼球的不正当网站)的高流量,让那些过路者免费帮忙输入验证码。 2. 直接付费利用人力资源输入验证码,比如http://google27.com/bypass-captcha/ 就是一个专门进行此类勾当的网站。 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 2 系统构架 2.1 类1 用户类 属性: 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (1)论坛地址 (2)论坛名 (3)用户名 (4)用户密码 方法: (1) 增加用户信息 (2) 修改用户信息 (3) 删除用户信息 (4) 输入信息 (5) 确认添加用户信息 (6) opname (7) 储存信息 2.2 类2 界面类 属性: 方法: (1) 打开界面 (2) 显示界面 2.3 类3 状态机制类 属性: 方法: (1) 启动界面管理功能 (2) 启动软件功能 (3) 确认登录有效 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (4) 调用更新算法 (5) 启动反馈更新信息功能 (6) 启动反馈登录信息功能 (7) 确认打开 (8) 确认提交 (9) 确认删除 (10) 确认修改 2.4 类4 界面管理类 属性: 方法: (1) 建立界面 (2) 储存界面信息 (3) 启动界面类 (4) 确认打开 2.5 类5 设置论坛界面 属性: 方法: (1) 打开主界面 (2) 显示界面 (3) 打开设置论坛界面 (4) 显示设置论坛页面 (5) 选择“添加”操作 (6) 选择“编辑”操作 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (7) 选择“删除”操作 (8) 输入论坛地址 (9) 输入论坛名 (10) 输入用户名 (11)输入密码 2.6 类6 选择论坛界面 属性: 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开设置论坛界面 (4)选择论坛 (5)确定 (6)显示登录是否成功 2.7 类7 用户信息修改界面 属性: 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开用户信息修改 (4)修改论坛地址 (5)修改论坛名 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (6)修改用户名 (7)修改密码 (8)确定 (9)取消 2.8 类8 登录论坛界面 属性: 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开登录界面 (4) 显示登录界面 (5) 显示验证码 (6) 输入验证码 (7)确定 (8)取消 2.9 类9 反馈登录信息界面 属性: 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开反馈登录界面 (4) 显示反馈登录界面 (5)重新连接 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (6)取消 2.10 类10 实时提示信息界面 属性: 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开实时提示信息界面 (4) 显示实时提示信息界面 2.11 类11 查看信息界面 属性: 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开查看信息界面 (4) 显示查看信息界面 (5)点击连接 (6)显示更新内容 (7)查看信息 2.12 类12 帮助信息界面 属性: 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 方法: (1) 打开主界面 (2) 显示主界面 (3) 打开帮助信息界面 (4) 显示帮助信息界面 2.13 类13 文档规范类 属性: 方法: (1) 获取输入信息 (2) 规范文档信息 (3) 写入数据库 (4) 获取更改信息 2.14 类14 数据库控制类 属性: 方法: (1) 访问数据库 (2) 查询数据库 2.15 类15 设置后台工作类 属性: 方法: 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (1) 选择工作方式 (2) 选择信息提示方式 2.16 类16 本地属性配置类 属性: 方法: (1) 记录用户设置信息 (2) 修改软件属性 2.17 类17 无用信息清理类 属性: 方法: (1) 判断信息是否有效 (2) 删除无效信息及记录 2.18 类18 捕获信息分析类 属性: 方法: (1) 捕获网站更新信息 (2) 反馈更新信息 (3) 核对登录信息 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 2.19 类19 网络爬虫 属性: 方法: (1) 获取所指定网址的信息 2.20 类20 网络传输类 属性: 方法: (1) 传输数据 2.21 类21 获取验证码类 属性: 方法: (1) 连接网络 (2) 抓包获取验证码 (3) 反馈验证码 3 用例活动图 [本节列出用例模型中的一些用例或场景,这些用例或场景应体现最终系统中重要的、核心的功能;或是在构架方面涉及范围很广(使用了许多构架元素);或强调或阐明了构架的某一具体的细微之处。] 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 帮助界面活动图 查看界面活动图 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 设置论坛界面活动图 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 查看信息方法设置 选择监控论坛界面活动图 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 3.1 用例实现 (1) 查看更新信息 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 过程: 1.启动界面管理功能( ) 启动界面管理功能,用户通过调用状态机制类中的功能调动界面 1.1. 启动界面类( ) 状态机响应用户,为用户启动界面 1.1.1. 显示设置论坛页面( ) 界面类响应状态机制类,显示设置论坛界面 1.1.1.1. 抓包获取验证码( ) 提交获取验证码的申请 1.1.1.1.1. 反馈验证码( ) 反馈所需的验证码 1.1.1.1.1.1. 显示验证码( ) 在登陆界面上显示验证码 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (3)删除监控的论坛 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (4)选择监控论坛 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (5)删除用户信息 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (6)修改用户信息 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document (7)增加用户信息 过程: (1) (2) 4 部署视图 [本节说明用来部署和运行该软件的一种或多种物理网络(硬件)配置。对于每种配置,它至少应该指出执行该软件的物理节点(计算机、CPU)及其互连情况(总线连接、LAN 连接、点到点连接等)。另外还要包括进程视图中的各进程到物理节点的映射。] 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 5 实施视图 [本节说明实施模型的整体结构、软件分解为实施模型中的层和子系统的情况,以及所有在构架方面具有重要意义的构件。] 5.1 概述 [本小节指定并定义各个层及其内容、添加到指定层时要遵循的规则以及各层之间的边界。还应包括一个显示层间关系的构件图。 ] 5.2 层 [对于每个层,都用一个小节来加以说明,其中包括该层的名称和一个构件图,并列举位于该层的子系统。] 6 数据视图(可选) [从永久性数据存储方面来对系统进行说明。如果几乎或根本没有永久性数据,或者设计模型与数据模型之间的转换并不重要,那么本节就为可选。] 深圳大学 http://www.szu.edu.cn 第 页 项目名称 软件架构文档Software Architecture Document 数据库的关系图 7 质量 [说明软件构架如何促成诸如可扩展性、可靠性、可移植性等所有系统能力(而非功能)的实现。如果这些特征具有特殊的意义(例如在安全性或保密性方面的意义),则应该对它们进行详细的说明。] c 深圳大学 http://www.szu.edu.cn 第 页

下载文档到电脑,查找使用更方便

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享文档获得金币 ] 1 人已下载

下载文档