زمان تقریبی مطالعه: 6 دقیقه
چگونه باید فرایندها را به فرایندهای کوچکتر تبدیل کرد؟
گاهی اوقات برخی فرایندها آنقدر وسیع و پیچیده تحلیل می شوند که کار اجرا و پیاده سازی آنها بسیار دشوار میشود. به دلیل وجود تسکهای فراوانی که در مدل اولیه فرایند گنجانده می شوند روال ساخت فرایندها طولانی تر و پیاده سازی آنها بسیار دشوار میشود و در نتیجه فرمهای فرآیند زیاد شده و تعداد فیلدهای بیشتری مورد نیاز است و این باعث میشود پایگاه داده آن بسیار سنگینتر و پیچیده تر گردد. علاوه بر پیاده سازی حتی بعد از پیاده سازی و اجرایی شدن در سازمان نیز مشکلاتی به وجود می آورد.
از جمله این مشکلات عبارتند ار:
- سنگین شدن حجم مدل داده و کند شدن سیستم
- عدم ردیابی آسانتر فرایندها
- وجود فیلدها وپیچیده تر شدن پایگاه داده و سخت شدن گزارش گیری
به منظور جلوگیری از به وجود آمدن چنین مشکلاتی باید فرایندهای بزرگ را به چندین فرایند کوچکتر تبدیل کرد و سپس آنها را به وسیله رویداد های2.0 bpmn مانند Signal ،Message یا استفاده از subprocees به هم مرتبط کرد.
برای فرآیندها به چندین فرآیند کوچکتر تقسیم شوند تکنیک یا استاندارد خاصی وجود ندارد و همه چیز بستگی به نگرش تحلیلگر و مدیران ارشد سازمان ، ماموریت و نوع فعالیت سازمان دارد.
Signal یا Message در واقع به منظور ارتباط بین دو فرایند استفاده میشوند، به این صورت که فرآیند ها را به فرآیندهای کوچکتر تقسیم میکنیم و خروجی و ورودی فرآیند ها را از طریق المانهای Shgnal و Message به هم ارتباط دهیم.
در عکس زیر نمونه ای از این ارتباط را مشاهده می کنید.
Subprocees به فرآیندهایی گفته می شوند در داخل فرآیند های دیگر استفاده می شوند و باعث کوچکتر شدن فرآیند اصلی (فرآیند پدر) می شوند.
زیرفرآیندها بطور کلی به چهار نوع تقسیم میشوند :
(Embedded Subprocess)
نوعی از زیرفراینداست که مدل داده جداگانه مختص خود را ندارد و از مدل داده فرایند پدر استفاده مینماید. (یعنی بیشتر شبیه یک Task است که چند Task دیگر را در برمیگیرد)
(Reusable SubProcess)
فعالیتهای تکراری را فرایند کنید (مانند تاییدات) و آنرا بصورت Reusable SubProcess در دیگر فرایندها فراخوانی کنید. به این صورت که اگر در فرآیندهای مختلف مانند درخواست کالا، درخواست خرید، صدور چک و… ، سلسه مراتب تاییدات دارید می توانید آنرا به عنوان فرآیند تاییدات سازمان دیده و در دیگر فرآیندها به عنوان زیر فرآیند استفاده کنید.
(Multiple SubProcess )
به منظور توزیع کار از Multiple SubProcess استفاده می شود. به این صورت که مثلا در فرآیند خرید در مرحله ای که نیاز است خرید انجام شود بیش از یک مسئول خرید در سازمان مشغول فعالیت است به منظور توزیع کار بین این نفرات می توان با این نوع زیرفرآیند کار را توزیع و پس از انجام خرید دوباره فعالیت ها را جمع کرد و یکجا به جریان انداخت.
(transaction subprocess)
فرآیند پرداخت وجه را در نظر بگیرید که از فرآیند خرید به زیر فرآیند پرداخت وجه رسیده است. می خواهیم پرداختی را از بانک انجام دهیم حالت های مختلفی اتفاق می افتد. به صورت عادی پرداخت انجام می شود و رسید صادر می شود و فرآیند از شاخه درست به خاتمه می رسد. در صورتی که مشکلی به وجود بیاید به هر دلیل پرداخت صورت نگیرد میتواند از مسیر دیگری که همان نماد Error است به خاتمه برسد و پیغام دهد که کار به چه دلیلی درست انجام نشده است.
همانند عکس زیر: