شاخصهای ارزیابی اتوماسیون اداری از منظر سرعت نرم‌افزار

بررسی تخصصی سرعت نرم افزار اتوماسیون اداریدر مقالات پیشین معیارهای ارزیابی اتوماسیون اداری از منظر کاربرپسندی و ماژول‌ها را بررسی نمودیم. در این مطلب قصد داریم به بررسی سرعت نرم‌افزار اتوماسیون اداری و تاثیر آن در عملکرد سیستم بپردازیم.امروزه استفاده از اتوماسیون‌های اداری بسیار فراگیر شده است و در بسیاری از سازمان‌ها و صنایع کشور از این سیستم‌ها برای الکترونیکی کردن کامل مکاتبات و حذف کاغذبازی اداری استفاده میکنند.اما یکی از مهم‌ترین ویژگی‌های یک نرم‌افزار اتوماسیون اداری خوب سرعت و عملکرد مناسب آن است تا بتواند در زمان مناسب، پاسخی مناسب به درخواست کاربر داده و خود سبب اتلاف وقت و هزینه کاربران و سازمان نشود.معیارهای ارزیابی اتوماسیون اداری از منظر سرعت و عملکرد آنشاید شما نیز عضوی از سازمانی متوسط تا بزرگ و یا حتی سازمانی با ساختار هلدینگ باشید که قصد خرید نرم‌افزار اتوماسیون اداری را دارید و دغدغه‌های زیادی برای انتخاب اتوماسیون مناسب از منظر سرعت و عملکرد آن داشته باشید. از جمله این دغدغه‌ها می‌تواند موارد زیر باشد:پشتیبانی از تعداد بالای کاربر هم‌زمانمیزان همزمانی استفاده از سیستم و عدم افت کارایی آنپوشش‌دهی مناسب بخش‌ها و شرکت‌های مختلف هلدینگ در نقاط مختلف جغرافیاییعدم کندی سیستم اتوماسیون اداری در زمان‌های مختلفو…اگر شما نیز هنگام خرید یک سیستم اتوماسیون اداری مناسب این دغدغه‌ها را دارید و سرعت، کارایی و عملکرد آن برای شما و سازمانتان از اولویت بالایی برخوردار است؛ حتماً قبل از خرید این معیارها را بررسی نمایید:مقیاس‌پذیری سیستم اتوماسیون اداری برای سازمان‌های کوچک تا بزرگگزارش تست کارایی و عملکرد سیستم بر روی دیتابیس‌های با حجم اطلاعات بالاسابقه و تجربه شرکت ارائه دهنده نرم‌افزار اتوماسیون اداری در پیاده‌سازی نرم‌افزار در سازمان‌های بزرگ همانند بانک‌ها و وزارت‌خانه‌های با تعداد کاربر بالا و بازخورد این سازمانها از سیستم اتوماسیون اداری موردنظرنوع سیستم جستجوی نرم‌افزار اتوماسیون اداری (Sql یا Semantic Search)نقطه شکست نرم‌افزار از لحاظ نسبت تعداد کاربر به مشخصات سخت‌افزاری سرور ( بطور خلاصه یعنی یک سرور با شخصات سخت‌افزاری مشخص حداکثر چه تعداد کاربر را به صورت همزمان پشتیبانی می‌کند)در سازمان‌های با حجم مکاتبات بسیار زیاد، ثانیه‌ها در ثبت و پیگیری مکاتبات تاثیر می‌گذارند.بررسی تخصصی سرعت نرم‌افزار اتوماسیون اداریسرعت نرم‌افزار اتوماسیون اداری و یا بطور کلی سرعت هر نرم‌افزاری از لحاظ فنی در دو لایه قابل بررسی است:۱- لایه دیتابیس (پایگاه داده) نرم‌افزار۲- لایه اپلیکیشن۱- بررسی سرعت نرم‌افزار در لایه دیتابیس (پایگاه داده)از منظر لایه دیتابیس مهم‌ترین نکته‌ای که برای سرعت نرم‌افزار باید مدنظر قرار داد این است که ذات و ساختار اولیه طراحی خود نرم‌افزار از ابتدا برای سرعت بالا طراحی و پایه‌ریزی شده باشد، به این معنا که وقتی سیستم در حال طراحی اولیه است از همان ابتدای کار برای پاسخ‌گویی در حجم بالای اطلاعات طراحی شود.در واقع معیارها و شاخص‌های مهم سرعت نرم‌افزار عبارت است از تعداد تراکنش‌هایی که در هر ثانیه نرم‌افزار می‌تواند پشتیبانی کند که به آن TPS (Transaction Per Second) می‌گویند. یا به نوعی دیگر سرعت پاسخ‌گویی سیستم (یا همان Response Time) سیستم است.بنابراین نرم‌افزاری از سرعت بالاتری برخوردار است که بتواند تعداد تراکنش‌های بیشتری را در زمان کم‌تری پشتیبانی کند.حال لازمه این امر این است که شاخص‌ها و ایندکس‌ها در دیتابیس نرم‌افزار و نحوه تعامل اپلیکیشن با دیتابیس متناسب با حجم اطلاعات زیاد دیده شده باشد و به عبارتی یک نرم‌افزار Tune شده داشته باشیم.اما اگر شما به عنوان یک مشتری قصد بررسی یک نرم‌افزار اتوماسیون اداری از لحاظ سرعت و ساختار طراحی دیتابیس آن را دارید؛ بهترین راه‌حل این کار بررسی رزومه شرکت مربوطه و پرس‌وجو از مشتریان بزرگ و کلان آن نرم‌افزار در سطح ملی است. عمدتاً نرم‌افزاری که در سطح ملی و با تعداد کاربر زیاد (برای مثال بیش‌تر از ۲۰ هزار کاربر) به راحتی کار می‌کند و کندی خاصی در سیستم مشاهده نگردد؛ از لحاظ سرعت یک سیستم مناسب است. البته به شرط آن‌که نرم‌افزار به صورت یک سیستم مرکزی نصب شده باشد.بررسی برخی موارد فنی نیز می‌تواند در این زمینه کمک‌کننده باشد که تعداد آن‌ها زیاد است و از مهم‌ترین آن‌ها می‌توان به عدم استفاده از Query Plugin ها، بهره‌گیری از Included Index ها در دیتابیس نرم‌افزار و… اشاره کرد.۲- بررسی سرعت نرم‌افزار در لایه اپلیکیشناما از منظر لایه اپلیکیشن نیز موارد بسیاری از سمت شرکت تولیدکننده نرم‌افزار اتوماسیون اداری باید رعایت شده باشد تا سیستم دچار کندی سرعت و یا زمان‌بر بودن پروسه پاسخ به کاربر نشود.یکی از این موارد که حتماً در لایه اپلیکیشن نرم‌افزار می‌بایست رعایت گردد؛ استفاده از معماری ماکرو سرویس‌ها (Macro Services) برای اجرای عملیات‌هایی (Operations) است که در سیستم صورت می‌گیرد.به زبان ساده بعنوان نمونه پروسه ارسال چندین ایمیل یا چندین ارجاع نامه از طریق نرم‌افزار اتوماسیون را در نظر بگیرید. این عمل باید به نحوی باشد که تعداد ایمیل یا تعداد ارجاع مد نظر در یک صف قرار گرفته و یک ماکرو سرویس در بک‌گراند اجرا شده و به ترتیب از روی صف اقدام به ارسال آن‌ها نماید. در این حالت دیگر نرم‌افزار اقدام به درج و ارسال چندین درخواست به صورت هم‌زمان به سمت سرور نخواهد داشت.دو عامل بسیار مهم و اثرگذار بر سرعت نرم‌افزار اتوماسیون اداری یکی سرعت شبکه است و دیگری سرعت پاسخ‌گویی سرور است که از این دو عامل، سرعت شبکه بستگی به خود نرم‌افزار نداشته و یک عامل خارجی است.دو نکته مهم دیگر که بر سرعت سیستم اتوماسیون بسیار اثرگذار استنکته اول:برنامه اتوماسیون باید به نحوی طراحی شده باشد که تا حد ممکن داده‌های کم‌تری را از سرور بخواند. به عبارتی دیگر خود ساختار برنامه‌نویسی باید به نحوی باشد که کم‌ترین اطلاعات را بین وب اپلیکیشن و سرور رد و بدل کند.نکته دوم:این نکته مربوط به نامه‌هایی است که بیشترین حجم تبادل در یک سیستم اتوماسیون اداری مربوط به آن‌ها است. این نامه‌ها عمدتاً در یکی از قالب‌های ورد، عکس و یا پی‌دی اف به کاربر نشان داده می‌شوند. همین امر خود بسیار در سرعت سیستم مکاتبات اداری سازمان اثرگذار است. بنابراین استفاده از الگوریتم‌هایی برای کاهش نویز تصاویر و کاهش حجم آن‌ها بسیار حیاتی است و شرکت‌های پیشرو در زمینه اتوماسیون اداری قطعاً باید این‌گونه الگوریتم‌ها را در سیستم خود توسعه دهند تا بتوانند سرعت سیستم خود را افزایش دهند.یکپارچگی نرم‌افزار اتوماسیون اداری شرکت‌های هلدینگی و سرعت آنسازمانی را در نظر بگیرید که شامل چندین شرکت زیر مجموعه در چندین نقطه جغرافیایی است. (بعنوان مثال یک شرکت هلدینگ که دارای چند شرکت زیرمجموعه در چند استان است مانند بانکها، شهرداری‌ها، وزارتخانه‌ها و…). اگر این سازمان قصد خرید یک نرم‌افزار اتوماسیون اداری را داشته باشد؛ از طرف شرکت‌های ارائه دهنده نرم‌افزار اتوماسیون اداری با دو نوع پیشنهاد نصب نرم‌افزار به صورت متمرکز یا پراکنده روبرو می‌شود.نصب متمرکز:در نوع اول که نصب به صورت متمرکز است نرم‌افزار اتوماسیون اداری بر روی یک یا چند سرور در شرکت مادر (شرکت هلدینگ و یا سرور مرکزی) نصب شده و بقیه شرکت‌های زیرمجموعه به عنوان سازمان‌های مجزا با ویژگی‌های خاص خود ولی زیرشاخه سازمان اصلی بر روی همان اتوماسیون سرور مرکزی تعریف میگردند. در این حالت کل مجموعه هلدینگ و شرکت‌های زیرمجموعه آن از یک اتوماسیون متمرکز که بر روی سرور مرکزی نصب شده استفاده می‌کنند.در نصب متمرکز رهگیری نامه‌ها، ارجاعات، وظایف و… به راحتی در یک محیط واحد قابل انجام است و کاربران تعامل بسیار بهتری با نرم‌افزار خواهند داشت. همچنین سرعت انجام امور در نرم‌افزار بسیار بالاتر از حالت غیرمتمرکز خواهد بود.نصب پراکنده:اما در نوع دوم برای هر هلدینگ و هرکدام از شرکت‌های زیرمجموعه آن بصورت مجزا سروری در نظر گرفته می‌شود. بر روی هر سرور یک نسخه جداگانه از اتوماسیون اداری نصب گردیده و ارتباط میان آن‌ها از طریق پروتکل‌هایی مانند ECE، PTP و … برقرار می‌گردد. رهگیری نامه‌ها، ارجاعات و وظایف محول شده در این نوع نصب و پیاده‌سازی اتوماسیون بسیار پیچیده‌تر و سخت‌تر از نوع نصب متمرکز است و سرعت کلی سیستم نیز کم‌تر از حالت متمرکز است.بررسی فنی راهکارهای افزایش سرعت اتوماسیون اداری در سازمان‌های بزرگبطور کلی یک نرم‌افزار هر چقدر هم که از لحاظ زیرساخت و طراحی دیتابیس و اپلیکیشن و سایر موارد فنی خوب پایه‌ریزی و طراحی شده باشد؛ باز با این وجود در تعداد زیاد کاربران آنلاین و حجم زیاد تعداد درخواست‌ها با مشکل کندی روبرو می‌شود. در واقع این امر تنها به خود نرم‌افزار برنمی‌گردد و IIS سیستم عامل ویندوز تا حد خاصی می‌تواند تعداد کاربران را پشتیبانی کند و در واقع کندی سرعت دیگر از سمت اپلیکیشن اتوماسیون نخواهد بود. بلکه از سمت IIS مربوط به خود ویندوز خواهد بود.سرعت نرم‌افزار اتوماسیون اداری عمدتاً به سه عامل بستگی دارد که عبارت است از: پهنای باند و سرعت شبکه، سرعت پاسخ‌گویی سرور و سرعت کلاینت که در وب اپلیکیشن‌ها سرعت کلاینت چندان دخیل نیست.حال به بررسی راهکارهای افزایش سرعت سیستم اتوماسیون در سازمان‌های بزرگ با توجه به شاخص سرعت پاسخ‌گویی سرور و عوامل موثر بر آن خواهیم پرداخت.فرض کنید در یک سازمان با تعداد کاربر ۳۰ هزار نفر یک نرم‌افزار که بصورت متمرکز نیز نصب شده است؛ چگونه می‌تواند به خوبی عمل کرده و دچار کندی سرعت نشود؟برای پاسخ به این سوال ابتدا به دلایل کندی سرعت نرم‌افزار اتوماسیون اداری در این شرایط خواهیم پرداخت.یکی از دلایل کندی سرعت در این شرایط تعداد درخواست‌های بسیار زیاد کاربران به صورت هم‌زمان است که هم بر روی دیتابیس اثرگذار است، هم بر روی سرور و اپلیکیشن ویندوزی IIS و هم پهنای باند شبکه. خب واضح است که با افزایش تعداد کاربر همزمان و در نتیجه افزایش تعداد درخواست‌ها با کندی سرعت در کل مجموعه مواجه شویم.۱- رفع مشکل تعداد کاربر همزمان:برای رفع این مشکل می‌توان ابتدا چندین سرور اپلیکیشن تعبیه کرد و سپس به کمک Load Balancer درخواست‌های ارسالی از طرف کاربران به سمت اپلیکیشن را با استفاده از الگوریتم‌های مختلف میان سرورهای اختصاص داده شده برای میزبانی اپلیکیشن تقسیم نمود. در واقع بار ترافیکی این بخش را میان سرورهای مختلف توزیع نمود.با این کار هر سرور به صورت مجزا بخشی از درخواست‌هایی که همزمان از سمت کاربران ارسال می‌شود را دریافت کرده و با مشکل کندی سرعت روبرو نخواهد شد.یکی دیگر از مزایای بسیار خوب Load Balancer این است که سازمان‌ها هیچ‌وقت دغدغه افزایش تعداد کاربر را نخواهند داشت و می‌توانند به راحتی به نسبتی که کاربران آن‌ها افزایش پیدا می‌کند سرور به مجموعه سرورهای قبلی خود اضافه کرده و تعداد کاربر بالای خود را پوشش دهند.در این صورت نیاز نیست از ابتدا سیستم بسیار قدرتمندی تهیه کنند. بلکه می‌توانند به نسبت رشد سازمان و تعداد کاربران خود سرور جدید به مجموعه‌های قبلی اضافه نموده و از هزینه‌های گزاف اولیه برای خرید سرور قدرتمند بکاهند.نقطه قوت مهم دیگری که استفاده از Load Balancer برای سازمان فراهم می‌کند این است که احتمال نقص و یا از کارافتادگی یکی از سرورهای سازمان‌ها به هر دلیلی در طول زمان وجود دارد. در این مواقع Load Balancer با تشخیص موقعیت به وجود آمده برای سرور از کار افتاده آن را از مدار توزیع بار درخواست‌ها خارج کرده و درخواست‌های ارسالی از سمت کاربران را میان سایر سرورها تقسیم می‌کند. به این ترتیب هیچ‌وقت شاهد از کارافتادگی کلی سیستم نخواهید بود و همواره یک سیستم پایدار و با ثبات خواهید داشت.۲- رفع مشکل افزایش تعداد درخواست‌ها:حال فرض کنید بعد از ارسال درخواست‌ها از طرف کاربران به سمت اپلیکیشن حجم زیاد این درخواست‌ها به کمک تکنولوژی Load Balancer مرتفع گردید. در مرحله بعد این درخواست‌ها هر کدام برای انجام و پاسخ‌گویی به کاربر، نیاز به ارسال اطلاعات به سمت دیتابیس و دریافت اطلاعات از سمت آن را دارند.در صورتیکه همه این درخواست‌ها به سمت دیتابیس ارسال شوند؛ باز مجموعه سیستم با کندی سرعت مواجه خواهد شد. یا اینکه هرکدام از درخواست‌ها ممکن است روی یکی از سرورهای اپلیکیشن ارسال شده باشد و به دلیل اینکه این درخواست‌ها بر روی سرورهای مجزایی هستند و سرورهای اپلیکیشن بر روی حافظه رم خود ذخیره‌سازی انجام نمی‌دهند و به رم یکدیگر دسترسی نیز ندارند؛ یک نوع پیچیدگی به وجود می‌آید و در نهایت نیاز است که این درخواست‌ها همگی به سمت دیتابیس رفته و با ترافیک بار بر روی دیتابیس مواجه خواهیم شد.برای رفع این مشکل می‌توان سرور دیگری به عنوان Cache سرور به مجموعه به صورت Redis اضافه نمود.این سرور به صورت کاملاً مستقیم و با سرعت بالا به دیتابیس متصل است و سرورهای اپلیکیشن اطلاعات موردنیاز خود را از طریق آن بدست می‌آورند. در نتیجه این کار سرعت مجموعه را به صورت چشم‌گیری افزایش خواهد داد.کلام آخر:سرعت نرم‌افزار اتوماسیون اداری به عواملی نظیر: تعداد کاربران همزمان، تعداد پراکندگی شعب (سازمانهای هلدینگ) و معماری داخلی نرم‌افزار بستگی دارد.در مرحله اول بهتر است از کارشناسان IT جهت بررسی دقیق عوامل فنی ذکر شده در این مقاله، برای هرکدام از شرکتهای فروشنده اتوماسیون اداری بهره گیرید. این موارد را میتوانید در جلسه دمو نیز از کارشناسان مربوطه سوال کنید. سپس به مقایسه میزان سخت افزار موردنیاز اعلام شده از سوی شرکتها نسبت به تعداد کاربران موردنظرتان بپردازید.درنهایت یکی از بهترین موارد بررسی سرعت نرم‌افزار، پرس‌وجو از بزرگترین مشتریان شرکت مدنظر که در سطح ملی، با تعداد کاربران بالا در حال استفاده از نرم‌افزار هستند؛ می‌باشد.