Extracting software design using machine learning techniques / by Islam Abdelhamid Ahmed Elmasry ; under the supervision of Prof. Dr. Khaled Wassif, Dr. Hanaa Bayoumi.
Material type:
- text
- Unmediated
- volume
- استخراج تصميم البرمجيات باستخدام تقنيات التعلم الآلي [Added title page title]
- 005.1 21
- Issues also as CD.
Item type | Current library | Home library | Call number | Status | Barcode | |
---|---|---|---|---|---|---|
![]() |
قاعة الرسائل الجامعية - الدور الاول | المكتبة المركزبة الجديدة - جامعة القاهرة | Cai01.20.05.M.Sc.2021.Is.E (Browse shelf(Opens below)) | Not for loan | 01010110087769000 |
Browsing المكتبة المركزبة الجديدة - جامعة القاهرة shelves Close shelf browser (Hides shelf browser)
No cover image available | No cover image available | No cover image available | No cover image available | No cover image available | No cover image available | No cover image available | ||
Cai01.20.05.M.Sc.2020.Ah.S A system to remediate cross-site scripting vulnerabilities / | Cai01.20.05.M.Sc.2021.Em.S A software framework to improve internet of things reliability / | Cai01.20.05.M.Sc.2021.Em.S A software framework to improve internet of things reliability / | Cai01.20.05.M.Sc.2021.Is.E Extracting software design using machine learning techniques / | Cai01.20.05.M.Sc.2021.Mo.F A framework for measuring efficiency of agile development in critical systems / | Cai01.20.05.M.Sc.2021.Mo.F A framework for measuring efficiency of agile development in critical systems / | Cai01.20.05.M.Sc.2023.Ah.E Framework for automatic detection of anomalies in devops / |
Thesis (M.Sc.)-Cairo University, 2023.
Bibliography: pages 69-75.
Understanding the software details and descriptions written in various documents (requirements,
user stories, . . . etc.) helps in modeling the software for developing welldesigned
software that meets requirements. So, software engineering research focuses
on automating the process of software design and modeling.
Since software engineering is a document-driven process, automating the design process
is mainly done by extracting software design knowledge and components from
the text. This can be done by using Natural Language Processing (NLP) techniques
which enable computers to understand human languages. Utilizing Machine learning
techniques for that goal can improve the accuracy of this process instead of using
traditional NLP methods.
In this research, the proposed approach uses machine learning techniques to extract
class names and attributes from plain text (e.g. software requirements documents)
through two consequent classifiers, the first one classifies each word into a class or not
using predefined features, then, the second classifier starts to classify words into an
attribute or not. Finally, dependency parsing is used to define a set of rules applied to
the document given the extracted classes and attributes to relate the attributes to the
classes, identifying methods, and extracting the use cases. The final outputs are two
different types of Unified Modeling Languages (UML) models: a class diagram and a
use case diagram.
One of the contributions of this research is the created dataset in its final pre-processed
form which could make it easier to use in the software design field in the future. The
proposed approach can extract class names and their attributes with about 99% accuracy,
98% precision, 89% recall, and 93% F-measure. Then the rule-based approach
can relate the attributes to the classes and extract methods and use cases with about
98.5% accuracy, and 86% F1-score.
يساعد فهم تفاصيل البرمجيات وتوصيفاتها، والتي تكتب في مستندات ذات أشكال مختلفة )المتطلبات ، قصص
المستخدمين ، ... إلخ( في نمذجة البرمجيات؛ لتطوير برامج ذات تصميم جيد تفي بالمتطلبات. لذا، فإن أتمتة
عملية تصميم البرمجيات ونمذجتها هي محور أبحاث هندسة البرمجيات.
نظرًا لأن هندسة البرمجيات هي عملية تعتمد بدرجة كبيرة على المستندات، فإن أتمتة عملية التصميم تتم بشكل
أساسي عن طريق استخراج المعلومات الخاصة بتصميم البرمجيات ومكوناتها من النص المكتوب. يمكن القيام
بذلك باستخدام تقنيات معالجة اللغة الطبيعية التي تمكن أجهزة الكمبيوتر من فهم اللغات البشرية.
يمكن أن يؤدي استخدام تقنيات التعلم الآلي لتحقيق هذا الهدف إلى تحسين دقة هذه العملية بدلاً من استخدام الطرق
التقليدية لمعالجة اللغات الطبيعية.
Issues also as CD.
Text in English and abstract in Arabic & English.
There are no comments on this title.