UML(Unified Modeling Language)是由闻名世界的面向对象技术专家Grady Booch·jim Rumbaugh和Ivar Jacobson发起,在此前的Booch方法、OMT方法和DOSE方法的基础上完成的。1997年11月17日,被OMG采纳为基于面向对象技术的标准建模语言。UML的重要性在于知识表示方面,它提供了一系列标准化的图形符号,融入了软件工程领域的新思想、新方法和新技术。UML包括五类图(共10种图形):即用例图、静态图(类图、对象图、包图)、行为图(状态图、活动图)、交互图(时序图、协作图)和实现图(组件图、配置图)。其中,用例图从用户角度出发描述了系统的功能、需求,能展示系统外部的各类角色与系统内部的各种使用案例之间的关系;时序图显示对象之间的动态合作关系,强调对象之间消息发送的顺序,同时显示对象之间的交互。 一、UML业务流程图在审计中的应用举例 现举例说明该UML的应用: (一)UML用例图举例
我们以某企业货币资金内控管理过程为例,货币资金收支与编制记账凭证分离(即出纳不得编制记账凭证),空白支票与印章保管分离,银行对账单取回、余额调节表编制与复核分离等等。可以将岗位分离制用UML用例图表示。当然在具体运用中,应结合本单位实际情况,根据成本与效益原则设计各控制岗位,如图1企业固定资产管理情况用例图。 审计用UML用例图绘制可以突出表示出各类角色具体工作,该角色与系统内部的各种使用案例之间的关系,那么判断某个角色是否存在不相容职务于一体,判断是否存在舞弊、欺诈等内控牵制失效就容易多了。从图中我们可以看出,该企业货币资金内控职责分工较好,经办人、部门经理、出纳、财务总监和会计各自独立并能合作完成货币资金付款工作。UML用例图提供了业务处理过程的人与业务之间、人与人之间的关联图谱,我们在具体审计当中还可以进一步分析内控业务涉及的人与人之间的非公关联关系,追溯舞弊审计的关键点。 (二)UML泳道活动图举例 内部控制规章制度执行落实在程序上,在《内部会计控制规范-货币奖金(试行)》中的第十条指出,单位应当按照规定的程序办理货币资金支付业务。包括支付申请、支付审批、支付复核等要讲求程序的先后顺序,而且要职责的分工明确。 UML时序图能按时间前后顺序反映业务处理的程序过程,审计人员可以在充分考虑货币资金业务的内部控制点的基础上,提炼出业务要点,如图2时序图所示。
二、在内控审计中应用UML统一建模语言的优点 货币资金具有流动性强、业务量大等特点,这决定了它比较容易发生舞弊的行为,尤其在作为流通手段和支付手段时,容易被贪污、挪用、盗窃。而且大部分的经济业务都需要通过货币资金的收付来实现。一般说来,货币资金的风险来自于企业日常经营的供应风险、生产风险和销售风险,因此评价货币资金的内部控制制度,确定货币资金的控制风险水平就更加重要了。传统业务流程图法是一项在审计工作中评价内控应用广泛的方法,但是它也有缺点:编制流程图需具备娴熟的技术和花费较多的时间,对内部控制的某些弱点有时很难在图上明确地表达出来。更重要的是,传统业务流程图法是结构化的语言描述,这一缺陷在应对舞弊审计显得无能为力。将UML统一建模语言引进到审计工作中,很清晰、直观地反映被审计单位内部控制制度中的经济业务处理程序和关键控制点,特别是它能针对特定“人物”职责来确认审计重点,便于初审计人员轻松地对被审计单位货币资金舞弊内控薄弱环节进行初步评价。 UML建模语言较传统业务流程图具有如下几个优点: 第一,UML用例图以用户为对象,利于分析货币资金“职责分工”内控风险。在我国,内部控制的理论研究与实践管理在不断发展和完善。1999年修订并于2000年7月1日起正式实行的《会计法》,对单位内部会计监督提出了明确的四项要求(职责明确、相互分离、相互制约、相互监督);2001年6月,财政部颁布《内部会计控制——基本规范(试行)》和《内部会计控制规范一货币资金(试行)》,明确了单位建立和完善内部会计控制体系的基本框架和要求,以及货币资金内部控制的要求;2002年底至2003年,财政部陆续发布了《内部会计控制规范——采购与付款(试行)》、《内部会计控制规范——销售与收款(试行)》等规章性文件;2004年又陆续分布了《内部会计控制规范——对外投资(试行)》、内部会计控制规范——成本费用(征求意见稿)等规章性文件。在所有的财政部颁布的内部会计控制规范中都强调指出“职责分工”的重要意义。在《内部会计控制规范——货币资金(试行)》中的第六条指出,单位应当建立货币资金业务的岗位责任制,明确相关部门和岗位的职责权限,确保办理货币资金业务的不相容岗位相互分离,制约和监督。出纳人员不得兼任稽核、会计档案保管和收入、支出、费用、债权债务账目的登记工作。单位不得由一人办理货币资金业务的全过程。第二十四条中指出,货币资金监督应重点检查是否存在货币资金业务不相容职务混岗的现象。职责分工客观要求内部控制流程图要突出评价“特定用户”职能。UML是面向对象统一建模语言,其用例图(Use Case)是面向用户角度描述了系统的功能、需求,能展示系统外部的各种角色与系统内部的各种使用案例之间的关系。而传统内部控制流程图是面向结构的描述方法,无法突出描述“特定用户”职能。使用UML用例图可以清晰描述职责分工,用例“小人”可以告诉我们是谁,他担任什么样的职务,他的职务和其他什么样的职务应当分开。这样更容易预防和及时发现履行各种职责时所形成的舞弊行为。