从定义可以看出,电子商务是一个复杂的系统工程,它必须具有整体性、协调性、动态性和安全性Intemet不仅提供了信息仓库,而且被用于商品交易和服务随着Intemet的发展和分布式系统的不断完善,Agent系统越来越成为分布式对象模型中不可缺少的补充在电子商务领域,已经有移动Agent系统的出现和尝试在基于Agent的电子商务系统中,Agent吸取了面向对象语言提供的对分类方法的支持,即通过类的封装性和继承性概念来实现软件模块的重用和数据共享因此,在利用多Agent技术开发电子商务系统的时候,如果没有套完善的软件工程方法支持整个系统的设计过程,就很难保证所实现的应用系统具有足够的可靠性、可维护性、一致性、可扩展性以及软件可复用性而UML是一种标准的形化建模语言,它是面向对象分析与设计方法的表现手段,适用于不同的开发环境和软件生命周期因此本文中将UML作适当的扩展对系统进行建模,从而使这种基于多Agent的体系结构更易于理解且便于管理,同时改进系统的可视化和可操作性。
旅游电子商务系统
与传统的电子商务系统不同的是,旅游电子商务系统不仅可以让任何人通过浏览器进入网站浏览旅游资源和商品,更重要的是,它能为游客提供在线选择景点、宾馆、餐厅等服务,并可进行实时预定而本系统采用多Agent体系结构,能够根据用户的需求和偏好主动、智能和协作地从Internet和知识库中发现和收集各类信息,并对收集到的信息进行过滤、管理和反馈,从而形成针对不同用户定制的个性化的旅游线路。
为了更好的理解系统的体系结构,根据系统功能的不同,可以把系统分为以下几个子系统:导游子系统、用户反馈子系统、在线预订子系统、旅游商品子系统、新闻发布子系统、用户论坛子系统和系统管理子系统每1个子系统用1个包来表示,从而得到系统的包,如l所示UML的包是一种对模型元素进行成组组织的通用机制,它把语义相近且可能一起变更的模型元素组织在一个包里,以便理解复杂的系统和控制系统结构各个部分间的链接一个系统的框架、模型、子系统等都可看作是特殊的包。
子系统可以分为3个层次:第1层包括导游子系统和用户反馈子系统,这2个子系统都采用多Agent结构,可以智能地为用户提供服务,这是本系统的专有部分;第2层是系统的通用部分,这5个子系统通常在所有的电子商务系统中都可以看到;第3层除了通用的数据库之外,还包括Agent系统专有的知识库。
导游Agent子系统
导游Agent子系统是该旅游电子商务系统的核心,它的主要任务是:根据用户的要求和约束条件,分析用户的需求并分解任务,从本地数据库或网络上搜索关键的资源和信息,通过知识库的推导,为用户制定个性化的旅游方案它的主要功能和特点是个性化偏好筛选服务和用户方案的透明性。因此,可以把导游Agent子系统要解决的问题进行分解,即:
①能够替用户搜索本地数据库和互联网上的信息并找出合乎条件的信息,能保证数据的及时性;
②能从用户历次的训练历史中,自动学习模仿客户的偏好,建立用户的模型;
③能从合乎条件的信息中替用户筛选出价值较高的信息,这种筛选应尽量符合客户的个人偏好;
④能根据用户的约束条件和知识库知识,自动分解用户任活动描述系统中各种活动的执行顺序,它实质上也是一种流程,只不过表现的是从一个活动到另一个活动的控制流从4中可以看到4个矩形框,分别代表交互Agent(InterfaceAgent,简称FA)、搜索Agent(se觚IlgAgent,简称sA)、偏好Agent(InterestsAgent,简称)和决策Agent(DecisionAnt,简称DA)4个泳道将所有的活动置于不同的泳道里,这样可以清楚的看出每一个活动是在哪里执行的。
交互Agent负责和用户之间的信息交互,将用户传输入的数据分别分发给内部的其它Agent进行处理,其它Agent给客户的信息也交给客户交互Agent负责显示它是导游Agent和客户间的接口搜索Agent负责分配搜索任务,包括接受搜索任务和传递搜索结果各个导游Agent的管理Agent还有一个重要任务;就是负责在各个搜索管理Agent之间自发地协调子搜索Agent的分配偏好Agent负责用户偏好信息的获取和维护,以及用户模型的建立与维护Agent获取用户偏好有2种途径,被动获取和主动获取被动获取是让用户填写一份偏好信息表,系统将之规格化后存入偏好知识库中主动获取就是指系统根据用户的购买行为,主动捕捉用户的行为倾向,依此修正偏好知识库中现有的偏好知识偏好获取应以主动获取为主,被动获取为辅决策Agent接受交互Agent的用户任务和约束,分析、分解和求解任务,向搜索Agent下达搜索任务并接受结果,再从偏好获取Agent得到用户的偏好数据,并融合子任务形成候选方案集这个推荐方案集可以随时传给交互Agent以供用户查看。
静态建模
静态建模的结果是建立逻辑视,主要包括类和对象等无论是面向对象的分析还是向对象的设计和实现,类都是核心技术类的特点是具有强大的表达能力,因此,它适用于系统分析阶段。
类与类之间的关系有很多种,包括关联、泛化、聚集等在设计类的时候,首先要确定有哪些类,然后分析它们的属性和操作,及其类与类之间的关系,从而最终画出系统的类值得注意的是,通常一个系统不只一个类,要根据实际情况而定画的是与搜索Agent关联的类,中有3个类,分别是用户类、搜索Agent类和搜索结果类这3个类之间是相互关联的关系其中,用户类和搜索结果类都是普通的类,而中间的搜索Agent类则是将UML作了适当的扩展得到的。
将导游子系统的4个Agent用一个类来表示,如果是搜索Agent正在工作,就显示其相应的属性与操作,中所示的属性就是搜索的用户、关键字以及搜索引擎若是其他的Agent正在工作则显示其相应的属性和操作这正是把UML进行了维普资讯。
|