چطور فرآیندهای کسب و کار را به درستی در نرم‌افزار استقرار دهیم؟

بدون شک، یکی از گام‌های مهم در مدیریت فرآیندهای کسب و کار و یکی از اهداف آن، پیاده‌سازی فرآیندها، خصوصاً در سیستم‌های نرم‌افزاری است. در زمان آغاز بعضی از پروژه‌های مدیریت فرآیند، شاهد این بوده‌ام که از قابلیت‌های یک یا چند نرم‌افزار مورد استفاده در شرکت، برای استقرار و پشتیبانی فرآیندها، به درستی استفاده نشده است و عملاً نرم‌افزار نیازهای فرآیندی را به طور کامل پوشش نمی‌دهد.برای مثال، در یک شرکت بازرگانی، از نرم‌افزار CRMکه امکان طراحی فرآیندها را هم تا حد زیادی داشت، به صورت محدودی استفاده می‌شد و بسیاری از نیازهای پرسنل شرکت برای گردش و اجرای فعالیت‌ها و نیازهای مدیریت برای نظارت و مدیریت فعالیت‌ها و دریافت گزارش‌های لازم پوشش داده نمی‌شد. همچنین، در یک شرکت تولیدی، نرم‌افزار ERP که با صرف هزینه، زمان و نیروی انسانی زیادی مستقر شده بود به حد یک نرم‌افزار معمولی سازمانی تقلیل پیدا کرده بود و پرسنل بسیاری از نیازهای خود را با نرم‌افزارهای دیگر و حتی اکسل و اکسس مایکروسافت برطرف می‌کردند.اما علت وقوع این مساله چیست؟ چرا با وجود صرف این میزان هزینه و منابع مختلف سازمان‌ها و شرکت‌ها، گاهی متاسفانه نرم‌افزارها بخش کمی از نیازهای اجرایی و مدیریتی را برطرف می‌کنند و عملا موفقیت استقرار این نرم‌افزارها قابل قبول نیست؟ در این جا ابتدا، برخی از مشکلات که در پیاده‌سازی فرآیندها در نرم‌افزار مشاهده کردم را ذکر می‌کنم. بعد از آن، به بررسی برخی از علت‌های بروز این مشکلات می‌پردازیم و پس از آن، راهکار اجتناب از بروز این مشکلات را با هم مرور خواهیم کرد. (شما هم اگر با مشکلاتی در این زمینه برخورد داشتید، لطفا در انتهای این مطلب با ما به اشتراگ بگذارید.)مشکلاتی که در نرم‌افزارها مشاهده می‌شودتعدادی از مشکلات عمده و مهم که در پیاده‌سازی فرآیندها در نرم‌افزار مشاهده کرده‌ام را در این جا با شما به اشتراک می‌گذارم.1- فرآیند پیاده‌سازی شده در نرم‌افزار با فرآیند واقعی کسب و کار تطابق ندارد: این مشکل، بزرگترین مشکل در استقرار فرآیندها در نرم‌افزارها است. در این شرایط، عملاً نرم‌افزار در خدمت فرآیند و کسب و کار نخواهد بود و حتی ممکن است باعث کاهش سرعت و کیفیت انجام فعالیت‌ها در شرکت شود. افراد از این که در گردش فعالیت‌ها لازم است فعالیت‌های غیرمفید را انجام دهند ناراضی هستند و حتی ممکن است برخی از فعالیت‌هایی که پرسنل در عمل انجام می‌دهند در نرم‌افزار درنظر گرفته نشده است. علاوه بر این، جزئیات فرآیندها ممکن است نیاز پرسنل و مدیریت را برطرف نکنند. ازجمله این که فیلدهای به درد نخور در فرم‌ها وجود داشته باشند، در حالی که برخی اطلاعات مورد نیاز و مفید در این فرم‌ها وجود ندارند.2- عدم شناسایی و تعریف گزارش‌های مدیریتی مورد نیاز، در نرم‌افزار: بدون شک دریافت گزارش‌های مدیریتی یکی از اهداف مهم استقرار سیستم‌های نرم‌افزاری است. این گزارش‌ها به مدیریت سازمان کمک می‌کنند تا از صحت انجام فرآیندها و مطلوب بودن گردش کار اطمینان پیدا کنند. از طرف دیگر، گزارش‌هایی از وضعیت کسب و کار، به مدیریت شرکت در هدایت سازمان کمک بسزایی خواهد کرد. اگر این گزارش‌ها در نرم‌افزار شناسایی، طراحی و یا استفاده نشوند، عملاً از درصد محدودی از قابلیت نرم‌افزار استفاده شده است.3- بخش‌های مهمی از فرآیند خارج از نرم‌افزار اجرا می‌شوند: این مساله ممکن است ناشی از این باشد که برخی از نیازهای فرآیندی در نرم‌افزار پیاده‌سازی نشده باشند و درنتیجه افراد دخیل در فرآیند به ابزارهای متفرقه مثل واتس اپ و تلگرام یا حتی اشتراک فایل رو بیاورند. گاهی نیز این مساله ممکن است جنبه شیطنت پیدا کند و با هدف جلوگیری از شفافیت فرآیندها انجام شود.4- عملاً اطلاعات به درستی در نرم‌افزار وارد نمی‌شوند و از نرم‌افزار برخلاف فرآیند و قواعد تعریف شده استفاده می‌شود: این مورد هم یکی از موارد شایع در شرکت‌ها است. شاید متوجه شده باشید که مجریان فرآیند اطلاعات را در فیلدهایی غیر از آن چه که تعریف و تعبیه شده است وارد می‌کنند. در جلسه‌ای، از کارشناسان یک فرآیند درباره کاربرد یک فیلد موجود در نرم‌افزار CRM سوال کردم. جالب بود که سه کاربرد متفاوت از آن فیلد اظهار شد و جالب‌تر این که برای کاربردهای مطرح شده فیلدهای دیگری در نرم‌افزار وجود داشت.علل عدم موفقیت استقرار فرآیندها در نرم‌افزاراما علت بروز این مشکلات چیست و چه عوامل باعث می‌شوند نرم‌افزار آن طور که باید و شاید استقرار پیدا نکند؟ در این جا برخی از مهم‌ترین این عوامل را با هم مرور می‌کنیم:1- تحلیل و طراحی ناقص فرآیندها: این مشکل زمانی بروز می‌کند که پیش از پیاده‌سازی فرآیند در نرم‌افزار، فرآیندها تحلیل، طراحی، پیاده‌سازی و آزمایش نشده باشند. در این صورت در زمان نسبتا کوتاهِ استقرار نرم‌افزار ممکن است برخی از فعالیت‌های فرآیند و یا جزئیات فعالیت‌ها ازجمله فیلدهای فرم‌ها به طور کامل شناسایی و طراحی نشوند. این مساله از آن جا اهمیت زیادی پیدا می‌کند که خصوصاً در شرکت‌هایی که برای اولین بار اقدام به استفاده از قابلیت BPM می‌کنند، قواعد کسب و کار و قوانین داخل فرآیندها به صورت شفاف وجود ندارند و بنابراین لازم است تا با برگزاری جلسات و انجام کار جدی این قواعد و قوانین به صورت دقیق و بدون ابهام تعیین شوند تا تدوین فرآیندها ممکن شود.2- عدم نظارت مستمر و دقیق بر فرآیند اجرا شده در نرم‌افزار: اگر نظارت دائمی بر وضعیت اجرای فرآیندها در نرم‌افزار وجود داشته باشد، مشکلاتی که در این نوشته به آن اشاره شده است تا حد زیادی شناسایی می‌شوند و می‌توان برای رفع آن‌ها برنامه‌ریزی کرد. نبود این نظارت با دقت و پیگیری لازم، یکی از دلایل مهمی است که موفقیت اجرای فرآیندها در نرم‌افزار را مختل می‌کند.3- ارائه آموزش ناکافی برای اجرای فرآیندها در نرم‌افزار: این مشکل را در شرکت‌های زیادی مشاهده کرده‌ام. خصوصاً که با اضافه شدن پرسنل به واحدهای مختلف یک سازمان لازم است که این آموزش‌ها به طور روال‌مند و برنامه‌ریزی شده به پرسنل جدید ارائه شود. گاهی پرسنل با توجه به عدم دریافت آموزش کافی، از سیستم در حد برداشت و توان خود، و حتی به صورت نادرست، استفاده می‌کنند.4- نبود روال و فرآیند مناسب برای دریافت بازخورد پرسنل و اصلاح فرآیندها: پس از مدتی که از پیاده‌سازی فرآیند در نرم‌افزار سپری شد، احتمال زیادی وجود دارد که به دلیل تغییر نیازهای کسب و کار یا براساس بازخوردهای دریافتی از پرسنل، تغییراتی در فرآیند ایجاد شود. به همین خاطر، یکی از فرآیندهای مهم هر شرکت "فرآیند مدیریت فرآیند" است. به زبان ساده ما باید فرآیند و روال مشخصی برای دریافت بازخورد، مشکلات و پیشنهادهای بهبود مدیریت و پرسنل درباره فرآیندها و پس از آن بررسی، تصمیم‌گیری و درصورت نیاز اصلاح فرآیندها و مستندات مربوط به آن‌ها مثل فرم‌ها و دستورالعمل‌ها داشته باشیم. اگر این فرآیند و روال وجود نداشته باشد، قطعا با گذشت زمان، فرآیند پیاده‌سازی شده در نرم‌افزار با نیازهای حال حاضر سازمان فاصله پیدا خواهد کرد.5- نداشتن زبان مشترک با تیم نرم افزاری: بسیار مهم است که نیازهای فرآیندی و کسب و کاری شرکت و پرسنل دخیل در فرآیند به نوعی برای تیم تولید و پشتیبان نرم‌افزار ترجمه و برآورده شدن این نیازها پیگیری شود. درصورت نبود فردی که قابلیت دوگانه شناسایی و تحلیل فرآیند و آشنایی با نرم‌افزار و مفاهیم پایگاه داده را داشته باشد، این احتمال وجود دارد که نیازها درست به تیم نرم‌افزار منتقل نشوند و درنتیجه از امکانات نرم‌افزار نتوان برای پیاده‌سازی فرآیند به درستی استفاده کرد یا درصورت سفارشی بودن نرم‌افزار، نتوان امکانات مورد نیاز را در نرم‌افزار پیاده‌سازی کرد.اما راه حل چیست؟با توجه به مشکلات مطرح شده و علل بروز آن‌ها، انجام راهکارهای زیر به منظور اطمینان از استقرار مناسب فرآیند در نرم‌افزار ضروری خواهد بود. این راهکارها را می‌توانید درصورتی که در حال استقرار فرآیندها در نرم‌افزار هستید به کار ببرید. اگر هم فرآیند شما در نرم‌افزار مستقر شده است اما مشکلاتی را مشاهده می‌کنید، از این راهکارها می‌توانید برای بهبود جدی اوضاع استفاده کنید.1- تحلیل دقیق نیازهای کسب و کار قبل از پیاده‌سازی نرم‌افزار: برای انجام این فعالیت بسیار مهم است از کارشناسان یا مشاوری استفاده کرد که تسلط مناسبی به موضوع مدیریت فرآیندها و شناخت مناسبی از حوزه نرم‌افزار داشته باشد. فرآیندها باید با جزئیات کامل و براساس زبان قابل فهم برای تیم نرم‌افزار تحلیل و مستندسازی شوند.2- ارائه آموزش به پرسنل دخیل در فرآیند: صرف زمان و انرژی مناسب برای ارائه این آموزش اهمیت زیادی دارد. این آموزش ممکن است به صورت برگزاری جلسات، کارگاه، ارائه فیلم و صوت آموزشی و حتی به صورت آموزش در حین انجام فعالیت‌ها باشد. این آموزش‌ها را باید تا زمانی ادامه دهیم که پرسنل درک درستی از فرآیند، قابلیت‌های نرم‌افزار و فیلدهای اطلاعاتی دارند و از نرم‌افزار به درستی استفاده می‌کنند.3- نظارت بر روند اجرای فرآیند در نرم‌افزار: پس از تکمیل استقرار اولیه فرآیند در نرم‌افزار، ارائه آموزش به پرسنل و شروع فعالیت پرسنل در نرم‌افزار، لازم است نظارت دقیقی بر چگونگی اجرای فرآیند در نرم‌افزار انجام شود. بهترین شخص برای انجام این نظارت، مالک فرآیند خواهد بود. گرچه، تا زمانی که مالک فرآیند به فرآیند و نرم‌افزار مسلط شود، مشاور می‌تواند نقش مفید و مهمی در این زمینه داشته باشد.4- ایجاد فرآیند و روال مدیریت فرآیند: همانطور که بالاتر ذکر شد، باید اطمینان پیدا کنیم روال مناسبی وجود دارد که تغییر نیازهای کسب و کار و بازخورد و نیازهای پرسنل و مدیران دخیل در فرآیند یا استفاده کننده از آن را دریافت و از انجام تغییرات لازم در فرآیند و نرم‌افزار اطمینان حاصل کند.5- تعریف گزارش‌های مدیریتی در نرم‌افزار: برای تعریف گزارش‌های مدیریتی مناسب در نرم‌افزار، ابتدا لازم است نیازهای مدیریت شرکت به صورت شاخص‌های فرآیندی و کسب و کاری تعریف شود. پس از آن می‌توان گزارش‌های لازم را براساس این شاخص‌ها، تا حد امکان و براساس قابلیت نرم‌افزار ایجاد کرد و در اختیار مدیریت و حتی پرسنل شرکت (براساس جایگاه هر فرد) قرار داد.6- استفاده از پرسنل یا مشاور با دانش و تجربه نرم‌افزاری: وجود چنین فردی می‌تواند سرعت و موفقیت تحلیل، استخراج و استقرار فرآیند در نرم‌افزار را تا حد قابل توجهی افزایش و هزینه آن را کاهش دهد.سایت حرفه‌ای: www.aatsite.irشماره تماس ارتباط: 2169223-0912