软件架构设计说明书.docx
- 文档编号:24199570
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:11
- 大小:62.90KB
软件架构设计说明书.docx
《软件架构设计说明书.docx》由会员分享,可在线阅读,更多相关《软件架构设计说明书.docx(11页珍藏版)》请在冰豆网上搜索。
软件架构设计说明书
计算机与信息工程学院
软件架构设计说明书
专业年级:
2008软件工程
题目:
网络硬盘
组次:
第二组
组员:
何阳20083841
李锦刚20083846
刘宗智20083849
芦明威20083850
王子龙20083855
谢鹏20083857
张玉祥20083862
指导教师:
吴光伟
2011年 8 月
一、简介
1、文档介绍
本文档全面与系统的介绍了MemoryBox网络硬盘系统的构架设计,并且使用多种视图来从不同角度描述本系统的各个主要的方面,以满足各种不同涉众(用户、设计人员)对于本系统不同关注焦点与需求。
本文档记录并表述了系统架构设计人员对于系统架构方面做出的重要决策。
项目所有成员根据用户需求通过小组讨论获得项目开发计划,制定系统架构方案;项目组长通过个人所长分配相应的项目开发任务;程序设计人员按照架构方案进行系统详细功能的开发;项目测试人员根据构架设计项目的总体测试框架;构架文档用于各个构件的实施、集成及测试。
2、文档目的
本文档用于指导项目开发人员进行系统功能详细设计;测试人员的测试框架设计;各个构件的实施与集成等。
3、文档范围
本软件架构文档适用于MemoryBox系统的总体应用构架。
4、读者对象
项目组长、程序开发人员、测试人员等相关工作人员。
5、参考资料
《软件项目开发文档》
《软件架构技术》
6、术语与缩写解释
MVC:
(Model-View-Controller)中文翻译为"模型-视图-控制器"。
MySql:
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
CVS:
(ConcurrentVersionsSystem)CVS是一个C/S系统,多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步的目的。
CVS版本控制系统是一种GNU软件包,主要用于在多人开发环境下的源码的维护。
MyEclipse:
(MyEclipseEnterpriseWorkbench,简称MyEclipse)一个十分优秀的用于开发Java,J2EE的Eclipse插件集合。
功能丰富的JavaEE集成开发环境。
JUnit:
JUnit是由ErichGamma和KentBeck编写的一个回归测试框架(regressiontestingframework)。
Junit测试是程序员测试,即所谓白盒测试。
Log4J:
Log4j是Apache的一个开放源代码项目,通过使用Log4j,可以控制日志信息输送的目的地是控制台、文件、GUI组件、甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等。
二、系统概述
MemoryBox是一个运用J2EE技术,通过C/S模式实现用户管理及用户资料存储的网络硬盘系统。
客户端提供用户操作界面,服务端处理用户操作请求。
用户初次登陆需要通过注册获得系统的使用权限,注册通过后进入系统主界面,可以进行文件的上传(包括文档、音频、视频等类型的文件)、下载、共享、删除。
同时实现了多文件同时上传、同时下载、文件的断点续传及断点下载等功能。
用户通过其他供应商接口可以实现开通会员等提升用户权限及服务的操作。
三、设计约束
命名约束:
类名、方法名与参数名统一采用驼峰法,类名首字母大写,参数与方法名首字母小写;
命名协定:
元素
命名协定
包
该项目的包结构:
com.lmemorybox.view所有界面
com.lmemorybox.action所有的动作事件
Com.lmemorybox.dao所有数据库访问类
com.lmemorybox.util公用组件包
com.lmemorybox.server服务逻辑包
类
类的名称应该清楚的标识它所表示的实体,若有多个单词组成,则每个单词首字母大写。
例如,代表用户的类的名字应该叫做‘User’。
接口
与类一样
方法(函数)
方法(函数)名应该根据它所完成的功能或者返回值决定它的命名。
例如,
返回值为布尔型:
isMethodName()或hasMethodName()
返回值为其他类型:
getMethodName()
执行删除数据功能:
deleteMethodName()
执行修改数据功能:
updateMethodName()
执行添加数据功能:
addMethodName()
变量
静态最终变量字母均大写
文件
文件名应该能清晰的标志它们存储的数据的种类。
image-------------存放图片文件
sound-------------存放音频文件
temp-----------------存放临时文件
四、设计策略
本系统采用C/S模式设计,基本实现MVC模式;采用JUnit进行单元测试,提高软件开发质量;使用Log4J记录开发日志,随时进行改进;使用CVS系统进行开发,对项目进程实时更新。
五、系统总体结构
5.1客户端结构设计:
图一:
客户端模块划分
详细功能描述:
※用户信息管理及安全设置:
用户通过注册后在服务端存储各项信息(用户名、密码、邮箱、个性签名、找回密码问题、密码问题答案等);常用用户登录时可以选择记住用户名及密码,方便下次登录;当用户名正确而忘记密码时,用户可以通过回答密码问题修改自己的登录密码;登陆之后用户可以浏览自己的个人信息、修改个人信息;用户可以通过第三方付费方式开通会员,提升使用权限,享受相应的会员服务;
※用户文件管理:
用户登录进入主界面,可以选择上传文件、下载文件、删除文件、共享文件等操作;用户可以新建文件夹来保存自己的所需要的资料;当用户上传或者下载是出现外部情况变化可以实现文件的断点续传及断点下载;
5.2客户端业务流程:
图二:
客户端业务流程
5.3服务端结构设计:
图三:
服务端模块划分
详细功能描述:
※用户容量控制:
根据硬件与软件条件,系统管理员对用户的使用空间有控制权限;根据用户不同权限分配不同空间,并且对整个系统的使用空间进行操作与控制;
※用户管理:
审核用户注册信息是否合法,对于不合法用户可以进行删除操作;
存储合法用户信息,没有修改权限;查看用户文件并且审核,对于非法文件进行删除操作;根据用户开通会员的请求进行用户权限提升的操作;
5.4服务端业务流程:
图四:
服务端业务流程
5.5系统部署图:
图五:
系统部署图
六、子系统的结构与功能
6.1用户管理:
图六:
用户登录业务流程
6.2文件管理:
图七:
文件上传业务流程
图八:
文件下载业务流程
七、开发环境的配置
客户端:
WindowsXP及以上运行环境;
JDK1.6及以上开发环境;
MyEclipse6.0及以上开发环境;
CVS2.0及以上系统平台;
服务端:
WindowsXP及以上运行环境;
JDK1.6及以上开发环境;
MyEclipse6.0及以上开发环境;
CVS2.0及以上系统平台;
MySql数据库系统;
八、运行环境的配置
客户端:
WindowsXP及以上运行环境;
MyEclipse6.0及以上开发环境;
服务端:
WindowsXP及以上运行环境;
MyEclipse6.0及以上开发环境;
MySql数据库系统;
九、测试环境的配置
运行环境:
WindowsXP及以上运行环境;
开发平台:
MyEclipse6.0及以上开发环境;
JUnit测试环境;
[此文档可自行编辑修改,如有侵权请告知删除,感谢您的支持,我们会努力把内容做得更好]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 架构 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)