BPMN2 (استاندارد مدل و نشانه گذاری فرآیندهای کسب و کار) و راهنمای مدل ها و علامت ها

تعریف (Business Process Model and Notation)BPMN

BPMN2 (Business Process Model and Notation) یا استاندارد مدل و نشانه گذاری فرآیندهای کسب و کار یک استاندارد جهانی برای به تصویر کشیدن فرآیندهای تجاری (BPM) می باشد. بر طبق این استاندارد می توان کلیه عملیات و جریان کار فرآیند را به زبان تصویر با علامت های استاندارد تعریف شده نشان داد تا برای تمام ذینفعان در هر کجای دنیا قابل درک باشد.

نمایش گرافیکی نمودار ها میتوانید به درک بهتر فرآیند کمک شایانی نماید.

خلاصه تاریخچه BPMN2

گروه مدیریت اشیاء (OMG) در ماه می ۲۰۰۴ استاندارد (نگارش BPMN1.0) جهت یکسان سازی عملیات فرآیندها را پیشنهاد داد و توسط گروه OMG در فبریه ۲۰۰۶ به تصویب رسید. در ادامه نکارش ها، BPMN1.1 در سال ۲۰۰۸ و نگارش همکنون BPMN2.0 در سال ۲۰۱۱ منتشر شد.

BPMN پایه ای برای تجدید نظر سایر علامت گذاری ها و روشها، به ویژه نمودار فعالیت UML، فرآیند تجاری UML EDOC ، IDEF ، ebXML BPSS، نمودار تصمیم گیری فعالیت (نمودار ADF)، RosettaNet، LOVeM و زنجیره های فرآیند مبتنی بر رویداد می باشد.

هدف اصلی BPMN

ارائه یک روش نشانه گذاری است که به راحتی برای همه کاربران تجاری قابل درک باشد، تحلیلگران کسب و کار (business analysts) که فرآیند را ایجاد می کنند تا توسعه دهندگان فنی مسئول اجرای ۲۲۲ G. Aagesen و J. Krogstie فناوری که از عملکرد آن فرآیندها پشتیبانی کرده و در نهایت ، تاجران که فرآنیدها را مدیریت و رصد خواهند کرد.(وایت ۲۰۰۴)

نمادهای BPMN2


نمودار همکاری (Collaboration Diagram)

استخر (Pool)

استخر (poll) در برگیرنده تمامی اشیا، و ارتباطات موجود در فرآیند می باشد ، لذا برای شروع فرآیند ابتدا یک استخر (Poll) به صفحه افزوده می شود.(همین شکل پایین!)

مسیر(Lane)

برای طبقه بندی و مرتب سازی داخل محدوده (Pool)، از مسیر(Lane) استفاده می شود. مسیرها اصطلاحا شکست محدوده(Pool) به قسمت های کوچیکتر است. اصلاح استخر و ردیف های آن برای این موضوع مشابه سازی شده است.

یک نمونه خیلی ساده از یک فرآیند

فعالیت ها (Activities)

در استاندارد BPMN2 فعالیت ها به شکل ذیل نشان داده می شود.

وظیفه (Task)

وظیفه (Task) یک واحد از کار است، کاری که باید انجام شود. وقتی با علامت + مشخص می شود یعنی یک فرآیند فرعی است و میتواند تصفیه شود.

رویدادهای زیر فرآیند (Event Sub-Process)

یک رویداد فرآیند فرعی در یک فرآیند یا فرآیند فرعی قرار می گیرد. هنگامی که رویداد آن شروع شده فعال می شود و بسته به رویداد شروع میتواند زمینه قطع کردن فرآیند بالاتر را باعث شده و یا به صورت موازی اجرا شود (بدون وقفه).

تراکنش (Transaction)

تراکنش به مجموعه فعالیت هایی گفته می شود که به صورت منطقی انجام می شوند و به هم تعلق دارند.ممکن است از یک پروتکل جابجایی مشخص استفاده نمایند.

فراخوانی فعالیت (Call Activity)

فراخوانی فعالیت یک پوشش است برای یک فرآیند یا وظیفه تعریف شده عمومی، که در روند فعلی مجدد استفاده می شود.

نشانگر های فعالیت (Activity Markers)

نشانگرها رفتار انجام فعالیت ها را نشان می دهند و در خط پایین وظیفه (Task) قرار می گیرند:

نشانگر زیر فرآیند
Sub-Process Marker

نشانگر حلقه
Loop Marker

نشانگر MI موازی
Parallel MI Marker

نشانگر MI متوالی
Sequential MI Marker

نشانگر Ad Hoc
Ad Hoc Marker

نشانگر جبران خسارت
Compensation Marker

انواع وظیفه ها (Task Types)

ماهیت عملی که باید انجام شود را مشخص می کند و در گوشه سمت چپ بالای وظیفه قرار می گیرد:

وظیفه ارسال
Send Task

وظیفه دریافت
Receive Task

وظیفه کاربر
User Task

وظیفه دستی
Manual Task

وظیفه نرم افزار کاربردی
Business Rule Task

وظیفه سرویس
Service Task

وظیفه اسکریپت
Script Task

ارتباطات بین اشیاء (Connecting objects)

جریان توالی (Sequence Flow)

ترتیب اجرای فعالیتها را مشخص می کند.

جریان پیش فرض (Default Flow)

یک انتخاب پیش فرض است، اگر سایر شرایط به صورت نادرست ارزیابی شوند این آیتم انتخاب می شود.

جرایان شرطی (Conditional Flow)

یک شرط اختصاص داده شده دارد که مشخص می کند جریان استفاده می شود یا خیر.


دروازه ها (Gateways)

استاندارد BPMN2 دراوزه ها را با اشکال ذیل تعریف میکند.

دروازه اختصاصی (Exclusive Gateway)

هنگام تقسیم کارها ، جریان توالی را دقیقاً به یکی از شاخه های خروجی که شرط آن برقرار است هدایت می کند. هنگام ادغام ، قبل از ایجاد جریان خروجی ، منتظر تکمیل یک شاخه ورودی می ماند.

دروازه مبتی رو رویداد (Event-based Gateway)

همیشه با دریافت اتفاقات یا دریافت وظایف ادامه پیدا می کند. جریان توالی به رویداد / وظیفه ای منتقل می شود که ابتدا اتفاق افتاده باشد.

دروازه موازی (Parallel Gateway)

زمانی که برای تقسیم جریان توالی استفاده می شود، همه شاخه های خروجی به طور همزمان فعال می شوند. هنگام ادغام شاخه های موازی، قبل از ایجاد جریان خروجی منتظر تکمیل تمام شاخه های ورودی است.

دروازه فراگیر (Inclusive Gateway)

هنگام تقسیم وطایف، یک یا چند شاخه فعال می شوند. تمام شعب ورودی فعال باید قبل از ادغام کامل شوند.

رویداد مبتنی بر رویداد اختصاصی – فوری(Exclusive Event-based Gateway(instantiate))

در زمان وقوع یک رویداد بعدی، یک نمونه فرآیند جدید را شروع می کند.

دروازه پیچیده (Complex Gateway)

رفتار پیچیده در زمان ادغام و انشعاب که توسط دروازه های دیگر جذب نمی شود.

دروازه مبتنی بر رویداد موازی(Parallel Event-based Gateway (instantiate))

در زمان وقوع همه رویدادهای بعدی یک نمونه فرآیند جدید را شروع می کند.


رویدادها(Events)

در استاندارد BPMN2 این اشکلال معرف همان رویدادها و یا اتفاقاتی هستند که در هر فرآیند اتفاق می افتد.

رویدادها
Events
شروع
Start
حد واسط
Intermediate
پایانی
End
استاندارد
(Standard)
قطع کردن
رویداد
فرآیند فرعی
(Event
Sub-Process
Interrupting)
بدون وقفه
رویداد
فرایند فرعی
(Event
Sub-Process
Non-Interrupting)
گرفتن
(Catching)
قطع مرز
(Boundary
Interrupting)
بدون قطع
مرز
(Boundary
NonInterrupting)
انداختن
(Throwing)
استاندارد
(Standard)
هیچکدام(None): رویدادهای بدون نوع،
نقطه شروع ، تغییرات حالت یا حالتهای
نهایی را نشان می دهد.
شروع فرآیند 1-7-انداختن-Throwing 1-8-پایان
پیام(Message): ارسال و دریافت با پیام 34-Events-رویدادها-2-1-BPMN 34-Events-رویدادها-2-1-BPMN 35-Events-رویدادها-2-3-BPMN 36-Events-رویدادها-4-3-BPMN 36-Events-رویدادها-4-3-BPMN 37-Events-رویدادها-6-3-BPMN 38-Events-رویدادها-7-3-BPMN 39-Events-رویدادها-8-3-BPMN
تایمر(Timer): رویدادهای تایمر چرخه ای ،
نقاط زمانی ، بازه های زمانی یا مهلت زمانی.
40-Events-رویدادها-1-4-BPMN-تایمر-Timer 40-Events-رویدادها-1-4-BPMN-تایمر-Timer 41-Events-رویدادها-2-4-BPMN-تایمر-Timer 42-Events-رویدادها-3-4-BPMN-تایمر-Timer 42-Events-رویدادها-3-4-BPMN-تایمر-Timer 43-Events-رویدادها-3-4-BPMN-تایمر-Timer
تشدید(Escalation): بالا رفتن به سطح
بالاتری از مسئولیت.
44-Events-رویدادها-1-5-BPMN-Escalation-تشدید 45-Events-رویدادها-2-5-BPMN-Escalation-تشدید 46-Events-رویدادها-3-5-BPMN-Escalation-تشدید 47-Events-رویدادها-4-5-BPMN-Escalation-تشدید 48-Events-رویدادها-5-5-BPMN-Escalation-تشدید 49-Events-رویدادها-6-5-BPMN-Escalation-تشدید
مشروط(Conditional): واکنش به تغییر
شرایط کسب و کار یا ادغام قوانین تجارت.
50-Events-رویدادها-1-6-BPMN-Conditional-مشروط 50-Events-رویدادها-1-6-BPMN-Conditional-مشروط 51-Events-رویدادها-2-6-BPMN-Conditional-مشروط 52-Events-رویدادها-3-6-BPMN-Conditional-مشروط 52-Events-رویدادها-3-6-BPMN-Conditional-مشروط 53-Events-رویدادها-4-6-BPMN-Conditional-مشروط
پیوند(Link): اتصالات خارج از صفحه. دو
رویداد پیوند متناظر با جریان توالی برابر هستند.
54-Events-رویدادها-1-7-BPMN-Link-پیوند 55-Events-رویدادها-2-7-BPMN-Link-پیوند
خطا(Error): گرفتن یا پرتاب خطاهای
نامگذاری شده.
56-Events-رویدادها-1-8-BPMN-Error-خطا 57-Events-رویدادها-2-8-BPMN-Error-خطا 58-Events-رویدادها-3-8-BPMN-Error-خطا
انصراف(Cancel): واکنش به تراکنش های
منصرف شده یا راه اندازی لغو
59-Events-رویدادها-1-9-BPMN-Cancel-انصراف 60-Events-رویدادها-2-9-BPMN-Cancel-انصراف
جبران خسارت(Compensation): رسیدگی
یا راه اندازی جبران خسارت.
61-Events-رویدادها-1-10-BPMN-Compensation-جبران خسارت 62-Events-رویدادها-2-10-BPMN-Compensation-جبران خسارت 63-Events-رویدادها-3-10-BPMN-Compensation-جبران خسارت 64-Events-رویدادها-4-10-BPMN-Compensation-جبران خسارت
سیگنال(Signal: سیگنالها در فرایندهای مختلف
.یک سیگنال پرتاب شده می تواند چندین بار گرفته شود.
65-Events-رویدادها-1-11-BPMN-Signal-سیگنال 65-Events-رویدادها-1-11-BPMN-Signal-سیگنال 66-Events-رویدادها-2-11-BPMN-Signal-سیگنال 67-Events-رویدادها-3-11-BPMN-Signal-سیگنال 67-Events-رویدادها-3-11-BPMN-Signal-سیگنال 69-Events-رویدادها-5-11-BPMN-Signal-سیگنال 70-Events-رویدادها-6-11-BPMN-Signal-سیگنال 71-Events-رویدادها-7-11-BPMN-Signal-سیگنال
چندگانه(Multiple): گرفتن یکی از مجموعه رویدادها.
پرتاب تمام وقایع تعریف شده
72-Events-رویدادها-1-12-BPMN-Multiple-چندگانه 72-Events-رویدادها-1-12-BPMN-Multiple-چندگانه 73-Events-رویدادها-2-12-BPMN-Multiple-چندگانه 74-Events-رویدادها-3-12-BPMN-Multiple-چندگانه 74-Events-رویدادها-3-12-BPMN-Multiple-چندگانه 75-Events-رویدادها-4-12-BPMN-Multiple-چندگانه 76-Events-رویدادها-5-12-BPMN-Multiple-چندگانه 77-Events-رویدادها-6-12-BPMN-Multiple-چندگانه
چندگانه موازی(Parallel Multiple): گرفتن همه
موارد از مجموعه رویدادهای موازی.
78-Events-رویدادها-1-13-BPMN-Parallel Multiple-چندگانه موازی 78-Events-رویدادها-1-13-BPMN-Parallel Multiple-چندگانه موازی 79-Events-رویدادها-2-13-BPMN-Parallel Multiple-چندگانه موازی 80-Events-رویدادها-3-13-BPMN-Parallel Multiple-چندگانه موازی 80-Events-رویدادها-3-13-BPMN-Parallel Multiple-چندگانه موازی 81-Events-رویدادها-4-13-BPMN-Parallel Multiple-چندگانه موازی
خاتمه دادن(Terminate): ایجاد خاتمه فوری یک فرآیند 82-Events-رویدادها-1-14-BPMN-Terminate-خاتمه دادن

داده (Data)

داده ها در BPMN2 به شرح ذیل نشان داده می شوند.

شی داده (Data Object)

یک “شی داده” نشان دهنده اطلاعاتی است که در این روند جریان دارد، مانند اسناد تجاری، نامه های الکترونیکی یا سایر نامه ها.

مجموعه شی داده (Collection Data Object)

“مجموعه شی داده” مجموعه ای از اطلاعات ، به عنوان مثال ، لیستی از موارد سفارش را نشان می دهد.

داده ورودی (Data Input)

“داده ورودی” یک ورودی خارجی برای کل فرآیند است. نوعی پارامتر ورودی می باشد.

داده خروجی (Data Output)

“داده خروجی” نتیجه داده کل فرآیند است. نوعی پارامتر خروجی می باشد.

ارتباط داده (Data Association)

از “ارتباط داده” برای ارتباط عناصر داده با فعالیتها ، فرایندها و وظایف عمومی استفاده می شود.

ذخیره داده ها (Data Store)

“ذخیره داده” مکانی است که در آن فرآیند می تواند داده ها را بخواند یا بنویسد، مثلاً یک پایگاه داده یا یک محل بایگانی. این فراتر از طول عمر نمونه روند باقی می ماند.


مکالمه و گفتگوها (Conversations)

در استاندارد BPMN2 مکالمات مابین فرایندها به شرح ذیل نشان گذاری می شوند.

مکالمه(Conversation)

یک “مکالمه” مجموعه ای از تبادل پیام با منطق را تعریف می کند. هنگامی که با یک علامت + مشخص می شود ، یک زیر مکالمه ، یک عنصر مکالمه مرکب را نشان می دهد.

فراخوان مکالمه(Call Conversation)

“فراخوان مکالمه” یک بسته بندی برای یک مکالمه یا مکالمه فرعی است که در سطح عمومی تعریف شده است. تماس با مکالمه فرعی با علامت + مشخص شده است.

یک پیوند مکالمه مکالمات و شرکت کنندگان را به هم متصل می کند.

نمونه دیاگرام مکالمه
Conversation Diagram


گردش ها (Choreographies)

در استاندارد BPMN2 گردش ها به شرح ذیل نشان گذاری می شوند.

وظیفه گردش(Choreography Task)

یک وظیفه گردش نشان دهنده تعامل (تبادل پیام) بین دو شرکت کننده است.

زیر گردش(Sub-Choreography)

یک گردش فرعی شامل یک گردش تصویری تصفیه شده با چندین تعامل است.

فراخوان گردش (Call Choreography)

یک فراخوان گردش برای یک برنامه وظیفه گردش یا زیر گردش تنظیم شده در سطح عمومی است. تماس با یک گردش فرعی با یک نماد + مشخص شده است.

نشانگر چند شرکت کننده(Multiple Participants Marker)

مجموعه ای از شرکت کنندگان از همان نوع را نشان می دهد.

پیام (Message)

یک دکوراتور که محتوای پیام را به تصویر می کشد. فقط می تواند به کارهای تنظیم گردش پیوست شود.

نمونه نمودار گردش(رقص)
Choreography Diagram


شناگران(Swimlanes)

در استاندارد BPMN2 برای نمایش ارتباط مابین فرآیندها از اشکال ذیل استفاده می شود.

استخرها (شرکت کنندگان) و خطوط(Pools (Participants) and Lanes)

استخرها (شرکت کنندگان) و مسیرها مسئولیت فعالیتهای یک فرآیند را بر عهده دارند. استخر یا خط می تواند یک سازمان ، نقش یا سیستم باشد. خطوط به صورت سلسله مراتبی استخرها یا خطوط دیگر را تقسیم می کنند.

جریان پیامMessage) Flow)

جریان پیام نمادی از جریان اطلاعات در مرزهای سازمانی است. جریان پیام را می توان به استخرها ، فعالیت ها یا رویدادهای پیام پیوست کرد. جریان پیام را می توان با یک پاکت که محتوای پیام را نشان می دهد شرح داد.

ترتیب تبادل پیام(The order of message exchanges)

ترتیب مبادله پیام را می توان با ترکیب جریان پیام و جریان توالی مشخص کرد.


نرم افزارهای معروف در مدل سازی فرآیندها با استاندارد BPMN2.0

نرم افزار ویژوال پارادایم (Visual Paradigm)

یکی از نرم افزارهای شناخته شده و حرفه‌ای برای مهندسین نرم افزار است که به واسطه آن می‌توان اشکال استاندارد BPMN2 را به بهترین شکل ممکن طراحی و ترسیم نمود.


نویسنده و مترجم:

جواد فروتن راد


منابع


id Curabitur mattis non massa ut commodo