نام پژوهشگر: حسن طنابی
حسن طنابی اشکان سامی
ترمیم خودکار برنامه ها هدفی دیرینه در مهندسی نرم افزار می باشد. درحال حاضر خطازدایی فرایندی دستی، دشوار و زمان بر می باشد. رویکردهای ارائه شده در این زمینه کیفیت و قابلیت اجرایی بالا و قابلیت استفاده به صورت عملی برای توسعه-دهندگان ندارند. در این رساله رویکردی ارائه گردیده تا بتواند از تلاش های قبلی توسعه دهندگان برای خطازدایی کدهای مشابه بهره برداری کند. بدین منظور پایگاه داده ای از خطاهای قبلی که خطازدایی گشته اند به همراه راهکارهای ارائه شده برای خطازدایی آنها تهیه کردیم، سپس روشی کارا به منظور جستجوی سریع در این پایگاه داده ارائه دادیم تا با هزینه کم، بتوان به سرعت کدهای مشابه با خطای جدید را پیدا نمود. در نهایت پیشنهادهایی که برای کدهای مشابه وجود دارد را به عنوان راهکار پیشنهادی به کاربر ارائه می دهیم. نقطه کلیدی رویکرد ارائه شده، پایگاه داده آن می باشد که می تواند نقطه قدرت و یا برعکس نقطه ضعف آن را تشکیل دهد. در صورت داشتن پایگاه داده ای کامل از خطاهای مختلف، از پروژه های مختلف، از تیم های توسعه دهنده مختلف، می توان به کارایی این رویکرد اطمینان داشت. در غیر این صورت پیشنهادهای مناسبی برای خطاهای جدید یافت نمی شود. نقطه قوت دیگر این رویکرد زمان اجرایی کم آن می باشد.