软件体系结构说明书(AOP).doc

上传人:土8路 文档编号:10072347 上传时间:2021-04-16 格式:DOC 页数:8 大小:55.50KB
返回 下载 相关 举报
软件体系结构说明书(AOP).doc_第1页
第1页 / 共8页
软件体系结构说明书(AOP).doc_第2页
第2页 / 共8页
软件体系结构说明书(AOP).doc_第3页
第3页 / 共8页
软件体系结构说明书(AOP).doc_第4页
第4页 / 共8页
软件体系结构说明书(AOP).doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《软件体系结构说明书(AOP).doc》由会员分享,可在线阅读,更多相关《软件体系结构说明书(AOP).doc(8页珍藏版)》请在三一文库上搜索。

1、2008年奥运会一卡通(OE卡)系统体系结构设计说明1.文档介绍31.1.编写目的31.2.定义31.3.参考资料32.总体设计32.1.需求规定32.1.1.网上预订系统需求32.1.2.OE卡管理系统需求42.1.3.OE卡管理系统需求42.2.系统设计42.2.1.网上预订系统设计42.2.2.OE卡管理系统设计62.2.3.OE卡结算系统设计61. 文档介绍1.1. 编写目的编写2008年奥运会一卡通(OE卡)体系结构设计说明一书的目的是:详细说明2008年奥运会一卡通系统的系统结构的总体设计,供详细设计人员作为开发过程中的参考,并充当体系结构评估小组的参考文档。本文档的预期读者为设计

2、人员、开发人员、项目经理、测试人员等。1.2. 术语定义软件体系结构风格:有时也称为软件体系结构模式,一种体系结构风格定义了关于构件和连接件类型的术语,以及一组约束它们组合方式的规定。AOP:面向方面的编程(Aspect Oriented Programming)是一套新的方法,通过提供一种新的能够能够横切其他模块的模块化单位:aspect(方面),达到了分隔横切关注点的目的。在AOP中,你在aspect中实现横切关注点,而不是把他们融合到核心模块当中去。一个类似于编译器的东东:aspect weaver(方面编织器),通过一个称为weaving(织入)的过程把核心模块和横切模块合并到一起,从

3、而构造出最终的实际系统。最终,AOP用一种边界清晰的方式把横切关注点模块化,产生出一个更容易设计,实现和维护的系统架构。1.3. 参考资料12008年奥运会一卡通(OE卡)系统需求说明书(以下简称需求说明书) 本开发小组2. 总体设计2.1. 需求规定2.1.1. 网上预订系统需求(1) 需求说明提供对奥运门票、酒店、餐饮、旅游产品、纪念品和交通票务等各种服务的预定,达到为用户提供方便快捷的服务、提高工作效率的目的。(2) 功能需求:详见需求说明书2.1.2. OE卡管理系统需求(1) 需求说明向OE卡用户和OE卡发行部门提供有关OE卡信息的管理,对于OE卡发行部门来说,可以提供各种卡务管理,

4、例如办理/补办业务,禁用/解禁业务等;对于OE卡用户来说,可以提供用户自身查询服务,用户可以在各终端机上查询自身的各项信息,例如消费记录,订单状况以及卡上的财务状况等信息。(2) 功能需求:详见需求说明书2.1.3. OE卡管理系统需求(1) 需求说明向OE卡用户提供各种结算服务,用户可以在指定终端上进行消费结算,例如在酒店餐馆消费后的结算,可以由各酒店餐馆的终端利用现有的银行结算方式进行消费支付;用户还可以利用OE卡直接从银行的ATM或POS机存取现金等。(2) 功能需求:详见需求说明书2.2. 系统设计系统采用AOP软件体系结构模式。鉴于本系统有着一些使用传统的编程方法无法很好处理的问题,

5、比如说OE卡结算系统,OE卡管理系统和网上订购系统中包含有很多个单元系统,如与电信,银行系统的交互,与顾客在旅游,餐饮方面的交互。考虑要在这些应用中实施安全策略的问题。安全性是贯穿于系统所有模块间的问题,每个模块都需要应用安全机制才能保证整个系统的安全性,很明显这里的安全策略的实施问题就是一个横切关注点,使用传统的编程解决此问题非常的困难而且容易产生差错,这就正是AOP发挥作用的时候了。在本系统中,横切关注点是结算系统,管理系统以及网上订购系统,这些系统关联到所有的具体事物系统(奥运门票、酒店、餐饮、旅游产品、纪念品和交通票务)。奥运门票酒店餐饮旅游产品纪念品Query()Query()Que

6、ry()Query()Query()Book()Book()Book()Book()Book()各具体事务所包含的切点,以奥运门票为例子说明:Query()和Book()指的是查询和预订奥运门票;LogIn()和LogOut()指的是用户查询和自己奥运门票有关的信息,比如说预订了多少张等等;Deposit()和Consume()指用户在用于奥运门票的资金的存入和消费。奥运门票酒店餐饮旅游产品纪念品Query()Query()Query()Query()Query()Book()Book()Book()Book()Book()LogIn()QLogIn()LogIn()LogIn()LogIn(

7、)LogOut()LogOut()LogOut()LogOut()LogOut()Deposit()Deposit()Deposit()Deposit()Deposit()Consume()Consume()Consume()Consume()Consume()2.2.1. 网上预订系统设计以下的伪代码把网上预订系统作为一个方面,切点是查询和订购,在所有的查询(奥运门票、酒店、餐饮、旅游产品、纪念品和交通票务)之前都要检查是不是有查询的权限,即输入个人的帐户,查询之后显示订购页面,在订购之前要检查用户可支付的款项是不是足够这一操作,而在用户订购了之后则应相应的扣除费用。奥运门票酒店餐饮旅游产品

8、纪念品Query()Query()Query()Query()Query()Book()Book()Book()Book()Book()对于以上的5个具体事务,他们都属于“具体事务处理”这个关注点,而这个关注点与BookSystem这个关注点横切,因此可以如下设计并实现。public aspect BookSystem pointcut QueryOperation() ; pointcut BookOperation() ;before() : QueryOperation () CheckPrivacy();After() : QueryOperation () ShowBookTable

9、();before() : BookOperation ()CheckRemainingMoney();After() : BookOperation ()DeductMoney();2.2.2. OE卡管理系统设计以下的伪代码把OE卡管理系统作为一个方面,切点是登入和登出,在所有的登入(奥运门票、酒店、餐饮、旅游产品、纪念品和交通票务)之后以及登出之前都要显示用户信息,而用户登出之后也要把最新的用户信息及各事务信息送入相应的数据库存储。奥运门票酒店餐饮旅游产品纪念品LogIn()QLogIn()LogIn()LogIn()LogIn()LogOut()LogOut()LogOut()LogO

10、ut()LogOut()public aspect CardManage pointcut LogIn() ; pointcut LogOut() ;After() : LogIn () ShowCardInfo();before() : LogOut ()InformUser(); /inform user the latest informationAfter():LogOut()UpdateUserInfo();2.2.3. OE卡结算系统设计以下的伪代码把OE卡结算系统作为一个方面,切点是充值和刷卡,在所有的充值(奥运门票、酒店、餐饮、旅游产品、纪念品和交通票务)之后应该在后台数据库增

11、加相应的卡值,而在刷卡之后要相应的减少卡值,并把最新的用户信息及各事务信息送入相应的数据库存储。奥运门票酒店餐饮旅游产品纪念品Deposit()Deposit()Deposit()Deposit()Deposit()Consume()Consume()Consume()Consume()Consume()public aspect Balance pointcut Deposit() ; pointcut Consume() ;After() : Deposit() IncreaseCardValue();After() : Consume()DecreaseCardValue ();IncreaseUserMaterial();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1