本站小编为你精心准备了图书馆管理系统需求建模研究参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
【摘要】
本文在对I框架和UML建模机制深入研究的基础上,提出了一种全新的面向Agent的需求建模方法,并通过对图书馆管理系统应用实例的分析来验证该方法在面向Agent系统建模中的可行性。
【关键词】
需求工程;Agent;I框架;UML;AUML;图书馆管理系统
当前人们习惯地将软件的需求工程划分为早期和后期两个阶段,在早期阶段主要是通过非形式化的的方式来实现整个系统的非功能性需求描述,详细的功能性描述往往是在后期阶段进行的。然而目前大多数需求建模技术都过度强调后期需求分析,忽略了早期需求分析,造成了整个软件开发工作的失败。基于此,本文在对I框架和UML建模机制深入研究的基础上,提出了一种面向Agent的建模框架,即在早期和后期两个阶段,分别采用I框架模型和UML建模技术来对系统进行建模。同时,为了保证前后两个阶段的一致性,分别建立了相应的映射规则,实现了两阶段之间的平滑过渡。
1.Agent定义
Agent理论自诞生以来,被广泛地应用于诸多不同领域,在软件需求建模范畴,Agent经常被看成是对象的扩展。然目前学术界对Agent尚未有一个统一的定义,一般认为Agent系统应具备自主性、反应性、主动性、社会性四个基本属性[1][2]。为了在I模型和扩展UML模型之间建立相应的映射规则,首先,本文认为Agent具有目标、能力、信念、资源、服务和行为规则六个方面的基本属性。
2.基于I框架和扩展UML需求建模方法
2.1I框架的基本概念I框架[4]是由多伦多大学EricYU教授等人提出来的,是一种根据策略依赖关系及其原理来理解和重新设计业务处理过程的面向目标的需求建模方法。其基本概念包括三种,分别是行为者、意图元素和意图关系。通过对这三类概念的描述,建立系统策略依赖模型(StrategicDependencyModel,简称SD模型)和系统策略原理模型(StrategicRationaleModel,简称SR模型),将系统中的风险承担者的意图转化成目标系统的功能需求和非功能需求。I框架基本元素的图形化表示方式如图1所示。
2.2基于I框架和扩展UML需求建模方法
2.2.1需求建模框架和需求建模过程需求建模是要明确系统的“what”和“why”方面的问题。本文将建模框架分成两层考虑(如图2所示),在早期需求获取层,我们通过I框架对系统的组织背景、动机和基本原理进行宏观上的描述。在后期需求说明层,我们通过UML来描述系统的功能需求和非功能需求。在此,通过将I框架和UML建模语言的有效结合,形成了更适合于面向Agent系统的建模框架。统一建模语言UML是一种非常成熟的后期需求建模工具,因此我们完全可以使用UML及其扩展机制来实现面向Agent的软件建模,需求建模过程如图3所示。
2.2.2建立系统用例模型和类模型本文分别建立了三条规则来实现从SR模型到用例模型的映射规则(如表1所示)和十条规则实现从I框架模型到类模型的映射。
3.实例分析
下面我们通过对图书馆管理系统应用实例的分析来验证本文提出的基于I框架和扩展UML方法在面向Agent系统建模中的可行性。
3.1建立早期需求模型图书馆自动化管理系统最终目标是要实现图书采访、编目、流通、OPAC查询、管理等等业务环节的自动化。图书馆主要的业务部门包括采编部(负责图书的采访和编目)、流通部(负责面向读者的图书借阅和归还工作)、技术部(负责系统数据库的管理和系统的维护等工作)。系统需要实现的功能可以概括成以下五个方面:(1)OPAC查询功能(读者可以通过网络对借阅信息和馆藏信息进行查询);(2)读者能够借阅和归还图书;(3)流通部处理读者的借阅和归还图书的功能和权限;(4)系统管理员能够实现书目信息的添加、修改和删除(即采购与编目);(5)系统管理员对读者信息进行添加、修改、删除等管理功能。
针对以上描述,我们在早期需求建模阶段可以识别出四个主要行为者:读者、流通部、图书馆管理系统、系统管理员。他们之间的策略依赖模型如图4所示:如图4所示,读者角色要想通过网络查询书籍信息和自己的借阅信息,首先要登录系统,因此读者和图书馆管理系统存在三个任务依赖关系(登录系统、查询书目信息、查询借阅信息)。读者需要通过流通部图书管理员的处理来实现借阅和归还图书的目标,因此,读者与流通部之间存在任务依赖(借书、还书),同时,要想成功借阅图书,依赖的是图书馆的图书资源同时要保证所要借阅的图书处于可借阅状态,因此读者与流通部之间存在软目标依赖(图书可借)和资源依赖(图书资源)。而流通部与图书馆管理系统之间存在着任务依赖(登录系统、更新库存)和目标依赖(图书流通)。书目信息的添加、修改和删除与读者信息添加、修改、删除等业务功能统一概括为数据库管理和维护,由系统管理员来完成。因此系统管理员与图书馆管理系统之间存在着软目标依赖(可靠性、安全性)和目标依赖(数据库管理)。我们通过I框架的策略依赖模型对图书馆管理系统各角色(图书馆管理系统、读者、流通部和系统管理员)之间的依赖关系进行了描述,却并没有涉及到角色内部的意图关系。要想对系统依赖原理作出更加详细的描述需要借助策略原理模型来完成。I建模框架的策略原理模型由I节点和I链组成。在识别出系统的行为者和它们的目标后,我们就可以通过I链来分析这些目标是怎样被满足的。在对读者、流通部、图书馆管理系统和系统管理员四个系统角色分别进行分析推理的基础上,建立图书馆管理系统的策略原理模型。
如图5所示,图书馆管理系统角色被细分为流通、书目、数据库管理和读者信息四个子角色。其中流通与书目之间存在着查询书目和更新库存两个任务依赖;流通与读者信息之间存在着更新借阅信息和查询借阅信息两个任务依赖;数据库管理与书目之间存在着添加书目、删除书目和修改书目三个任务依赖;数据库管理与读者信息之间存在着添加读者信息、删除读者信息和修改读者信息三个任务依赖。而对于流通部角色,其主要任务就是流通处理,流通处理任务又被分解为借书处理、还书处理和维护库存三个子任务,通过任务分解关系来连接,其中借书处理是针对读者的借书请求的响应操作,而对于还书处理任务,在作出响应之前,必须满足软目标(缴清超期罚款),通过方式-目的关系来连接。
3.2后期需求规格说明根据上文所建立的映射规则可得出系统用例图,如图6所示。继建立了用例模型之后工作就是建立Agent类模型。基于本文对Agent的定义和从I框架模型到UML类模型的映射规则,建立Agent类模型,如图7所示。如图7所示,根据映射规则一,可以得到流通部、读者、图书馆管理系统、系统管理员、读者信息、书目、流通、数据库管理八个Agent类;由映射规则二得出流通部类、读者类、系统管理员类与图书馆管理系统类之间都存在着合作关系;由映射规则三得出读者信息类、书目类、流通类、数据库管理类与图书馆管理系统类之间都存在着聚合关系;由映射规则四,角色之间的任务依赖体映射为被依赖Agent类的一个公有方法,定义了每个Agent类的能力(capability),如书目类的查询书目、更新库存、添加书目、删除书目和修改书目;由映射规则五得到每个Agent完成任务需要的动作(action),如流通部类的流通处理、借书处理等动作;根据映射规则六和规则七得到Agent的目标(goal),即目标依赖的依赖体;由规则八和规则九得到Agent的软目标(softgoal),即软目标依赖的依赖体;最后由规则十资源依赖体映射为类图中的实体类,得到图书资源类。另外,每个类图中添加了belief和behaviorrule两个默认属性,用于表示Agent的信念和行为规则。
作者:罗伟 曹路舟 单位:黄山学院图书馆 池州职业技术学院信息技术系