از نظر آقای Raj Jain، با دانستن تکنیکها و محل صحیح اعمال آنها در کنار پارامترهای صحیح ورودی به یک سیستم، ارزیابی کارایی تبدیل به هنر اجرای ارزیابی کارایی سیستم میشود. نمیتوان برای اجرای ارزیابی از یک قاعده و قانون کلی پیروی کرد. به عبارت دیگر ارزیابی نمیتواند به صورت مکانیکی اجرا شود و نیاز به درک نزدیکی از سیستم و انتخاب صحیح ابزار، متدولوژی و ورودی دارد.
از آنجایی که دو تحلیلگر در ارزیابی عملکرد ممکن است معیارها یا ورودی متفاوتی را انتخاب کنند، به همین خاطر میتوان گفت هیچ پاسخ صحیحی وجود ندارد.
فرض کنید دو سیستم وجود دارد (System A, B)، که به آنها دو ورودی (workload1, 2) را اعمال میکنیم. با توجه به این شرایط، کدام سیستم بهتر عمل میکند؟
اگر بخواهیم در بحث مقایسه دو سیستم بحث میانگین گیری را به کار ببریم نتیجه یکسان است. با این وجود، کدام سیستم بهتر است؟
از روشهای دیگر مقایسه دو یا چند سیستم، معیار کردن یکی از آنها است. اگر در مثال بالا سیستم B را معیار کنیم نتیجه میشود که سیستم A بهتر است. اما باز هم میتوان با اطمینان گفت که سیستم A بهتر است؟
در ارزیابی عملکرد با استفاده از تکنیکهای مختلف، بایستی نحوه مقایسه عادلانه دو یا چند سیستم با یکدیگر را مشخص کنیم که از آن به عنوان Ratio Game یاد میشود.
اشتباهات رایج (Common Mistakes) در فرآیند ارزیابی کارایی
ارزیابی کارایی یک فرآیندی است که از ابتدای ایجاد تا انتها یک سیستم درگیر آن خواهد بود و خروجی باید مورد قبول مجامع علمی باشد. زمانی که محققی میخواهد از حرف نو خود در جلسه پایان نامه دفاع کند و بگوید کار انجام شده توسط او بهتر است، باید قواعد خاصی رعایت شود.
در بسیاری از موارد دیده شده است که تحلیلگران و محققان در ارزیابیهای خود دچار اشتباهات رایجی مانند موارد زیر میشوند:
- اهداف تعیین نشده (Undefined Goals)
هدف تعیین نشدن برای یک ارزیابی، یا استفاده از اهداف عمومی مانند بهبود همه موارد در فرآیند ارزیابی بیمفهوم است. هدف یا اهداف از ارزیابی یک سیستم بایستی کامل و دقیق مشخص شود.
اهداف یک ارزیابی بایستی از جنس کمی باشد. به عنوان مثال: میخواهیم تاخیر شبکه را به 10ms کاهش دهیم، میخواهیم throughput شبکه را به 1000Gbps برسانیم.
- اهداف ناعادلانه یا جانبدارانه (Biased Goals)
در یک ارزیابی نباید به دنبال نمایش برتری سیستم خود یا یک سیستم نسبت به سیستم دیگری باشید. در ارزیابی بایستی مانند یک عضو هیئت منصفه، منصف عمل کنید و نباید تمایلات خود را در ارزیابی وارد کنید.
- بار ورودی غیر معمول
ارزیابی یک سیستم بایستی در هر سطحی که انجام میشود باید جامع یا به قول آقای Raj Jain باید in the wild باشد. به عنوان مثال یک شبکه را فقط با پکتهای بزرگ یا فقط پکتهای کوچک (بار ورودی یا workload ناقص) ارزیابی نکنید. این ارزیابی یک ارزیابی عملکرد جامع نیست. باید توجه داشت که منظور از workload جامع workload کامل نیست. در عین حالی که باید ارزیابی جامع باشد، اما باید workflow ای به سیستم اعمال شود که متناسب با عملکرد و انتظار از آن سیستم است. به عنوان مثال از یک برنامه real-time مانند تماس صوتی انتظار عملکرد عالی در انتقال فایلهای حجیم نابجاست.
- تکنینک ارزیابی اشتباه
تکنیکهای ارزیابی شامل measurement، simulation و modeling هستند. در ارزیابی بایستی مناسبترین تکنیک انتخاب شود و نباید مانند چکش به همه به چشم میخ نگاه کنیم. به عنوان مثال در ارزیابی یک ایده جدید نمیتوان از روش measurement استفاده کرد.
- سطح نامناسب جزئیات
زمانی که سطح زیادی از جزئیات را درگیر فرآیند ارزیابی کنیم، شاید نتوانیم ارزیابی را تمام کنیم یا اگر سطح کمی از ملاحظات یا جزئیات را مد نظر قرار دهیم، ارزیابی یک ارزیابی جامع نخواهد بود و نتایج ممکن است دقت کافی را نداشته باشند.
عموما در ابتدای ارزیابیها جزئیات مهم در ارزیابی مورد ملاحظه قرار میگیرند. پس از مشخص شدن ایراد، به صورت هدفمند جزئیات بررسی و ارزیابی را افزایش میدهیم.
- عدم حساسیت بروی آنالیز
آنالیز بدست آمده در هر ارزیابی یک مدرک است و نه حقیقت. ارزیابیهای انجام شده بر یک سیستم (مانند یک سختافزار، یا یک نرمافزار یا یک دیتاسنتر و …) تحت یک شرایطی انجام میشود. از این ارزیابی در شرایط اعمال شده به یک مدرک میرسیم. این مدرک یک قاعده و یک حقیقت (fact مانند 2+2=4) نیست.
- ارائه نادرست نتایج بدست آمده
تمام ارائه فقط نمایش یک تعدادی از نمودارها از نتایج بدست آمده نیست، اما نمایش این نمودارها میتواند در پیدا کردن درکی خوبی از دلایل تکنیک انتخاب شده، پارامترهای و شرایط استفاده شده در ارزیابی انجام شده کمک کنند. ارائه خوب و قوی از یک ارزیابی بسیار مهم است و میتواند فضای ذهنی شنوندگان و داوران را به فضای ذهنی شما (تحلیلگر یا محقق) در آن ارزیابی نزدیک کند.
خروجی بسیاری از ارزیابیها اعداد کیفی مانند میزان تاخیر در یک شبکه است. استفاده از این اعداد بدون نمودارها شاید درک خوبی از خروجی کار ندهد. معمولا در یک ارائه خوب از ابزارهایی مانند نمودار برای درک راحتتر، سریعتر و بهتر از موضوع استفاده میشود.
- حذف مفروضات و محدودیتهای ارزیابی
هر ارزیابی مبتنی بر یکسری مفروضات و محدودیتهاست. ذکر نکردن این مفروضات و محدودیتها یک ایراد است. این مفروضات و محدودیتها هم در ارزیابی بایستی لحاظ شود و هم در ارائه بایستی اعلام گردد. اگر در یک دفاع اعلام شود که ایده پیاده سازی شده در تمامی حالتها تمامی پارامترهای یک شبکه مانند تاخیر و گذردهی (throughput) و … را بهبود میبخشد، خارج از استاندارد یک دفاع اصولی است، حداقل در مدت زمان کوتاه آن تحقیق.
هنر ارزیابی کارایی سیتسمدر فرآیند انجام هر تحقیق باید، در ابتدا بایستی سیر تحقیقات انجام شده در آن موضوع به صورت وسیع بررسی شود تا متوجه شویم کارهای انجام شده در آن موضوع تا کجا پیشرفته است. پس از آن یک پارامتر خاص میتواند اندکی بهبود داده شود. انتظاری از یک محقق نیست تا یک پرش بلند را انجام دهد.