在信息技術向人們工作、生活的每一個角落發起全面沖擊的大潮中,對每個行業都帶來了革命性的變革。為適應這種變革,企業、單位、政府機構等都投入了大量的人力、物力資源構建復雜的信息系統來提高工作效率 ,完善工作管理。企業構建的是 MIS、ERP、CRM 等系統 ,主要追求的是經濟效益 ,政府等機構和組織構建的是電子政務系統(G2B、G2C),主要追求的是社會效益。
對于這些信息系統是否能實現業務、管理的需求 ,真實的反應整個業務、管理過程 ,并能夠適應各種需求的變化 ,最終實現所要追求的經濟和社會效益 ,需要對信息系統生命周期中的某些或者全部過程進行評介 ,即通過信息系統審計的過程 ,對信息系統的真實、合法、有效進行審計和評價。
軟件工程正是構建這些復雜信息系統的工程理論基礎。因此從軟件工程的視角來進行信息系統審計的實踐有著必要性和必然性。
1 軟件工程和信息系統審計的介紹
軟件工程是一門研究用工程化方法構建和維護有效、實用和高質量的軟件的學科 ,它著重研究和應用如何以系統性的、規范化的、可定量的過程化方法去開發和維護軟件 ,以及如何把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來。軟件工程包括需求分析、設計、實現、測試和維護等過程。
信息系統審計(Information Systems Audit,ISA)是一個過程 ,在此過程中審計人員搜集和評估證據以確定信息系統和相關資源是否充分保護資產、維持數據和系統完整性、提供相關和可靠信息、有效實現組織機構目標、有效地使用資源、包含有效內部控制以提供運營和控制目標得到滿足的合理保障(國際信息系統審計協會 ISACA 的標準定義)。
信息系統審計的目標更加注重于從信息資產的安全性、數據的完整性以及系統的可靠性、有效性和效率性等方面出發 ,對信息系統從開發、運行到維護的整個生命周期過程進行全面審查與評價 ,以確定其是否能夠有效可靠地達到組織的戰略目標 ,并為改善和健全組織對信息系統的控制提出建議。
2 軟件工程對信息系統審計的助力
1)兩者研究的內容高度重合。信息系統審計主要有 6 方面的內容 ,包括信息系統審計程序 ;IT 治理(信息技術治理);系統和基礎建設生命周期管理 ;IT 服務的交付與支持 ;信息資產的保護 ;災難恢復和業務連續性計劃。
軟件工程研究的內容涵蓋軟件的技術方法、軟件工程管理 ,具體為在定義、開發、運行和維護三個階段中的技術管理、工程管理各階段的工程質量實現。軟件工程研究的內容包含在信息系統審計內容中重要的后4 項。
2)兩者的目標有一致性。信息系統審計的目標是通過對信息系統的審查 ,評價系統的真實性、合法性、有效性 ,發現信息系統在使用和管理過程中存在的問題 ,確定是否存在漏洞和缺陷 ,有無非法和錯誤的處理和控制的薄弱環節 ,客觀評價系統的現狀 ,促進被審計單位進一步加強信息系統管理 ,完善信息系統功能 ,保證和完善各項流程 ,防范利用計算機系統進行欺詐與舞弊 ,并提出具有建設性的建議。
軟件工程的目標是在給定成本、進度的前提下 ,開發出具有適用性、有效性、可修改性、可靠性、可理解性、可維護性、可重用性、可移植性、可追蹤性、可互操作性和滿足用戶需求的軟件產品 ,盡量減少軟件在運行過程中的漏洞和缺陷。追求這些目標有助于提高軟件產品的質量和開發效率 ,減少維護的困難 ,提高信息系統的效益。兩者的目標具有一定的一致性。
3)軟件工程定義的標準、規范為信息系統審計部分審計事項的評介提供了參考。
軟件工程過程主要包括開發過程、動作過程、維護過程 ,在這些過程中都有著明確的規則、規范、要求以及需要達到的質量標準。在信息系統審計過程 ,通過材料和證據的收集 ,可以參考軟件工程的標準 ,對審計事項發表審計評價。
如對信息系統的工程管理質量發表評價時可參考軟件工程軟件管理的理論(如 ISO9000 質量體系、CMM 能力成熟度模型等)。
4)軟件工程為信息系統審計提供了審計方法和手段。在信息系統審計過程中 ,需要收集材料和數據 ,進行符合性和實質性審計測試。這一過程需要有一定的審計方法和技術手段 ,而軟件工程正好可以提供。
如對信息系統所運行的業務流程進行真實性、完整性的符合性測試 ,可通過審計技術文檔 ,重構軟件工程需求分析階段的實體關系圖、數據流圖、數據字典的方法進行。如對信息系統所運行的業務流程進行真實性、完整性的實質性測試 ,可通過使用軟件工程軟件測試階段的各種測試方法(如靜態、動態測試 ,白盒、黑盒測試、并行模擬等)進行。
3 審計項目實踐
在 2013 年對《XX 物流監管系統》進行信息系統審計過程中 ,審計小組正是利用軟件工程理論對整個系統的建設、實施、運行和維護過程進行了審計。主要審計成果如下。
1)工程建設管理。根據軟件工程的要求 ,收集各階段的管理和技術資料。在此過程中 ,發現存在資料缺失、版本管理控制不足、某些必須的開發階段被忽略 ,形成不符合相關法規和工程管理、技術上的問題及風險。
2)應用系統一般控制和個別控制。在對應用系統的一般控制審計時 ,主要對組織控制、人員職權職責的分配與分工及資源掌控、多系統互聯及數據傳輸等方面進行了詳細審查 ,發現了涉及用戶管理權限、人員背景調查、保密管理、數據傳輸控制不足等方面的不足與漏洞。
在對應用系統的主要模塊物流調撥模塊進行個別控制審計時 ,使用了軟件工程中的各種測試方法 ,對程序和數據進行了審計 ,發現了物資備案、調撥過程控制等業務方面的管理、控制不足 ,使部分無備案無審核的物資調撥得以進行 ,或者實際調撥數與申報數發生差異。
3)數據資產保護和業務連續性。根據軟件工程對軟件維護階段的標準和要求 ,對系統的數據保護方案和業務連續性計劃與實施進行審查 ,發現有單點故障、業務連續性計劃不足、方案和計劃實施不充分、無實際演練計劃等問題和風險。
4 總結與展望
本文閘述了軟件工程與信息系統審計之間的關系 ,通過一個實際審計項目實例 ,展示了如何利用軟件工程的相關理論 ,從軟件工程的視角來看待信息系統審計 ,并具體實施審計實施。
一方面提高了信息系統審計中的規范性、操作性、可控制性和效率性 ,有利于審計項目的管理和審計項目質量的提高 ,降低審計風險 ;另一方面軟件工程為信息系統審計提供了方法論和實用工具 ,拓寬和深入了信息系統審計的范圍和深度 ;最重要的是為信息系統審計中的審計事項提供了審計評價標準、規范和參考等。
參考文獻
[1]計算機科學技術百科全書(第二版)[M].清華大學出版社,2005.
[2]張金城.信息系統審計[M].清華大學出版社,2009.