从大的角度来看,审计程序包括风险评估程序、控制测试和实质性程序,同时实质性程序包括细节测试和实质性分析程序。
风险评估程序是为了了解被审计单位及其环境而实施的程序,目的是对财务报表的重大错报风险进行识别,内容:(1)询问被审计单位管理层和内部其他相关人员。(2)实施分析程序。(3)观察和检查。(4)其他审计程序和信息来源。
分析程序是指注册会计师通过研究不同财务数据之间以及财务数据与非财务数据之间的内在关系,对财务信息作出评价。分析程序还包括调查识别出的、与其他相关信息不一致或与预期数据严重偏离的波动和关系。注册会计师实施分析程序有助于识别异常的交易或事项,以及对财务报表和审计产生影响的金额、比率和趋势。在实施分析程序时,注册会计师应当预期可能存在的合理关系,并与被审计单位记录的金额、依据记录金额计算的比率或趋势相比较;如果发现异常或未预期到的关系,注册会计师应当在识别重大错报风险时考虑这些比较结果。分析程序既可用作风险评估程序和实质性程序,也可用于对财务报表的总体复核。分析程序在三个方面进行运用:风险评估程序(强制运用)、实质性程序(选择运用)以及对财务报表整体进行复核(强制运用)。分析程序用在了实质性程序中就是实质性分析程序。
控制测试是指用于评价内部控制在防止或发现并纠正认定层次重大错报方面的运行有效性的审计程序。注册会计师在拟信赖内部控制的前提下,对被审计单位的内部控制进行的测试,目的在于证实内部控制执行的是否有效。作为进一步审计程序类型之一,控制测试并非在任何情况中都需要实施。当存在下列情形其中之一时,注册会计师就应当实施控制测试:(l)在评估认定层次重大错报风险时,预期控制运行是有效的;⑵仅仅实施实质性程序不足以提供认定层次充分、适当的审计证据。在测试控制运行有效性时,注册会计师应当从下列方面获取关于控制是否有效运行审计证据:(1)控制在所审计期间的不同时点是如何运行的;(2)控制是否得到一贯执行;(3)控制由谁执行;(4)控制以何种方式运行(如人工控制或自动化控制)。
实质性程序是为了确定认定层次存在重大错报的审计程序,其中实质性分析程序的本质仍然是分析程序,主要是为执行细节测试提供一定的方向性指导,而细节测试是为了直接确定认定层次存在重大错报的审计程序,也是注册会计师执行审计业务必须要执行的审计程序。实质性程序包括对各类交易、账户余额、实质性分析程序本质上属于分析程序,通过分析财务数据之间以及财务数据与非财务数据之间的内在关系,发现认定层次重大错报,实际上是分析程序在实质性程序中的运用。
细节测试属于实质性程序,其目的是为了直接发现认定层次存在的重大错报,比如函证程序、重新计算等审计程序,就属于细节测试,执行细节测试可以直接发现认定层次是否存在重大错报,比如通过函证程序可以发现和确定应收账款项目存在的错报以及相应的错报金额。