فرض کنید چند نفر بخواهند یک فرایند سازمانی را روی کاغذ رسم کنند. ممکن است هرکدام برای فعالیت، تصمیم یا مسئولیت از شکلها و نشانههای متفاوتی استفاده کنند. در یک مسیر ساده شاید منظور همه قابل فهم باشد، اما با اضافهشدن چند نقش، مسیر جایگزین یا فعالیت موازی، احتمال برداشتهای متفاوت بیشتر میشود.
BPMN برای کاهش همین ابهام، یک زبان تصویری استاندارد برای نمایش فرایندهای کسبوکار فراهم میکند.
این استاندارد مشخص میکند فعالیتها، رویدادها، تصمیمها، مسئولیتها و ارتباط میان بخشهای مختلف فرایند چگونه نمایش داده شوند تا نمودار فقط برای سازنده آن قابل فهم نباشد.
نکته اصلی از همین ابتدا روشن است:
BPMN خودِ فرایند، روش مدیریت فرایند یا نرمافزار اجرای فرایند نیست؛ استانداردی برای مدلسازی و نمایش فرایندهای کسبوکار است.
BPMN چیست؟
BPMN مخفف Business Process Model and Notation است و استانداردی برای نمایش تصویری فرایندهای کسبوکار به شمار میرود.
با استفاده از BPMN میتوان مشخص کرد یک فرایند از کجا شروع میشود، چه فعالیتهایی در آن انجام میشوند، کجا تصمیم گرفته میشود، چه نقشها یا مشارکتکنندگانی درگیر هستند، مسیر کار چگونه ادامه پیدا میکند و فرایند در چه نقطهای پایان مییابد.
تفاوت مهم BPMN با یک ترسیم آزاد از فرایند در این است که عناصر و روابط آن معنای استانداردشده دارند. شکلها و خطوط صرفاً برای مرتبکردن نمودار نیستند؛ هرکدام مفهوم مشخصی را منتقل میکنند.
BPMN نرمافزار، روش مدیریتی یا زبان برنامهنویسی نیست. این استاندارد یک زبان مدلسازی است که کمک میکند منطق فرایند به شکل ساختاریافتهتری نمایش داده شود.
BPMN 2.0 چیست؟
نسخه 2 خانواده BPMN،استاندارد را توسعه داد و علاوه بر نمایش گرافیکی، مدل رسمیتر و قابلیتهایی برای تبادل مدل میان ابزارها و تعریف رفتار اجرایی را نیز پوشش داد.
در زمان نگارش این مقاله، BPMN 2.0.2 آخرین نسخه رسمی منتشرشده از سوی Object Management Group یا OMG است.
استاندارد بینالمللی ISO/IEC 19510:2013 نیز به BPMN اختصاص دارد و متن آن با BPMN 2.0.1 یکسان است.
برای آشنایی اولیه با BPMN، تفاوت این زیرنسخهها موضوع اصلی نیست. نکته مهم این است که BPMN 2.x فقط مجموعهای از شکلها نیست؛ عناصر و روابط آن قواعد و معنای مشخصی دارند.
چرا BPMN به وجود آمد؟
سازمانها پیش از BPMN نیز فرایندهای خود را رسم میکردند. مشکل زمانی ایجاد میشد که هر تیم یا تحلیلگر از نشانهها و قراردادهای خودش استفاده میکرد.
در این شرایط ممکن بود یک نمودار برای سازنده آن روشن باشد، اما فرد دیگری نداند یک شکل چه معنایی دارد، تصمیم در کجا گرفته میشود یا مسئول هر فعالیت چه کسی است.
BPMN با استانداردکردن نحوه نمایش فرایند کمک میکند افراد مختلف درباره یک مدل، برداشت نزدیکتری داشته باشند.
هدف اصلی استاندارد نیز همین است: ایجاد زبانی که برای افراد کسبوکار قابل فهم باشد و در عین حال دقت کافی برای انتقال روشن منطق فرایند به متخصصان فنی را داشته باشد.
برای مثال، در یک درخواست مأموریت سازمانی میتوان نشان داد درخواست از کجا آغاز میشود، چه کسی آن را بررسی میکند، تصمیم تأیید در کدام نقطه گرفته میشود و مسیر پس از تأیید یا رد چگونه ادامه پیدا میکند.
اجزای اصلی BPMN را چگونه بخوانیم؟
BPMN عناصر متعددی دارد و برای مدلسازیهای پیشرفته میتواند بسیار جزئی شود. اما برای فهم یک نمودار پایه، شناخت چند مفهوم اصلی کافی است.
Event
Event (رویداد) نشان میدهد اتفاقی در فرایند رخ میدهد.
در سطح پایه با سه جایگاه اصلی روبهرو هستیم:
Start Event نشان میدهد فرایند از چه نقطهای آغاز میشود.
Intermediate Event اتفاقی را نشان میدهد که در طول جریان فرایند رخ میدهد.
End Event مشخص میکند یک مسیر چگونه تمام میشود.
برای مثال، ثبت درخواست مأموریت میتواند باعث آغاز فرایند شود و مشخصشدن نتیجه نهایی درخواست، پایان آن باشد.
BPMN انواع تخصصیتری از Eventها نیز دارد، اما برای شناخت اولیه همین تفاوت کافی است.
Activity
Activity (فعالیت) کاری است که در جریان فرایند انجام میشود.
مثلاً:
بررسی درخواست مأموریت توسط مدیر
یک Activity است.
Activity ممکن است یک Task مشخص باشد یا خود شامل چند مرحله شود که در قالب Sub-Process نمایش داده میشوند.
برای خواندن یک مدل پایه کافی است از خود بپرسیم:
در این نقطه از فرایند چه کاری انجام میشود؟
Gateway
Gateway (دروازه) برای کنترل مسیر جریان استفاده میشود.
فرض کنید بعد از بررسی درخواست مأموریت این سؤال مطرح باشد:
آیا درخواست تأیید شده است؟
اگر پاسخ مثبت باشد، مسیر به بررسی واحد اداری ادامه پیدا میکند و اگر پاسخ منفی باشد، درخواست رد میشود.
برای چنین حالتی میتوان از Exclusive Gateway (دروازه انحصاری) استفاده کرد. ExclusiveGateway زمانی کاربرد دارد که براساس یک شرط، یکی از مسیرهای جایگزین انتخاب شود.
Parallel Gateway (دروازه موازی) کاربرد متفاوتی دارد. از آن میتوان زمانی استفاده کرد که چند مسیر بدون انتخاب یکی از آنها، بهصورت موازی ادامه پیدا کنند یا دوباره با یکدیگر هماهنگ شوند.
در سطح مقدماتی همین تفاوت کافی است: Exclusive Gateway برای انتخاب میان مسیرهای جایگزین و Parallel Gateway برای ایجاد یا هماهنگکردن مسیرهای موازی استفاده میشود.
Flow
خطوط میان عناصر نشان میدهند اجزای مدل چگونه با یکدیگر ارتباط دارند.
دو مفهوم مهم برای شروع، Sequence Flow (جریان توالی) و Message Flow (جریان پیام) هستند.
Sequence Flow و Message Flow چه تفاوتی دارند؟
Sequence Flow ترتیب حرکت داخل یک فرایند را نشان میدهد.
برای مثال:
ثبت درخواست مأموریت ← بررسی مدیر ← تصمیم
Message Flow برای نمایش ارتباط میان مشارکتکنندگان مستقل استفاده میشود؛ یعنی زمانی که ارتباط از جنس تبادل پیام میان دو Pool جدا باشد.
قاعده مهم این است که Sequence Flow در محدوده یک Pool حرکت میکند و برای نمایش ارتباط میان Poolهای مختلف از Message Flow استفاده میشود.
به این ترتیب BPMN میان ترتیب داخلی فعالیتها و تبادل پیام میان مشارکتکنندگان تفاوت قائل میشود.
Pool و Lane چه چیزی را نشان میدهند؟
Pool معمولاً محدوده یک مشارکتکننده در فرایند یا تعامل را نشان میدهد؛ برای مثال یک سازمان یا طرف مستقل.
Lane تقسیمبندی درون یک Pool است و میتواند برای جداکردن فعالیتهای مربوط به نقشها یا واحدهای مختلف استفاده شود.
در مثال درخواست مأموریت سازمانی میتوان Laneهای جداگانهای برای درخواستکننده، مدیر واحد و واحد اداری در نظر گرفت. به این ترتیب خواننده علاوه بر مسیر کار، میتواند ببیند مسئولیت فعالیتها میان چه نقشها یا بخشهایی تقسیم شده است.
یک مثال ساده از BPMN
فرض کنید یکی از کارکنان سازمان برای انجام یک مأموریت کاری درخواست ثبت میکند.
مسیر ساده فرایند میتواند اینطور باشد:
Start Event
↓
Activity: ثبت درخواست مأموریت
↓
Activity: بررسی توسط مدیر
↓
Exclusive Gateway: درخواست تأیید شده است؟
اگر درخواست تأیید نشود:
↓
End Event: رد درخواست
اگر درخواست تأیید شود:
↓
Activity: بررسی واحد اداری
↓
End Event: ثبت نتیجه
برای نمایش مسئولیتها نیز میتوان فعالیتها را در Laneهای مربوط به درخواستکننده، مدیر واحد و واحد اداری قرار داد.
در این مثال هر عنصر پاسخ یک سؤال مشخص را میدهد:
فرایند از کجا شروع میشود؟
چه Activityهایی انجام میشوند؟
هر Activity به چه نقش یا واحدی مربوط است؟
در کدام نقطه مسیر تغییر میکند؟
و فرایند چگونه پایان مییابد؟
هدف این مثال آموزش کامل طراحی BPMN نیست؛ فقط میخواهیم ببینیم عناصر اصلی استاندارد چگونه در کنار هم منطق یک فرایند را قابل خواندن میکنند.
BPMN چه چیزی نیست؟
شناخت مرزهای BPMN به اندازه شناخت عناصر آن اهمیت دارد.
BPMN خودِ BPM نیست
BPMN یک استاندارد مدلسازی است.
در مقابل، مدیریت فرایندهای کسبوکار یا BPM رویکردی گستردهتر برای مدیریت و بهبود فرایندهای سازمان است.
ممکن است BPMN در فعالیتهای مرتبط با BPM استفاده شود، اما BPM را نمیتوان به رسم نمودار BPMN محدود کرد.
BPMN همان Workflow نیست
گردش کار بیشتر روی حرکت یک کار میان فعالیتها و مسئولان تمرکز دارد.
BPMN میتواند برای مدلکردن چنین جریانی استفاده شود، اما مفهوم Workflow و استاندارد BPMN یکسان نیستند.
BPMN نرمافزار نیست
ابزارهای مختلفی برای رسم یا استفاده از BPMN وجود دارند، اما خود BPMN نام یک نرمافزار نیست.
استاندارد مشخص میکند عناصر چه معنایی دارند؛ هر ابزار نیز براساس دامنه پشتیبانی خود امکان ایجاد، نگهداری یا در بعضی موارد اجرای مدل را فراهم میکند.
BPMN زبان برنامهنویسی نیست
یک مدل BPMN میتواند جزئیات زیادی داشته باشد، اما ترسیم یک نمودار بهتنهایی معادل ساخت یک فرایند اجرایی نیست.
تفاوت BPMN و Flowchart چیست؟
BPMN و فلوچارت هر دو میتوانند جریان فعالیتها و تصمیمها را بهصورت تصویری نمایش دهند، اما هدف و میزان استانداردسازی آنها یکسان نیست.
Flowchart روشی عمومی برای نمایش یک جریان یا منطق است. BPMN بهطور مشخص برای مدلسازی فرایندهای کسبوکار طراحی شده و برای عناصر و روابط آن معنای استانداردشده تعریف شده است.
موضوع | Flowchart | BPMN |
|---|---|---|
کاربرد | نمایش عمومی جریان یا منطق | مدلسازی فرایندهای کسبوکار |
قواعد عناصر | وابسته به روش و قرارداد نمودار | دارای معنا و قواعد مشخص در استاندارد |
نمایش فعالیت و تصمیم | بله | بله |
نمایش نقشها و مشارکتکنندگان | بسته به روش طراح | ساختار مشخص Pool و Lane |
نمایش تعامل میان مشارکتکنندگان | معمولاً وابسته به روش طراح | Message Flow معنای مشخص دارد |
مدلسازی سناریوهای پیچیدهتر | ممکن است به قراردادهای تکمیلی نیاز داشته باشد | عناصر تخصصیتری در استاندارد وجود دارد |
برای جریانهای ساده، فلوچارت میتواند کاملاً کافی باشد.
اما زمانی که لازم است نقشها، تعاملات، رویدادها و مسیرهای جایگزین با معنای دقیقتری نمایش داده شوند، BPMN زبان ساختاریافتهتری در اختیار مدلساز قرار میدهد.
آیا هر مدل BPMN قابل اجراست؟
خیر.
این یکی از مهمترین مرزهایی است که هنگام آشنایی با BPMN باید بدانیم.
بعضی مدلها صرفاً برای توضیح، مستندسازی یا تحلیل فرایند ساخته میشوند. هدف آنها این است که افراد مختلف بتوانند منطق کلی فرایند را به شکل مشترکتری ببینند.
در مقابل، بعضی مدلها با هدف اجرا در یک موتور فرایند ساخته میشوند.
استاندارد BPMN نیز میان مدلسازی فرایند و الزامات لازم برای مدلهای قابل اجرا تفاوت قائل میشود.
برای اجرای واقعی معمولاً فقط دانستن ترتیب Activityها کافی نیست. بسته به سامانه ممکن است لازم باشد اطلاعات دیگری مانند مسئول فعالیت، دادههای موردنیاز، فرمها، قواعد تصمیمگیری، ارتباط با سامانههای دیگر و رفتار در شرایط استثنایی نیز مشخص شوند.
بنابراین:
هر مدل اجرایی BPMN یک مدل BPMN است، اما هر نمودار BPMN الزاماً یک مدل آماده اجرا نیست.
این تفاوت مهم است؛ چون استانداردبودن یک نمودار بهتنهایی به معنی آمادهبودن آن برای اجرا در یک موتور فرایند نیست.
BPMN چه ارتباطی با BPMS دارد؟
در بسیاری از سامانههای مدیریت فرایند، مدل فرایند یکی از نقاط شروع طراحی و پیادهسازی است.
BPMN در اینجا میتواند زبان مشترکی میان تحلیلگر فرایند و افرادی باشد که قرار است منطق فرایند را در سامانه پیادهسازی کنند.
البته دامنه پشتیبانی از BPMN در همه محصولات یکسان نیست و باید برای هر ابزار بهطور جداگانه بررسی شود.
اگر میخواهید با نقش BPMS در اجرای دیجیتال فرایند آشنا شوید، راهنمای BPMS چیست؟ این موضوع را با جزئیات بیشتری توضیح میدهد.
چند اشتباه رایج در استفاده از BPMN
استفاده از عناصر بیشتر الزاماً به معنی داشتن مدل بهتر نیست. BPMN زمانی مفید است که نمودار همچنان قابل فهم باشد و عناصر در معنای درست خود استفاده شوند.
پیچیدهکردن بیش از حد نمودار
اگر تمام استثناها و جزئیات در یک تصویر قرار بگیرند، خواندن مدل دشوار میشود.
استفاده از Gateway بدون تصمیم روشن
مسیرها از یکدیگر جدا شدهاند، اما مشخص نیست این جدایی براساس چه شرطی اتفاق میافتد.
اشتباهگرفتن Sequence Flow و Message Flow
ترتیب داخلی Activityها با تبادل پیام میان مشارکتکنندگان یک مفهوم نیست.
نامشخصبودن مسئول Activityها
Activityها دیده میشوند، اما مشخص نیست چه نقش یا واحدی مسئول انجام آنهاست.
استفاده از نماد بدون شناخت معنای آن
ممکن است یک شکل از نظر ظاهری مناسب به نظر برسد، اما معنای استاندارد آن با چیزی که مدلساز در نظر داشته متفاوت باشد.
مدل مناسب لزوماً مدلی نیست که بیشترین تعداد نماد BPMN را داشته باشد؛ باید به اندازه نیاز فرایند دقیق و برای مخاطبانش قابل فهم باشد.
BPMN در گراف BPMS
گراف BPMS امکان مدلسازی فرایند مبتنی بر BPMN 2.0 را فراهم میکند.
در یک سناریوی اجرایی، مدل فرایند میتواند در کنار فعالیتها، نقشها، فرمها، قواعد و سایر اطلاعات موردنیاز برای اجرای فرایند قرار گیرد.
برای آشنایی بیشتر با محیط طراحی و اجرای فرایند میتوانید صفحه فرایندساز سازمانی را مشاهده کنید.
جمعبندی
BPMN زمانی ارزشمند است که افراد مختلف بتوانند یک مدل فرایند را ببینند و درباره معنای Activityها، تصمیمها، مسئولیتها و جریان میان آنها برداشت نزدیکتری داشته باشند.
ارزش اصلی BPMN در تعداد نمادهای آن نیست؛ در معنای مشترکی است که برای عناصر و روابط میان آنها تعریف میکند.
برای شروع لازم نیست تمام جزئیات استاندارد را یاد بگیرید. اگر بتوانید Event، Activity، Gateway، Flow، Pool و Lane را بشناسید و تفاوت کلی Sequence Flow و Message Flow را درک کنید، پایه مناسبی برای خواندن بسیاری از نمودارهای BPMN خواهید داشت.
BPMN خود فرایند نیست؛ زبان مشترکی برای نمایش فرایند است.
پرسشهای متداول
BPMN مخفف چیست؟
BPMN مخفف Business Process Model and Notation است. این اصطلاح به استانداردی برای مدلسازی و نمایش تصویری فرایندهای کسبوکار اشاره دارد.
BPMN 2.0 چیست؟
BPMN 2.0 نسل دوم استاندارد BPMN است. آخرین نسخه رسمی منتشرشده از سوی OMG در این خانواده BPMN 2.0.2 است.
تفاوت BPMN و BPM چیست؟
BPM یک رویکرد برای مدیریت و بهبود فرایندهای کسبوکار است، درحالیکه BPMN استانداردی برای مدلسازی و نمایش فرایند است. BPMNمیتواند یکی از ابزارهای مورد استفاده در فعالیتهای BPM باشد.
تفاوت BPMN و Flowchart چیست؟
فلوچارت برای نمایش عمومی جریانها مناسب است، درحالیکه BPMN بهطور مشخص برای مدلسازی فرایندهای کسبوکار طراحی شده و برای عناصر و روابط مختلف معنا و قواعد استانداردشده تعریف میکند.
آیا نمودار BPMN در BPMS قابل اجراست؟
بعضی مدلهای BPMN میتوانند در سامانههای دارای موتور فرایند مبنای اجرا قرار گیرند، اما هر نمودار BPMN بهطور خودکار آماده اجرا نیست. اجرای واقعی معمولاً به اطلاعات و تنظیمات بیشتری درباره نقشها، دادهها، قواعد و ارتباط با سامانههای دیگر نیاز دارد.