طی مطلب قبل، ترجمه چند صفحه اول فصل پنجم کتاب اصول و مبانی مدیریت فرایند (Fundamentals of Business Process Management) در وب سایت قرار خواهد گرفت. موضوع این فصل کشف فرایندها است. مطالعه این مطالب خصوصاً برای عزیزانی که جلد اول کتاب را خریداری کرده اند، اکیداً توصیه میشود.
البته با توجه به مستقل بودن موضوع آن، مطالعه این مطالب برای کلیه علاقه مندان بسیار مفید خواهد بود.
البته شدیداً توصیه میکنیم اگر ۴ فصل اول کتاب را نخوانده اید، آنرا از این صفحه تهیه کنید.
روش مدلسازی فرآیند
مدلسازی فرآیند در مرحله کشف، کار پیچیده ای است. بنابراین، خوب است که از یک روش از پیش تعیین شده به منظور دستیابی به این هدف به روش سیستماتیک استفاده کنید.
یک روش برای انجام این کار پیروی از پنج مرحله زیر است:
- مرزهای فرآیند را شناسایی کنید.
- فعالیتها و رویدادها را شناسایی کنید.
- منابع و انتقال آنها را شناسایی کنید.
- جریانهای کنترل را شناسایی کنید.
- عناصر اضافی را شناسایی کنید.
شناسایی مرزهای فرآیند
شناسایی مرزهای فرآیند برای فهم دامنه کاری فرآیند ضروری است. بخشی از این کار ممکن است در حال حاضر با تعریف معماری فرایند انجام شود. از لحاظ فنی، این به این معنی است که ما باید رویدادهایی را شناسایی کنیم که فرآیندهای ما را راه می اندازند و رویدادهایی که خروجی های ممکن فرآیند را شناسایی میکنند. برای مثال، مجدداً فرایند انجام سفارش را که در فصل ۳ مدلسازی کردیم، بررسی میکنیم. میدانیم که این فرایند با دریافت سفارش خرید از مشتری آغاز میشود و با انجام سفارش به عنوان خروجی پایان مییابد. این دو رویداد مرزهای این فرآیند را مشخص میکنند. بر این اساس، از یک رویداد پیغامِ شروع و یک رویداد پایان در BPMN برای نشان دادن آنها استفاده میکنیم. اگر فرایند ما نتایج منفی داشته باشد، میتوانیم از طریق رویداد پایانیِ پایان دهن، مدلسازی کنیم.
شناسایی فعالیت ها و رویدادها
هدف گام دوم شناسایی فعالیتهای اصلی فرایند است. مزیت شروع با فعالیتها این است که کارشناسان حوزه به وضوح قادر خواهند بود که آنچه را انجام میدهند، بیان کنند. حتی اگر از کارشان به عنوان بخشی از فرآیند کسب وکار جامع آگاهی نداشته باشند. اسناد ممکن است به صراحت فعالیتها را ذکر کنند، به عنوان مثال مجموعه دستورالعمل های کاری. در مورد انجام فرایند سفارش، این مرحله می تواند منجر به مجموعه ای از فعالیتهایی شود که هنوز نظم و شرایط روتین آنها تعریف نشده است.
در این مرحله، همچنین نیاز به شناسایی رویدادهایی داریم که در جریان کار اتفاق میافتند، که آنها را با رویدادهای میانی مدلسازی میکنیم. در شکل زیر فهرست ۱۲ فعالیت این مثال نشان داده شده است. توجه داشته باشید که این مجموعه اولیه فعالیتها و رویدادها میتواند مورد تجدیدنظر قرار گیرند، مثلاً همینطور که جزئیات بیشتری به مدل اضافه میکنیم، فعالیتهای بیشتری نیز اضافه کنیم. اگر فرایند بسیار پیچیده باشد، پیشنهاد میشود که در این مرحله تنها بر فعالیتها و رویدادهای اصلی تمرکز داشته باشید و در مرحله بعد وقتی که درک عمیقتری از این عناصر و روابط آنها به دست آمد، بقیه فعالیتها را اضافه کنید.
شناسایی منابع و انتقال آنها
زمانی که مجموعه ای از فعالیتها و رویدادهای اصلی را تعریف کردیم، میتوانیم مسئول انجام آنها را تعیین کنیم. این اطلاعات، پایه ای برای تعریف poolها و laneها و تخصیص فعالیتها و رویدادها به یکی از این محدوده ها است.. در این مرحله، ترتیب فعالیت هنوز مشخص نشده است. بنابراین این مرحله خوبی است برای شناسایی اولیه آن نقاطی در فرایند که کار از یک منبع به منبع دیگر واگذار شده است. مثلا از یک بخش به بخش دیگر .
این نقاط انتقال بسیار مهم است، زیرا وقتی کار جدیدی به شخص تخصیص داده میشود، معمولاً باید فرضیه ایی درباره آنچه قبلا انجام شده است، داشته باشد. شفاف کردن مفروضات، یک گام اساسی در شناسایی فرایند است. شکل پایین، مجموعه فعالیتها و رویدادهای فرایند انجام سفارش را نشان میدهد که به pool و laneها اختصاص داده شده است.
جریانهای متوالی، نقاط انتقال را نشان میدهد. این نقاط انتقال نیز به تشخیص بخشهایی از فرایند کمک میکند که میتواند جدا از بقیه مورد مطالعه قرارگیرد. این بخشها را میتوان با کمک ذینفعان به زیرفرایندها بسط داد. برای مثال، در فرآیند انجام سفارش، دریافت مواد خام میتواند جدا از سایر فرایندها انجام شود، زیرا این قسمت شامل تامین کنندگان و پرسنلی از واحدهای انبار و توزیع محصول، میشود.
شناسایی جریان کنترل
نقاط انتقال در ساختار اولیه برای جریان کنترل تعریف میگردد. در اصل جریان کنترل مربوط به سوالهای چه هنگام و چرای فعالیتها و رویدادهایی است که انجام میگیرند. به لحاظ فنی ما نیاز به شناسایی ترتیب وابستگیها، نقاط تصمیم گیری، اجرای همزمان فعالیتها و رویدادها و اصلاح و بازخوانی های بالقوه داریم.
نقاط تصمیم گیری نیاز به اضافه کردن انشعابهای XOR و شرایط مربوط به جریانهای متوالیِ جایگزین دارد . بازسازی و تکرار را میتوان با ساختار حلقه ای مدلسازی نمود. فعالیتهای همزمان که میتوانند به طور مستقل از یکدیگر اجرا شوند، با AND ارتباط مییابند. انشعاب های مبتنی بر رویداد برای واکنش به تصمیماتی که در خارج از فرایند گرفته می شوند، استفاده می شوند.
اگر در مرحله قبل، بیش از یک قسمت از کسب وکار را با استفاده از چندین pool مدل سازی کرده باشیم در این مرحله نیاز به کسب اطلاعات بین poolهای مختلف از طریق جریان پیام داریم. شکل ۵٫۳ نشان میدهد که چگونه محدودیت های سفارش توسط کمان های جریان کنترل در فرایند انجام سفارش گرفته میشوند. در اینجا میتوانیم ببینیم که انتقال هایی که ما در مرحله قبل شناسایی کرده ایم، با جزییات بیشتر تصحیح شده است.
شناسایی عناصر دیگر
درنهای، میتوانیم مدل را با اضافه کردن مصنوعات و لحاظ کردن چارچوب هایی گسترش دهیم. در مورد مصنوعات، به معنای اضافه کردن اشیاء داده ها، پایگاه های ذخیره داده و ارتباط آنها با فعالیتها و رویدادها از طریق جمع آوری داده ها است. چارچوبها به معنی استفاده از رویدادهای مرزی، جریان استثناء و انتقال های جایگرین میباشد.
همچنان که در فصل ۳ و۴ جلد اول این کتاب اشاره کردیم، اضافه کردن داده ها و استثنائات به هدف خاص مدلسازی بستگی دارد. به طور مثال اگر قرار هست این فرایند به صورت خودکار انجام شود، مناسب است که به صورت صریح داده ها و جنبه های مستثنی آن را در نظر بگیریم.
در این مرحله همچنین ما میتوانیم حاشیه نویسی بیشتری را برای پشتیبانی از سناریوهای کاربردی خاص اضافه کنیم. به عنوان مثال، اگر مدل برای تجزیه وتحلیل ریسک و یا برای برآورد هزینه فرایند مورد استفاده قرار میگیرد ما باید اطلاعات مربوط به ریسک و هزینه را اضافه کنیم. به طور کلی، عناصری که اضافه میشوند بستگی به نوع کاربرد خاص دارد.
در این بخش روشی برای ساخت یک مدل فرایند کسب وکار با استفاده از یک سری مراحل افزایشی نشان میدهیم. در این سناریو که قسمت های مختلف کسب و کار را درگیر هستند، گزینه جایگزین این است که ابتدا با یک نمودار choreography آغاز کنید و سپس این نمودار را به صورت افزایشی به یک نمودار همکاری تبدیل کنید. در این مورد ما برای اولین بار از نمودارهای Choreography برای شناسایی منابع استفاده میکنیم و هر یک از آنها را از طریق یک pool مدلسازی میکنیم. بعد، در داخل هر یک از poolها، رویدادها و فعالیتها را طوری طراحی میکنیم که اطلاعات مربوط به طرفین (یعنی ارسال و دریافت فعالیتها، پیامها و رویدادهای) را مدیریت کند.
میتوانیم این عناصر را از طریق فعالیتهای نمودار Choreography استخراج کنیم. سپس با افزودن سایر فعالیتهای داخلی میتوانیم مرحله ۲ روش فوق را ادامه دهیم. بعد در مرحله ۳، منابع داخلی را در هر قسمت با استفاده از Laneها، مدلسازی کرده و سپس با همین روش ادامه دهیم.