سال انتشار: ۱۳۸۶

محل انتشار: سیزدهمین کنفرانس سالانه انجمن کامپیوتر ایران

تعداد صفحات: ۸

نویسنده(ها):

سعید پارسا – دانشیار کامپیوتر دانشکده مهندسی کامپیوتر، دانشگاه علم و صنعت ایران
سمیه عربی نرئی – دانشجوی کارشناسی ارشد نرمافزار دانشکده مهندسی کامپیوتر، دانشگاه عل
مجتبی وحیدی اصل – دانشجوی کارشناسی ارشد نرمافزار دانشکده مهندسی کامپیوتر، دانشگاه عل

چکیده:

خطایابی نرمافزار، بهخصوص خطاهای مشاهده شده پس از استقرار نرمافزار، در عمل هزینههای پیشبینی نشده هنگفتی را برای شرکتهای کامپیوتری ایجاد و بعضاً با ضرر و زیان مواجه نموده اس ت. مشکل در اینجاست که نمی توان کلیه مسیرهای ممکن در اجرای برنامهها را قبل از تحویل برنامه مورد آزمون قرار داد. برای رفع این مشکل در این مقاله روشی جدید که تلفیقی از روشهای آماری و تکنیکهای یادگیری ماشینی است، برای ایجاد مدلهای رفتاری برنامه ارائه شده است. این روش از مدل مارکوف برای مدلسازی رفتار برنامه در طی اجراهای موفقیتآمیز استفاده میکند. علاوهبر آن با بهکارگیری روشهای آماری و مقایسه اطلاعات آماری در طی اجراهای موفق و ناموفق، خطوط برنامه براساس میزان احتمال خطادار بودن امتیازدهی میشوند. هنگام اجرای نرمافزار استقراریافته، رفتار برنامه با مدل ساخته شده مقایسه میشود تا بدین وسیله ناهنجاری در نرمافزار ومحدوده آن کشف شود. پس از کشف ناهنجاری، خطوطی که مسبب رفتار ناهنجار برنامه هستند، براساس امتیازدهی انجام شده به کاربر اعلام میشوند. مزیت تکنیک ارائه شده این است که میتواند خطا را پیش از بروز واقعی آن و شکست نرمافزار پیدا کند؛ که این مسأله در نرم افزارهای حیاتی دارای اهمیت بسیار است. با پیاده سازی روش ارائه شده و بررسی های انجام شده بر روی یک مورد مطالعه ، تأثیر و کارایی روش پیشنهادی در یافتن خطاهای معنایی در نرم افزارهای بزرگ، نشان داده شده است