浅谈信息系统审计中的数据分析
吴姗姗(江苏省扬州市邗江区审计局)
【发布时间:2009年10月26日】
字号:【大】 【中】 【小】
    信息系统审计是通过对信息系统的规划、开发、实施、运行、维护等一系列过程进行“穿越审计”,以评价、确定信息系统的运行是否安全、可靠、有效,并审查和评价信息系统得出的数据是否可靠准确以及相关数据的存储过程是否有效。审计机关开展信息系统审计是为了更好的履行其审计监督的核心职能,围绕被审计单位主要经济活动的信息系统进行检查和分析,评估信息系统存在的问题对经济活动的影响程度,以保证审计质量、保证审计实施和促进信息系统对经济活动产生的正面影响。现阶段审计部门审计人员,大都是非计算机专业,如果把审计的重点过多放在程序自身,诸如源代码、模块设计等方面,忽略信息系统对经济业务的影响,只关注信息系统本身,势必将审计人员引入软件开发流程、安全管理等技术层面,偏离审计的经济监督职能,而这些也是审计人员的软肋,就会出现面对信息系统无能为力,难以达到理想的审计效果。因此,紧扣业务流程,对于信息系统产生的数据进行分析,是政府审计人员目前进行信息系统审计的重要方法和手段,是非计算机专业审计人员进行信息系统审计的突破口。
    一、实施数据分析的必要性
    信息系统审计中的数据分析,是指审计人员在充分了解被审计单位的业务流程和信息系统情况的基础上,对被审计单位数据库中的各数据表进行的系统分析。信息系统不同的环节操作会产生不同的表,通过对数据库中表与表之间的关联比较,可以判断每个环节控制是否到位,进而为审计人员审计信息系统自身以及被审计单位的内部控制提供线索。具体来说体现在以下几个方面:
    (一)数据分析可以帮助审计人员理清系统数据结构。通过数据分析可以摸清数据库之间,数据库中表之间和表内字段之间的关系,理解数据结构及数据在系统之间的传输体系,了解被审计单位的实质业务流程和采取的相关控制环节。
    (二)数据分析可以帮助审计人员评估被审计单位的内部控制。通过对同张表的不同字段的分析以及不同表之间的逻辑关系的分析,审计人员可以确定被审计单位各业务流程采取了哪些风险控制措施。这些措施既有内置于应用软件中的应用控制,如业务流程控制、基础参数控制、接口控制等,又包含了对业务管理所采取的综合控制,如职责分离、权限授予等。
    (三)数据分析可以帮助审计人员发现隐含的审计线索。在对数据进行审计评估过程中,通过对相关联的数据表进行数据比对,对发现的不合理差异问题进行分析,找出造成问题的原因,从而发现隐含的审计线索,获得审计证据。
    (四)数据分析可以帮助审计人员轻松发现系统自身存在的问题。系统的数据表中,存在一张表是专门记录系统报错的日志。通过对这张表的审查,审计人员可以了解到系统经常出错的原因,并且深入审查系统自身存在的弊端。
    二、实施数据分析的流程
    数据分析总体来说是遵循由总体到详细、由表间联系到表内联系的审计规则。具体包括如下几个步骤:
    (一)确定目标数据库
    被审计单位的信息系统通常是由多个模块集成,不同的模块满足了不同的业务需求。模块之间保持了各自业务的独立性,通过模块之间的程序接口连接。不同的模块往往在后台对应了不同的数据库,因此我们首先要根据审计目标,确定我们要关注的业务模块,再找到对应的数据库。
    (二)形成数据传输图。
    审计人员应该在审计准备阶段要求被审计单位提供业务流程图、信息系统的总体架构、系统设计开发计划、立项管理文件、可行性分析文件 、开发组织管理文件、委托开发管理文件、系统需求、分析、设计、测试文件、操作手册以及数据字典。根据业务流程和系统设计文档,找出数据库中不同的操作环节对应的不同的数据表。并将数据表名称标注在业务流程图的控制环节旁,形成数据传输图。
    (三)对数据表进行关联分析。
    审计人员在此阶段,可以选取某项数据沿着数据传输图进行跟踪测试,完成信息系统数据输入、处理、输出控制的审计。在业务流程中,各个环节存在关键控制点,而纵观整个流程,业务存在前后时间的制约,对应到数据表中亦是如此。因此进行关联数据表间的比对,关注表与表之间的制约与勾稽关系,则是重中之重。究竟如何进行比对,下文将结合实例详细介绍。
    (四)确定表内字段间的关系。
    审计人员根据审计需要结合数据字典挑选出表内的主要字段,明确主要字段间的依赖关系,明确关键字段的编码规则。由于编码规则直接体现出业务处理流程规则,因此对与字段间的分析直接关系到审计思路的运用。
    三、数据分析重要手段的运用
    上文已经说明审计关联数据表间的比对,关注表与表之间的制约与勾稽关系,是信息系统数据审计的重中之重。在日常的审计实践中,我们可以运用SQL查询分析器,也可以借助我们日常使用的现场审计实施系统,也就是AO系统,对数据库中的各个表进行查询、筛选分析。下面结合一个实例来详细介绍AO系统在数据分析中的运用。
    我们以某财政局的预算执行系统为分析对象,该系统以指标管理为主线,实现了预算指标的分配、调整、追加(减)、用款计划和请款单的填报审核、资金的划拨、账务核算处理等业务操作。在审计准备阶段,审计人员根据被审计单位提供的业务流程图,绘制了数据传输图,确定了需要重点关注的数据表:预算指标表、用款计划表、支付表、凭证表。具体流程图如下:
    
    本例选择的预算指标表、用款计划表、支付表,这三张表对应着用款计划审核、资金的划拨两项重要环节,根据检索结果,查看是否存在超指标拨款,判断信息系统在这两个环节是否遵循指标管理的原则达到有效控制。
    审计人员首先以预算单位分组统计各单位的全年预算指标、用款计划、支付总额。使用查询语句:Select [单位编码],SUM([总金额]) AS 指标金额 into 单位指标表From [业务_预算指标表] GROUP BY [单位编码]。以此类推,分别形成自定义表“单位指标表”、“单位用款计划表”、“单位支付表”。
    再将自定义的“单位指标表”、“单位用款计划表”、“单位支付表”按照单位编码进行全连接生成“预算单位指标计划支付情况表”,再运用查询语句:Select * From [预算单位指标计划支付情况表] WHERE [支付金额]>[指标金额],生成相关记录,即可检索出超预算指标支付的情况。
    审计人员根据这一线索检查信息系统流程设计情况,关注支付审批环节,可以通过询问相关人员,也可以虚拟一笔业务进行测试,看系统支付环节有无设置相关程序控制支付金额只能小于等于指标金额,如果存在上述现象,则证明数据分析结果正确,系统在此环节的程序设计存在缺陷,没有按照业务流程的要求设置相关控制。
    事实证明在充分把握程序控制关键点的情况下,数据分析法是一种行之有效、迅速挖掘系统漏洞的方法。
    四、需要关注的几个问题
    非专业的计算机审计人员实施信息系统审计,运用数据分析方法时需要关注以下几个方面的问题。
    (一)高素质、复合型审计人才是成功实施数据分析的前提。本文所指的非专业计算机人员是指不是计算机专业出生,但经过专业计算机培训熟练掌握相关数据库知识的审计人员,且该部分审计人员具有财务、审计等相关专业背景的高素质审计人才。因为这里的数据分析是基于信息系统数据库中各种表的分析,有存储财务数据的表,也有存储业务数据的表,还有支撑系统功能的各种辅助信息表,因而审计人员不但要掌握相关计算机技术,还有精通审计业务。
    (二)运用数据分析应紧扣业务流程,摸清数据库中各表间的逻辑关系。既要关注业务数据表之间的关系,还要关注辅助信息表之间的关系,只有理清表间的关系,才能理清数据库事务流程是否得到控制。所以在信息系统审计过程中要能抓住主要矛盾,要知道业务流程是数据分析的主线,业务流程中关键控制环节形成的表是数据分析的主要载体,只有这样面对神秘的信息系统才能做到有的放矢。
    (三)数据分析只是信息系统审计中的一种方法,而不是唯一的方法,是针对目前审计机关缺乏高素质专业计算机审计人才,又要满足信息系统审计需求而尝试采用的一种的方法。在现实审计实践过程中,要求审计人员从正面阐述信息系统程序设计的缺陷,是信息系统审计发展的趋势,审计人员需要一针见血的知道系统缺陷在哪里。全面的信息系统审计应是电子数据审计、信息系统审计、系统内部控制审计“三位一体”的结合,因而审计人员应以更全面、更开阔的眼界,对待信息系统审计,拓展信息系统审计思路。



    
【关闭】    【打印】