
حجم فایل : 1.5 MB
نوع فایل : پاور پوینت
تعداد اسلاید ها : 57
بسمهتعالي توسعه مبتني بر جنبه (Aspect-oriented Development ) 2 اهداف جلسه ذاتي بودن پيچيدگي نرمافزار
توسعه نرمافزار مبتني بر جنبه
مفاهيم توسعه مبتني بر جنبه
انواع جنبهها و دستهبندي آنها
توسعه نرمافزار مبتني بر جنبه 3 فهرست مطالب پيچيدگي ذاتي نرمافزار
توسعه نرمافزارهاي مدرن و مشکلات آن
مفاهيم توسعه مبتني بر جنبه
نمونههاي توجه به جنبه
تفاوت شي با جنبه
توسعه نرمافزار مبتني بر جنبه 4 توسعه نرمافزار توسعه نرمافزار از حالت ثابت، محاسباتي و دادهگرا
به حالت پويا، بسته به نياز و مولفهگرا تبديل شده است 5 توسعه نرمافزار (ادامه) Structured Programming Modular Programming Data Abstraction Object Oriented Programming Compiled Programming Languages Complexity Modularity واحدبندي روشي براي مهار پيچيدگي است 6 توسعه نرمافزار (ادامه) برنامهنويسي ساختاريافته راحتي خواندن و نوشتن
قابليت توسعه پائين
قابليت نگهداري پائين
قابليت استفاده مجدد پائين
فاقد واحدبندي 7 توسعه نرمافزار (ادامه) برنامهنويسي رويهاي راحتي خواندن و نوشتن
قابليت توسعه بهبوديافته
قابليت نگهداري بهبوديافته
قابليت استفادهمجدد بهبوديافته
واحدبندي بهبوديافته 8 توسعه نرمافزار (ادامه) برنامهنويسي شيگرا راحتي خواندن و نوشتن
قابليت توسعه خوب
قابليت نگهداري خوب
قابليت استفادهمجدد خوب
واحدبندي خوب 9 توسعه نرمافزار (ادامه) نيازهاي وظيفهمندي نيازمنديهاي توسعه نرمافزار نيازهاي غيروظيفهمندي + + پيچيدگي 10 توسعه نرمافزار (ادامه) مشکلات روشهاي شيگرا از آنجا ناشي ميشود که
نگاشت بين مولفهها اغلب يک به يک است
تغيير نيازمنديها ميتواند سبب تغيير يک يا چند مولفه شود
محلي نمودن دغدغههاي (Concerns) عمومي دشوار است
برخي اوقات اين کار امکانپذير نيست
تمرکز شيگرايي بر روي بهبود برنامهنويسي و کدها است، در حاليکه نياز است تا تمرکز بر روي نيازمنديها باشد
چالش اصلي توسعه نرمافزار، برآوردهسازي نيازمنديهاست توسعه مبتني بر جنبه (Aspect-oriented) با نگاهي بر نيازمنديها و پوشش بهينه آنها ارائه شده است 11 مفاهيم توسعه مبتني بر جنبه دغدغه (Concern)
نيازمندي سيستم که براي ذينفعان اولويت دارد
مجموعه خاصي از رفتارهاي مورد نياز براي يک برنامه
بر ماژولهاي مختلف نرمافزار تاثير ميگذارد
ميتوانند وظيفهمندي يا غيروظيفهمندي باشند
Business logic، Performance، Logging and Debugging
ميتوانند سطح بالا يا سطح پائين باشند
Security, QoS ، Caching 12 مفاهيم توسعه مبتني بر جنبه (ادامه) جداسازي دغدغهها (Separation of concerns) روشي براي توجه به آنها به صورت مجزاست که اجازه رهگيري شفاف نيازمنديها به پيادهسازي را ميدهد
جدا...