260 likes | 493 Views
ارزیابی کارایی سیستم های نرم افزاری محیط های سیار. توسط: وحید رحیمیان استاد راهنما: دکتر حبیبی استاد راهنما: دکتر جلیلی. دی ماه 1385. چکیده. بخش اول: موضوع پروژه بیان موضوع حوزه های مرتبط بخش دوم: کارهای انجام شده شناخت جنبه های سیار بودن آگاهی از زمینه تطبیق پذیری
E N D
ارزیابی کارایی سیستمهای نرمافزاری محیطهای سیار توسط: وحید رحیمیان استاد راهنما: دکتر حبیبی استاد راهنما: دکتر جلیلی دی ماه 1385
چکیده • بخش اول: موضوع پروژه • بیان موضوع • حوزههای مرتبط • بخش دوم: کارهای انجام شده • شناخت جنبههای سیار بودن • آگاهی از زمینه • تطبیق پذیری • عاملهای سیار • کارایی نرمافزارهای محیطهای سیار • به اشتراک گذاری منابع در محیطهای سیار • معماری نرمافزارهای محیطهای سیار • بخش سوم: تعریف پروژه • اهداف پروژه و حدود فعالیت • تمایز از فعالیتهای قبلی • زمانبندی فعالیتهای ادامه کار
موضوع پروژه • ارزیابی کارایی سیستمهای نرمافزاری عمل کننده در محیطهای سیار • حوزههای مرتبط • محاسبات سیار • سیستم نرمافزاری • ارزیابی کارایی
محاسبات سیار • نیاز کاربران به استفاده از توان محاسباتی در هر مکان و هر زمان • پیشرفت فناوری تولید رایانه های کوچک و قابل حمل • ظهور شبکه های انتقال اطلاعات بی سیم Need to compute ubiquitously Mobile computing is now widely used Advances in mobile computers Advent of wireless networking
محدودیتهای محاسبات سیار • محدودیت های میزبان های سیار • توان پردازشی ضعیف تر • حافظه کمتر • منبع انرژی محدود • واسط کاربری خاص • محدودیت های زیر ساخت ارتباطی • پهنای باند متغیر • هزینه ارتباطی بیشتر • قابلیت اعتماد کمتر
سیستم نرمافزاری • طراحی نرم افزار برای محیطهای سیار باید با توجه به محدودیتهای موجود انجام شود. • ویژگی های کیفی نرم افزارهای کاربردی سیار • قابلیت استفاده • کارآمدی • تغییر پذیری • قابلیت حمل • تطبیق پذیری • امنیت • قابلیت همکاری
کارایی سیستم نرمافزاری • کارایی: میزان تناسب عملکرد نرمافزار و کاربرد مورد نظر • معیارهای کارایی • انجام عملیات در زمان کم (Responsiveness) • استفاده مناسب از منابع (Usage Level) • ماموریت پذیری (Missonability) • قابلیت اطمینان (Dependability) • سودمندی برای کاربر (Productivity)
شناخت جنبههای سیار بودن • دسته بندی محدودیتهای محیطهای سیار • بررسی ویژگیهای سیار بودن در کاربردهای خاص • جمعآوری راهکارهای کلی ارائه شده • برخی از منابع • 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]
آگاهی از زمینه (Context Awareness) • یک سیستم آگاه از زمینه است اگر از هرگونه اطلاعات مرتبط با زمینه قبل و یا هنگام ارائه سرویس استفاده نماید. • مثالهایی از آگاهی از زمینه: • آگاهی از مکان (LocationAwareness) • آگاهی از انرژی (PowerAwareness) • برخی از منابع • Context-Aware Computing Applications [Schilit, 94] • Power Aware Data Management for Small Devices [Rollins, 02] • Power-Aware Cache Management in Mobile Environments [Cao, 03]
تطبیق پذیری (ادامه) • تغییر نحوه عملکرد برنامه کاربردی با توجه به شرایط • نمایش داده متنی (به جای تصویر) با کم شدن پهنای باند • تناسب میان استقلال و ارتباط متقابل • محدودیت منابع و قابلیت اطمینان کم: ارتباط متقابل • شبکه نامطمئن و هزینه ارتباط: استقلال • برخی از منابع • 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]
عاملهای سیار (MobileAgents) • شامل برنامه اجرایی و داده • حرکت بر روی عناصر سیار • اجرای ناهمزمان: انعطاف پذیری و کارایی بالا • برخی از منابع • 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]
کارایی نرمافزارهای محیطهای سیار • کارهای مقدماتی در زمینه توسعه 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]
به اشتراک گذاری منابع در محیطهای سیار • به اشتراک گذاری داده یا توان محاسباتی • کشف سرويسهاي به اشتراک گذاشته شده • استفاده از متا-دادهها، پایگاه داده توزیع شده، سرویسدهنده ثابت • برخی از منابع • 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]
معماری نرمافزار محیطهای سیار • نرمافزارهای محیطهای سیار محیط کاری، شرایط اجرا و نیازمندیهای مشابهی را دارا هستند • بررسی این طبقه از نرمافزارها از منظر معماری نرمافزار • شناخت مشخصههای کیفی و ارائه معماری با توجه به آنها • برخی از منابع • 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]
کارایی سیستم نرمافزاری محیطهای سیار • با توجه به محدودیتهای محیطهای سیار، کارایی نرمافزار در آن اهمیت ویژهای دارد. • تا کنون راهکارهای مشخصی در زمینه انتخاب پارامترهای کارایی و ارزیابی آن، با توجه به شرایط محیطهای سیار و نیز کاربردهای خاص این محیطها موجود نمیباشد. • دشواری کار طراح یک سیستم نرمافزاری کارا برای محیطهای سیار
اهداف پروژه • شناخت جنبههای مختلف کارایی سیستمهای عمل کننده در محیطهای سیار • ارائه متدهایی برای ارزیابی کارایی این گونه سیستمها • ارائه راهکارهایی برای بهینهکردن این ساختارهای نرمافزاری (از جنبه کارایی) با توجه به محدودیتها و شرایط محیطهای سیار • ايجاد تغييراتي در نرمافزار به طوري که حداقل يکي از پارامترهاي کارايي نرمافزار بهبود يابد و در مجموع نيز برآيند پارامترهاي کارايي نرمافزار بهتر شود.
بهینهسازی ساختار نرمافزار • تغيير در نرمافزار • اضافه کردن يک مولفه جانبي • تغيير ايستا يا پوياي الگوريتم انجام يک عمليات • تغيير مدل ارتباط و يا ساختار پيغامهاي رد و بدل شده • مهاجرت بخشي از نرمافزار از عامل سيار به عامل سيار ديگر • استفاده مناسبتر از متادادهها • استفاده مناسبتر از ساختارهاي ثابت • به کارگيري روشهاي بهتر براي همکاري با ساير عاملهاي سيار و استفاده از سرويسهاي آنها
محدوده کار • تاکيد بر لايههاي بالايي نرمافزار، يعني سطح برنامه کاربردي • به اشتراکگذاري سرويس • ارتباطات سيار (پيغام، صدا و چند رسانه)، • کامپايلرهاي محيطهاي سيار • مديريت اعتماد بين کاربران سيار به منظور اعمال امنيت • يک سيستم مديريت توزيع شده امداد رساني توسط رباتهاي سيار • عدم توجه به مسائلي مانند • سختافزار ميزبان سيار • بستر ارتباطي محيط سيار • سيستم عامل دستگاه سيار
تمایز این فعالیت از کارهای قبلی • نگاه جامع به جنبههاي مختلف کارايي نرمافزار محيط سيار • در تعيين پارامترهاي و روشهاي ارزيابي کارايي • ارائه يک مدل جديد براي رسيدن به کارايي بهتر در يک کاربرد خاص • نشان دادن استفاده پذيري از مدل جدید ارائه شده
فعالیتهای ادامه پروژه • تعيين پارامترهاي ارزيابي کارايي نرمافزارهاي محيطهاي سيار (2 ماه) • بررسي و اصلاح روشهاي ارزيابي کارايي سيستمهاي نرمافزاري محيطهاي سيار (3 ماه) • ارائه راهکارهايي براي بهينهکردن ساختارهاي نرمافزاري (از جنبه کارايي) با توجه به محدوديتها و شرايط محيطهاي سيار (3 ماه) • پيادهسازي موردي در يک کاربرد خاص به منظور اطمينان از صحت نتايج (1 ماه)