پروپوزال پیش بینی خطای نرم افزار با داده کاوی با عنوان استفاده از داده کاوی در پیشبینی خطای نرمافزار بر اساس متریکهای کد و وابستگی می باشد .یکی چالش بر انگیزترین موضوعات مطرح در تضمین کیفیت ، در شرکتهای سازنده نرم افزار، موضوع رفع خطاهای نرم افزار است. خطاهای نرم افزاری می‌توانند در زمان پیش و یا پس از انتشار  نرم افزار تشخیص داده شوند. اما منابعی که میتوان برای تشخیص و تصحیح خطاها در نظر گرفت محدود است (Kamyabi et al.).

 

 

 


خطاها را میتوان به دو دسته کلی تقسیم کرد. خطاهای نحوی  و خطاهای مفهومی . با توجه بهاین که ابزارهای خودکار بسیار قدرتمندی برای تشخیص خطاهای نحوی وجود دارند، احتمالاین که خطایی ازاین دست تا زمان انتشار تشخیص داده نشود، بسیار کم است. خطاهای مفهومی به آن دسته از خطاها اشاره دارد که در اثر مشکلاتی جدای از اشتباهات نحوی و خطاهای انسانی ملموس اتفاق می‌افتند و معمولاً در اثر عدم هماهنگی در بخشهای مختلف کد و گاهی به صورت بسیار ناملموس به وجود می‌آیند که در اینجا به سادگی نمیتوان با بررسی کد، این‌گونه خطاها را تشخیص داد. بنا بر این در مورد خطاهای مفهومی داستان فرق می‌کند چرا که عوامل بسیار زیادی می‌توانند در بروزاین‌گونه از خطاها دخیل باشند. (Zimmermann & Nagappan, 2008)

 

 

 

 

 

بنا براین همواره سعی شده است که با اندازه گیری معیارهای  مختلف و استفاده از آنها در روشهای پیشبینی خودکار خطا، سرعت و دقت را در امر تست نرم افزار افزایش دهند. طی تحقیقاتی که تا کنون صورت گرفته، متداولترین معیارهای استفاده شده در پیشبینی اتوماتیک خطا، معیارهای پیچیدگی  است. (Zimmermann & Nagappan, 2008) اما جدیدترین روشی که مطرح شده است، مسأله مربوط به وابستگیهای بین کلاس‌ها  و همچنین بین ماژولها می‌باشد. انواع وابستگیها می‌توانند بین دو کلاس و یا دو ماژول  مطرح شوند که تحقیقات نشان داده است که این وابستگیها ارتباط بسیار زیادی با وجود خطاهای مفهومی دارند.

 

 

 

 

 

 

 

 

فهرست مطالب
1-مقدمه:    13
3-درخت وابستگی:    30
4-فرضیات:    40
7-مراجع:    

فهرست تصاویر
شکل 1: نمونهای از وابستگی‌های میان کلاسها    29
شکل 2: نمونهای از وابستگیهای پیچیده در میان کلاسها    30
شکل 3: تصویری از نمای کلی برنامه Class Dependency Analyzer    37
شکل 4: نمونهای از کلاس دیاگرام نمایش داده شده در برنامه Class Dependency Analyzer    37
شکل 5: نمایش تمامی کلاسهای وابسته به یک کلاس خاص در برنامه Class Dependency Analyzer    38
شکل 6: نمونهای از یک گراف جهت دار    39
شکل 7: ماتریس وابستگی مربوط به گراف جهت دار در شکل شماره 6    39