# مدل و نشانه‌گذاری فرایند کسب‌وکار

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

ابتکار مدیریت فرآیند کسب و کار (BPMI) BPMN را توسعه داد، که از زمان ادغام دو سازمان در سال ۲۰۰۵ توسط گروه مدیریت اشیاء حفظ شده‌است. نسخه 2.0 BPMN در ژانویه ۲۰۱۱ منتشر شد، که در آن زمان این نام با **مدل فرآیند تجارت *و* نماد** سازگار شد زیرا معانی اجرای نیز در کنار عناصر نمادین و نمودار قرار گرفت. آخرین نسخه BPMN 2.0.2 است که در ژانویه ۲۰۱۴ منتشر شده‌است.

## بررسی اجمالی

مدل و نشانگر فرآیند کسب و کار (BPMN) استانداردی برای مدل‌سازی فرایندهای تجاری است که یک نشانگر گرافیکی برای مشخص کردن فرآیندهای تجاری در *نمودار فرآیند تجارت* (BPD)، مبتنی بر یک تکنیک نمودار کاری بسیار شبیه به نمودارهای فعالیت از زبان مدل سازی واحد (UML) ارائه می‌دهد. هدف BPMN پشتیبانی از مدیریت فرایندهای تجاری، هم برای کاربران فنی و هم برای کاربران تجاری، با ارائه نشانه ای است که برای کاربران کسب و کار بصری باشد، در عین حال قادر به نشان دادن معانی پیچیده فرآیند است. مشخصات BPMN همچنین نقشه ای بین گرافیک‌های نماد گذاری و ساختارهای اساسی زبان‌های اجرا، به ویژه برای زبان اجرای فرآیند تجارت (BPEL) ارائه می‌دهد.

هدف اصلی BPMN ارائه یک یادداشت استاندارد است که توسط همه ذینفعان تجاری قابل فهم باشد. این شامل تحلیلگران تجاری می‌شود که فرایندها را ایجاد و بهسازی می‌کنند، توسعه دهندگان فنی مسئول اجرای آنها هستند و مدیران تجاری که نظارت و مدیریت آنها را انجام می‌دهند. در نتیجه، BPMN به عنوان یک زبان مشترک عمل می‌کند، و باعث ایجاد شکاف ارتباطی بین طراحی فرآیند کسب‌وکار و پیاده‌سازی می‌شود.

در حال حاضر چندین استاندارد رقیب برای زبان‌های مدل‌سازی فرایندهای کسب‌وکار وجود دارد که توسط ابزارها و فرآیندهای مدل‌سازی استفاده می‌شوند.

BPMN توسط دو استاندارد جدید برای مدل‌های مدیریت پرونده ساختمانی و مدل‌های تصمیم‌گیری، مدل مدیریت پرونده و نماد گذاری و مدل تصمیم‌گیری و نشانه گذاری تکمیل شده‌است.

## مفاهیم

### محدوده (Scope)

BPMN به پشتیبانی از مفاهیم مدل سازی قابل استفاده در فرایندهای تجاری محدود شده‌است. انواع دیگر مدل‌سازی که توسط سازمان‌ها برای اهداف غیرفرآیندی انجام می‌شود از مبحث BPMN خارج است. نمونه‌هایی از مدل سازی مستثنی از BPMN عبارتند از:

* ساختارهای سازمانی
* خرابی‌های عملکردی
* مدل‌های داده

علاوه بر این، در حالی که BPMN جریان داده‌ها (پیام‌ها) و پیوستگی و ارتباط ساخت‌های داده به فعالیت‌ها را نشان می‌دهد، یک نمودار جریان داده نیست.

### عناصر(Elements)

مدل‌های BPMN توسط نمودارهای ساده ساخته شده از مجموعهٔ محدودی از عناصر گرافیکی بیان شده‌اند. آنها درک جریان و روند فعالیت‌های تجاری را هم برای کاربران تجاری و هم برای توسعه‌دهندگان ساده‌تر می‌کنند. چهار عنصر اساسی BPMN عبارتند از:

جریان اشیاء (Flow objects)
رویدادها(Events)، فعالیت ها(Activities)، دروازه‌ها (Gateways)
اتصال اشیاء (Connecting objects)
جریان توالی (Sequence Flow)، جریان پیام(message flow)، ارتباط (association)
خطوط شناور
مخزن(Pool)، خط(Lane)
ساخت‌ها (Artifacts)
شی داده(Data object)، گروه(group)، حاشیه نویسی(Annotation)
این چهار دسته ایجاد نمودارهای ساده فرآیند تجارت (BPD) را امکان‌پذیر می‌سازند. BPDها همچنین امکان ساخت انواع جدیدی از جریان شی یا ساخت‌ها را فراهم می‌کنند تا درک نمودار را آسان‌تر کنند.

### جریان اشیاء و اشیاء متصل کننده (Flow objects and connecting objects)

* رویداد
* اتصالات

*اشیاء جریان* اصلی عناصر توصیف کننده در BPMN هستند و از سه عنصر اصلی تشکیل شده‌اند: رویدادها، فعالیت‌ها و دروازه‌ها.

رویداد (Event)
یک رویداد با یک دایره نمایش داده می‌شود و چیزی را که *اتفاق می‌افتد* بیان *می‌کند* (در مقایسه با یک فعالیت، که نشان‌دهندهٔ کاری است که *انجام* شده). شمایل درون دایره نوع رویداد را نشان می‌دهد (به عنوان مثال، یک پاکت‌نامه یک پیام را یا یک ساعت زمان را نشان می‌دهد). رویدادها همچنین به عنوان **گیرنده** طبقه‌بندی می‌شوند (برای مثال، اگر گیرنده یک پیام دریافتی را بگیرد یک فرآیند شروع می‌شود) یا **پرتاب** (مانند پرتاب یک پیام تکمیلی با پایان یافتن یک فرایند).
شروع رویداد (Start event)
به عنوان یک محرک فرآیند عمل می‌کند؛ که توسط یک خط باریک نشان داده می‌شود، و فقط می‌تواند *Catch باشد*، بنابراین با یک آیکون باز (طرح کلی) نشان داده شده‌است.
رویداد واسط (Intermediate event)
چیزی را نشان می‌دهد که بین وقایع شروع و پایان اتفاق می‌افتد. با دو خط مشخص می‌شود، و می‌تواند *Throw* یا *Catch* (با استفاده از نمادهای توپر یا خالی به صورت مناسب). به عنوان مثال، یک کار(Task) می‌تواند به رویدادی برسد که پیام را به سمت مخزن دیگری پرتاب می‌کند، جایی که یک رویداد بعدی منتظر به دست آوردن پاسخ قبل از ادامه حرکت است.
پایان رویداد (End event)
نتیجه یک فرآیند را نشان می‌دهد. با یک خط ضخیم نشان داده می‌شود، و فقط می‌تواند *پرتاب(throw) کند*، بنابراین با یک آیکون توپر نشان داده می‌شود.
فعالیت (Activity)
فعالیتی که با یک مستطیل با گوشه‌های پرد نشان داده می‌شود و نوع کارهایی را که باید انجام شود را توصیف می‌کند. فعالیت یک اصطلاح عمومی برای کارهایی است که یک شرکت انجام می‌دهد. می‌تواند اتمی یا مرکب باشد.
وظیفه (Task)
یک کار تنها یک واحد کار را نشان می‌دهد که نمی‌تواند یا نمی‌توان آن را به سطح دیگری از جزئیات فرآیند کسب و کار تقسیم کرد و از آن به عنوان یک فعالیت اتمی یاد می‌شود. یک کار(Task) پایین‌ترین سطح فعالیت است که در نمودار فرآیند نشان داده شده‌است. مجموعه ای از وظایف ممکن است یک رویه سطح بالا باشد.
فرایند فرعی (Sub-process)
برای پنهان کردن یا آشکار کردن سطوح اضافی از جزئیات فرآیند کسب و کار استفاده می‌شود. هنگام collapse، یک فرایند فرعی توسط یک علامت به علاوه روبه رو خط پایین مستطیل نشان داده می‌شود. هنگام expand، مستطیل گرد برای نشان دادن همه اشیاء جریان، اشیاء متصل و ساخت‌ها باز می‌شود. فرایند فرعی به یک فعالیت ترکیبی گفته می‌شود.
وقایع شروع و پایان خود را دارند. جریان توالی از پروسهٔ *والدین* نباید از دو مرز عبور کند.
تراکنش (Transaction)
به تمام فرایندهای فرعی باید به عنوان یک مجموعه کلی عمل شود یعنی، همه آنها باید برای رسیدن به یک هدف کامل شوند، و اگر یکی از آنها نتواند کامل شود، همه آنها باید جبران شوند (undone). تراکنش‌ها توسط یک خط دو طرفه از فرایندهای فرعی که باز شدند متمایز می‌شوند.
فعالیت فراخوانی
نقطه ای در فرآیند که یک فرآیند سراسری یا یک کار سراسری استفادهٔ مجدد می‌شود. فعالیت فراخوانی با سایر فعالیت‌ها با یک خط توپر و ضخیم دور فعالیت متمایز می‌شود.
دروازه (Gateway)
دروازه ای با شکل الماس نشان داده می‌شود و بسته به شرایط بیان شده، forkکردن و ادغام مسیرها را تعیین می‌کند.
انحصاری (Exclusive)
برای ایجاد جریانهای جایگزین در یک فرآیند استفاده می‌شود. از آنجا که تنها یکی از مسیرها را می‌توان طی کرد، آن را انحصاری می‌نامند.
برپایه رویداد (Event Based)
شرط(condition)مسیر یک فرآیند براساس یک رویداد ارزیابی شده را تعیین می‌کند.
موازی (Parallel)
استفاده می‌شود برای ایجاد مسیرهای موازی بدون ارزیابی شرایط.
شامل (Inclusive)
برای ایجاد جریان‌های جایگزین که در آن همه مسیرها ارزیابی می‌شوند استفاده می‌شود.
برپایه رویداد انحصاری (Exclusive Event Based)
رویدادی در حال ارزیابی است تا مشخص شود کدام یک از مسیرهای متقابل منحصر به فرد طی خواهد شد.
مجموعه ای (Complex)
برای مدل سازی رفتار همگام سازی پیچیده و یک مجموعه استفاده می‌شود.
برپایه رویداد موازی (Parallel Event Based)
دو فرآیند موازی بر اساس یک رویداد آغاز می‌شوند، اما هیچ ارزیابی ای از این رویداد وجود ندارد.
اتصالات (Connections)
*اشیاء جریان* با استفاده از **اشیاء متصل کننده**، که از سه نوع تشکیل شده‌اند: دنباله‌ها، پیام‌ها و انجمن‌ها به یکدیگر متصل می‌شوند.

جریان دنباله (Sequence Flow) یک دنباله جریان با یک فلش صاف نشان داده می‌شود، و ترتیب فعالیت‌هایی که انجام می‌شود را نشان می‌دهد. *جریان دنباله* همچنین ممکن است در آغاز کار خود دارای نمادی باشد، یک الماس کوچک، تعدادی از **جریان‌های شرطی** از یک فعالیت را نشان می‌دهد، در حالی که خط مورب **جریان پیش فرض** از یک تصمیم یا فعالیت با جریان‌های شرطی را نشان می‌دهد.
جریان پیام (Message Flow) یک جریان پیام با خط چین، یک دایره توخالی در ابتدا و یک فلش در انتها نشان داده می‌شود. جریان پیام به ما نشان خواهد داد که چه پیغام‌هایی در مرزهای سازمانی (مثلاً بین مخزن‌ها) جریان دارند. جریان پیام هرگز نمی‌تواند برای اتصال فعالیت‌ها یا رویدادها در همان مخزن مورد استفاده قرار گیرد.

#### انجمن (Association)

یک انجمن با نقطه چین نشان داده می‌شود. از آن برای پیوند یک Artifact یا متن به یک Object Flow استفاده می‌شود، و می‌تواند با استفاده از یک فلش، جهت‌گیری را نشان دهد (به سمت artifact برای نمایش یک نتیجه، از artifact به عنوان یک ورودی، و هر دو برای اشاره به اینکه خوانده شده و به روز شده). وقتی Artifact یا متن با یک توالی یا جریان پیام همراه است، از جهت‌ها استفاده نمی‌شود.
### خطوط شناور و ساخت‌ها

* شناگران
* اشیاء داده
* گروه‌ها

خطوط شنا(Swim lanes) یک مکانیسم دیداری از سازماندهی و طبقه‌بندی فعالیت‌ها، بر اساس نمودار جریان عملکردی متقابل است، و در BPMN شامل دو نوع است:

استخر (Pool)
شرکای اصلی در یک فرآیند را نشان می‌دهد، و معمولاً سازمان‌های مختلف را از هم جدا می‌کنند. استخر شامل یک یا چند خط (مانند استخر واقعی) است. استخر می‌تواند توخالی باشد (به عنوان مثال نشان دادن جزئیات داخلی) هنگامی که به عنوان یک مستطیل بزرگ نشان داده شده‌است که یک یا چند خط را نشان می‌دهد، یا collapse (یعنی پنهان کردن جزئیات داخلی). وقتی به عنوان یک مستطیل خالی نشان داده شود که از عرض یا ارتفاع نمودار کشیده شده.
مسیر (Lane)
برای سازماندهی و طبقه‌بندی فعالیت‌های داخل استخر با توجه به عملکرد یا نقش مورد استفاده قرار می‌گیرد و به صورت مستطیل با توجه به طول یا ارتفاع استخر به تصویر کشیده می‌شود. یک مسیر شامل اشیاء جریان، اشیاء به هم متصل شونده و ساخت‌ها می‌شود.
**ساخت ها(Artifacts)** به توسعه دهندگان اجازه می‌دهد تا اطلاعات بیشتری را در مدل یا نمودار وارد کنند. در این روش خوانایی مدل یا نمودار بیشتر می‌شود. سه ساخت از پیش تعریف شده وجود دارد که عبارتند از:

* اشیاء داده ها(Data objects): اشیاء داده به خواننده نشان می‌دهند که چه داده‌ای در یک فعالیت مورد نیاز است یا تولید می‌شود.
* گروه(Group): گروه با مستطیل با گوشه‌های گرد و خط چین نمایش داده می‌شود. گروه برای گروه‌بندی فعالیت‌های مختلف استفاده می‌شود اما بر جریان نمودار اثر نمی‌گذارد.
* حاشیه نویسی(Annotation): حاشیه نویسی برای قابل فهم کردن نمودار یا مدل به خواننده استفاده می‌شود.

### نمونه‌هایی از نمودارهای فرآیند کسب‌وکار

* Click on small images for full-size version
* چرخه بحث
* روند رای‌گیری از طریق پست الکترونیکی
* جمع آوری آرا

### BPMN نسخه ۲٫۰٫۲

چشم‌انداز BPMN 2.0.2 داشتن یک مشخصات واحد برای یک مدل و نشانگر فرآیند کسب و کار جدید است که نشانگر، متامدل و قالب مبادله را تعریف می‌کند اما با وجود نام اصلاح شده که هنوز با نام تجاری "BPMN" حفظ شده‌است. این ویژگی‌ها عبارتند از:

* رسمی کردن معانی اجرا برای همهٔ عناصر BPMN
* تعریف مکانیسم قابلیت توسعه برای اکستنش‌های مدل فرایند و اکستنشن‌های گرافیکی
* پالایش و تصحیح ترکیب رویدادها و ارتباط آنها
* تعمیم و گسترش تعریف تعامل انسان
* تعریف مدل Choreography

نسخه فعلی مشخصات در ژانویه ۲۰۱۴ منتشر شد.

## انواع زیر مدل BPMN

از مدل سازی فرایندهای تجاری برای ارتباط دادن طیف گسترده‌ای از اطلاعات به طیف گسترده‌ای از مخاطبان استفاده می‌شود. BPMN به منظور پوشش دادن استفاده در طیف گسترده طراحی شده اجازه می‌دهد تا مدلسازی فرآیندهای کسب‌وکار end-to-end را انجام دهد تا بیننده نمودار بتواند به راحتی بین بخشهای یک نمودار BPMN تمایز قایل شود. سه مدل اساسی زیر مدل‌ها در یک مدل BPMN وجود دارد: فرآیندهای تجاری خصوصی (داخلی)، فرآیندهای انتزاعی (عمومی) و فرآیندهای همکاری (سراسری):

### فرآیندهای تجاری خصوصی (داخلی)

فرآیندهای تجارت خصوصی آنهایی هستند که در یک سازمان خاص قرار دارند و نوعی از فرایندها هستند که عموماً تحت عنوان گردش کار یا فرآیندهای BPM شناخته می‌شوند. اگر از خطوط شناور استفاده شود، یک فرآیند کسب‌وکار خصوصی در یک استخر واحد گنجانده می‌شود. توالی جریان فرآیند بنابراین در داخل استخر موجود است و نمی‌تواند از مرزهای استخر عبور کند. پیام جریان می‌تواند از مرز استخر عبور کند تا تعاملاتی که بین فرآیندهای تجاری جداگانه وجود دارد، نشان دهد.
### فرآیندهای انتزاعی (عمومی)

نشان دهنده تعامل بین یک فرآیند تجارت خصوصی با یک فرآیند یا یک شرکت کننده دیگر است. فقط فعالیتهایی که خارج از فرآیند کسب‌وکار خصوصی ارتباط برقرار می‌کنند در فرایند انتزاعی گنجانده شده‌اند. سایر فعالیتهای «داخلی» فرایند تجارت خصوصی در فرآیند انتزاعی نشان داده نشده‌است؛ بنابراین، روند انتزاعی دنباله پیامهایی را که برای تعامل با آن فرایند تجاری مورد نیاز است، به جهان خارج نشان می‌دهد. فرآیندهای انتزاعی درون استخر موجود است و می‌تواند به‌طور جداگانه یا در نمودار بزرگتر BPMN مدل سازی شود تا جریان پیام را بین فعالیتهای فرآیند انتزاعی و سایر موجودات نشان دهد. اگر فرآیند انتزاعی در همان نمودار با فرآیند کسب و کار خصوصی مربوط به‌ آن باشد، می‌توان فعالیتهایی را که برای هر دو فرآیند مشترک است، مرتبط دانست.
### فرآیندهای همکاری (جهانی)

یک فرآیند همکاری تعامل بین دو یا چند نهاد تجاری را به تصویر می‌کشد. این فعل و انفعالات به عنوان دنباله ای از فعالیت‌ها تعریف شده‌اند که الگوهای تبادل پیام بین نهادهای درگیر را نشان می‌دهد. فرآیندهای همکاری ممکن است درون استخر باشد و تعاملات تجاری مختلف شرکت کننده به عنوان خطوط درون استخر نشان داده می‌شود. در این شرایط، هر خط دو شرکت کننده و یک مسیر سفر بین آنها را نشان می‌دهد. آنها همچنین ممکن است به عنوان دو یا چند فرآیند انتزاعی در تعامل با جریان پیام (همان‌طور که در بخش قبلی توضیح داده شده‌است) نشان داده شوند. این فرایندها را می‌توان به‌طور جداگانه یا در نمودار BPMN بزرگتر مدل سازی کرد تا ارتباط بین فعالیت‌های فرآیند همکاری و سایر نهادها را نشان دهد. اگر فرآیند همکاری در همان نمودار به عنوان یکی از پروسه‌های مربوط به تجارت خصوصی قرار داشته باشد، می‌توان فعالیتهایی که برای هر دو فرآیند مشترک است را مرتبط دانست.
در داخل و بین این سه زیر مدل BPMN، بسیاری از انواع نمودارها ایجاد می‌شوند. در زیر انواع فرآیندهای تجاری است که می‌تواند با BPMN مدل سازی شود (موارد ستاره دار ممکن است به یک زبان قابل اجرا نگاشت نشوند):

* فعالیتهای فرایند خصوصی سطح بالا (تفکیک عملکردی) \*
* فرآیند تفصیلی کسب‌وکار خصوصی
* فرآیند کسب‌وکار قدیمی یا همان‌طور که بوده \*
* فرایند کسب‌وکار جدید یا آنگونه که باید باشد
* فرآیند تفصیلی کسب‌وکار خصوصی با تعامل با یک یا چند نهاد خارجی (یا فرآیندهای "جعبه سیاه")
* دو یا چند فرآیند تفصیلی کسب‌وکار خصوصی در تعامل
* رابطه فرایند کسب‌وکار خصوصی با فرآیند انتزاعی
* رابطه فرایند کسب‌وکار خصوصی با فرآیند همکاری
* دو یا چند فرآیند انتزاعی \*
* رابطه فرایند انتزاعی با فرآیند همکاری \*
* فقط فرآیند همکاری (به عنوان مثال، ebXML BPSS یا RosettaNet) \*
* دو یا چند فرآیند کسب‌وکار خصوصی در تعامل با فرآیندهای انتزاعی یا یک فرآیند همکاری

BPMN به گونه ای طراحی شده‌است که به انواع مختلف گفته شده در بالا از نمودارها شدنی است. با این حال، باید توجه داشت که اگر انواع بسیاری از مدلهای فرعی، مانند سه یا چند فرآیند خصوصی با جریان پیام بین هر یک از آنها، ترکیب شوند، ممکن است درک آن دشوار شود؛ بنابراین، OMG توصیه می‌کند که مدل ساز یک هدف متمرکز را برای BPD، مانند یک فرآیند خصوصی یا همکاری انتخاب کند.

## مقایسه با سایر نمادهای مدل سازی فرایند

زنجیره‌های فرآیند رویداد محور (EPC) و BPMN دو زبان نشانه‌گذاری با بیان مشابه در هنگام مدلسازی فرایند هستند. یک مدل BPMN می‌تواند به یک مدل EPC تبدیل شود. در مقابل، یک مدل EPC تنها با از دست دادن اندک اطلاعات می‌تواند به یک مدل BPMN تبدیل شود. یک مطالعه نشان داد که برای همان فرایند، مدل BPMN ممکن است حدود ۴۰٪ عناصر کمتری نسبت به مدل EPC مربوط به‌ آن را داشته باشد، اما با مجموعه ای از نمادها کمی بزرگتر؛ بنابراین مدل BPMN آسانتر است. تبدیل بین دو نماد می‌تواند به صورت خودکار انجام شود.

نمودارهای فعالیت UML و BPMN دو زبان نشانه‌گذاری هستند که می‌توانند برای مدل سازی فرآیندهای یکسان استفاده شوند: یک زیر مجموعه از عناصر نمودار فعالیت دارای معنایی مشابه با عناصر BPMN هستند، با وجود مجموعه کوچکتر و کمتر بیانگر نمادها. یک مطالعه نشان داد که به رغم محدودیت‌های بالاتر نمودار فعالیت، هر دو نوع مدل فرایند، به نظر می‌رسد که سطح خوانایی یکسانی برای کاربران بی تجربه دارند.

## نقاط ضعف

نقاط ضعف BPMN می‌تواند مربوط به موارد زیر باشد:

* ابهام و سردرگمی در خصوص به‌اشتراک‌گذاری مدل‌های BPMN
* عدم پشتیبانی از کارهای روزمره
* عدم پشتیبانی از کار دانش، و تبدیل مدلهای BPMN به محیط‌های اجرایی
* عدم پشتیبانی از قوانین کسب‌وکار و تصمیم‌گیری
* عدم پشتیبانی از نقش‌های امنیتی نظیر تأیید یک وظیفه
* عدم پشتیبانی از محدودیت‌های منابع نظیر وظایف متعدد نیازمند یک منبع اشتراکی نظیر فضای کار
* عدم پشتیبانی از وظایف زمان‌بندی‌شده
* عدم پشتیبانی از وظایف تصادفی یا وظایف همراه با زمان یا منابع مورد نیاز نامشخص

## جستارهای وابسته

* مدیریت فرایندهای تجاری
* مدل‌سازی فرایندهای کسب‌وکار
* مدل‌سازی و نشان‌گذاری مدیریت موارد
* مدل تابع
* گردش کار

## منابع

* Grosskopf, Decker and Weske. (Feb 28, 2009). *The Process: Business Process Modeling using BPMN*. Meghan Kiffer Press. ISBN 978-0-929652-26-9. Archived from the original on 30 April 2019. Retrieved 6 April 2020.
* Stephen A. White; Conrad Bock (2011). *BPMN 2.0 Handbook Second Edition: Methods, Concepts, Case Studies and Standards in Business Process Management Notation*. Future Strategies Inc. ISBN 978-0-9849764-0-9.