Title
|
تشخیص گزارش های باگ نرم افزاری تکراری با استفاده از پردازش زبان طبیعی و یادگیری ماشین
|
Type of Research
|
Thesis
|
Keywords
|
آزمون نرم افزار، گزارش باگ تکراری، یادگیری ماشین، خوشه بندی، پردازش زبان طبیعی، مدل سازی موضوعی
|
Abstract
|
با ظهور اینترنت و گسترش کاربران کامپیوتر، نرم افزارهای کاربردی بسیاری توسعه یافته اند که توسط میلیون ها کاربر برای امور روزمره مورد استفاده قرار می گیرند، مانند نرم افزارهای اداری یا مرورگرهای وب. فرایندهای تعمیر و نگهداری بیش از دو سوم هزینه چرخه حیات یک سیستم نرم افزاری را شامل می شود. در نتیجه بسیاری از پروژه های نرم افزاری بر روی سیستم های ردیابی باگ به منظور مدیریت فعالیت های نگهداری تکیه کرده اند. از طرفی نقص ها بخشی جدایی ناپذیر از هر پروژه نرم افزاری هستند، که می توانند در مراحل مختلف توسعه نرم افزار و یا مرحله تعمیر و نگهداری، ایجاد شوند. باگ های نرم افزاری به دلایل مختلفی اتفاق می افتند و گزارش های باگ یا به صورت خودکار تولید می شوند و یا توسط کاربر نرم افزار پیش نویس شده اند. در پروژه های منبع باز، از مخازن باگ نظیر Google issue-tracker، Bugzilla و غیره، برای نگهداری گزارش های باگ استفاده می شود. این مخازن به توسعه دهندگان، تست کننده ها و کاربران اجازه می دهند تا باگ های موجود در سیستم را گزارش و وضعیت حل آن ها را دنبال کنند.
در اکثر موارد گزارش های باگ توسط چندین کاربر مختلف ارسال می شوند. با این وجود هر گزارش باگ به صورت مجزا و با دقت، تجزیه و تحلیل می شود. هنگامی که یک گزارش باگ جدید دریافت می شود، شخصی به نام تریاژکننده ، گزارش باگ را تحلیل کرده و آن را به توسعه دهنده مسئول، اختصاص می دهد. اما مسئله ای که وجود دارد این است که قبل از تخصیص، باید بررسی شود که آیا این گزارش باگ، تکراری است یا خیر. تشخیص اینکه گزارش های باگ تکراری هستند یا نه، زمان و هزینه زیادی را به همراه دارد. به دلیل وجود پیچیدگی در سیستم های نرم افزاری بزرگ، باگ نرم افزار یک پدیده ی اجتناب ناپذیر است. توسعه نرم افزار یک فرایند تکاملی است که در آن پس از انتشار اولین نسخه، باگ ها توسط کاربران و تست کننده گزارش می شود. سیستم ردیابی باگ یا سیستم ردیابی نقص یک برنامه کاربردی نرم افزار است که گزارش باگ های نرم افزار را در خود نگه می دارد. اغلب سیستم های ردیابی باگ که از پروژه های نرم افزاری منبع باز استفاده می کنند، به کاربران نهایی اجازه می دهند تا خود به طور مستقیم خطاها را وارد کنند.
بنابراین به دلیل ماهیت ناهماهنگ ارسال گزارش های باگ به این سیستم ردیابی، ممکن است که بارها یک گزارش باگ،
|
Researchers
|
Elnaz Jafarnejhad (Student)، Alireza Rouhi (Primary Advisor)، Asgarali Bouyer (Advisor)
|