دانلود پایان نامه : گسترش ابزارهای خودکار شناسایی الگوهای طراحی با عملیات پالایش و تصحیح برچسب

اگرچه طراحی یک نرم­افزار شی­گرا دشواری­های خاص خود را دارد، دشوار­تر از آن، طراحی یک نرم­افزار شی­گرا با قابلیت استفاده مجدد است. الگوهای طراحی، استفاده از طراحی­ها و معماری­های موفق را آسان می­کنند [1]. الگوهای طراحی راه­حل­های اثبات شده و قابل اطمینان هستند که به منظور حل مسائلی که به طور مکرر در طراحی یک نرم افزار شی­گرا رخ می­دهد، مورد استفاده قرار می­گیرند. یک الگوی

 

پایان نامه و مقاله

 طراحی هدف و ساختار واحد خودش را دارد. الگوها نقش­ها، مسئولیت­ها، نحوه­ همکاری کلاس­ها و نمونه­های شرکت کننده در این همکاری را توصیف می­کنند. بنابراین با استخراج الگو­های طراحی از کد منبع، قادر به آشکار کردن هدف و طرح یک سیستم نرم­افزاری هستیم [5].

بکارگیری صحیح الگو­های طراحی در توسعه یک نرم­افزار شی­گرا، می­تواند به طور چشمگیری کیفیت کد منبع را بر حسب نگهداشت پذیری و قابلیت استفاده مجدد بهبود دهد. مهمترین مساله­ نگهداشت­پذیری سیستم­های نرم­افزاری خصوصا سیستم­های قدیمی این است که فاقد سند کامل از طرح سیستم و اهداف آن هستند. بنابراین شناسایی الگوهای طراحی به صورت خودکار یا نیمه خودکار، سندسازی سیستم،  نگهداشت­پذیری و قابلیت استفاده مجدد آن را تسهیل می­کند.

محققان بسیاری در زمینه شناسایی الگوهای طراحی، کار کرده­اند (خودکار یا نیمه خودکار).  اما هیچ کدام نتوانسته­اند یک خروجی مطمئن و بدون مثبت کاذب را در اختیار توسعه­دهندگان قرار دهند. به طورکلی شیوه­های شناسایی الگو­های طراحی به دودسته تقسیم می­شوند. آنهایی که بر اساس جنبه­های ساختاری الگوها، کار شناسایی را انجام می­دهند و آنهایی که از جنبه­های رفتاری موجود در الگو­ها نیز جهت شناسایی بهره می­گیرند [5].

هدف قرار دادن جنبه­های ساختاری

برخی از شیوه­ها، برای شناسایی الگوها، تنها جنبه­ ساختاری آنها را در نظر می­گیرند. ابتدا خصوصیات ساختاری هرکلاس موجود در کد منبع با هر نقش تشکیل­ دهنده­ یک الگو مقایسه و کاندیدهای هر نقش شناسایی می­شود. سپس کاندیدهای نقش­هایی که می­توانند به هم مرتبط شوند، ترکیب می­شوند. در نهایت روابط میان کلاسی را بدون توجه به خصوصیات رفتاری، تجزیه و تحلیل و با الگوها مقایسه می­کنند. روابط­ میان کلاسی شامل ارث بری، انواع برگشتی، تعریف[1]، تعمیم[2]، پیوند[3]، و … می­شوند. به ­عنوان­ مثال­ SPOOL [19]،DP++  [18]، Osprey [20]، و [21] به شیوه ساختاری فوق، الگوها را شناسایی می­کنند.

بالانیا و همکارانش [3] با استفاده ازیک چارچوب به نام کولامبوس، گراف­های معنایی منتزع[4] را استخراج، و برای شناسایی الگو­ها بر اساس مقایسه گراف­ها[5] عمل کردند [5]. همچنین [2] از معناشناسی صریح[6] برای پیدا کردن الگوها روی گراف معنایی منتزع بهره می­گیرد. در هر حال برای شناسایی الگوها، علاوه بر خصوصیات ساختاری، تجزیه و تحلیل خصوصیات رفتاری نیز ضروری است.

هیچ نظری هنوز ثبت نشده است
نظر دهید

آدرس پست الکترونیک شما در این سایت آشکار نخواهد شد.

URL شما نمایش داده خواهد شد.
بدعالی

درخواست بد!

پارامتر های درخواست شما نامعتبر است.

اگر این خطایی که شما دریافت کردید به وسیله کلیک کردن روی یک لینک در کنار این سایت به وجود آمده، لطفا آن را به عنوان یک لینک بد به مدیر گزارش نمایید.

برگشت به صفحه اول

Enable debugging to get additional information about this error.