header
Local cover image
Local cover image
Image from OpenLibrary

A configurable framework for automatic software maintenance / by Amr Mansour Mohsen ; Supervised Prof. Khaled Tawfik Wassif, Prof. Hesham Ahmed Hassan, Prof. Ramadan Moawad Ahmed, Prof. Soha Hassan Mahmoud.

By: Contributor(s): Material type: TextTextLanguage: English Summary language: English, Arabic Producer: 2024Description: 122 leaves : illustrations ; إي 30 cm. + CDContent type:
  • text
Media type:
  • Unmediated
Carrier type:
  • volume
Other title:
  • إطار تركيبي لصيانة البرمجيات آليا [Added title page title]
Subject(s): DDC classification:
  • 005.16
Available additional physical forms:
  • Issues also as CD.
Dissertation note: Thesis (Ph.D)-Cairo University, 2024. Summary: Bug localization or debugging in software is a crucial aspect of the software maintenance process. Bug localization in software development refers to the process of identifying, analyzing, and fixing defects or bugs in a program through direct examination of the source code. The automation of bug localization process can significantly reduce the time involved in this localization process. Although, recent work has methods have been employed in for the automatic bug localization, these methods often face constraints regarding generality, time and accuracy. Current approaches methods suffers from some limitations;: (1) ability of localizing bugs with different types of software's according to their available software artifacts like bug reports, source code and test cases, (2) ability of dealing with different types of software. (3) The considerable high time consumed to localize bugs, and (4) low accuracy of some existing approaches. The thesis of this dissertationAccording to the work in this thesis, introduces a configurable framework has been introduced that can be assembled and reassembled to support different types of software artifacts and languages. In addition to enhance the accuracy and time for the bug localization problem. This framework comprises three main components;: raw data preparation, package classification, and source code recommendation. The primary inputs for our the proposed framework are the bug report and the source code from previous versions of the targeted system. The bug report contains diverse information, including the summary, description, stack traces, and fixed source code files. The package classification component is dedicated to identifying the package containing which contains the source code to be modified, serving as an initial step to reduce the time required for locating the source code file. We leverage Bidirectional Encoder Representations from Transformers (BERT), a sentence embedding technique, to enhance the package classification and source code recommendation components. We evaluated our framework through different experiments including different software and different software artifacts. Experimental results demonstrate that our approach framework exceeds some of existing approaches according to TOP-N and Mean Reciprocal Rank (MRR) evaluation metrics.Summary: المساهمة الرئيسية للرسالة هي تعزيز عملية إيجاد الأخطاء التي تحدث في البرمجيات ، وهي مهمة هامة في صيانة البرمجيات. يتم تحسين إيجاد الأخطاء وفقًا لجانبين رئيسيين مهمين وهما الوقت والدقة، حيث تعاني بعض الأعمال المستكشفة السابقة في هذا الصدد. يتم تطبيق مثال تطبيقي لعرض كيفية عمل تقنيات أخرى وعرض بعض القيود التي قد تواجهها. بالإضافة إلى الأدوات البرمجية التي تستخدم والتي لا تستخدم. وعلاوة على ذلك، بعض التقنيات لا تجيب على بعض الأسئلة مثل ماذا لو كان المشروع واحدًا ولم يكن هناك تقارير عن الأخطاء في الماضي. مشكلة أخرى تم مناقشتها هي أن بعض تقنيات استرجاع المعلومات تستخدم مقاييس التشابه بين نصوص تقارير الأخطاء الجديدة وجميع ملفات البرنامج، مما يستغرق وقتًا كبيرًا لتطبيق التشابه. ظهرت مشكلة أخرى هي السياق القائم على مصطلحات المشروع التي قد تؤثر على دقة تحديد الأخطاء. بالإضافة إلى ذلك، فإن عناصر تقرير الأخطاء مثل ملخص الأخطاء والوصف، بالإضافة إلى المعلومات الخاصة بالموعد المقدر التي يتم استخراجها من تقرير الأخطاء، تحتاج إلى معالجة خاصة. لذلك، يتم تطبيق إطار قابل للتكوين لتعزيز عملية تحديد الأخطاء المصممة وفقًا للتصميم الروتيني المكون من ثلاثة مكونات رئيسية وهي: • تحضير البيانات الأولية • تصنيف الحزمة • توصية بملفات البرنامج التي فيها الأخطاء وفقًا للتصميم الروتيني، المتخصص الرئيسي الذي سيستدعي جميع مكونات إطار بأكملها. سيتصل متخصص الصيانة التصحيحي بخطة تحديد الأخطاء التي ستستدعي بدورها متخصص إعداد البيانات الأولية. سيتم استدعاء متخصص إعداد البيانات الأولية بعد ذلك لتجميع ومعالجة وإعداد البيانات للمعالجة التالية من قبل المتخصصين والخطط والمهام الأخرى. سيتم استدعاء ثلاثة متخصصين من قبل خطة إعداد البيانات وهم: • متخصص تقارير الأخطاء والإعداد: دور هذا المتخصص هو استدعاء متخصصين فرعيين آخرين مثل استخراج تقارير الأخطاء والإعداد والذي يتكون من خطة استخراج تقارير الأخطاء التي تهدف إلى استخراج تقارير الأخطاء من نظام تتبع الأخطاء. وعلاوة على ذلك، ستقوم خطة إعداد تقارير الأخطاء باستدعاء مهمة استخراج البيانات المهيكلة التي تحصل على معلومات البيانات المهيكلة الفرعية من تقرير الأخطاء. بعد ذلك، سيتم استدعاء متخصص البيانات غير المهيكلة للحصول على النص الطبيعي والأثر النصي والبرنامج من وصف الأخطاء إذا كانت متاحة. • استخراج وإعداد البرنامج: سيقوم هذا المتخصص بإستدعاء خطة استخراج البرنامج التي تستدعي بدورها خطة استخراج البرنامج. سيتم استخراج ملفات البرنامج لمشروع البرمجيات من نظام إدارة البرنامج. بعد ذلك،سيقوم خطة إعداد البرنامج بإستدعاء المتخصص وفقًا للغة المشروع البرمجي. سيقوم مستخرج عناصر البرنامج بالحصول على أسماء الفئات والطرق والمتغيرات والتعليقات ووضعها في شكل منظم. سيتولى المتخصص في معالجة النص والمزج المسؤولية عن مزيد من معالجة النص ودمج تقارير الأخطاء القديمة إذا كانت متاحة وملفات البرنامج. سيتم استدعاء المتخصص التالي هو متخصص تصنيف البرنامج الذي يستدعي أحد الخطةين وفقًا لإدخال تقرير الأخطاء. إذا احتوى تقرير الأخطاء على أثر النص، سيتم استدعاء خطة أثر النص، وإلا سيتم استدعاء تصنيف الحزمة. يكمن دور خطة أثر النص في استدعاء مهمتين، المهمة الأولى هي تحليل أثر النص وتهدف إلى استخراج أسماء ملفات البرنامج من أثر النص للمعالجة المستقبلية. المهمة التالية هي مهمة جمع الملفات التي تهدف إلى جمع الملفات المهيكلة المعدة من شفرات المصدر وملفات البرنامج المعالجة في الماضي للمعالجة المستقبلية. سيتم استدعاء خطة تصنيف الحزمة لتدريب مصنف BERT باستخدام تقارير أخطاء سابقة مختلفة إذا كانت متاحة وملفات البرنامج مع تسميتها بالحزمة الموصى بها. الهدف الرئيسي لهذه الخطة هو تقليل الوقت وتحسين دقة تحديد الأخطاء عن طريق توصية الحزمة الناتجة عن البرنامج. بغض النظر عما إذا كان سيتم استدعاء خطة تصنيف الحزمة أو خطة أثر النص، سيتم استدعاء متخصص ترتيب ملفات البرنامج المعيوبة. يكمن دور متخصص ترتيب ملفات البرنامج المعيوبة في الحصول على أقرب ملفات البرنامج التي تحتوي على الخطأ بعد الحصول على قوائم قصيرة من ملفات البرنامج للبحث فيها والتي تنتج إما عن خطة أثر النص أو خطة تصنيف الحزمة
Tags from this library: No tags from this library for this title. Log in to add tags.
Star ratings
    Average rating: 0.0 (0 votes)
Holdings
Item type Current library Home library Call number Status Barcode
Thesis Thesis قاعة الرسائل الجامعية - الدور الاول المكتبة المركزبة الجديدة - جامعة القاهرة Cai01.20.03.Ph.D.2024.Am.C (Browse shelf(Opens below)) Not for loan 01010110090440000

Thesis (Ph.D)-Cairo University, 2024.

Bibliography: pages 110-119.

Bug localization or debugging in software is a crucial aspect of the software maintenance process. Bug localization in software development refers to the process of identifying, analyzing, and fixing defects or bugs in a program through direct examination of the source code. The automation of bug localization process can significantly reduce the time involved in this localization process. Although, recent work has methods have been employed in for the automatic bug localization, these methods often face constraints regarding generality, time and accuracy.
Current approaches methods suffers from some limitations;: (1) ability of localizing bugs with different types of software's according to their available software artifacts like bug reports, source code and test cases, (2) ability of dealing with different types of software. (3) The considerable high time consumed to localize bugs, and (4) low accuracy of some existing approaches.
The thesis of this dissertationAccording to the work in this thesis, introduces a configurable framework has been introduced that can be assembled and reassembled to support different types of software artifacts and languages. In addition to enhance the accuracy and time for the bug localization problem. This framework comprises three main components;: raw data preparation, package classification, and source code recommendation. The primary inputs for our the proposed framework are the bug report and the source code from previous versions of the targeted system. The bug report contains diverse information, including the summary, description, stack traces, and fixed source code files. The package classification component is dedicated to identifying the package containing which contains the source code to be modified, serving as an initial step to reduce the time required for locating the source code file. We leverage Bidirectional Encoder Representations from Transformers (BERT), a sentence embedding technique, to enhance the package classification and source code recommendation components.
We evaluated our framework through different experiments including different software and different software artifacts. Experimental results demonstrate that our approach framework exceeds some of existing approaches according to TOP-N and Mean Reciprocal Rank (MRR) evaluation metrics.

المساهمة الرئيسية للرسالة هي تعزيز عملية إيجاد الأخطاء التي تحدث في البرمجيات ، وهي مهمة هامة في صيانة البرمجيات. يتم تحسين إيجاد الأخطاء وفقًا لجانبين رئيسيين مهمين وهما الوقت والدقة، حيث تعاني بعض الأعمال المستكشفة السابقة في هذا الصدد.
يتم تطبيق مثال تطبيقي لعرض كيفية عمل تقنيات أخرى وعرض بعض القيود التي قد تواجهها. بالإضافة إلى الأدوات البرمجية التي تستخدم والتي لا تستخدم. وعلاوة على ذلك، بعض التقنيات لا تجيب على بعض الأسئلة مثل ماذا لو كان المشروع واحدًا ولم يكن هناك تقارير عن الأخطاء في الماضي. مشكلة أخرى تم مناقشتها هي أن بعض تقنيات استرجاع المعلومات تستخدم مقاييس التشابه بين نصوص تقارير الأخطاء الجديدة وجميع ملفات البرنامج، مما يستغرق وقتًا كبيرًا لتطبيق التشابه. ظهرت مشكلة أخرى هي السياق القائم على مصطلحات المشروع التي قد تؤثر على دقة تحديد الأخطاء. بالإضافة إلى ذلك، فإن عناصر تقرير الأخطاء مثل ملخص الأخطاء والوصف، بالإضافة إلى المعلومات الخاصة بالموعد المقدر التي يتم استخراجها من تقرير الأخطاء، تحتاج إلى معالجة خاصة.

لذلك، يتم تطبيق إطار قابل للتكوين لتعزيز عملية تحديد الأخطاء المصممة وفقًا للتصميم الروتيني المكون من ثلاثة مكونات رئيسية وهي:
• تحضير البيانات الأولية
• تصنيف الحزمة
• توصية بملفات البرنامج التي فيها الأخطاء
وفقًا للتصميم الروتيني، المتخصص الرئيسي الذي سيستدعي جميع مكونات إطار بأكملها. سيتصل متخصص الصيانة التصحيحي بخطة تحديد الأخطاء التي ستستدعي بدورها متخصص إعداد البيانات الأولية. سيتم استدعاء متخصص إعداد البيانات الأولية بعد ذلك لتجميع ومعالجة وإعداد البيانات للمعالجة التالية من قبل المتخصصين والخطط والمهام الأخرى. سيتم استدعاء ثلاثة متخصصين من قبل خطة إعداد البيانات وهم:
• متخصص تقارير الأخطاء والإعداد: دور هذا المتخصص هو استدعاء متخصصين فرعيين آخرين مثل استخراج تقارير الأخطاء والإعداد والذي يتكون من خطة استخراج تقارير الأخطاء التي تهدف إلى استخراج تقارير الأخطاء من نظام تتبع الأخطاء. وعلاوة على ذلك، ستقوم خطة إعداد تقارير الأخطاء باستدعاء مهمة استخراج البيانات المهيكلة التي تحصل على معلومات البيانات المهيكلة الفرعية من تقرير الأخطاء. بعد ذلك، سيتم استدعاء متخصص البيانات غير المهيكلة للحصول على النص الطبيعي والأثر النصي والبرنامج من وصف الأخطاء إذا كانت متاحة.
• استخراج وإعداد البرنامج: سيقوم هذا المتخصص بإستدعاء خطة استخراج البرنامج التي تستدعي بدورها خطة استخراج البرنامج. سيتم استخراج ملفات البرنامج لمشروع البرمجيات من نظام إدارة البرنامج. بعد ذلك،سيقوم خطة إعداد البرنامج بإستدعاء المتخصص وفقًا للغة المشروع البرمجي. سيقوم مستخرج عناصر البرنامج بالحصول على أسماء الفئات والطرق والمتغيرات والتعليقات ووضعها في شكل منظم.
سيتولى المتخصص في معالجة النص والمزج المسؤولية عن مزيد من معالجة النص ودمج تقارير الأخطاء القديمة إذا كانت متاحة وملفات البرنامج.
سيتم استدعاء المتخصص التالي هو متخصص تصنيف البرنامج الذي يستدعي أحد الخطةين وفقًا لإدخال تقرير الأخطاء. إذا احتوى تقرير الأخطاء على أثر النص، سيتم استدعاء خطة أثر النص، وإلا سيتم استدعاء تصنيف الحزمة.
يكمن دور خطة أثر النص في استدعاء مهمتين، المهمة الأولى هي تحليل أثر النص وتهدف إلى استخراج أسماء ملفات البرنامج من أثر النص للمعالجة المستقبلية. المهمة التالية هي مهمة جمع الملفات التي تهدف إلى جمع الملفات المهيكلة المعدة من شفرات المصدر وملفات البرنامج المعالجة في الماضي للمعالجة المستقبلية.
سيتم استدعاء خطة تصنيف الحزمة لتدريب مصنف BERT باستخدام تقارير أخطاء سابقة مختلفة إذا كانت متاحة وملفات البرنامج مع تسميتها بالحزمة الموصى بها. الهدف الرئيسي لهذه الخطة هو تقليل الوقت وتحسين دقة تحديد الأخطاء عن طريق توصية الحزمة الناتجة عن البرنامج.
بغض النظر عما إذا كان سيتم استدعاء خطة تصنيف الحزمة أو خطة أثر النص، سيتم استدعاء متخصص ترتيب ملفات البرنامج المعيوبة. يكمن دور متخصص ترتيب ملفات البرنامج المعيوبة في الحصول على أقرب ملفات البرنامج التي تحتوي على الخطأ بعد الحصول على قوائم قصيرة من ملفات البرنامج للبحث فيها والتي تنتج إما عن خطة أثر النص أو خطة تصنيف الحزمة

Issues also as CD.

Text in English and abstract in Arabic & English.

There are no comments on this title.

to post a comment.

Click on an image to view it in the image viewer

Local cover image