چکیده متن

در سری آموزش‌های پیشین انواع Taskها از سری Activityها را بیان کردیم. در این مقاله نیز به معرفی Task Markerها می‌پردازیم.
علاوه بر انواع وظایف ارائه شده، ما می‌توانیم با علامت‌گذاری وظایف از آن‌ها به عنوانLoop ، multiple instances و یا compensations استفاده نماییم؛ که در ادامه به تفصیل آنها را توضیح خواهیم داد. در این رابطه،Marker ها می‌توانند با انواع مختلف وظایف ارائه شده ترکیب شوند.

اشتراک گذاری

آموزش گام به گام BPMN 2.0 – سری پنجم


در سری آموزش‌های پیشین انواع Taskها از سری Activityها را بیان کردیم. در این مقاله نیز به معرفی Task Markerها می‌پردازیم.

علاوه بر انواع وظایف ارائه شده، ما می‌توانیم با علامت‌گذاری وظایف از آن‌ها به عنوانLoop ، multiple instances  و یا compensations استفاده نماییم؛ که در ادامه به تفصیل آنها را توضیح خواهیم داد. در این رابطه،Marker ها می‌توانند با انواع مختلف وظایف ارائه شده ترکیب شوند.

 

Loop

یک Loop task تا زمانی که شرایط تعریف شده یا اعمال و یا متوقف شود، تکرار می‌شود.  Loop task برای یکبار اجرا می‌شود و پس از آن بررسی می‌کند تا در صورت نیاز وظیفه را دوباره اجرا نماید که برنامه نویسان برای انجام این کار از ساختار do-while استفاده می‌نمایند. همچنین می‌توانیم از ساختار do-while استفاده نماییم که در آن وظیفه قبل از اینکه اجرا شود چک می‌شود. هرچند مورد دوم به ندرت اتفاق می‌افتد اما در مواردی که وظیفه کلا قابل اجرا نیست این مورد رخ می‌دهد.

همچنین شما می‌توانید شرایطی که در آن یک Loop task برای اولین بار اجرا می‌شود را به وظیفه مورد نظر ضمیمه کنید و یا شرایط اعمال تکرارهای مجدد را برای اجرایی شدن وظیفه به عنوان یک یادداشت به وظیفه اضافه نمایید. در این حالت شما می‌توانید این شرایط را به عنوان یک ویژگی در یک زبان رسمی از ابزار BPMN خود نیز ذخیره کنید. این کار باعث می‌شود که اگر فرآیند قابلیت اجرایی داشته باشد با استفاده از یک موتور فرآیند اجرا شود.

 

Compensation

compensation task type فعالیتی که برای جبران اثرات فعالیت‌های دیگر و درواقع به عنوان یک اداره‌کننده خسارت استفاده می‌شود. اداره کننده‌های خسارت در یک جریان منظم قرار نمی‌گیرند و تنها زمانی اجرا می‌شوند که یک رویداد ارسال می‌شود. بر این اساس، این وظیفه در نمودار فرآیند تنها توسط associations  نشان داده می‌شود و به هیچ عنوان از جریان‌های ترتیبی استفاده نمی‌شود.

compensation می تواند با سایر انواع وظیفه نیز استفاده شود. یک compensation نیز می‌تواند به صورت موازی بارها و بارها تکرار و اجرا شود تا در نهایت به موفقیت برسد.

این نکنه نیز قابل توجه است که compensation ممکن است که هیچ sequence flows ورودی یا خروجی‌ای نداشته باشد.

 

Multiple Instance

چرخه های تکی در یک Loop task بایستی از یکدیگر تبعیت کنند. یک multiple task instantiates می‌تواند به صورت یک توالی و یا به صورت موازی بارها و بارها تکرار و اجرا شود که در حالت موازی بودن روال اجرایی فرآیند جالب‌تر می‌شود. یکMultiple Instance  یک فعالیت منظم می‌باشد که دارای ویژگی‌های تعریف شده اضافی می‌باشد که به اصطلاح مشخصاتMulti-instance  نامیده می‌شود؛ که باعث می‌شود فعالیت چندین بار در یک بازه زمان اجرا شود.

فعالیت‌های زیر می‌توانند به یک  Multi-instance تبدیل شوند:

  • Service Task
  • Send Task
  • User Task
  • Business Rule Task
  • Script Task
  • Receive Task
  • Manual Task
  • (Embedded) Sub-Process
  • Call Activity
  • Transaction Subprocess

یک Gateway و یا Eventها نمی‌توانند به یک Multi-instance تبدیل شوند. 

اگر یک فعالیت Multi-instance باشد توسط سه خط کوتاه در انتهای فعایت نمایش داده می‌شود و Parallel MI Marker نامیده می‌شود. سه خط عمودی نشان می‌دهد که نمونه‌ها می‌توانند به صورت موازی انجام شوند در حالی‌که سه خط افقی (Sequential MI Marker) نشان دهنده اجرای متوالی نمونه‌هاست.(شکل بالا)

گردآوری و تنظیم: دنیا برزگر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *