نام پژوهشگر: نجمه سعید
نجمه سعید احمد براآنی دستجردی
تاکنون راه¬کارهای مختلفی برای خودکارسازی مکان¬یابی خطا در برنامه¬ها ارائه شده است. برخی از روش-ها از اطلاعات پوششی موارد آزمون بر روی واحدهای کد و برخی دیگر از اطلاعات مربوط به دنباله¬های اجرایی برای نیل به این هدف استفاده می¬کنند. روش¬های مبتنی بر اطلاعات پوششی، برای شناسایی مکان-های خطا فقط به اجرا شدن یا نشدن واحدهای کد (اطلاعات دودویی) در اجراهای موفق و ناموفق توجه دارند. در این پژوهش بر خلاف روش¬های پیشین اطلاعات پوششی به صورت فراوانی استخراج شد تا تاثیر استفاده از تعداد دفعات پوشش هر واحد از کد بر دقت روش¬های مکان¬یابی خطا، مورد ارزیابی قرار گیرد. از سوی دیگر، دنباله¬های اجرایی حاوی اطلاعات سودمندی هستند که می¬توانند برای کمک به مکان¬یابی خودکار خطا مورد استفاده قرار گیرند. در همین راستا برای اولین¬بار، به منظور استفاده از اطلاعات فراوانی روی دنباله¬های اجرایی دو مدل سه¬گانه برای اجراهای موفق و ناموفق ساخته شد. میزان اختلاف بین دو مدل ساخته شده به ازای هر واحد کد، میزان مظنون به خطا بودن واحد کد مذکور را مشخص می¬کند. نتایج آزمایش¬ها بر روی هفت برنامه استاندارد زیمنس حاکی از کارایی روش¬های مبتنی بر اطلاعات فراوانی نسبت به روش¬های سنتی می¬باشد. روش¬های مبتنی بر اطلاعات فراوانی به طور متوسط بین چهار تا هفت درصد بهتر از سایر روش¬ها عمل می¬کنند. از سوی دیگر، با بررسی تاثیر تعداد موارد آزمون ناموفق بر کارایی روش¬های مکان¬یابی خطا، مشخص شد این عامل بیشترین تاثیر را در شناسایی واحدهای کد مظنون دارد. به همین دلیل از این عامل به عنوان یک فیلتر برای بهبود عملکرد سایر روش¬ها استفاده شد. همچنین با در نظر گرفتن سایر عوامل موثر بر مکان-یابی خطا، یک تابع اکتشافی جدید برای مکان¬یابی موثر خطا ارائه شد. نتایج به دست آمده بر روی دیتاست زیمنس نشان می¬دهد، این روش در مقایسه با روش¬های تارانتولا، کراس¬تب و اوکای به طور متوسط بین 5 تا 15 درصد بهتر عمل کرده است.