שווה זהב: כריית תהליכים (Process Mining) – טכניקת ביקורת להערכת בקרות פנימיות בתהליכים עסקיים

בחינת הבקרות הפנימיות בארגון בכלל ובתהליכים עסקיים בפרט הייתה ונשארה אבן היסוד בעבודת המבקר הפנימי. תהליכים עסקיים רבים בארגון מתבצעים כיום במערכות ממוחשבות, ומורכבותם, במיוחד בארגונים גדולים, מקשה על יכולת המבקר לבצע עליהם ביקורת אפקטיבית ללא אמצעים ממוחשבים.

פיתוח טכנולוגיית כריית התהליכים (Process Mining) לניתוח ניהולי של התהליכים[1] עורר התעניינות מחקרית רבה ביכולות השימוש של הטכנולוגיה הזאת גם ככלי בקרה המזהה, בין היתר, הפרות אבטחת מידע[2], ולאחרונה אף ככלי לביקורת פנימית לניהול סיכונים[3], לזיהוי הונאות ומעילות[4] ולשימוש ככלי כללי לביקורת תהליכים עסקיים[5]. מהתוצאות המעודדות של המחקרים נראה כי כריית תהליכים עשויה להצטרף לארגז הכלים הממוחשבים של המבקר ולהרחיב את יכולותיו.

למאמר זה שני חלקים: בראשון אציג את טכנולוגיית כריית התהליכים ואמחיש באמצעות דוגמה כיצד ניתן להסתייע בה בביצוע ביקורת של תהליכים עסקיים. בחלק השני אבחן כיצד משתלבת כריית התהליכים במסגרת טכניקות הביקורת הממוחשבות (CAAT) הקיימות.

מהי כריית תהליכים?

כריית תהליכים היא שיטה מממוחשבת לניתוח והבנה של תהליכים עסקיים מורכבים הפועלים בארגון. כתת-תחום של טכנולוגיית כריית נתונים, גם היא עוסקת באלגוריתמים לגילוי חוקיות וחריגים במאגרי נתונים, אולם ממוקדת בכאלה המתאימים לניתוחי התהליכים בארגון. הצורך בכריית תהליכים נובע מהכרה הולכת וגוברת של הנהלות בחשיבותם של תהליכים עסקיים איכותיים להצלחת הארגון, בה בשעה שהן מתקשות במקרים רבים לזהות ולהעריך כיצד תהליכים אלו פועלים הלכה למעשה[6].

במערכות ממוחשבות מתקדמות המשמשות לביצוע תהליכים עסקיים בארגון, כגון מערכות ERP, CRM וכדומה, קיימים "יומני אירועים" (קובצי log) המתעדים באופן כרונולוגי את הפעילויות שבוצעו. יומנים אלו מנהלים לכל מופע (Instance), כלומר מקרה פרטי של תהליך עסקי כלשהו, מידע הכולל בין היתר את פירוט האירועים (events) שבוצעו על ידי המשתמשים במסגרתו. לדוגמה: הפקת תעודת משלוח או תשלום, את שם המבצע (originator) בכל אירוע ואת פרטי זמן ההתרחשות (timestamp). באמצעות הפעלת אלגוריתמים ממוחשבים לתחקור יומן האירועים, ניתן לנתח מה אירע במערכת וכיצד בוצעו התהליכים העסקיים וכן לזהות מקרים חשודים הדורשים חקירה לעומק.

לניתוח יומן אירועים של מערכות קיימת חשיבות רבה למבקר: היומן אינו מוזן על ידי המשתמש אלא נרשם אוטומטית, והוא מספק "נתיב ביקורת" (Audit Trail) מהימן. זאת ועוד, כריית התהליכים מאפשרת לנתח את ההיבט הדינמי של התהליך, כלומר את מסלול האירועים שלו, וכך לבחון את חוזקן של הבקרות הפנימיות המשתרעות על פני כל התהליך (Process Level Control), כגון הפרדת תפקידים ואכיפת סדר אירועים מסוים בתהליך (לדוגמה, אפשרות תשלום בגין חשבונית ספק רק לאחר קבלת הטובין).

אף שבכל תהליך מוגדר מסלול אירועים נורמלי, המערכות עדיין מאפשרות, ובצדק, גמישות רבה לשינוי מסלול זה. לדוגמה: בתהליך רכש אנו מצפים למסלול פעילויות הכולל הזמנת רכש, קבלת טובין למחסן וקבלת חשבונית ספק, אולם המערכת עשויה לאפשר במקרים מסוימים קבלת טובין ללא הזמנה כדי שלא ייגרמו עיכובים בייצור בעקבות אי קבלת חומרי הגלם הדרושים. כתוצאה מהגמישות המובנית של התהליכים ייתכן שיתרחשו מקרים הנוגדים את כללי הארגון, ועל המבקר הפנימי לזהות מקרים אלו ולבחון אותם.

דוגמה: כריית תהליכים בביקורת בבנק אירופי

כדי להמחיש את טכניקות כריית התהליכים ואת יישומיהן לביקורת, אביא דוגמה מתוך מחקר שטח שנערך בבנק אירופי מוביל שבמסגרתו נותח תהליך הרכש הפועל במערכת ה-ERP SAP[7]. המסלול הנורמלי של התהליך בבנק מוצג בתרשים 1 שלהלן.

תרשים 1: תהליך רכש בבנק אירופי מוביל. מקור:Jans et al. (2011)

התהליך מותנע עם יצירת הזמנת הרכש (1) שלאחריה נדרשת חתימה (2) ושחרור (3) משני מאשרים שונים. שלבי קבלת הטובין (4) וחשבונית הספק (5) יכולים להתבצע במקביל, אולם התשלום (6) מתבצע לאחר סיום של שניהם. מסלול התהליך הנורמלי המוצג בתרשים אינו בלעדי והוא גמיש לשינויים: לדוגמה, ניתן לשנות את הזמנת הרכש לאחר הפקתה, אבל אז תידרש חתימה חוזרת ושחרור חוזר. כמו כן, טובין יכולים להתקבל לשיעורין בכמה משלוחים, ובאותו אופן יכולה להתקבל יותר מחשבונית אחת.

כריית התהליכים בוצעה על יומן האירועים (log) של מערכת ה-ERP הבנקאית תוך התייחסות רק למופעים של התהליך שהושלמו עד סופם, כלומר כשסולק מלוא התשלום בגין הרכש – סך הכול כ-26 אלף מופעים. הניתוחים כללו את סוגי האלגוריתמים הבאים:

גילוי התהליך ((Process Discovery  

מטרת אלגוריתם זה היא ללמוד כיצד מבוצע התהליך בפועל במופעים השונים ולזהות את אלה החורגים מהדגם הנורמלי שלו.

בשלב הראשון מזהה האלגוריתם את הנוסחים (variants) השונים של התהליך, כלומר את המסלולים השונים שבהם הוא התבצע בפועל. לדוגמה, נוסח נורמלי של התהליך הוא: יצירת הזמנת רכש ß חתימהß  שחרור  ß קבלת טובין ß קבלת חשבונית ß תשלום. בניתוח נמצאו 304 נוסחים שונים כאשר הנוסח הנורמלי הנ"ל בוצע רק ב-45% מהמופעים.

ניתוח הנוסחים באופן ויזואלי או באופן ממוחשב מאפשר לזהות כאלה המפרים את כללי התהליך ועלולים להוות סיכון. לדוגמה, באחד הנוסחים שנמצא בכ-12% מהמופעים, מיד לאחר יצירת הזמנת הרכש בוצע "שחרור" בלי שבוצעה "חתימה". אפשרות לקיום נוסח כזה בתהליך עלולה להצביע על חולשה בבקרה הפנימית ואולי אפילו על ניצול לרעה של חולשה זו. בבדיקה שנערכה התברר כי על פי החוקים, בתנאים מסוימים אכן לא נדרשת חתימה. בהמשך נראה כי קיימת דרך לבצע ניתוח נוסף שיבחן האם כל המופעים שבנוסח זה אכן עמדו בתנאים הדרושים.

דוגמה נוספת: בנוסח אחר שנמצא חסרה הפעילות "קבלת טובין" ולמרות זאת בוצע תשלום. מצב זה קביל רק כאשר מדובר בהזמנת שירות (ובדרך כלל גם יידלק אינדיקטור לסוג הזמנה זה). לכן בהמשך נדרש לבדוק את המופעים שזוהו בנוסח זה ולוודא שאכן בכך מדובר.

הנוסחים ה"מעניינים" ביותר למבקר הם אלה שתדירותם נמוכה. לדוגמה, בניתוח נמצאו שלושה מקרים שבהם, במפתיע ובניגוד לחוקים, הזמנת הרכש בוצעה גם ללא חתימה וגם ללא שחרור. חריגים אלה הועברו למנהלי המערכת לבדיקה כיצד הדבר התאפשר במערכת.

ניתוח תפקידים (Role Analysis)

מטרת ניתוח זה היא להבטיח כי לא הייתה בתהליך הפרה של חוקי הפרדת התפקידים. בבנק האירופי נמצאו 272 עובדים שונים שהשתתפו ב-26 אלף המופעים של תהליך הרכש. כאשר מספר העובדים גדול, העובדים מבצעים כמה תפקידים במקביל וקיימת תחלופה דינמית בתפקידים. לכן גם כאשר הרשאות השימוש מנוהלות במסגרת מערכת הERP-, ההקפדה על הפרדת תפקידים נאותה איננה פשוטה.

בשלב הראשון של ניתוח התפקידים על המבקר להגדיר מהן קבוצות האירועים בתהליך שאסורות לביצוע על ידי עובד מסוים. בתהליך הרכש בבנק הוגדרו כדורשות הפרדה שלוש קבוצות אירועים: (1) החתימה והשחרור של הזמנת הרכש. (2) קבלת חשבונית וקבלת טובין. (3) שחרור הזמנת רכש וקבלת טובין.

חיפוש ההפרות בתהליך בוצע באמצעות הפעלת אלגוריתם מבוסס לוגיקה עתית לינארית (linear Temporal Logic), ומתוך כל 26 אלף המופעים לא נמצאה כל הפרה של הפרדת תפקידים בקבוצות 1 ו-2, אולם ביחס לקבוצה 3 נמצאו 175 מקרים של הפרות שבהן מעורבים שלושה מבצעים: אחד מהם לבדו מעורב ב-129 מקרים. ממצאים אלה דורשים בדיקה ותיקון של הגדרת מערכת ההרשאות.

ניתוח הרשת החברתית (Social Network Analysis)  

אלגוריתם חדשני זה משלים את ניתוח התפקידים בכך שהוא מציג בתרשים קשרים בין מבצעים המעורבים באותו מופע של התהליך. ניתוח הרשת החברתית מאפשר לזהות כיצד אנשים בארגון קשורים זה לזה במסגרת הפעילות העסקית, ולנסח תובנה על המוטיבציה והמשמעות של פעילותם. כיישום ביקורת מאפשר האלגוריתם לזהות מצבים חריגים של קשרים הדורשים חקירה מעמיקה יותר. לדוגמה, באמצעותו ניתן לזהות מקרים שבהם מופעים של התהליך מבוצעים בקביעות על ידי קבוצת עובדים קטנה המובחנת מיתר העובדים שמשתתפים בשאר המופעים. מקרים אלה, הגם שאינם מהווים בהכרח הפרה של הפרדת תפקידים, עלולים להצביע על קיום קנוניה ולכן מחייבים בהמשך הביקורת חקירה לעומק.

ניתוח מאפיינים ( Attribute Analysis)

ניתוחים אלו אינם מתמקדים במסלול הפעילויות או במבצעים בלבד, אלא במשולב עם מאפיינים אחרים של הפעילויות שעשויים להיות מתועדים ביומן התנועות עצמו או בטבלאות מסד הנתונים של המערכת. באמצעות מספר מזהה של כל אירוע, יכולה תוכנת הניתוח לקשר בין נתוניו ביומן לבין המאפיינים שלו כפי שהוזנו במסד הנתונים.

באמצעות ניתוח מאפיינים ניתן לבחון יותר לעומק את חוזקה של הבקרה הפנימית. לדוגמה: כזכור, באמצעות אלגוריתם הגילוי נמצא שב-12% מהמקרים להזמנת הרכש לא בוצעה חתימה אלא רק שחרור. מקרים אלה כללו נוסחים שבהם נתוני הזמנות שונו ללא ביצוע חתימה חוזרת. על פי נוהלי הבנק לא נדרשת חתימה חוזרת אם סכום ההזמנה הוא עד 12,500 אירו ובוצע בה שינוי בגובה של עד 5% מהסכום המקורי, או שסכום ההזמנה הוא 125,000-12,500 אירו ובוצע בה שינוי של עד 2%.

באמצעות ניתוח המאפיינים "סכום נטו" ו"סכום השינוי" של ההזמנות, הנמצאים במסד הנתונים בטבלת ההזמנות, נבדקו כל המקרים שבהם לא בוצעה חתימה ונמצאו 77 מקרים של חריגה מהנוהל. מקרים אלו הועברו לבחינה מדוקדקת.

לסיכום, במחקר השטח בבנק הצליחה כריית תהליכים על יומן האירועים של מערכת ה-ERP לאתר באופן אוטומטי הפרות של הפרדת תפקידים והיעדר אישורים וחתימות הדרושים להזמנת רכש שלא זוהו קודם לכן על ידי המבקרים הפנימיים בשיטות המסורתיות.

שילוב כריית תהליכים עם טכניקות ממוחשבות אחרות לביקורת תהליכים

הצגת טכניקת ביקורת ממוחשבת חדשה מעלה באופן טבעי את השאלה כיצד היא משתלבת עם כלי הביקורת הממוחשבים הקיימים ולאילו משימות ביקורת מתאים כל כלי. בפרק זה נסקור בקצרה את הכלים העיקריים התומכים כיום בביקורת תהליכים עסקיים: ביקורת מתמשכת Continuous Auditing)) וכן ניתוח ותִחקור נתונים ((Data Analysis, ונבחן כיצד כריית התהליכים משתלבת עם כלים אלה.

ביקורת מתמשכת וכריית תהליכים

ביקורת מתמשכת מבוססת על תוכנה שסורקת ומנטרת באופן קבוע ואפילו בזמן אמת את הפעילויות המתבצעות במערכות רגישות בארגון, וכאשר היא מזהה בתוך כך אירועים חריגים או פעולות שבוצעו ונרשמו במערכות הארגון שלא על פי נהלים היא מיד מעבירה דיווח על כך למבקר[8]. בין היתר, התועלת במערכת זו היא קיצור פרק הזמן של הבאת אירועים חריגים למודעוּת הביקורת ולטיפולה[9]. סביב תפיסת הביקורת המתמשכת התפתח פולמוס עקרוני. יש שהתנגדו לשימוש בטכנולוגיה זו ככלי של הביקורת הפנימית בשל  החשש שהשימוש יהפוך את המבקר לאחראי דה פקטו על הבקרה המתמשכת על טיב הפעולות, במקום שהאחריות תוטל כנדרש על ההנהלה. לעומת זאת, המצדדים בביקורת מתמשכת מדגישים כי אין הכוונה שהמבקר יחליף את המנהלים באחריות לבקרה השוטפת של הפעילות בגזרתם ושהמבקר יתערב בכל חריגה או כשל, אלא המטרה היא שהמבקר יוכל להפעיל את שיקול דעתו לביצוע ביקורת במקרים שבהם תוכנת הביקורת המתמשכת תזהה הצטברות של כשלים וחריגות בנושא מסוים. למרות הבעייתיות המסוימת בשימוש המשותף של ההנהלה ושל הביקורת, העניין בביקורת המתמשכת הולך וגובר[10].

בדומה לביקורת מתמשכת, גם כריית תהליכים מזהה כשלים וחריגות, אולם ברמת כלל התהליך ולא ברמת אירוע. בשונה מתפיסת הביקורת המתמשכת, אין בכריית תהליכים דגש על תכיפות עריכתה וסמיכותה למועד האירועים הנבדקים.  היא מבוצעת על נתונים היסטוריים שנגזרים באופן תקופתי מהמערכת הנבדקת, ונערכת בסביבת מחשבים נפרדת ובלתי תלויה, כגון מחשבו האישי של המבקר, ולכן אין עוררין על התאמתה ככלי לעריכת ביקורת בלתי תלויה.

עם זאת, במערכות בעלות אוריינטציה תהליכית, ניתן לשלב במסגרת כלי ניטור וביקורת מתמשכת גם אלגוריתמים של כריית תהליכים מסוימים שישמשו לניטור מתמשך של תקינות תהליכים ויעבו בכך את מערך זיהוי החריגות וההתרעות. לדוגמה, ניתן להפעיל באופן תכוף אלגוריתם לניתוח תפקידים שיזהה בצורה מיידית הפרות של הפרדת תפקידים בתהליכים ויתריע על כך. אלגוריתמים אלה ישפרו את הבקרה הפנימית של התהליכים שבאחריות ההנהלה, ובמקביל יספקו מידע חיוני למבקר בהערכת סיכוני התהליכים שעליו להתחשב בהכנת תכניות העבודה שלו.

כלי ניתוח ותחקור נתונים וכריית תהליכים

כלים ממוחשבים לתחקור וניתוח קובצי נתונים כגון IDEA ו-ACL הנמצאים בשימוש המבקר הפנימי מאז שנות השמונים, מאפשרים ניתוחים אנליטיים וזיהוי שגויים וחריגים המביאים תועלת רבה בהערכת הבקרות הפנימיות[11]. אולם כלים אלה יעילים בעיקר לניתוחי בקרה פנימית ברמת הטרנזקציה (Transaction Level Control), כלומר בקרות הקשורות לאירוע מסוג מסוים. לדוגמה, במסגרת ניתוח אנליטי ניתן לזהות באמצעותם סכומי מינימום ומקסימום של הזמנות רכש בתקופה מסוימת, במטרה לבחון האם הם חורגים מהסכומים המצופים. כמו כן, במסגרת ניסוי הבקרות ניתן לתחקר קובץ של חשבוניות מכירה, ולאתר חשבוניות שבהן שיעורי ההנחה חורגים מהמקסימום המותר או לזהות אי רציפות של מספרי החשבוניות.

בביקורת של תהליכים עסקיים, לעומת זאת, ניתוח ברמת הטרנזקציה איננו מספיק למבקר והוא נדרש לבדוק ולהעריך גם את טיב הבקרות הפנימית המתפרשות על כלל התהליך (Process Level Control). לדוגמה, קיום של "הפרדת התפקידים" בתהליך או ביצוע של סדרת האישורים המתאימה על ידי הגורמים המתאימים בהתאם לחוקי הארגון. טכניקת כריית תהליכים מתאימה יותר לביצוע ניתוחים אלה כפי שהראנו בפרק הקודם.

ברמה הפרקטית, האלגוריתמים לכריית התהליכים (שחלקם הוצג במאמר) עדיין אינם זמינים כתוכנת מדף  למשתמשים. עם זאת, הניסיון מלמד כי טכניקות ביקורת ממוחשבות חדשות שהוצעו והוכחו כיעילות שולבו בסופו של דבר כשיטת ניתוח במסגרת תוכנות הביקורת וניתוח הנתונים הקיימות. כך למשל אירע עם הליך הניתוח הספרתי המבוסס על חוק בנפורד (Benford's Law)[12]. לכן אני מעריך כי גם אלגוריתמים אלה ישולבו באופן דומה בחבילות תוכנה מסחריות לביקורת (ACL, IDEA וכדומה) ויגבירו את התועלת של כלים אלה לביקורת.

סיכום

כפי שהוכח לאחרונה במחקרים, כריית תהליכים שמטרתה לספק תובנות ניהוליות כלליות על תהליכים עסקיים, מצליחה גם בהערכת בקרות פנימיות ברמה תהליכית שכלים ממוחשבים קיימים מתקשים בביצועה. לכן הערכתי היא שהטכניקה החדשה עתידה להשתלב ב"ארגז הכלים" של המבקר הפנימי הן במסגרת תפריט הפעולות בתוכנות לניתוח ותחקור נתונים (כגון ACL או IDEA) והן במסגרת יישומי ביקורת מתמשכת, ולתרום להגברת האפקטיביות של הביקורת.

מקורות

[1]van der Aalst, W. M., Reijers, H. A., Weijters, A. J., van Dongen, B. F., Alves de Medeiros, A. K., Song, M., & Verbeek, H. M. W. (2007). Business process mining: An industrial application. Information Systems, 32(5), 713-732.

[2] van der Aalst, W. M., & de Medeiros, A. K. A. (2005). Process mining and security: Detecting anomalous process executions and checking process conformance. Electronic Notes in Theoretical Computer Science, 121, 3-21.

[3] Caron, F. Vanthienen,J. & Baesens B. (2013),  A comprehensive investigation of the applicability of process mining techniques for enterprise risk management, Computers in Industry, 64,  464–475

[4] Jans, M., van der Werf, J. M., Lybaert, N., & Vanhoof, K. (2011). A business process mining application for internal transaction fraud mitigation. Expert Systems with Applications, 38(10), 13351-13359.

[5] Jans, M., Alles, M. G., & Vasarhelyi, M. A. (2014), A Field Study on the Use of Process Mining of Event Logs as an Analytical Procedure in Auditing. The Accounting Review, September, (89:5), 1751-1773.

[6] Natovich, J. (2009). Business process management systems: The internal control perspective. ISACA Journal, 6, 51.

[7] Jans, M., Alles, M. G., & Vasarhelyi, M. A. (2014), שם

[8] שחר א. (2011) פנים אל פנים, רואה החשבון, ספטמבר

[9] Sparks D.E. (2011), The value of Timely Reporting, Internal Auditor, June, p. 72

[10] Alles, M. G., Kogan, A., & Vasarhelyi, M. A. (2008). Putting continuous auditing theory into practice: Lessons from two pilot implementations. Journal of Information Systems, 22(2), 195-214

[11] Debreceny, R., Lee, S. L., Neo, W., & Toh, J. S. (2005). Employing generalized audit software in the financial services sector: Challenges and opportunities. Managerial Auditing Journal, 20(6), 605-618.

[12] Durtschi, C., Hillison, W., & Pacini, C. (2004). The effective use of Benford’s law to assist in detecting fraud in accounting data. Journal of forensic accounting, 5(1), 17-34.‏

בחינת הבקרות הפנימיות בארגון בכלל ובתהליכים עסקיים בפרט הייתה ונשארה אבן היסוד בעבודת המבקר הפנימי. תהליכים עסקיים רבים בארגון מתבצעים כיום במערכות ממוחשבות, ומורכבותם, במיוחד בארגונים גדולים, מקשה על יכולת המבקר לבצע עליהם ביקורת אפקטיבית ללא אמצעים ממוחשבים.

פיתוח טכנולוגיית כריית התהליכים (Process Mining) לניתוח ניהולי של התהליכים[1] עורר התעניינות מחקרית רבה ביכולות השימוש של הטכנולוגיה הזאת גם ככלי בקרה המזהה, בין היתר, הפרות אבטחת מידע[2], ולאחרונה אף ככלי לביקורת פנימית לניהול סיכונים[3], לזיהוי הונאות ומעילות[4] ולשימוש ככלי כללי לביקורת תהליכים עסקיים[5]. מהתוצאות המעודדות של המחקרים נראה כי כריית תהליכים עשויה להצטרף לארגז הכלים הממוחשבים של המבקר ולהרחיב את יכולותיו.

למאמר זה שני חלקים: בראשון אציג את טכנולוגיית כריית התהליכים ואמחיש באמצעות דוגמה כיצד ניתן להסתייע בה בביצוע ביקורת של תהליכים עסקיים. בחלק השני אבחן כיצד משתלבת כריית התהליכים במסגרת טכניקות הביקורת הממוחשבות (CAAT) הקיימות.

מהי כריית תהליכים?

כריית תהליכים היא שיטה מממוחשבת לניתוח והבנה של תהליכים עסקיים מורכבים הפועלים בארגון. כתת-תחום של טכנולוגיית כריית נתונים, גם היא עוסקת באלגוריתמים לגילוי חוקיות וחריגים במאגרי נתונים, אולם ממוקדת בכאלה המתאימים לניתוחי התהליכים בארגון. הצורך בכריית תהליכים נובע מהכרה הולכת וגוברת של הנהלות בחשיבותם של תהליכים עסקיים איכותיים להצלחת הארגון, בה בשעה שהן מתקשות במקרים רבים לזהות ולהעריך כיצד תהליכים אלו פועלים הלכה למעשה[6].

במערכות ממוחשבות מתקדמות המשמשות לביצוע תהליכים עסקיים בארגון, כגון מערכות ERP, CRM וכדומה, קיימים "יומני אירועים" (קובצי log) המתעדים באופן כרונולוגי את הפעילויות שבוצעו. יומנים אלו מנהלים לכל מופע (Instance), כלומר מקרה פרטי של תהליך עסקי כלשהו, מידע הכולל בין היתר את פירוט האירועים (events) שבוצעו על ידי המשתמשים במסגרתו. לדוגמה: הפקת תעודת משלוח או תשלום, את שם המבצע (originator) בכל אירוע ואת פרטי זמן ההתרחשות (timestamp). באמצעות הפעלת אלגוריתמים ממוחשבים לתחקור יומן האירועים, ניתן לנתח מה אירע במערכת וכיצד בוצעו התהליכים העסקיים וכן לזהות מקרים חשודים הדורשים חקירה לעומק.

לניתוח יומן אירועים של מערכות קיימת חשיבות רבה למבקר: היומן אינו מוזן על ידי המשתמש אלא נרשם אוטומטית, והוא מספק "נתיב ביקורת" (Audit Trail) מהימן. זאת ועוד, כריית התהליכים מאפשרת לנתח את ההיבט הדינמי של התהליך, כלומר את מסלול האירועים שלו, וכך לבחון את חוזקן של הבקרות הפנימיות המשתרעות על פני כל התהליך (Process Level Control), כגון הפרדת תפקידים ואכיפת סדר אירועים מסוים בתהליך (לדוגמה, אפשרות תשלום בגין חשבונית ספק רק לאחר קבלת הטובין).

אף שבכל תהליך מוגדר מסלול אירועים נורמלי, המערכות עדיין מאפשרות, ובצדק, גמישות רבה לשינוי מסלול זה. לדוגמה: בתהליך רכש אנו מצפים למסלול פעילויות הכולל הזמנת רכש, קבלת טובין למחסן וקבלת חשבונית ספק, אולם המערכת עשויה לאפשר במקרים מסוימים קבלת טובין ללא הזמנה כדי שלא ייגרמו עיכובים בייצור בעקבות אי קבלת חומרי הגלם הדרושים. כתוצאה מהגמישות המובנית של התהליכים ייתכן שיתרחשו מקרים הנוגדים את כללי הארגון, ועל המבקר הפנימי לזהות מקרים אלו ולבחון אותם.

דוגמה: כריית תהליכים בביקורת בבנק אירופי

כדי להמחיש את טכניקות כריית התהליכים ואת יישומיהן לביקורת, אביא דוגמה מתוך מחקר שטח שנערך בבנק אירופי מוביל שבמסגרתו נותח תהליך הרכש הפועל במערכת ה-ERP SAP[7]. המסלול הנורמלי של התהליך בבנק מוצג בתרשים 1 שלהלן.

תרשים 1: תהליך רכש בבנק אירופי מוביל. מקור:Jans et al. (2011)

התהליך מותנע עם יצירת הזמנת הרכש (1) שלאחריה נדרשת חתימה (2) ושחרור (3) משני מאשרים שונים. שלבי קבלת הטובין (4) וחשבונית הספק (5) יכולים להתבצע במקביל, אולם התשלום (6) מתבצע לאחר סיום של שניהם. מסלול התהליך הנורמלי המוצג בתרשים אינו בלעדי והוא גמיש לשינויים: לדוגמה, ניתן לשנות את הזמנת הרכש לאחר הפקתה, אבל אז תידרש חתימה חוזרת ושחרור חוזר. כמו כן, טובין יכולים להתקבל לשיעורין בכמה משלוחים, ובאותו אופן יכולה להתקבל יותר מחשבונית אחת.

כריית התהליכים בוצעה על יומן האירועים (log) של מערכת ה-ERP הבנקאית תוך התייחסות רק למופעים של התהליך שהושלמו עד סופם, כלומר כשסולק מלוא התשלום בגין הרכש – סך הכול כ-26 אלף מופעים. הניתוחים כללו את סוגי האלגוריתמים הבאים:

גילוי התהליך ((Process Discovery  

מטרת אלגוריתם זה היא ללמוד כיצד מבוצע התהליך בפועל במופעים השונים ולזהות את אלה החורגים מהדגם הנורמלי שלו.

בשלב הראשון מזהה האלגוריתם את הנוסחים (variants) השונים של התהליך, כלומר את המסלולים השונים שבהם הוא התבצע בפועל. לדוגמה, נוסח נורמלי של התהליך הוא: יצירת הזמנת רכש ß חתימהß  שחרור  ß קבלת טובין ß קבלת חשבונית ß תשלום. בניתוח נמצאו 304 נוסחים שונים כאשר הנוסח הנורמלי הנ"ל בוצע רק ב-45% מהמופעים.

ניתוח הנוסחים באופן ויזואלי או באופן ממוחשב מאפשר לזהות כאלה המפרים את כללי התהליך ועלולים להוות סיכון. לדוגמה, באחד הנוסחים שנמצא בכ-12% מהמופעים, מיד לאחר יצירת הזמנת הרכש בוצע "שחרור" בלי שבוצעה "חתימה". אפשרות לקיום נוסח כזה בתהליך עלולה להצביע על חולשה בבקרה הפנימית ואולי אפילו על ניצול לרעה של חולשה זו. בבדיקה שנערכה התברר כי על פי החוקים, בתנאים מסוימים אכן לא נדרשת חתימה. בהמשך נראה כי קיימת דרך לבצע ניתוח נוסף שיבחן האם כל המופעים שבנוסח זה אכן עמדו בתנאים הדרושים.

דוגמה נוספת: בנוסח אחר שנמצא חסרה הפעילות "קבלת טובין" ולמרות זאת בוצע תשלום. מצב זה קביל רק כאשר מדובר בהזמנת שירות (ובדרך כלל גם יידלק אינדיקטור לסוג הזמנה זה). לכן בהמשך נדרש לבדוק את המופעים שזוהו בנוסח זה ולוודא שאכן בכך מדובר.

הנוסחים ה"מעניינים" ביותר למבקר הם אלה שתדירותם נמוכה. לדוגמה, בניתוח נמצאו שלושה מקרים שבהם, במפתיע ובניגוד לחוקים, הזמנת הרכש בוצעה גם ללא חתימה וגם ללא שחרור. חריגים אלה הועברו למנהלי המערכת לבדיקה כיצד הדבר התאפשר במערכת.

ניתוח תפקידים (Role Analysis)

מטרת ניתוח זה היא להבטיח כי לא הייתה בתהליך הפרה של חוקי הפרדת התפקידים. בבנק האירופי נמצאו 272 עובדים שונים שהשתתפו ב-26 אלף המופעים של תהליך הרכש. כאשר מספר העובדים גדול, העובדים מבצעים כמה תפקידים במקביל וקיימת תחלופה דינמית בתפקידים. לכן גם כאשר הרשאות השימוש מנוהלות במסגרת מערכת הERP-, ההקפדה על הפרדת תפקידים נאותה איננה פשוטה.

בשלב הראשון של ניתוח התפקידים על המבקר להגדיר מהן קבוצות האירועים בתהליך שאסורות לביצוע על ידי עובד מסוים. בתהליך הרכש בבנק הוגדרו כדורשות הפרדה שלוש קבוצות אירועים: (1) החתימה והשחרור של הזמנת הרכש. (2) קבלת חשבונית וקבלת טובין. (3) שחרור הזמנת רכש וקבלת טובין.

חיפוש ההפרות בתהליך בוצע באמצעות הפעלת אלגוריתם מבוסס לוגיקה עתית לינארית (linear Temporal Logic), ומתוך כל 26 אלף המופעים לא נמצאה כל הפרה של הפרדת תפקידים בקבוצות 1 ו-2, אולם ביחס לקבוצה 3 נמצאו 175 מקרים של הפרות שבהן מעורבים שלושה מבצעים: אחד מהם לבדו מעורב ב-129 מקרים. ממצאים אלה דורשים בדיקה ותיקון של הגדרת מערכת ההרשאות.

ניתוח הרשת החברתית (Social Network Analysis)  

אלגוריתם חדשני זה משלים את ניתוח התפקידים בכך שהוא מציג בתרשים קשרים בין מבצעים המעורבים באותו מופע של התהליך. ניתוח הרשת החברתית מאפשר לזהות כיצד אנשים בארגון קשורים זה לזה במסגרת הפעילות העסקית, ולנסח תובנה על המוטיבציה והמשמעות של פעילותם. כיישום ביקורת מאפשר האלגוריתם לזהות מצבים חריגים של קשרים הדורשים חקירה מעמיקה יותר. לדוגמה, באמצעותו ניתן לזהות מקרים שבהם מופעים של התהליך מבוצעים בקביעות על ידי קבוצת עובדים קטנה המובחנת מיתר העובדים שמשתתפים בשאר המופעים. מקרים אלה, הגם שאינם מהווים בהכרח הפרה של הפרדת תפקידים, עלולים להצביע על קיום קנוניה ולכן מחייבים בהמשך הביקורת חקירה לעומק.

ניתוח מאפיינים ( Attribute Analysis)

ניתוחים אלו אינם מתמקדים במסלול הפעילויות או במבצעים בלבד, אלא במשולב עם מאפיינים אחרים של הפעילויות שעשויים להיות מתועדים ביומן התנועות עצמו או בטבלאות מסד הנתונים של המערכת. באמצעות מספר מזהה של כל אירוע, יכולה תוכנת הניתוח לקשר בין נתוניו ביומן לבין המאפיינים שלו כפי שהוזנו במסד הנתונים.

באמצעות ניתוח מאפיינים ניתן לבחון יותר לעומק את חוזקה של הבקרה הפנימית. לדוגמה: כזכור, באמצעות אלגוריתם הגילוי נמצא שב-12% מהמקרים להזמנת הרכש לא בוצעה חתימה אלא רק שחרור. מקרים אלה כללו נוסחים שבהם נתוני הזמנות שונו ללא ביצוע חתימה חוזרת. על פי נוהלי הבנק לא נדרשת חתימה חוזרת אם סכום ההזמנה הוא עד 12,500 אירו ובוצע בה שינוי בגובה של עד 5% מהסכום המקורי, או שסכום ההזמנה הוא 125,000-12,500 אירו ובוצע בה שינוי של עד 2%.

באמצעות ניתוח המאפיינים "סכום נטו" ו"סכום השינוי" של ההזמנות, הנמצאים במסד הנתונים בטבלת ההזמנות, נבדקו כל המקרים שבהם לא בוצעה חתימה ונמצאו 77 מקרים של חריגה מהנוהל. מקרים אלו הועברו לבחינה מדוקדקת.

לסיכום, במחקר השטח בבנק הצליחה כריית תהליכים על יומן האירועים של מערכת ה-ERP לאתר באופן אוטומטי הפרות של הפרדת תפקידים והיעדר אישורים וחתימות הדרושים להזמנת רכש שלא זוהו קודם לכן על ידי המבקרים הפנימיים בשיטות המסורתיות.

שילוב כריית תהליכים עם טכניקות ממוחשבות אחרות לביקורת תהליכים

הצגת טכניקת ביקורת ממוחשבת חדשה מעלה באופן טבעי את השאלה כיצד היא משתלבת עם כלי הביקורת הממוחשבים הקיימים ולאילו משימות ביקורת מתאים כל כלי. בפרק זה נסקור בקצרה את הכלים העיקריים התומכים כיום בביקורת תהליכים עסקיים: ביקורת מתמשכת Continuous Auditing)) וכן ניתוח ותִחקור נתונים ((Data Analysis, ונבחן כיצד כריית התהליכים משתלבת עם כלים אלה.

ביקורת מתמשכת וכריית תהליכים

ביקורת מתמשכת מבוססת על תוכנה שסורקת ומנטרת באופן קבוע ואפילו בזמן אמת את הפעילויות המתבצעות במערכות רגישות בארגון, וכאשר היא מזהה בתוך כך אירועים חריגים או פעולות שבוצעו ונרשמו במערכות הארגון שלא על פי נהלים היא מיד מעבירה דיווח על כך למבקר[8]. בין היתר, התועלת במערכת זו היא קיצור פרק הזמן של הבאת אירועים חריגים למודעוּת הביקורת ולטיפולה[9]. סביב תפיסת הביקורת המתמשכת התפתח פולמוס עקרוני. יש שהתנגדו לשימוש בטכנולוגיה זו ככלי של הביקורת הפנימית בשל  החשש שהשימוש יהפוך את המבקר לאחראי דה פקטו על הבקרה המתמשכת על טיב הפעולות, במקום שהאחריות תוטל כנדרש על ההנהלה. לעומת זאת, המצדדים בביקורת מתמשכת מדגישים כי אין הכוונה שהמבקר יחליף את המנהלים באחריות לבקרה השוטפת של הפעילות בגזרתם ושהמבקר יתערב בכל חריגה או כשל, אלא המטרה היא שהמבקר יוכל להפעיל את שיקול דעתו לביצוע ביקורת במקרים שבהם תוכנת הביקורת המתמשכת תזהה הצטברות של כשלים וחריגות בנושא מסוים. למרות הבעייתיות המסוימת בשימוש המשותף של ההנהלה ושל הביקורת, העניין בביקורת המתמשכת הולך וגובר[10].

בדומה לביקורת מתמשכת, גם כריית תהליכים מזהה כשלים וחריגות, אולם ברמת כלל התהליך ולא ברמת אירוע. בשונה מתפיסת הביקורת המתמשכת, אין בכריית תהליכים דגש על תכיפות עריכתה וסמיכותה למועד האירועים הנבדקים.  היא מבוצעת על נתונים היסטוריים שנגזרים באופן תקופתי מהמערכת הנבדקת, ונערכת בסביבת מחשבים נפרדת ובלתי תלויה, כגון מחשבו האישי של המבקר, ולכן אין עוררין על התאמתה ככלי לעריכת ביקורת בלתי תלויה.

עם זאת, במערכות בעלות אוריינטציה תהליכית, ניתן לשלב במסגרת כלי ניטור וביקורת מתמשכת גם אלגוריתמים של כריית תהליכים מסוימים שישמשו לניטור מתמשך של תקינות תהליכים ויעבו בכך את מערך זיהוי החריגות וההתרעות. לדוגמה, ניתן להפעיל באופן תכוף אלגוריתם לניתוח תפקידים שיזהה בצורה מיידית הפרות של הפרדת תפקידים בתהליכים ויתריע על כך. אלגוריתמים אלה ישפרו את הבקרה הפנימית של התהליכים שבאחריות ההנהלה, ובמקביל יספקו מידע חיוני למבקר בהערכת סיכוני התהליכים שעליו להתחשב בהכנת תכניות העבודה שלו.

כלי ניתוח ותחקור נתונים וכריית תהליכים

כלים ממוחשבים לתחקור וניתוח קובצי נתונים כגון IDEA ו-ACL הנמצאים בשימוש המבקר הפנימי מאז שנות השמונים, מאפשרים ניתוחים אנליטיים וזיהוי שגויים וחריגים המביאים תועלת רבה בהערכת הבקרות הפנימיות[11]. אולם כלים אלה יעילים בעיקר לניתוחי בקרה פנימית ברמת הטרנזקציה (Transaction Level Control), כלומר בקרות הקשורות לאירוע מסוג מסוים. לדוגמה, במסגרת ניתוח אנליטי ניתן לזהות באמצעותם סכומי מינימום ומקסימום של הזמנות רכש בתקופה מסוימת, במטרה לבחון האם הם חורגים מהסכומים המצופים. כמו כן, במסגרת ניסוי הבקרות ניתן לתחקר קובץ של חשבוניות מכירה, ולאתר חשבוניות שבהן שיעורי ההנחה חורגים מהמקסימום המותר או לזהות אי רציפות של מספרי החשבוניות.

בביקורת של תהליכים עסקיים, לעומת זאת, ניתוח ברמת הטרנזקציה איננו מספיק למבקר והוא נדרש לבדוק ולהעריך גם את טיב הבקרות הפנימית המתפרשות על כלל התהליך (Process Level Control). לדוגמה, קיום של "הפרדת התפקידים" בתהליך או ביצוע של סדרת האישורים המתאימה על ידי הגורמים המתאימים בהתאם לחוקי הארגון. טכניקת כריית תהליכים מתאימה יותר לביצוע ניתוחים אלה כפי שהראנו בפרק הקודם.

ברמה הפרקטית, האלגוריתמים לכריית התהליכים (שחלקם הוצג במאמר) עדיין אינם זמינים כתוכנת מדף  למשתמשים. עם זאת, הניסיון מלמד כי טכניקות ביקורת ממוחשבות חדשות שהוצעו והוכחו כיעילות שולבו בסופו של דבר כשיטת ניתוח במסגרת תוכנות הביקורת וניתוח הנתונים הקיימות. כך למשל אירע עם הליך הניתוח הספרתי המבוסס על חוק בנפורד (Benford's Law)[12]. לכן אני מעריך כי גם אלגוריתמים אלה ישולבו באופן דומה בחבילות תוכנה מסחריות לביקורת (ACL, IDEA וכדומה) ויגבירו את התועלת של כלים אלה לביקורת.

סיכום

כפי שהוכח לאחרונה במחקרים, כריית תהליכים שמטרתה לספק תובנות ניהוליות כלליות על תהליכים עסקיים, מצליחה גם בהערכת בקרות פנימיות ברמה תהליכית שכלים ממוחשבים קיימים מתקשים בביצועה. לכן הערכתי היא שהטכניקה החדשה עתידה להשתלב ב"ארגז הכלים" של המבקר הפנימי הן במסגרת תפריט הפעולות בתוכנות לניתוח ותחקור נתונים (כגון ACL או IDEA) והן במסגרת יישומי ביקורת מתמשכת, ולתרום להגברת האפקטיביות של הביקורת.

מקורות

[1]van der Aalst, W. M., Reijers, H. A., Weijters, A. J., van Dongen, B. F., Alves de Medeiros, A. K., Song, M., & Verbeek, H. M. W. (2007). Business process mining: An industrial application. Information Systems, 32(5), 713-732.

[2] van der Aalst, W. M., & de Medeiros, A. K. A. (2005). Process mining and security: Detecting anomalous process executions and checking process conformance. Electronic Notes in Theoretical Computer Science, 121, 3-21.

[3] Caron, F. Vanthienen,J. & Baesens B. (2013),  A comprehensive investigation of the applicability of process mining techniques for enterprise risk management, Computers in Industry, 64,  464–475

[4] Jans, M., van der Werf, J. M., Lybaert, N., & Vanhoof, K. (2011). A business process mining application for internal transaction fraud mitigation. Expert Systems with Applications, 38(10), 13351-13359.

[5] Jans, M., Alles, M. G., & Vasarhelyi, M. A. (2014), A Field Study on the Use of Process Mining of Event Logs as an Analytical Procedure in Auditing. The Accounting Review, September, (89:5), 1751-1773.

[6] Natovich, J. (2009). Business process management systems: The internal control perspective. ISACA Journal, 6, 51.

[7] Jans, M., Alles, M. G., & Vasarhelyi, M. A. (2014), שם

[8] שחר א. (2011) פנים אל פנים, רואה החשבון, ספטמבר

[9] Sparks D.E. (2011), The value of Timely Reporting, Internal Auditor, June, p. 72

[10] Alles, M. G., Kogan, A., & Vasarhelyi, M. A. (2008). Putting continuous auditing theory into practice: Lessons from two pilot implementations. Journal of Information Systems, 22(2), 195-214

[11] Debreceny, R., Lee, S. L., Neo, W., & Toh, J. S. (2005). Employing generalized audit software in the financial services sector: Challenges and opportunities. Managerial Auditing Journal, 20(6), 605-618.

[12] Durtschi, C., Hillison, W., & Pacini, C. (2004). The effective use of Benford’s law to assist in detecting fraud in accounting data. Journal of forensic accounting, 5(1), 17-34.‏