بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
انگيزههاي تحليل كارايي نرم افزار
هزينه هاي هنگفت مالي، انساني و زماني توليد و توسعه يك سيستم نرم افزاري بزرگ
كيفيت نرمافزار تا حدود زيادي توسط مشخصههاي كارايي مثل زمان پاسخ، توان عملياتي، و بهرهوري منابع تعيين ميشود
شناسايي زود هنگام مشكلات كارايي در سطح معماري نرمافزار
افزايش هزينه تغيير طراحي با جلو رفتن در فرايند توليد
تأييد اعتبار انتخابهاي طراحي يا مقايسه طراحي هاي مختلف از ديدگاه كارايي
دو پرسش در اينجا مطرح است:
–چگونه كارايي را در فرايند توليد نرمافزار ارزيابي كنيم؟
–كي كارايي بايد ارزيابي شود؟
اسلاید 2 :
كارايي چگونه ارزيابي ميشود؟
- رويكرد مبتني بر اندازهگيري(Measurement-based)
–اندازهگيريهاي مستقيمي روي سيستم درحال اجرا يا يك نمونه انجام ميگيرد؛ اين اندازهگيريها، براي شناسايي گلوگاهها بكار ميروند.
- رويكرد مبتني بر مدل (Model-Based)
–يك مدل كارايي از سيستم نرمافزاري ساخته ميشود؛ از اين مدل براي تقليد رفتار سيستم و پيشبيني كارايي آن استفاده ميگردد.
اسلاید 3 :
ارزيابي كارايي مبتني بر مدل
- مزايا:
نيازي به يك سيستم در حال اجرا ندارد.
از مراحل نخست طراحي قابل اعمال ميباشد.
- معايب:
û دقت پيشبيني كارايي به دقت مدل نرمافزار بستگي دارد (به هرحال، دقت 100% لازم / منطقي نيست).
û گزارش دادن بازخورد، به خاطر ساختار متفاوت مدل كارايي نسبت به مدل نرمافزار، ممكن است دشوار باشد.
اسلاید 4 :
كارايي در كدام مرحله از فرايند توليد نرمافزار ميتواند ارزيابي گردد؟
اسلاید 5 :
پيش زمينه
مهندسي كارايي نرم افزار(SPE)[Smith90]:
- تركيب و تجميع ارزيابي كارايي از مراحل نخست تا كل چرخه حيات فرايند توليد نرم افزار
در عمل SPE كمتر به كار گرفته مي شود:
- فاصله شناختي بين قلمرو توليد نرم افزار و قلمرو ارزيابي كارايي
- فشار ”عرضه سريع به بازار“ وقتي براي SPE باقي نمي گذارد
رويكردهاي ارزيابي كارايي زيادي پيشنهاد شده اند:
- تحليلي
- شبيه سازي
از مدلهاي نرم افزاري مختلف استفاده مي كنند:
، جبر فرايندها(PA)، پتري نت ها(PN)، چارتهاي توالي پيام(MSC)، UMLو .....
مدلهاي كارايي مختلف مد نظر قرار گرفته اند:
- شبكه هاي صف و گسترشهايي از آنها مثل LQN و EQN، SPN، SPA و ....
اسلاید 6 :
محدوديتهاي برخي روشهاي موجود
- مدلهاي نرم افزار
استفاده از مدلهاي نرم افزار و نمادسازي هاي غير استاندارد و مختص كاربرد خاص
عدم پذيرش وسيع در جامعه مهندسي نرم افزار
پشتيباني اندك توسط ابزارهاي CASE مناسب
- مدلهاي كارايي
- مدلهاي تحليلي
تحليل پيچيده
نياز به اعمال فرضيات خاص
نگاشت پيچيده بين مدل نرم افزار و مدل كارايي
- شبيه سازي
مناسب كاربردهاي خاص
نياز به زمان و منابع محاسباتي بسيار براي مدلهاي پيچيده
نياز به تكنيكهاي آماري پيچيده براي شناخت صحيح نتايج
اسلاید 7 :
مدلهاي كارايي
شبكههاي صف؛ Queuing Networks Model (QNM) با مشخصههاي زير:
مراكز سرويس: زمان سرويس، فضاي بافر به همراه زمانبندي صف، تعداد سرورها
مشتريان: تعداد در مدلهاي بسته، فرايند ورود براي مدلهاي باز، تقاضاي سرويس به هر مركز سرويس، و انواع آنها
توپولوژي شبكه: چگونگي اتصال داخلي مراكز سرويس، و چگونگي حركت مشتريان بين آنها
گسترشهايي از QN مثل Layered QN (LQN) و Extended QN (EQN)
Stochastic Process Algebra (SPA)
Stochastic Timed Petri Nets (STPN) يا
Generalized Stochastic PN (GSPN)
اسلاید 8 :
كارهاي انجام شده
- مهندسي كارايي نرم افزار(Software Performance Engineering (SPE)) معرفي شده توسط اسميت (1990)، اولين رويكرد جامعي است كه تحليل كارايي را در فرايند توليد نرمافزار، از مراحل نخست تا انتها، وارد نموده است.
- متدولوژي SPE مبتني بر دو مدل است:
مدل اجرايي نرمافزار:مبتني بر گرافهاي اجراست و رفتار اجرايي نرمافزار را نشان ميدهد.
مدل اجرايي سيستم: مبتني بر مدلهاي QN است و پلاتفرم سيستم، شامل مؤلّفههاي سختافزاري و نرمافزاري را نشان ميدهد.
اسلاید 9 :
طبقه بندي رويكردها بر اساس نمودارهاي UML مورد استفاده، مدل كارايي هدف و محدوديتهاي معماري
اسلاید 10 :
طبقه بندي رويكردها بر اساس قلمروكاربرد، مرحله اعمال، سطح اطلاعات مورد نياز تحليل، بازخورد و پشتيباني ابزارها