فرایندکاوی
چالش‌های فرایندکاوی
کاوش فرایند مهم‌ترین ابزار برای سازمان‌های مدرنی است که نیاز به مدیریت مناسب فرایندهای عملیاتی دارند. از یک سو با رشد باورنکردنی حجم داده روبرو هستیم و از دیگر سو فرایندها و اطلاعات باید به‌طور مناسب جمع‌آوری شوند تا نیازمندی‌های مربوط به کارایی، انطباق و خدمت رسانی پاسخ داده شود. علی‌رغم کاربردی بودن فرآیندکاوی، هنوز چالش‌های عمده‌ای پیش رو می‌باشد که باید مورد توجه قرار گیرد. در ذیل به این چالش‌ها اشاره شده‌است. در سیستم‌های فعلی نیز انرژی زیادی باید صرف استخراج داده‌های رویداد مناسب برای کاوش فرایند صورت گیرد. به‌طور معمول، در این زمنیه چند مشکل وجود دارد که باید مرتفع گردد. برخی از این مشکلات عبارتند از: برای حل این مشکل نیاز به ابزارهای بهتر و متدولوژی‌های مناسب تر می‌باشد. علاوه بر آن، همان‌طور که پیش تر نیز به آن اشاره شد، سازمان‌ها باید با داده‌های لاگ همانند شهروندان درجه یک برخورد کنند و نه به عنوان یک محصول جانبی. داده‌های لاگ ممکن است که ویژگی‌های خیلی متنوعی داشته باشند. بعضی از داده‌های لاگ ممکن است که آن‌چنان بزرگ باشند که رسیدگی به آن‌ها دشوار باشد و بعضی از آن‌ها ممکن است آنقدر کوچک باشند که نتوان نتایج قابل اطمینانی از آن‌ها استحصال کرد. ابزارهای موجود در مواجه با داده‌های با ابعاد پتابایت دشواری‌هایی دارند. در کنار تعداد رکوردهای رویدادهای ذخیره شده ویژگی‌های دیگری نظیر متوسط تعداد رویدادها در هر حالت، شباهت میان حالت‌ها، تعداد رویدادهای منحصر به فرد و تعداد مسیرهای واحد نیز هستند که باید مورد توجه قرار گیرند. به عنوان مثال فایل لاگ داده L1 با مشخصات ذیل را در نظر بگیرید: ۱۰۰۰ حالت، به‌طور متوسط ۱۰ رویداد به ازای هر حالت. فرض کنید فایل لاگ L2 حاوی تنها ۱۰۰ حالت باشد اما هر حالت حاوی ۱۰۰ رویداد باشد و همه رویدادها از یک مسیر واحد تبعیت کنند. پر واضح است که آنالیز L2 به‌مراتب دشوارتر از آنالیز L1 می‌باشد، علی‌رغم اینکه هر دو فایل سایز برابر و یکسانی دارند. از آن‌جایی که داده‌های لاگ تنها حاوی نمونه‌های مثال می‌باشند، بنابراین نباید اینطور فرض شود که آن‌ها کامل هستند. تکنیک‌های کاوش متن باید با استفاده از «فرض جهان باز» با این عدم کامل بودن کنار بیایند: این واقعیت که اگر پدیده‌ای اتفاق نمی‌افتد به معنای عدم امکان رخداد آن نیست. این موضوع تعامل با داده‌های لاگ با سایز کم و حاوی تغییرات زیاد را دشوار می‌کند. همان‌طور که پیش‌تر هم اشاره شد، بعضی از فایل‌های لاگ ممکن است حاوی رکوردهایی با سطح انتزاع بسیار پایین باشند. داده‌های با سطح پایین چندان مطلوب ذی نفعان نمی‌باشند؛ بنابراین عموماً سعی می‌شود تا داده‌های سطح پایین با همدیگر تجمیع شوند تا داده‌های با سطح بالاتر تولید گردد. به عنوان مثال، زمانی که فرایند تشخیص و درمان گروهی از بیماران آنالیز می‌شود، احتمالاً دیگر علاقه‌مند به دانستن نتایج آزمایش‌ها انفرادی افراد نیستیم. در این گونه از موارد، سازمان‌ها لازم است که از روش سعی و خطا استفاده نمایند تا دریابند که آیا داده‌ها مناسب برای کاوش فرایند می‌باشند؛ بنابراین ابزارها باید سرویس آزمایش امکان‌سنجی سریع برای یک پایگاه داده مشخص را فراهم نمایند. کاوش فرایند تکنولوژی نوظهوری می‌باشد. همین امر نشان می‌دهد که چرا نیاز به شاخصه‌های ارزیابی می‌باشد. به عنوان مثال تاکنون ده‌ها تکنیک کشف فرایند ارائه شده‌است اما گزارش دقیقی از کیفیت این روش‌ها در دسترس نمی‌باشد. علی‌رغم اینکه تفاوت‌های زیادی در کارایی و عملکرد این تکنیک‌ها وجود دارد، ارزیابیشان کار دشوار و پیچیده‌ای می‌باشد؛ بنابراین نیاز به داده‌های استاندارد و همچنین معیارهای کیفیت مناسب به شدت احساس می‌شود. البته در این زمینه کارهای محدودی انجام شده‌است. از جمله معیارهای ارزیابی ارائه شده به چهار معیار سازگاری، سادگی، دقت و عمومیت می‌توان اشاره نمود. همچنین داده‌های رویداد ثبت شده هم در سایت فرایندکاوی موجود می‌باشد. از یک طرف باید شاخص‌ها براساس داده‌های واقعی باشد. از طرف دیگر نیاز به تولید پایگاه داده ترکیبی ایی می‌باشد که ویژگی‌های خاصی داشته باشد. عبارت رانش مفهومی در حوزه کاوش فرایند به موقعیتی اشاره می‌کند که در آن فرایند در عین حال که در حال آنالیز شدن می‌باشد، تغییر نیز می‌کند. به عنوان مثال در ابتدای یک فایل لاگ، ممکن است که دو فعالیت همزمان باشند در حالیکه در ادامه در لاگ این دو فعالیت ترتیبی شوند. فرایندها به دلایل مختلفی ممکن است تغییر کنند. بعضی از این تغییرات بنابه دلایل تغییرهای دوره‌ای می‌باشد (مثلاً در ماه مهر و اسفند خریدها بیشتر است یا اینکه بعد از ظهر جمعه کارمندان کمتری در دسترس هستند). بعضی از تغییرات هم به واسط تغییر شرایط رخ می‌دهند (مثلاً بازار رقابتی تر می‌شود). این تغییرات بر روی فرایند تأثیر می‌گذارند و ضرورت دارد که به آن‌ها توجه شود. پدیده رانش مفهومی با استفاده از شکستن فایل لاگ به قطعات کوچکتر و آنالیز رد پای(footprint) این قطعات قابل شناسایی می‌باشد. این آنالیز مرتبه دوم (second order) نیازمند داده‌های رویداد بیشتر می‌باشد. با این حال تعداد کمی از فرایندها در حالت ثابت می‌باشند و فهم رانش مفهومی دارای اولویت بالایی در مدیریت فرایندها می‌باشد؛ بنابراین ابزارها و تحقیقات بیشتری برای آنالیز مناسب رانش مفهومی مورد نیاز می‌باشد. یک تکنیک کشف فرایند، با استفاده از یک زبان مشخص (BPMN، Petri Net و ...) یک مدل فرایند تولید می‌نماید. به هر حال مهم است که تجسم نتایج، مجزای از نمایی باشد که در کشف فرایند مورد استفاده قرار می‌گیرد. انتخاب یک زبان هدف غالباً تعدادی فرض ضمنی را هم دربر می‌گیرد. این فرضیات فضای جستجو را محدود کرده و فرایندهایی که نمی‌توانند با استفاده از زبان مقصد نمایش داده شوند، کشف نخواهند شد. این به اصطلاح پیش فرض‌های نمایشی که در کشف فرایند استفاده می‌شوند باید با انتخاب آگاهانه همراه گردند و نباید (فقط) بر مبنای اولویت‌های نمایشی گرافیکی انتخاب شوند. مثلاً شکل ذیل را در نظر بگیرید. بسته به آن‌که زبان مقصد اجازه هم‌زمانی را بدهد یا ندهد، می‌تواند بر روی نمایش مدل کشف شده و کلاس مدلهایی که توسط الگوریتم استفاده می‌شود تأثیر داشته باشد. اگر پیش‌فرض‌های نمایشی اجازه همزمانی را ندهند (بخش a تصویر) و اجازه استفاده همزمان چند فعالیت از یک برچسب را ندهند (بخش c از تصویر)، آنگاه شکل b تصویر که دارای مشکلات هم باشد تنها امکان‌پذیر خواهد بود. غالباً داده‌های ثبت شده کامل نیستند. مدل‌های فرایندی معمولاً محدودیتی برای تعداد نامحدود نمونه فرایند (درحالت وجود حلقه‌ها) ندارند. از طرفی، بعضی از نمونه‌ها هم نسبت به سایرین رخداد بمراتب کمتری دارند؛ بنابراین اینکه فکر کنیم هر نمونه فرایند قابل رخدادی در فایل وقایع ثبت شده موجود می‌باشد، تصور نادرستی می‌باشد. برای اینکه نشان داده شود که تصور داشتن داده‌های کامل، در عمل امکان‌پذیر نمی‌باشد، فرایندی را در نظر بگیرید که شامل ۱۰ فعالیت بوده و این فعالیت‌ها بتوانند به صورت موازی اجرا شوند. همچنین فرض کنید که فایل رویدادهای ثبت شده حاوی ۱۰٬۰۰۰ نمونه فرایند باشد. تعداد حالت‌های کلی (جایگشتها) در یک مدل با ۱۰ فعالیت همزمان، ۳٬۶۲۸٬۰۰۰=!۱۰ می‌باشد؛ بنابراین امکان‌پذیر نمی‌باشد که تمامی این نمونه‌ها در فایل رویدادهای ثبت شده (تنها حاوی ۱۰٬۰۰۰) وجود داشته باشد. وجود داده‌های نویز (داده‌های با رخداد کم) بر پیچیدگی‌ها می‌افزاید. ساخت مدل برای رفتارهایی که به ندرت رخ می‌دهند (داده‌های نویز) کار بسیار دشواری می‌باشد. در این گونه موارد، برای پردازش این دسته از رفتارها بهتر است که از چک کردن مطابعت استفاده شود. نویز و ناکامل بودن، کشف فرایند را به یکی از پرچالش‌ترین مسائل تبدیل کرده‌است. تعادل برقرار کردن بین معیارهای سادگی، سازگاری، دقت و عمومیت داشتن کار پرچالشی می‌باشد. به همین دلیل اکثر تکنیک‌های قدرتمند کاوش فرایند پارامترهای متنوعی را فراهم می‌سازند. الگوریتم‌های جدیدی برای تعادل برقرار کردن بین این معیارها نیاز می‌باشد. به‌طور سنتی، کاوش فرایند در یک سازمان اجرا می‌گردد. اما با گسترش تکنولوژی وب سرویس، یکپارچگی زنجیره تأمین و محاسبات ابری، سناریوهایی پیش می‌آید که در آن داده‌های چند سازمان برای آنالیز در دسترس می‌باشد. در حقیقت دو مشخصه برای کاوش فرایندهای بین سازمانی موجود می‌باشد. در سناریوی همکارانه، سازمان‌های مختلف همگی باهم در جهت رسیدن به اهداف مشخصی همکاری داشته و نمونه فرایندها بین این سازمان‌ها در جریان می‌باشد. در این مدل سازمان‌ها همانند قطعات یک پازل می‌باشند. فرایند کلی به قطعاتی شکسته شده و بین سازمان‌ها توزیع می‌شود تا هر سازمان وظیفه مربوط به خود را انجام دهد. آنالیز رویدادهای ثبت شده در تنها یکی از این سازمان‌ها کافی نمی‌باشد. به منظور کشف فرایندهای انتها به انتها، رویدادهای ثبت شده سازمان‌های مختلف باید بایکدیگر ادغام گردد که کار ساده‌ای نمی‌باشد. سناریوی دوم این است که سازمان‌های مختلف در عین حال که از زیرساخت‌های مشترکی استفاده می‌نمایند، فرایند یکسانی را اجرا نمایند. به عنوان مثال Saleforce.com را می‌توانید در نظر بگیرید. این شرکت فرایند فروش شرکت‌های دیگر را بر عهده دارد و مدیریت می‌کند. از یک طرف شرکت‌ها از زیر ساخت این سایت استفاده می‌کنند و از طرف دیگر مجبور نیستند که دقیقاً یک فرایند قطعی را دنبال کنند (چراکه سیستم امکان تنظیمات اختصاصی در دنبال کردن فرایند به آن‌ها می‌دهد. واضح است که آنالیز این تغییرات بین سازمان‌های مختلف کار جذاب و جالبی می‌باشد. این سازمان‌ها می‌توانند از همدیگر یاد بگیرند و فراهم کنندگان سرویس ممکن است که سرویس هایشان را ارتقا بخشند و سرویس‌های ارزش افزوده‌ای را برمبنای نتیجه کاوش‌های بین سازمانی ارائه نمایند. در ابتدا، تمرکز کاوش فرایند بر روی داده‌های قدیمی (که در پایگاه داده سیستم‌های اطلاعاتی موجود می‌باشد) بود. اما امروزه با گسترش تکنولوژی و افزایش پردازش‌های روی خط، کاوش فرایند نباید محدود به پردازش‌های برون خطی باشد. سه نوع پشتیبانی عملیاتی تعریف شده‌است: شناسایی، پیش‌بینی، توصیه. زمانی که نمونه‌ای از فرایند مورد انتظار تخطی می‌کند، می‌تواند شناسایی گردد و سیستم می‌تواند یک اخطار دهد. داده‌های قدیمی می‌تواند به منظور تولید مدل پیش گوی استفاده گردد. مثلاً می‌توان زمان به اتمام رسیدن یک نمونه را پیش‌گویی کرده و براساس آن تصمیماتی اخذ کرد. استفاده از روش‌های کاوش فرایند در مدل برون خطی، چالش‌های جدیدی را برحسب قدرت محاسباتی و کیفیت داده ایجاد می‌کند. یکی از چالش‌ها نحوه ترکیب روش‌های آنالیز نظیر داده‌کاوی یا تحقیقات عملیاتی با کاوش فرایند می‌باشد. به عنوان مثال شبیه‌دکاویسازی را در نظر بگیرید. کاوش فرایند برای یادگیری یک مدل شبیه‌سازی بر مبنای داده‌های قدیمی می‌تواند استفاده شود. متعاقباً، مدل شبیه‌سازی برای پردازش‌های روی خط می‌تواند استفاده شود. همچنین خیلی مطلوبست که روش‌های کاوش فرایند را با آنالیزهای تصویری ترکیب نماییم. در پردازش داده‌های بزرگ، آنالیزهای بصری می‌تواند از توانایی انسان برای شناسایی الگوها در داده‌های بدون ساختار استفاده نماید.