اشتباهات رایج در مدلسازی BPMN: در ارتباط با SwimLane ها

در اصطلاحات BPMN، یک "SwimLane" المان های اصلی گروه بندی شده BPMN را – هم در pool و هم در Lane – نشان می دهد.

Pool ها: 

یک Pool عنصری اصلی در BPMN است که مرزهای یک فرآیند کسب وکار را مشخص می کند. یک Pool شامل حداکثر یک فرآیند خواهد بود و این بدین معنی است که دو فرآیند مجزا بایستی در دو Pool مختلف مدلسازی شوند. یک Pool ممکن است جزئیات داخلی قابل مشاهده ای را به صورت فرآیندی که اجرا خواهد شد، داشته باشد (به آن یک White-box Pool گفته می شود) و یا می تواند جزئیات داخلی قابل مشاهده ای را شامل نگردد (به آن یک Black-box Pool گفته می شود). نوع Pool ی که مورد استفاده قرار می گیرد، بستگی به سطح جزئیات مورد نیاز و محتوای خاص دارد. White-box Pool ها عموما در پس فرآیندهای متناظرشان نامگذاری می شوند (به عنوان مثال فرآیند مدیریت نیازمندی ها، فرآیند Help-Desk یا فرآیند تحویل خدمات) و این در حالی است که Black-box Pool ها در پس سازمان ها، افراد و یا سیستم های متناظرشان نامگذاری می شوند (به عنوان مثال فروشنده، مشتری و یا سیستم مدیریت محتوا)

 

Lane ها:

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

          شکل۱ - BPMN SwimLane ها که به صورت Pool ها و Lane ها مشخص شده اند

 

سوء تفاهم های رایج:

مفهوم و معنای لغوی Pool ها و Lane ها معمولا سوء تفاهم های رایجی را منجر می شوند، به عنوان مثال، مجموعه ای از Pool ها می توانند به طور ناصحیح به عنوان Lane هایی در یک pool واحد و یا حتی برعکس رفتار کنند که منجر به اشتباهات نحوی و معنایی در مدلسازی فرآیند می شود.
به دلیل تفاوت های معنایی بین Pool ها و Lane ها، المان های جریان BPMN (فعالیت ها، درگاه ها و رخدادها) بسته به استفاده از آن ها در یک Pool و یا بین Pool ها، به صورت های متفاوتی به یکدیگر متصل می شوند. در یک Pool، المان های جریان BPMN با استفاده از جریان های توالی به یکدیگر متصل می شوند که این امر در شکل ۲ نشان داده شده است. 

                        شکل ۲ - قوانین ارتباط جریان توالی

 

فقط جریان های پیام (message flows) می توانند در زمان ارتباط بین Pool ها مورد استفاده قرار گیرند. در واقع جریان های پیام تبادل پیام بین دو Pool و یا دو  فرآیند را مشخص می کنند که شامل همگام سازی آن ها می شود. جریان های پیام می توانند به گونه هایی که در شکل 3 تعریف شده است، مورد استفاده قرار گیرند.

                                 شکل۳ - قوانین ارتباط جریان پیام

 

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

بر اساس این تصورات غلط، سه اشتباه زیر  در مدل سازی BPMN رایج است:

اشتباه 1: جریان های توالی گم شده

مشکل. به هنگام مدلسازی چندین Pool، (به عنوان مثال راهکارهای Business-to-Business را می توان نام برد که در آن ها دو یا چند فرآیند با یکدیگر تعامل دارند) یک اشتباه رایج زمانی است که فعالیت ها در یک Pool به جریان توالی متصل نیستند. شایع ترین دلیل برای این اشتباه، این است که یک طراح مدل ممکن است با چندین Pool مانند یک فرآیند واحد رفتار کند و جریان پیام ها را به اشتباه تفسیر نماید. این نوع از مدل فرآیندی معتبر نیست، زیرا توالی فعالیت ها به روشنی تعریف نشده اند.

 

                    شکل 4 - نادرست است زیرا جریان توالی گم شده است

 

راه حل. طراح مدل بایستی همیشه Pool های منحصر به فرد را مدلسازی و اعتبار سنجی کند و در نظر داشته باشد که یک Pool نمی تواند شامل بیش از یک فرآیند باشد. این بدین معناست که تمامی المان های جریان در یک Pool باید با استفاده از جریان های توالی که در شکل 2 و 3 تعریف شده اند، به یکدیگر متصل شوند.

 

  شکل ۵ - درست است زیرا ارتباطات داخل فرایند و تعاملات بین فرایندی مشخص شده است

 

اشتباه 2: استفاده نادرست از جریان های توالی

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

شکل ۶ - نادرست است زیرا یک جریان توالی ممکن نیست از مرزبندی های Pool خارج گردد

 

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

 

شکل ۷ - درست است زیرا یک جریان توالی ممکن است مرزبندی های Lane ها را بشکند

 

اشتباه 3: استفاده نادرست از Lane ها

مشکل. گاهی یک طراح مدل ممکن است به اشتباه با یک Lane مانند یک Pool رفتار کند، بنابراین فرآیندهای منحصر به فرد در Lane های جداگانه نمایش داده می شوند. شکل زیر این اشتباه را نشان می دهد.

       شکل ۸ - نادرست است زیرا از دو Lane به جای دو Pool استفاده شده است

 

راه حل. راه حل معمول این اشتباه مشابه مورد قبل است یعنب بایستی یک فرآیند واحد را از دو مورد تعریف نمود (در شکل 9 نشان داده شده است). این بدین معناست که رخدادهای آغاز و پایان تکراری را می بایست از مدل حذف نمود. در این مورد که نیاز به چندین Pool است، (چندین فرآیند مستقل وجود دارد) راه حل اشتباه 1 باید استفاده شود.

شکل ۹ - درست است زیرا یک جریان توالی ممکن است مرزبندی های Lane ها را بشکند

 

با این وجود، توجه به این امر بسیار مهم است که از لحاظ دستوری نادرست نمی باشد اگر یک فرآیند واحد دارای دو رخداد آغاز و یا دو رخداد پایانی باشد! به عنوان مثال، رخدادهای مختلف زیادی می توانند یک فرآیند را در مکان های مختلفی آغاز کنند، برای نمونه می توان به آغاز ناهمگام فرآیند بر مبنای ارسال پیام یا آغاز دوره ای فرآیند هر صبح اشاره نمود. از سوی دیگر، پایان فرآیند در وضعیت های پایان مختلف معمول است (به عنوان مثال رفتار موفقیت آمیز و رفتار ناموفق را می توان نام برد).

 

نتیجه گیری:

در این مطلب مفهوم SwimLane های BPMN را معرفی  کردیم که می تواند با Pool ها و Lane ها مدلسازی شود. در یک نگاه، هر دو المان بسیار شبیه به هم به نظر می رسند، با این حال، معنای کاملأ متفاوتی دارند!
یک Pool در برگیرنده یک فرآیند واحد است  در حالیکه یک Lane مانند یک مکانیزم کلاس بندی فعالیت عمل می کند. بر مبنای این تفاوت ها، روش ایجاد ارتباط و وابستگی المان های جریان در BPMN کاملأ متفاوت است. در مورد تعاملات بین Pool ها، تنها جریان های پیام می توانند مورد استفاده قرار گیرند و از سوی دیگر، فقط جریان های توالی می توانند در یک Pool و بین Lane ها استفاده شوند.


نویسنده: Gregor Polancic

منبع: Common BPMN modeling mistakes: Swimlanes

ترجمه: پانیذ فرزین


 

درباره رایورز

شرکت مهندسی نرم‌افزار رایورز در اوایل سال 1368 توسط جمعی‌از فعالین حرفه نرم‌افزار تأسیس گردید...

بیشتر بدانید

ارتباط با ما

  • تهران، خيابان ولی عصر، نرسيده به توانير، خيابان احتشام، شماره 5
  • 89326000

  • BPMS@rayvarz.com

خبرنامه پایگاه دانش BPM