فرآیند های سازمانی

  ​در زمانی نه چندان دور تمامی فرآیند های سازمانی مبتنی بر سیستم کاغذی اجرا می شد. بدین معنا که افراد در سازمان ها می بایست فرم های کاغذی را به دست می گرفتند و برای گرفتن تایید درخواست خود زمان زیادی را صرف می کردند.   اما اکنون با استفاده از سیستم های  فرآیند ساز دیگر از مشکلاتی که در انجام فرآیند ها در قالب فرم های کاغذی وجود داشت خبری نیست. همچنین با استفاده از سیستم فرآیند ساز تمامی اشخاص و سیستم های اطلاعاتی در سازمان به یکدیگر پیوند می خورند و این امر به نوبه خود باعث اجرا و بهبود فعالیت ها و فرآیند های مختلف یک سازمان می شود و امکان گزارش گیری و کنترل روی فرآیندها و اطلاعات فرم ها مقدور می شود.
 
در همین راستا قصد دارم نگاهی به سیستم فرآیند ساز داشته باشم و قسمت های مختلف و نحوه عملکرد آن را بر پایه یک مثال توضیح دهم.   
در فرآیند ساز تمام فرآیند ها دو قسمت دارند : 1- فرم های فرآیند   2- گام های فرآیند
 
فرم ساز: این فرآیند ساز از فرم ساز پیشرفته Microsoft Office InfoPath  استفاده می کند و از آنجایی که جزء  محصولات آفیس می باشد یادگیری و کار با آن آسان است. این فرم ساز قابلیت طراحی انواع فرم ها ( از فرم های ساده گرفته تا فرم های پیچیده) را دارا می باشد.
 
گام های فرآیند: مراحلی که نیاز است انجام شود تا یک فرآیند کامل گردد اصطلاحا گام های فرآیند نام دارد. به عنوان مثال فرآیند درخواست مرخصی را در نظر بگیرید :
 
  • Sequential (ترتیبی) :  همانند فلوچارت در این مدل مجموعه ای ازمراحل که پشت سر هم تعریف شده اند اجرا می شوند. جریان روند کار بر اساس شرط ها، حلقه ها و گام های موازی صورت می پذیرد.
  •  State Machine : در این نوع گردش کار ترتیب خاصی وجود ندارد. برای روشن شدن بهتر موضوع مثال زیر را در نظر بگیرید. صبح که از خواب برمی خیزید احساس گرسنگی می کنید (این وضعیت را hungry ) می نامیم. سپس وقتی که صبحانه را میل کردید از وضعیت گرسنگی به وضعیت سیر بودن می روید (full). همچنین می توانید در این بین وضعیت های دیگری مثل  half-full یا a little-hungry را اضافه کنید. این همان روندی است که در گردش های ماشین حالت صورت می پذیرد. شما می توانید از این نوع گردش کار برای تقریبا هر فرآیندی که شامل وضعیت است استفاده کنید.
 
در این مدل مراحل را تعریف می کنیم، می توانیم به مراحل میانی برویم و برگشت به عقب داشته باشیم.  در مرحله برگشت به عقب ( برگشت به نفر قبلی یا درخواست قبلی) دقیقا فعالیت به دست کسی که در گام قبلی فعالیت دستش بوده بر می گردد و هنگامی که این فرد بررسی مجدد را انجام داد مسیر های قبلی طی می شود.
 
 حال که تا اندازه ای با کلیات فرآیند ها آشنا شدید به سراغ طراحی یک فرآیند می رویم.  فرآیند درخواست ماموریت را در نظر بگیرید، ابتدا از طریق فرم ساز InfoPath فرم درخواست ماموریت را طراحی می کنیم. توجه داشته که می توان view ها ( نماهای) مختلفی را برای یک فرم ایجاد کرد. چنانچه در ادامه توضیح خواهم داد هر مرحله از گردش کار توسط فرد یا افرادی قابل دسترس است. به عنوان مثال فرم درخواست ماموریت را  هم نگهبانی رویت می کند و هم مدیر عامل اما فیلدهایی که در این فرم به افراد نشان داده می شود با هم متفاوت است و بسته به سطح دسترسی که دارند و عملیاتی که روی فرم انجام می دهند تعیین می شود. بدین ترتیب نیاز می شود که برای هر گام نمای مخصوص به همان گام طراحی شود. بعد از اینکه فرم طراحی و ذخیره شده آن را در کتابخانه اسناد شیرپوینت publish می کنیم.

 در تعریف گام های فرآیند فیلد های متفاوتی وجود دارد که لازم است است با آنها آشنایی داشته باشیم.  نام مرحله : این نام به انگلیسی درج می شود که نمای مربوط به این مرحله را مشخص می کند که پیش از این آن را در توضیحات مربوط به InfoPath معرفی کردم. زیر مرحله زمانی استفاده می شود که تمامی فیلدهای دو مرحله با هم یکی است و فقط به عنوان مثال در یک فیلد با هم تفاوت دارند. بدین ترتیب در زیر مرحله می خواهیم یک مرحله جدید داشته باشیم اما دیگر نمای جدید تعریف نمی کنیم.  به ازای هر گام از فرآیند یک رکورد جدید ایجاد می کنیم. در تعریف گام باید ترتیب پیش فرض آن ها مشخص شود. مثلا اگر رکوردی که در حال تعریف آن هستیم گام دوم از فرآیند است پس فیلد ترتیب مقدار 2 را میگیرد.  
 
Role
  •  کاربر : نام کاربرانی را که مد نظرمان است درج می کنیم.
  • گروه: نام گروه یا گروه هایی که میخواهیم این فعالیت در گام بعدی به دست آن ها برسد را درج می کنیم. مثلا گروه مدیران
  • اعضای سیستمی : منظور نقش هایی هستند که توسط سیستم تفسیر می شوند. در یک سازمان بزرگ تعداد نقش ها بسیار زیاد است و از همان ابتدا نمی توان رابطه بین آن ها را تعریف کرد بنابراین شناسایی نقش ها به عهده سیستم گذاشته می شود. و سیستم از طریق کاربر جاری نقش ها را شناسایی می کند به عنوان مثال مدیران کاربر جاری و یا مدیر گردش کار.
  • اعضای جستجو: بدین صورت است که بر مبنای یک فیلد از اطلاعات فرم در لیستی جستجو می کنیم و اطلاعات کاربر مورد نظر را بدست می آوریم.
  • رونوشت به : دقیقا همانند نقش ها اعضای آن مشخص می شوند.اما این افراد فقط می توانند این فعالیت ها را ببینند و در حقیقت به گونه ای در جریان کار قرار می گیرند اما اقدامی روی آن نمی توانند انجام دهند.
  • مدت: مهلت انجام فرآیند است و زمانی که از مهلت اجرای فعالیت بگذرد و هنوز این گام انجام نشده باشد به حالت معوق می رود.
حال که تا اندازه ای با روند طراحی گام های فرآیند آشنا شدید به معرفی مواردی می پردازم که طی انجام یک فرآیند با آن ها سر و کار داریم. اگر یک درخواست را به گروهی از افراد (بیش از یک نفر ارسال کنیم) هر فردی که این وظیفه را اول انجام دهد درخواست نیز از کارتابل همان فرد خارج می شود. تصور کنید که اگر این درخواست از کارتابل تمامی آن افراد خارج شود یک  task به چندین درخواست تبدیل می شود که این روند منطقی و صحیح نیست.
 مفهوم گردش کار فرزند
فرض کنید درخواستی باید به چند نفر ارسال شود و هر نفر بخشی از این درخواست را انجام دهند. فرآیند درخواست خدمات فنی را در نظر بگیرید.
 
Diagram
 تفویض اختیار : تفویض بدین معنی است که به عنوان مثال فرد  A به فرد B اجازه دهد که فعالیت های کارتابلش را ببیند و از جانب فرد A انجام دهد.فرض کنید فرد A به مرخصی رفته است هر فعالیتی که در کارتابل او بیاید فردB دسترسی انجام آن ها را دارد و در نهایت فعالیت انجام شده از هر دو کارتابل خارج می شود.
واگذار شود به : هر فعالیتی که در کارتابل خود داریم را می توانیم به فرد دیگری واگذار کنیم که او انجام دهد. در این صورت این فعالیت از کارتابل من خارج شده و به کارتابل فردی که به او واگذار کردم منتقل می شود.
نمای عمومی : در هر گام دکمه ای به نام نمای عمومی وجود دارد. با کلیک بر روی آن تمامی قسمت های غیر محرمانه فرم قابل رویت است و می توان سایر فیلدهایی که توسط افراد دیگر تکمیل شده اند را ملاحظه کرد زیرا برای برخی تصمیم گیری ها در رابطه با انجام فعالیت لازم است که در جریان اجرای کار باشیم.


InfoPath اطلاعات را در فایل xml نگهداری می کند. حال بعد از publish شدن، این فایل ها در کتابخانه اسناد شیرپوینت ذخیره می شوند. برای روشن شدن بهتر موضوع به مثال زیر توجه کنید

  همانطور که مشاهده می کنید از طریق لیست بالا نمی توان اطلاعات داخل فرم Factor را بیرون کشید و از آن ها گزارش گرفت به همین دلیل با استفاده از همگام ساز Infopath  لیست دیگری را طراحی می کنیم که به فیلدهای داخل فرم ها دسترسی دارد و امکان گزارش گیری از فرم ها را برای ما مقدور می کند.