资源描述:
《软件工程学专业论文润色》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、软件工程学专业论文润色面向Agent的软件工程方法学摘 要:软件Agent技术正在成为软件开发领域中一个新的发展方向,现在大多数的Agent研究都是以创建Agent应用程序为目标,即用Agent的概念创建更为强大,更具灵活性和智能性的程序。但是随着Agent技术在各种应用中的发展和成熟,就需要在方法论上对之进行指导。因此,面向Agent的软件方法学就成为Agent研究中最活跃的一个研究领域之一。本文通过对几种在面向Agent软件工程中使用的主流方法学进行分析,指出了Agent方法学在面向Agent软件系统开发中的重要性。与此同时,通过对面向对象和面向Agent的方法学比
2、较,指出现有的面向对象方法学的一些不足,以及如何通过面向Agent的概念进行改进。关键词:Agent,软件工程,面向对象AgentOrientedSoftostoftheresearchesofAgentaimatbuildingtheAgentapplications.eanethodologybyparingtheAgent-OrientedmethodologyethodologyandhoproveObject-OrientedmethodologyunicationLanguage)进行通信,也就是说Agent描述的是一种群体智能[3]。Agent与对象的不同
3、导致了我们在设计Agent软件时要采取与面向对象的分析设计截然不同的方法。应用面向对象的方法学,我们无法对Agent的心智构件信念、愿望和意图进行建模。此外,面向对象的方法学也没有提供对Agent的推理和规划过程来进行建模的工具,没有对如何给Agent之间的群体关系(组织结构关系)建模来进行定义。因此,有必要针对Agent系统开发的需求,发展新的软件工程方法学来分析、设计面向Agent的软件系统。3 面向Agent的方法学目前由于对Agent定义的多种多样,因此建立的Agent模型各不相同,这便导致了面向Agent的方法学也多种多样。这部分将分别介绍几种具有代表性的方法
4、。3.1 Gaia方法学Gaia方法学是AS结构会有很大的帮助。3.2 AMTS(AgentModelingTechniqueforSystemsofBDIAgents)AMTS方法学[5]从内部和外部两个层次对BDIAgent建模。从外部的观点看,系统可以分解为多个Agent,并且它们之间可以相互交互。这些可以由两个模型来得到,Agent模型和交互模型。Agent模型描述了抽象Agent和具体Agent之间的层次关系;交互模型描述了Agent类的职责,它提供的服务以及Agent类与外部系统之间的相关联的交互和控制关系。其中包括了用在Agent之间和Agent与其他系统
5、部件(用户界面)之间通信的消息语法和语义。从内部观点看,可以把BDIAgent类分为三个模型。他们分别是信念模型、目标模型,规划模型。信念模型描述了关于环境和其内部状态的信息;目标模型描述了一个Agent可以采纳的目标和它对事件的反应;规划模型描述了Agent为了达到它的目标而做的规划。在外部观点的发展过程中,从应用领域的角色确定开始,确定Agent并且把它们划分到一个用类似OMT(ObjectModelingTechnique)符号描述的Agent类的层次中,接下来就可以确定与每个角色相关的职责并且提供和履行职责的服务,这些服务有可能包含与外界环境和用户有关的交互。然
6、后是确定与服务有关的交互以及每次交互的言语行为和信息的内容。最后这些信息被收集在一个Agent实例模型中。内部观点始于为了达到一个目标而采用不同方式(规划)的分析。可以用图表符号的方式把对事件做出的反应或者要达到目标的规划表现出来。不过要对规划失败的可能性做出备注。最后,对于环境中对象Agent的信念可以用OMT的符号进行建模和表示。3.3 Tropos方法学Tropos方法学[6]建立在两个关键的特征上:(i)在软件开发过程中使用了代理(Agent)、目标(Goal)、规划(Plan)、资源(Resource)和其他不同知识层次的概念等基本原语。(ii)在分析与将来系
7、统有关的环境时,Tropos把需求分析和规格说明作为一个关键的部分来看待。Tropos中采用了[7]中i*框架中的战略依存模型(StrategicDependencyModel)。这个模型把参与者(Agents,Roles,Positions),目标(Goal)和参与者之间的依存关系(ActorDependency)作为在需求工程早期阶段建模的原始概念。参与者(Actor),我们可以把它看作是有战略目标和战略意图的实体。它可以是一个现实世界中的Agent,如:人、动物、汽车等;或者是一个软件Agent。一个角色可以看作是在相关范围内一个参