دانلود پایان نامه : گسترش ابزارهای خودکار شناسایی الگوهای طراحی با عملیات پالایش و تصحیح برچسب
اگرچه طراحی یک نرمافزار شیگرا دشواریهای خاص خود را دارد، دشوارتر از آن، طراحی یک نرمافزار شیگرا با قابلیت استفاده مجدد است. الگوهای طراحی، استفاده از طراحیها و معماریهای موفق را آسان میکنند [1]. الگوهای طراحی راهحلهای اثبات شده و قابل اطمینان هستند که به منظور حل مسائلی که به طور مکرر در طراحی یک نرم افزار شیگرا رخ میدهد، مورد استفاده قرار میگیرند. یک الگوی
طراحی هدف و ساختار واحد خودش را دارد. الگوها نقشها، مسئولیتها، نحوه همکاری کلاسها و نمونههای شرکت کننده در این همکاری را توصیف میکنند. بنابراین با استخراج الگوهای طراحی از کد منبع، قادر به آشکار کردن هدف و طرح یک سیستم نرمافزاری هستیم [5].
بکارگیری صحیح الگوهای طراحی در توسعه یک نرمافزار شیگرا، میتواند به طور چشمگیری کیفیت کد منبع را بر حسب نگهداشت پذیری و قابلیت استفاده مجدد بهبود دهد. مهمترین مساله نگهداشتپذیری سیستمهای نرمافزاری خصوصا سیستمهای قدیمی این است که فاقد سند کامل از طرح سیستم و اهداف آن هستند. بنابراین شناسایی الگوهای طراحی به صورت خودکار یا نیمه خودکار، سندسازی سیستم، نگهداشتپذیری و قابلیت استفاده مجدد آن را تسهیل میکند.
محققان بسیاری در زمینه شناسایی الگوهای طراحی، کار کردهاند (خودکار یا نیمه خودکار). اما هیچ کدام نتوانستهاند یک خروجی مطمئن و بدون مثبت کاذب را در اختیار توسعهدهندگان قرار دهند. به طورکلی شیوههای شناسایی الگوهای طراحی به دودسته تقسیم میشوند. آنهایی که بر اساس جنبههای ساختاری الگوها، کار شناسایی را انجام میدهند و آنهایی که از جنبههای رفتاری موجود در الگوها نیز جهت شناسایی بهره میگیرند [5].
هدف قرار دادن جنبههای ساختاری
برخی از شیوهها، برای شناسایی الگوها، تنها جنبه ساختاری آنها را در نظر میگیرند. ابتدا خصوصیات ساختاری هرکلاس موجود در کد منبع با هر نقش تشکیل دهنده یک الگو مقایسه و کاندیدهای هر نقش شناسایی میشود. سپس کاندیدهای نقشهایی که میتوانند به هم مرتبط شوند، ترکیب میشوند. در نهایت روابط میان کلاسی را بدون توجه به خصوصیات رفتاری، تجزیه و تحلیل و با الگوها مقایسه میکنند. روابط میان کلاسی شامل ارث بری، انواع برگشتی، تعریف[1]، تعمیم[2]، پیوند[3]، و … میشوند. به عنوان مثال SPOOL [19]،DP++ [18]، Osprey [20]، و [21] به شیوه ساختاری فوق، الگوها را شناسایی میکنند.
بالانیا و همکارانش [3] با استفاده ازیک چارچوب به نام کولامبوس، گرافهای معنایی منتزع[4] را استخراج، و برای شناسایی الگوها بر اساس مقایسه گرافها[5] عمل کردند [5]. همچنین [2] از معناشناسی صریح[6] برای پیدا کردن الگوها روی گراف معنایی منتزع بهره میگیرد. در هر حال برای شناسایی الگوها، علاوه بر خصوصیات ساختاری، تجزیه و تحلیل خصوصیات رفتاری نیز ضروری است.
نسخه قابل چاپ | ورود نوشته شده توسط نجفی زهرا در 1399/10/26 ساعت 03:03:00 ب.ظ . دنبال کردن نظرات این نوشته از طریق RSS 2.0. |