Loading...

Software Defect Prediction in Object-Oriented Web Applications using Deep Learning

Yaghoobi Samani, Omid | 2024

0 Viewed
  1. Type of Document: M.Sc. Thesis
  2. Language: Farsi
  3. Document No: 57507 (19)
  4. University: Sharif University of Technology
  5. Department: Computer Engineering
  6. Advisor(s): Habibi, Jafar
  7. Abstract:
  8. In this thesis, a method for predicting software defects in object-oriented web applications using deep learning is presented. Due to the increasing complexity of web-based software, such as e-commerce systems and financial businesses, maintaining the quality and reliability of these programs is of great importance. Software defects in such environments can lead to security problems, financial losses and loss of reputation of organizations. Therefore, an efficient method to predict and identify defects in the early stages of software development can help improve quality and reduce software development and maintenance costs. The proposed model in this research is a combination of convolutional neural network and attention mechanism, which was developed to predict defects in object-oriented software. The model needs a set of data for learning, for this a set of data related to web applications has been produced in this research. The proposed model uses a set of different features for more accurate prediction of defects. Language models are used to extract features from source code and abstract syntax tree. Language models are capable of extracting complex and semantic features, which are provided along with code metrics as input to the model. Then, the attention mechanism is applied in the model so that it can better learn the complex relationships between features and thus increase the prediction accuracy. To evaluate the performance of the model, the area under the curve has been used as a comprehensive measure to evaluate the quality of the model in separating defective and healthy classes. Also, false positive and false negative rates are also investigated. The results of the experiments show that the proposed model can accurately predict defects in object-oriented web-based software. This allows software development and quality control teams to use their time and resources more optimally by focusing on specific parts of the program, thereby increasing the speed of software deployment. These methods can be used as a powerful tool in software development processes and play an important role in improving quality and increasing customer satisfaction
  9. Keywords:
  10. Deep Learning ; Object Oriented ; Web Application ; Semantic Features ; Handcrafted Features ; Software Defect Prediction ; Object-Oriented Application Frameworks

 Digital Object List

 Bookmark

  • مقدمه
    • تعریف مسئله
    • اهمیت موضوع
    • چالش‌ها
    • اهداف پژوهش
    • ساختار پایان‌نامه
  • مفاهیم اولیه
    • سنجه‌ها
    • رویکردهای پیش‌بینی عیب
    • مشکل عدم توازن در کلاس‌ها
    • بازنمایی کد
      • مدل BERT
      • بازنمایی مبتنی بر نشانه
      • بازنمایی مبتنی بر درخت
    • یادگیری با نظارت
    • شبکه عصبی پیچشی
      • فیلتر
      • لایه پیچشی
      • لایه فشرده ساز
      • لایه متصل همبند
    • مکانیزم توجه
    • معیارهای ارزیابی
  • کارهای پیشین
    • مقدمه
    • پیش‌بینی عیب در برنامه‌های کاربردی تحت وب
    • پیش‌بینی عیب در نرم‌افزارهای شی‌گرا
    • پیش‌بینی عیب در نرم‌افزار با یادگیری عمیق
    • نتیجه‌گیری
  • جمع‌آوری داده‌ها و ساخت مجموعه دادگان
    • انتخاب مخزن
    • جمع‌آوری داده‌ها و پیش‌پردازش اولیه
    • استخراج سنجه‌ها در سطح کد و پردازش داده‌ها
  • رویکرد پیشنهادی
    • مقدمه
    • استخراج ویژگی‌های کد
      • استخراج ویژگی‌ها از کد منبع
      • استخراج ویژگی‌ها از درخت نحو انتزاعی کد منبع
    • پیش‌پردازش
    • انتخاب پروژه
    • متوازن‌سازی دادگان
    • ساخت مدل یادگیری عمیق
      • ورودی مدل
      • استخراج ویژگی
      • مکانیزم توجه
      • ترکیب ویژگی‌ها
      • دسته‌بند
  • نتایج و ارزیابی
    • مقدمه
    • ارزیابی دادگان
    • انتخاب پروژه برای ورودی مدل
    • ساخت مدل یادگیری عمیق
    • ارزیابی کارایی مدل یادگیری عمیق
    • تفسیر نتایج
  • نتیجه‌گیری
    • ‌مقدمه
    • نتیجه‌گیری
    • کارهای آتی
  • مراجع
  • واژه‌نامه
...see more