***3
•انگیزههای تحلیل کارایی نرم افزار
هزینه های هنگفت مالی، انسانی و زمانی تولید و توسعه یک سیستم نرم افزاری بزرگ
کیفیت نرمافزار تا حدود زیادی توسط مشخصههای کارایی مثل زمان پاسخ، توان عملیاتی، و بهرهوری منابع تعیین میشود
شناسایی زود هنگام مشکلات کارایی در سطح معماری نرمافزار
افزایش هزینه تغییر طراحی با جلو رفتن در فرایند تولید
تأیید اعتبار انتخابهای طراحی یا مقایسه طراحی های مختلف از دیدگاه کارایی
دو پرسش در اینجا مطرح است:
–چگونه کارایی را در فرایند تولید نرمافزار ارزیابی کنیم؟
–کی کارایی باید ارزیابی شود؟
***4
• کارایی چگونه ارزیابی میشود؟
•رویکرد مبتنی بر اندازهگیری(Measurement-based)
–اندازهگیریهای مستقیمی روی سیستم درحال اجرا یا یک نمونه انجام میگیرد؛ این اندازهگیریها، برای شناسایی گلوگاهها بکار میروند.
•رویکرد مبتنی بر مدل (Model-Based)
یک مدل کارایی از سیستم نرمافزاری ساخته میشود؛ از این مدل برای تقلید رفتار سیستم و پیشبینی کارایی آن استفاده میگردد
***5
•ارزیابی کارایی مبتنی بر مدل
•مزایا:
نیازی به یک سیستم در حال اجرا ندارد.
از مراحل نخست طراحی قابل اعمال میباشد.
•معایب:
دقت پیشبینی کارایی به دقت مدل نرمافزار بستگی دارد (به هرحال، دقت 100% لازم / منطقی نیست).
گزارش دادن بازخورد، به خاطر ساختار متفاوت مدل کارایی نسبت به مدل نرمافزار، ممکن است دشوار باشد.
***8
•پیش زمینه
مهندسی کارایی نرم افزار(SPE)[Smith90]:
•ترکیب و تجمیع ارزیابی کارایی از مراحل نخست تا کل چرخه حیات فرایند تولید نرم افزار
در عمل SPE کمتر به کار گرفته می شود:
•فاصله شناختی بین قلمرو تولید نرم افزار و قلمرو ارزیابی کارایی
•فشار ”عرضه سریع به بازار“ وقتی برای SPE باقی نمی گذارد
رویکردهای ارزیابی کارایی زیادی پیشنهاد شده اند:
•تحلیلی
•شبیه سازی
از مدلهای نرم افزاری مختلف استفاده می کنند:
، جبر فرایندها(PA)، پتری نت ها(PN)، چارتهای توالی پیام(MSC)، UMLو .....
مدلهای کارایی مختلف مد نظر قرار گرفته اند:
•شبکه های صف و گسترشهایی از آنها مثل LQN و EQN، SPN، SPA و ....
***9
•محدودیتهای برخی روشهای موجود
•مدلهای نرم افزار
استفاده از مدلهای نرم افزار و نمادسازی های غیر استاندارد و مختص کاربرد خاص
عدم پذیرش وسیع در جامعه مهندسی نرم افزار
پشتیبانی اندک توسط ابزارهای CASE مناسب
•مدلهای کارایی
§مدلهای تحلیلی
تحلیل پیچیده
نیاز به اعمال فرضیات خاص
نگاشت پیچیده بین مدل نرم افزار و مدل کارایی
§شبیه سازی
مناسب کاربردهای خاص
یاز به زمان و منابع محاسباتی بسیار برای مدلهای پیچیده
نیاز به تکنیکهای آماری پیچیده برای شناخت صحیح نتایج