Vahid Rahimian.ppt

‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫توسط‪ :‬وحید رحیمیان‬
‫استاد راهنما‪ :‬دکتر حبیبی‬
‫استاد راهنما‪ :‬دکتر جلیلی‬
‫دی ماه ‪1385‬‬
‫چکیده‬
‫‪ ‬بخش اول‪ :‬موضوع پروژه‬
‫–‬
‫–‬
‫بیان موضوع‬
‫حوزههای مرتبط‬
‫‪ ‬بخش دوم‪ :‬کارهای انجام شده‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫شناخت جنبههای سیار بودن‬
‫آگاهی از زمینه‬
‫تطبیق پذیری‬
‫عاملهای سیار‬
‫کارایی نرمافزارهای محیطهای سیار‬
‫به اشتراک گذاری منابع در محیطهای سیار‬
‫معماری نرمافزارهای محیطهای سیار‬
‫‪ ‬بخش سوم‪ :‬تعریف پروژه‬
‫–‬
‫–‬
‫–‬
‫اهداف پروژه و حدود فعالیت‬
‫تمایز از فعالیتهای قبلی‬
‫زمانبندی فعالیتهای ادامه کار‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪2‬‬
‫بخش اول‪ :‬موضوع پروژه‬
‫موضوع پروژه‬
‫‪ ‬ارزیابی کارایی سیستمهای نرمافزاری عمل کننده در‬
‫محیطهای سیار‬
‫‪ ‬حوزههای مرتبط‬
‫– محاسبات سیار‬
‫– سیستم نرمافزاری‬
‫– ارزیابی کارایی‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪4‬‬
‫محاسبات سیار‬
‫‪ ‬نیاز کاربران به استفاده از توان محاسباتی در هر مکان و هر‬
‫زمان‬
‫‪ ‬پیشرفت فناوری تولید رایانه های کوچک و قابل حمل‬
‫‪ ‬ظهور شبکه های انتقال اطالعات بی سیم‬
‫‪Need to compute ubiquitously‬‬
‫‪Mobile computing‬‬
‫‪is now widely used‬‬
‫‪Advances in mobile computers‬‬
‫‪Advent of wireless networking‬‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪5‬‬
‫محدودیتهای محاسبات سیار‬
‫‪‬‬
‫محدودیت های میزبان های سیار‬
‫–‬
‫–‬
‫–‬
‫–‬
‫‪‬‬
‫توان پردازشی ضعیف تر‬
‫حافظه کمتر‬
‫منبع انرژی محدود‬
‫واسط کاربری خاص‬
‫محدودیت های زیر ساخت ارتباطی‬
‫– پهنای باند متغیر‬
‫– هزینه ارتباطی بیشتر‬
‫– قابلیت اعتماد کمتر‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪6‬‬
‫سیستم نرمافزاری‬
‫‪‬‬
‫‪‬‬
‫طراحی نرم افزار برای محیطهای سیار باید با توجه به محدودیتهای‬
‫موجود انجام شود‪.‬‬
‫ویژگی های کیفی نرم افزارهای کاربردی سیار‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫قابلیت استفاده‬
‫کارآمدی‬
‫تغییر پذیری‬
‫• قابلیت حمل‬
‫• تطبیق پذیری‬
‫امنیت‬
‫قابلیت همکاری‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪7‬‬
‫کارایی سیستم نرمافزاری‬
‫‪ ‬کارایی‪ :‬میزان تناسب عملکرد نرمافزار و کاربرد مورد نظر‬
‫‪ ‬معیارهای کارایی‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫انجام عملیات در زمان کم (‪)Responsiveness‬‬
‫استفاده مناسب از منابع (‪)Usage Level‬‬
‫ماموریت پذیری (‪)Missonability‬‬
‫قابلیت اطمینان (‪)Dependability‬‬
‫سودمندی برای کاربر (‪)Productivity‬‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪8‬‬
‫بخش دوم‪ :‬مرور کارهای انجام شده‬
‫شناخت جنبههای سیار بودن‬
‫ دسته بندی محدودیتهای محیطهای سیار‬
‫ بررسی ویژگیهای سیار بودن در کاربردهای خاص‬
‫ جمعآوری راهکارهای کلی ارائه شده‬








‫ برخی از منابع‬
The Challenges of Mobile Computing [Forman, 94]
Mobile Information Access [Satyanarayanan, 96]
Fundamental Challenges in Mobile Computing [Satyanarayanan, 97]
Mobile Computing and Databases, A Survey [barbara,99]
Client-Server Computing in Mobile Environments [Jing, 99]
Challenges in Mobile Electronic Commerce [Tsalgatidou, 00]
Research Challenges in Information Access and Dissemination in a Mobile
Environment [Xu, 02]
Survey of Requirements and Solutions for Ubiquitous Software [Niemela, 04]
10 ‫صفحه‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫آگاهی از زمینه (‪)Context Awareness‬‬
‫‪ ‬یک سیستم آگاه از زمینه است اگر از هرگونه اطالعات مرتبط‬
‫با زمینه قبل و یا هنگام ارائه سرویس استفاده نماید‪.‬‬
‫‪ ‬مثالهایی از آگاهی از زمینه‪:‬‬
‫– آگاهی از مکان (‪)Location Awareness‬‬
‫– آگاهی از انرژی (‪)Power Awareness‬‬
‫‪ ‬برخی از منابع‬
‫]‪Context-Aware Computing Applications [Schilit, 94‬‬
‫]‪Power Aware Data Management for Small Devices [Rollins, 02‬‬
‫]‪Power-Aware Cache Management in Mobile Environments [Cao, 03‬‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪11‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
)‫(ادامه‬
‫تطبیق پذیری‬
‫ تغییر نحوه عملکرد برنامه کاربردی با توجه به شرایط‬
‫– نمایش داده متنی (به جای تصویر) با کم شدن پهنای باند‬
‫ تناسب میان استقالل و ارتباط متقابل‬
‫ ارتباط متقابل‬:‫– محدودیت منابع و قابلیت اطمینان کم‬
‫ استقالل‬:‫– شبکه نامطمئن و هزینه ارتباط‬





‫برخی از منابع‬
Agile Application-Aware Adaptation for Mobility [Noble, 97]
Energy-aware adaptation for mobile applications [Flinn, 99]
Analysis of Adaptation Strategies for Mobile QoS-Aware Applications [Geihs, 02]
Towards Highly Adaptive Services for Mobile Systems [Agostini, 05]
Adaptive Query Processing in Mobile Environment [Grine, 05]
12 ‫صفحه‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬

)Mobile Agents( ‫عاملهای سیار‬
‫ شامل برنامه اجرایی و داده‬
‫ حرکت بر روی عناصر سیار‬
‫ انعطاف پذیری و کارایی باال‬:‫ اجرای ناهمزمان‬
‫ برخی از منابع‬




A Performance Evaluation of the Mobile Agent Paradigm [Ismail, 98]
Mobile Agent-Based Services for View Materialization [Karenos, 01]
Mobile Agents, A Key for Effective Pervasive Computing [Cardoso, 02]
Architectural Components for the Efficient Design of Mobile Agent Systems
[Schoeman, 03]
13 ‫صفحه‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫کارایی نرمافزارهای محیطهای سیار‬
UML ‫ کارهای مقدماتی در زمینه توسعه‬
‫بهینه کردن مالک کارایی به همراه کوچک کردن فضای جستجو‬
‫ ارائه یک سیستم کارا در کاربردهای خاص‬،‫تعریف پارامترهای کارایی‬

‫برخی از منابع‬


‫ به ویژه در حالت نظیر به نظیر‬،‫– به اشتراک گذاری داده‬





Improving TCP Performance in Mobile Computing Environments [Stangel, 97]
Performance Evaluation of Mobility-based Software Architectures [Grassi, 00]
Towards Performance Evaluation of Mobile Systems in UML [Balsamo, 03]
UML based Modeling and Performance Analysis of Mobile Systems [Grassi, 04]
Performance Evaluation of UML Software Architectures with Multiclass Queueing
Network Models [Balsamo, 05]
14 ‫صفحه‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫به اشتراک گذاری منابع در محیطهای سیار‬
‫به اشتراک گذاری داده یا توان محاسباتی‬
‫کشف سرویسهای به اشتراک گذاشته شده‬

‫برخی از منابع‬


‫ سرویسدهنده ثابت‬،‫ پایگاه داده توزیع شده‬،‫دادهها‬-‫– استفاده از متا‬




MobiShare, Sharing Context-Dependent Data & Services from Mobile Sources
[Valavanis, 03]
Mobile P2P: Creating a mobile file-sharing environment [Biström , 04]
Adaptive Resource Discovery for Ubiquitous Computing [Hharbid, 04]
Concept-Based Discovery of Mobile Services [Skouteli , 05]
15 ‫صفحه‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫معماری نرمافزار محیطهای سیار‬
‫ شرایط اجرا و نیازمندیهای‬،‫نرمافزارهای محیطهای سیار محیط کاری‬
‫مشابهی را دارا هستند‬

‫شناخت مشخصههای کیفی و ارائه معماری با توجه به آنها‬

‫برخی از منابع‬

‫– بررسی این طبقه از نرمافزارها از منظر معماری نرمافزار‬

Towards a Generic Architecture for Mobile Object-Oriented Applications [Haahr,
00]

An architecture for a selfadapting information system for tourists [Zarikas , 01]

Software Architectural Support for Handheld Computing [Medvidovic , 03]
An architecture for privacy-sensitive ubiquitous computing [Hong , 04]

16 ‫صفحه‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫بخش سوم‪ :‬تعریف پروژه‬
‫کارایی سیستم نرمافزاری محیطهای سیار‬
‫‪ ‬با توجه به محدودیتهای محیطهای سیار‪ ،‬کارایی نرمافزار در‬
‫آن اهمیت ویژهای دارد‪.‬‬
‫‪ ‬تا کنون راهکارهای مشخصی در زمینه انتخاب پارامترهای‬
‫کارایی و ارزیابی آن‪ ،‬با توجه به شرایط محیطهای سیار و نیز‬
‫کاربردهای خاص این محیطها موجود نمیباشد‪.‬‬
‫‪ ‬دشواری کار طراح یک سیستم نرمافزاری کارا برای‬
‫محیطهای سیار‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪18‬‬
‫اهداف پروژه‬
‫‪ ‬شناخت جنبههای مختلف کارایی سیستمهای عمل کننده در‬
‫محیطهای سیار‬
‫‪ ‬ارائه متدهایی برای ارزیابی کارایی این گونه سیستمها‬
‫‪ ‬ارائه راهکارهایی برای بهینهکردن این ساختارهای نرمافزاری‬
‫(از جنبه کارایی) با توجه به محدودیتها و شرایط محیطهای‬
‫سیار‬
‫– ایجاد تغییراتی در نرمافزار به طوری که حداقل یکی از‬
‫پارامترهای کارایی نرمافزار بهبود یابد و در مجموع نیز برآیند‬
‫پارامترهای کارایی نرمافزار بهتر شود ‪.‬‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪19‬‬
‫بهینهسازی ساختار نرمافزار‬
‫‪ ‬تغییر در نرمافزار‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫اضافه کردن یک مولفه جانبی‬
‫تغییر ایستا یا پویای الگوریتم انجام یک عملیات‬
‫تغییر مدل ارتباط و یا ساختار پیغامهای رد و بدل شده‬
‫مهاجرت بخشی از نرمافزار از عامل سیار به عامل سیار دیگر‬
‫استفاده مناسبتر از متادادهها‬
‫استفاده مناسبتر از ساختارهای ثابت‬
‫به کارگیری روشهای بهتر برای همکاری با سایر عاملهای سیار‬
‫و استفاده از سرویسهای آنها‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪20‬‬
‫محدوده کار‬
‫‪‬‬
‫تاکید بر الیههای باالیی نرمافزار‪ ،‬یعنی سطح برنامه کاربردی‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫‪‬‬
‫به اشتراکگذاری سرویس‬
‫ارتباطات سیار (پیغام‪ ،‬صدا و چند رسانه)‪،‬‬
‫کامپایلرهای محیطهای سیار‬
‫مدیریت اعتماد بین کاربران سیار به منظور اعمال امنیت‬
‫یک سیستم مدیریت توزیع شده امداد رسانی توسط رباتهای سیار‬
‫عدم توجه به مسائلی مانند‬
‫– سختافزار میزبان سیار‬
‫– بستر ارتباطی محیط سیار‬
‫– سیستم عامل دستگاه سیار‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪21‬‬
‫تمایز این فعالیت از کارهای قبلی‬
‫‪ ‬نگاه جامع به جنبههای مختلف کارایی نرمافزار محیط‬
‫سیار‬
‫– در تعیین پارامترهای و روشهای ارزیابی کارایی‬
‫‪ ‬ارائه یک مدل جدید برای رسیدن به کارایی بهتر در‬
‫یک کاربرد خاص‬
‫‪ ‬نشان دادن استفاده پذیری از مدل جدید ارائه شده‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪22‬‬
‫فعالیتهای ادامه پروژه‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫تعیین پارامترهای ارزیابی کارایی نرمافزارهای محیطهای‬
‫سیار (‪ 2‬ماه)‬
‫بررسی و اصالح روشهای ارزیابی کارایی سیستمهای نرم‪-‬‬
‫افزاری محیطهای سیار (‪ 3‬ماه)‬
‫ارائه راهکارهایی برای بهینهکردن ساختارهای نرمافزاری (از‬
‫جنبه کارایی) با توجه به محدودیتها و شرایط محیطهای‬
‫سیار (‪ 3‬ماه)‬
‫پیادهسازی موردی در یک کاربرد خاص به منظور اطمینان از‬
‫صحت نتایج (‪ 1‬ماه)‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪23‬‬
‫ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار‬
‫صفحه ‪24‬‬