如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
了解SOA实验的需求在本教程中,我们将陈述接下来所开发的SOA实验的需求。目录教程需求实验目的实验内容实验所涉及的用例安装所涉及到知识结束语教程需求在开始之前,确保对本教程的前提条件有所了解。前提条件本教程假设您已经具备基本的阅读面向对象UML建模图的能力。实验目的该实验设计的目的,是希望通过该实验的实践,可以让读者能够感受SOA开发的一些相关技术,并能通过动手实验来体会这些技术的美妙之处。当然,在实验中,将会有一些SOA开发的方法论的东西,如服务封装,服务抽象,业务编排等。希望通过该实验的学习,可以让读者有基本的SOA开发能力。实验内容在本系统实验中,我们将模拟银行POS系统抽象出一些关键的业务流程,我们称为简单的银行账户管理程序。该实验所设计的业务逻辑很简单,具体的在下节会有详细介绍,本节只是简单分析实验的业务需求。只要具备基本的面向对象程序设计知识,我们即可根据问题陈述抽取出“账户”这一实体:Account是一个银行账户的实体模型,它有一个属性balance表示当前的存款余额,另有三个行为分别表示存款deposit,取款withdraw()和查询余额getBalance()操作。由于例子程序还需管理银行账户,所以还应建立一个名为“账户管理员”的实体模型,它负责执行账户的创建,该操作为create。相关的实体图如下:实验所涉及的用例由上节分析可知,该实验涉及两个用户,分别对应Account和Administrator实体。对于用户,我们抽象出三个操作,分别为取款withdraw(),存款deposit(),查询余额getBalance(),对于管理员,主要是创建新帐号create()。具体分析如下:用户取款:用户请求取款,请求的信息包括accountNum,accountPassword,withdrawAmount。如果用户名和用户密码不对,则流程结束。如果用户名和用户密码一致,则检查请求的取款金额是否合法,不合法则流程结束。如果请求取款金额合法,则进行取款操作,操作成功则返回成功提示,否则提示失败。取款的活动图:用户存款:用户请求存款,请求的信息包括accountNum,accountPassword,depositAmount。如果用户名和用户密码不对,则流程结束。如果用户名和用户密码一致,则检查请求的存款金额是否合法,不合法则流程结束。存款的活动图:用户查询余额:用户请求查询余额,请求的信息包括accountNum,accountPassword。如果用户名和用户密码一致,则返回该用户的余额,否则返回错误信息。管理员创建account:管理员提交创建请求,请求的信息包括id,password,accountNum。如果登录成功,则创建新帐号。否则返回错误信息。创建account的活动图:实验所涉及的知识由于本实验系列的设计就是为了让读者可以通过实验的实践,去感受SOA相关的开发技术与开发原则,所以实验涉及到知识比较广,大致可以列举如下:GlassFish的基本系统管理与MySQL的数据库基本开发,实验中将使用GlassFish来作为容器,并使用MySQL作为数据库进行操作。JBI与ESB,SOA的一些相关架构知识。BPEL的基本知识,实验中将使用BPEL来进行服务的编排。WSDL与XSD的基本知识,实验中所有者BPEL里进行编排的服务都将用WSDL来声明为服务,而所有的WSDL的输入输出定义都将使用XSD文件。EJB3.0的知识,包括StatefulSessionBeans,StatelessSessionBeans,Message-DrivenBeans,EntityBeans(TopLink+EntityClass)。Webservices的基本开发,包括将各种会话Beans声明为Webservices,实现WSDL所定义的Webservices,以及生成Webservices客户端。JavaWeb的基本开发。一系列有用到开发工具,比如NetBeans和MySQL数据库管理平台。捉臭虫的知识(你会发现,在一个开源的新平台上进行开发会是一件很有趣的事,因为你会遇到很多怪怪的臭虫)。结束语开始激动人心的开发前,我们先停一下,在这一部分总结了实验的相关知识。Enjoyit,havefun.