软件构架文档.docx
《软件构架文档.docx》由会员分享,可在线阅读,更多相关《软件构架文档.docx(11页珍藏版)》请在冰豆网上搜索。
软件构架文档
基于SSH架构的网上购物商城
软件构架文档
版本<1.0>
修订历史记录
日期
版本
说明
作者
<1.0>
创建
目录
1.简介4
1.1目的4
1.2范围4
1.3定义、首字母缩写词和缩略语4
1.4参考资料4
1.5概述4
2.构架表示方式4
3.构架目标和约束5
4.用例视图5
4.1用例实现6
5.逻辑视图7
5.1概述8
5.2Web层9
主要由jsp页面组成,这里不做过多介绍。
9
5.3Control层9
5.4BusinessService层10
5.5Model层11
5.6MiddleWare层11
6.部署视图12
7.大小和性能12
8.质量12
软件构架文档
简介
目的
本文档将从构架方面对系统进行综合概述,其中会使用多种不同的构架视图来描述系统的各个方面。
它用于记录并表述已对系统的构架方面作出的重要决策。
范围
本文档用于基于SSH架构的网上购物商城。
网上购物商城前台用来支持网上购物,更新货品,了解销售情况等。
后台用来支持对人力资源以及货品的管理,包括员工资料管理、部门信息管理、薪金资料管理、用户权限管理、货品销售管理等。
网上购物商城系统是一个B/S应用形式,可以通过互联网进行访问。
定义、首字母缩写词和缩略语
B/S应用:
Browser/Server结构,即浏览器和服务器结构,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现。
参考资料
使用的参考资料包括:
1.系统愿景,杨魁一,1.0版;
2.用例模型,杨魁一,1.0版;
3.迭代计划,赵璐茜,1.0版;
4.补充规约,赵璐茜,1.0版。
概述
本文档从架构表示方式、架构目标约束、用例视图、逻辑视图、部署视图和数据视图给出系统的整体描述。
构架表示方式
本文档将通过以下一系列视图来表示基于SSH架构的网上购物商城的软件架构:
用例视图、逻辑视图、部署视图。
本文档不包括进程视图和实施视图。
这些视图是通过RSA建立的UML模型。
构架目标和约束
1.系统在开发过程中有如下设计约束:
开发语言为Java,采用关系型数据库存放数据,采用基于UML的面向对象分析与设计方法进行开发,采用B/S架构。
2.系统应支持100人以上同时访问服务器并支持500人以上同时访问数据库,服务器的响应时间不应该超过5秒。
3.所有用户在保证网络连接的情况下可同时通过局域网和互联网访问系统。
4.系统必须保证数据的安全访问,用户需要通过用户名和密码进行身份认证,同时对数据的访问要进行授权认证。
用例视图
本章是对软件架构的用例视图的描述。
由于基于SSH架构的网上购物商城的用例数量太多,因此本章只选了部分与架构设计相关的用例。
对于其余的用例,可参考用例模型。
选取的用例包括:
浏览商品、用户注册、管理购物车、部门管理、订单管理、权限管理
用例实现
图1总用例图
1.1.1浏览商品
1.1.2用户注册
简要说明:
该用例允许用户提出注册申请。
该用例的主要参与者为用户。
1.1.3管理购物车
简要说明:
该用例允许用户管理自己的购物车,它包含添加商品到购物车、从购物车中删除商品,继续购物等功能。
该用例的主要参与者为用户。
1.1.4部门管理
简要说明:
该用例允许管理员管理部门,它包含查询部门、添加部门、修改部门信息、删除部门功能。
该用例的主要参与者是管理员。
1.1.5订单管理
简要说明:
该用例允许管理员管理订单,它包含查询订单、添加订单、修改订单状态、删除订单功能。
该用例的主要参与者是管理员。
1.1.6权限管理
简要说明:
该用例允许管理员对员工的权限进行管理,它包含添加权限、修改权限功能。
该用例的主要参与者是管理员。
逻辑视图
本章是对软件架构的逻辑视图的描述。
主要内容包括描述重要的类,类的分包,子系统以及子系统的分层等。
另外还包括了一些重要用例的实现。
在逻辑视图中,用户将系统更加仔细地分解为一系列的关键抽象,将这些大多数来自于问题域的事物通过采用抽象、封装和继承的原理,使之表现为对象或对象类的形式,借助于类图和类模板等手段,提供系统的详细设计模型图。
概述
图2网上商城的总体架构图
SSH网上购物系统的逻辑视图主要由五层组成,分别是Web层、Control层、BusinessService层、Model层和MiddleWare层。
Web层主要负责完成页面信息的展示,用户数据的获取等功能。
Control层主要由响应各种用户界面请求的动作类组成,它会调用BusinessService层中的函数进行业务逻辑处理,同时根据结果显示不同的界面给用户。
BusinessService层主要完成实际的业务逻辑,以及访问数据库的DAO类。
Model层主要是实体类。
MiddleWare层为SSH框架的函数库,其他各层都依赖于MiddleWare
Web层
主要由jsp页面组成,这里不做过多介绍。
Control层
图3Control层架构图
Control层主要由9个子包组成,包含多个Action类,主要是响应各种用户界面请求的动作类组成,它会调用BusinessService层中的函数进行业务逻辑处理,同时根据结果显示不同的界面给用户。
这些包分别是对用户(user)、部门(department)、员工(employee)、订单(order)、收藏夹(favorite)、商品(goods)、新闻快讯(news)的操作。
BusinessService层
图4Service层架构图
Service层主要由8个包组成,其中base由一个泛型接口DAO和一个抽象类DaoImpl组成,DAO是对增删改查和分页操作的声明,DaoImpl类是对DAO的实现。
其余各个包中都包含一个Service接口继承DAO,ServiceImpl类继承DaoImpl。
这些包分别是对订单(order)、部门(department)、员工(employee)、用户(user)、收藏夹(favorite)、商品(goods)、新闻快讯(news)的操作。
Model层
图5Model层架构图
Model层主要由各种实体类组成。
MiddleWare层
图6MiddleWare层架构图
部署视图
本章描述了部署和运行软件的物理网络(硬件)配置。
图7网上商城的部署图
1.2UserClient
用户主要通过浏览器来访问系统,支持的浏览器包括IE和Firefox等,客户端与服务端的连接可以是局域网或互联网。
1.3Server
应用服务器运行的系统部署在Tomcat5.5容器上,它与数据服务器通过jdbc连接。
1.4DBServer
数据服务器运行mysql5.5数据库。
大小和性能
本系统采用的软件架构可以很好的支持如下性能需求:
1.系统应支持100人以上同时访问服务器并支持500人以上同时访问数据库。
2.服务器的响应时间不应该超过5秒。
质量
本系统采用的软件架构可以很好的支持系统质量方面的需求:
1.系统应当方便所有用户的使用,对于有基础计算机水平的用户的培训时间应不超过2小时。
2.系统应该提供在线的支持帮助。
3.系统必须能够保证每天24小时不间断运行,可用率为99%。
4.合理的设计系统的结构以保证较高的可维护性,系统的模块应该可替换。
5.系统应当正确处理发生的异常或者错误,并返回错误信息。