سال 1405، دوره 13، شماره 51، صفحات 36-51
ارائه الگوهای طراحی جنبهگرا برای بهبود تحملپذیری خطای نرمافزار با رویکردی مبتنی بر کیفیت نرمافزار و معماریهای نوین
KNO-1301-5104
نویسندگان:مریم اسداله زاده کرمانشاهی
کلمات کلیدی:
تحملپذیری خطا، برنامهنویسی جنبهگرا، Aspect-Oriented Programming، بلوکهای بازیابی، برنامهنویسی چندنسخهای، کیفیت نرمافزار، میکروسرویس
چکیده:
تحملپذیری خطا یکی از مهمترین ویژگیهای کیفی سیستمهای نرمافزاری بحرانی محسوب میشود که نقش اساسی در افزایش قابلیت اطمینان، دسترسپذیری و پایداری سامانهها ایفا میکند. پیادهسازی مکانیزمهای تحملپذیری خطا در روشهای سنتی توسعه نرمافزار، بهویژه برنامهنویسی شیءگرا، معمولاً موجب افزایش پیچیدگی طراحی، کاهش قابلیت نگهداری و کاهش قابلیت استفاده مجدد اجزای نرمافزاری میشود. برنامهنویسی جنبهگرا بهعنوان رویکردی نوین در مهندسی نرمافزار، امکان جداسازی دغدغههای متقاطع را فراهم کرده و میتواند بسیاری از محدودیتهای روشهای سنتی را برطرف سازد.
در این پژوهش، دو تاکتیک مهم تحملپذیری خطا شامل بلوکهای بازیابی و برنامهنویسی چندنسخهای با استفاده از رویکرد برنامهنویسی جنبهگرا مدلسازی شدهاند. برای هر تاکتیک، یک الگوی طراحی جنبهگرا ارائه گردیده و میزان تأثیر آن بر شاخصهای کیفیت نرمافزار مورد ارزیابی قرار گرفته است. همچنین کاربرد این الگوها در معماریهای نوین مبتنی بر میکروسرویسها و چارچوبهای AspectJ و Spring AOP بررسی شده است.نتایج ارزیابی نشان میدهد که استفاده از برنامهنویسی جنبهگرا موجب بهبود جداسازی دغدغهها، افزایش قابلیت نگهداری، افزایش قابلیت استفاده مجدد و کاهش وابستگی میان اجزای سیستم میشود. همچنین استفاده از الگوهای پیشنهادی در سامانههای توزیعشده و مبتنی بر میکروسرویسها میتواند نقش مؤثری در افزایش تابآوری و قابلیت اطمینان نرمافزار داشته باشد.