در این مقاله قصد داریم به توضیح رویدادهای آغازین و رویدادهای پایانی بپردازیم. تعامل یک فرایند کسب و کار با محیط توسط رویداد نمایش داده می شود. اما منظور از رویدادها یا event چیست؟ رویداد به اتفاقات دنیای واقعی گفته می شود که معنای کسب و کار دارند و نیاز به صرف زمان را ندارند. پس بسیار مهم است که تاکید شود بر خلاف فعالیت ها که نیاز به صرف زمان برای اجرا دارند، رویدادها نیاز به صرف زمان ندارند. یک رویداد آغازین شروع یک فرایند کسب و کار را مدل سازی می کند و یک رویداد پایانی کامل شدن یک فرایند را با یک خروجی مدل سازی می کند.
همان طور که مشاهده می کنید در این فرایند یک رویداد آغازین و دو رویداد پایانی وجود دارد که یکی موافقت ادعا را بیان می کند و دیگری عدم موافقت. این دو event، پایان یک فرایند کسب و کار را نشان می دهند. به علاوه آنها برچسب خروجی را دارند یعنی نام گذاری نیز می شوند.
حال قصد داریم به سناریو سفارش محصول برگردیم و آن را توسعه دهیم. در این جا فرایند صبر می کند تا یک دریافت سفارش صورت بگیرد و پس از دریافت سفارش محصول، به آن رسیدگی می شود و فرایند با موفقیت به پایان می رسد اما اگر به سفارش محصول رسیدگی نشود، فرایند با شکست مواجه می شود و سفارش لغو می گردد.
لازم است به این نکته توجه کنید که هر دو رویدادهای آغازین و پایانی در مورد ایجاد event ، ویژگی های متفاوتی دارند. یعنی وقتی یک فرایند شروع می شود، در حقیقت به پدید آمدن یک event در محیط اطراف واکنش نشان می دهد بنابراین به عنوان مثال دریافت سفارش، فعالیتی نیست که فرایند به تنهایی بتواند آن را انجام دهد. در واقع یک اتفاق در دنیای واقعی می باشد که مرتبط با فرایند است اما فرایند آن را شروع نکرده است و انجام نداده است بلکه به آن واکنش نشان داده است. اما رویدادهای پایانی در زمان ایجاد فرایند به وجود می آیند یعنی فرایند باعث به وجود آمدن رویداد پایانی می شود. بنابراین ابتدا رویداد آغازین توسط فرایند دریافت می شود و فرایند به آن واکنش نشان می دهد و یک یا چند رویداد پایانی را صادر می کند. پس می توان گفت که یک event می تواند دریافت شود که آن در محیط اتفاق می افتد و روی نمونه فرایند تاثیر می گذارد یا می تواند رها شود که در این مورد event توسط خود فرایند ایجاد شده است.
انواع رویداد در BPMN :
BPMN انواع مختلفی از رویدادها را ارائه می دهد که تاکنون با دو مورد آن که همان رویدادهای آغازین و پایانی هستند، آشنا شدید. به طور کلی انواع رویدادها در BPMN به شرح زیر می باشد:
• رویدادهای آغازین یا Start Events (Catching) :
رویدادهای آغازین باعث شروع یک نمونه فرایند می شوند. لازم به ذکر است که رویدادهای آغازین همیشه ماهیت دریافتی دارند.
• رویدادهای پایانی End Events (Throwing) :
رویدادهای پایانی ، خاتمه یک نمونه فرایند می باشند. رویدادهای پایانی همواره ماهیت رها سازی را دارند.
• رویدادهای میانی Intermediate Events (Catching and Throwing) :
رویدادهای میانی بعد از رویداد آغازین و قبل از رویداد پایانی قرار می گیرد. ماهیت این رویدادها می تواند هم از نوع دریافتی و هم رها سازی باشد. پس از رویدادهای میانی می توان در طول فرایند دریافت و یا رها کرد. در مقاله بعدی قصد داریم به صورت مفصل به موضوع رویدادهای میانی بپردازیم.
به طور کلی می توان گفت که رویدادها زمان گیر نیستند و رخدادهای دنیای واقعی هستند اما ممکن است یک فرایند منتظر یک رویداد میانی دریافتی بماند تا اتفاق بیفتد که در آینده آن را با یک مثال شرح خواهیم داد.
انواع حالت های رویداد در BPMN :
BPMN علاوه بر انواع رویدادها، از حالت رویدادها نیز پشتیبانی می کند. حالت های رویدادها شبیه به انواع وظیفه هستند و همان طور که قبلا گفته شد انواع وظایف می تواند از نوع پیامی (Message Task) و خدماتی (Service Task) باشد. حالت رویدادها در BPMN به گونه ای هستند که نوع آنها را با استفاده از نشانگرهای event می توان در مدل فرایندی نشان داد. بنابراین BPMN حالت های event را تعریف می کند که به ماهیت event ، ویژگی ها را منتقل می کند. این حالت های رویدادها می تواند با انواع رویدادها همراه شوند اما ترکیب کردن آنها امکان پذیر نیست. BPMN دارای مجموعه ای از رویدادهای غنی مانند حالت های رویدادها ، انواع رویدادها و همچنین رابطه بین آنها می باشد که به خوبی در این زبان استاندارد تعریف شده اند.
بنابراین انواع حالت های event به شرح زیر می باشد:
• رویداد میانی زمان سنج (Timer Intermediate Event): نماد این event مانند یک ساعت می باشد.
• رویداد پایانی خطا (Error End Event)
• رویداد آغازین پیامی (Message Start Event): مانند نشانگر وظیفه پیامی می باشد.
• غیر رویداد (None Start Event (Blank Start Event)): در برخی از موارد به ماهیت event اهمیتی داده نمی شود و مهم نیست که چه حالتی از event را نشان می دهد.
لازم به ذکر است که هر حالت event دارای یک نماد مشخصی می باشد که در شکل زیر قابل مشاهده است.
راهنمای مدل سازی مربوط به رویدادها :
رویدادها زمان بر نیستند. رویدادها، تغییرات مشاهده شده حالتی یک سیستم مانند محیط فرایند یا خود فرایند هستند که نباید از آنها برای مدل سازی فعالیت ها استفاده کرد. در واقع از رویدادها نمی توان برای مدل سازی فعالیت ها و یا عناصری که زمان بر هستند، استفاده کرد. برای تاکید بر اتفاق یک event، برچسب های این عنصر به صورت اسم فعلی سومین شخص استفاده می شوند مانند سفارش دریافت شد. اما یک استثناء برای راهنمای مدل سازی مربوط به رویدادها وجود دارد که آن هم مربوط به رویدادهای زمان سنج است که به عنوان مثال می توان برای آنها نوشت: هر دوشنبه ساعت 10 صبح، که یک برچسب معمولی رویداد آغازین می باشد که فرایند هر دوشنبه ساعت 10 صبح شروع می شود و فقط بیانگر این است که چه زمانی یک نمونه فرایند جدید باید ایجاد شود. در زمان استفاده از رویدادها باید از واژگان ساده استفاده کرد. به عنوان مثال سفارش دریافت شد و در واقع سفارش یک کلمه نیست و از سفارش باید در آینده در رویدادها و همچنین فعالیت ها بازتاب داده شود مانند: سفارش بررسی شد و یا جزئیات سفارش در سیستم IT وارد می شود.
رویدادهای آغازین و حالت های رویداد :
رویدادهای آغازین باعث راه اندازی ایجاد یک نمونه فرایند جدید و اجرای آن می شود. حالت های مختلفی برای رویدادهای آغازین وجود دارد که عبارتند از:
• رویدادهای آغازین Blank: این رویدادها زمانی استفاده می شوند که فرایند به صورت دستی شروع شده باشد و یا نوع رویداد آغازین برای هدف مدل سازی مهم نباشد.
• رویدادهای آغازین زمان سنج :
این نوع رویدادها تعریف تاریخ و زمان خاصی یا تاریخ اتفاق شروع فرایند را امکان پذیر می کند مانند دوشنبه ساعت 10 صبح
• رویدادهای آغازین پیامی :
این رویدادها نشان دهنده شروع یک فرایند پس از دریافت هستند که آن را در مثال ادعای خسارت از شرکت بیمه مشاهده کردید و وقتی درخواست ادعای خسارت از شرکت بیمه دریافت می شود، یک نمونه فرایند جدید ایجاد می شود. رویدادهای میانی (Intermediate Events)
راهنمای مدل سازی مربوط به رویداد آغازین و رویداد پایانی :
بهتر است که هر مدل فرایند کسب و کار با یک رویداد آغازین شروع شود که باعث نمونه سازی فرایند گردد. پس درک پاسخ این سوال که چه زمانی فرایند ایجاد می شود؟ آسان است زیرا وقتی یک رویداد آغازین رخ دهد، نمونه سازی فرایند نیز انجام می شود. در برخی از موارد ممکن است چندین رویداد آغازین نیاز باشد اما همیشه باید به صورت جایگزین باشد. شکل زیر یک مثال از یک فرایند کسب و کار می باشد که با سه رویداد آغازین ایجاد می شود.
مثال فوق نشان می دهد که چندین انتخاب برای شروع یک فرایند وجود دارد که سفارش را می توان از سه روش فکس، ایمیل و وب دریافت کرد. برای هر خروجی ممکن یک فرایند باید از یک رویداد پایانی متمایز استفاده کرد. نتایج مختلف یک فرایند معمولا معنای کسب و کاری مختلفی را دارند و از این رو باید توسط رویدادهای پایانی خاصی متمایز شوند و فرد قصد دارد نتایج را به صورت واضح در مدل نشان دهد و و بسیار مهم است که ویژگی های فرایند به صورت نتایج مدل سازی شوند.
در فرایند سفارش محصول، شما مشاهده می کنید که در رویدادهای پایانی سفارش ممکن است لغو و یا پذیرفته شود. بنابراین مهم است که رویدادهای پایانی به صورت انحصاری تعریف کنیم و تعداد زیادی رویدادهای پایانی به صورت همزمان وجود نداشته باشد که مانع درک صحیح فرایند گردد.
بدون دیدگاه