Advertisement

Employing Machine Learning and Intelligent Information Management Techniques for efficient Software Requirements Elicitation

ISSEL
ISSEL
Mar. 31, 2022
Advertisement

More Related Content

Slideshows for you(15)

Similar to Employing Machine Learning and Intelligent Information Management Techniques for efficient Software Requirements Elicitation(20)

Advertisement

More from ISSEL(20)

Advertisement

Employing Machine Learning and Intelligent Information Management Techniques for efficient Software Requirements Elicitation

  1. Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης Πολυτεχνική Σχολή Τμήμα Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Επιβλέπων: Ανδρέας Συμεωνίδης Αν. Καθηγητής Α.Π.Θ. Αναστάσιος Μουρατίδης ΑΕΜ: 9040 Θεσσαλονίκη, Μάρτιος 2022
  2. Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 2 02 Μεθοδολογία 05 Μελλοντική Εργασία 01 Εισαγωγή 04 Συμπεράσματα 03 Αποτελέσματα & Αξιολόγηση
  3. Περιγραφή του προβλήματος Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 3
  4. Σκοπός της διπλωματικής Συλλογή συνόλου δεδομένων με σωστές λειτουργικές απαιτήσεις Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 4 Αποθήκευση με αποδοτικό τρόπο Ομαδοποίηση δεδομένων και συμπεράσματα Εξαγωγή προτάσεων για νέο έργο λογισμικού
  5. Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 5 02 Μεθοδολογία 05 Μελλοντική Εργασία 01 Εισαγωγή 04 Συμπεράσματα 03 Αποτελέσματα & Αξιολόγηση
  6. Μεθοδολογία Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 6
  7. Δεδομένα Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 7 • Συλλογή δεδομένων από 4 διαφορετικές πηγές • Συνδυασμός τεχνικών επεξεργασίας φυσικής γλώσσας και χειροκίνητων παρεμβάσεων για την παραγωγή δεδομένων με παρόμοια μορφή A user must be able to create an account by providing a username and a password. 123 Έργα Λογισμικού – 4030 Λειτουργικές Απαιτήσεις • Καθαρισμός από δεδομένα που δεν εισάγουν χρήσιμη πληροφορία
  8. Προεπεξεργασία δεδομένων Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 8 • Απλοποίηση της σύνταξης: Μετατροπή δευτερευουσών προτάσεων σε κύριες • Μετατροπή παθητικής φωνής σε ενεργητική • Όλες οι λειτουργικές απαιτήσεις ξεκινούν με • A user must be able to… • A user must have the ability to…
  9. Επεξεργασία Φυσικής Γλώσσας - spaCy Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 9 • Τμηματοποίηση σε λέξεις (Tokenization) • Αναγνώριση μέρους του λόγου (Part of speech tagging) • Λημματοποίηση (Lemmatization) • changes, changing, changed → change • Ανάλυση Εξαρτήσεων (Dependency Parsing) • Αφαίρεση stopwords (the, be, have) • spaCy: Open-source βιβλιοθήκη • Γλωσσικά μοντέλα για 64 γλώσσες
  10. Οντότητες Οντολογίας A user must be able to create an account by providing a username and a password. Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 10 A user must be able to create an account by providing a username and a password. Object Action Property A user must be able to create an account by providing a username and a password. A user must be able to create an account by providing a username and a password. Actor
  11. Εξαγωγή κανόνων συσχέτισης – Αλγόριθμος Apriori • Είσοδος: Projects αποθηκευμένα με βάση την οντολογία Actor/Action & Action/Object • Εξαγωγή κανόνων συσχέτισης για συγκεκριμένες τιμές της υποστήριξης (σ) και εμπιστοσύνης (c) Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 11 𝑆𝑢𝑝𝑝𝑜𝑟𝑡: 𝑠 𝑋 → 𝛶 = 𝜎(𝛸 ∪ 𝛶) 𝛮 𝐶𝑜𝑛𝑓𝑖𝑑𝑒𝑛𝑐𝑒: 𝑐 𝑋 → 𝛶 = 𝜎(𝛸 ∪ 𝛶) 𝜎(𝛸) • Κανόνες → Υπόδειξη απούσας λειτουργικότητας
  12. Θεματική Μοντελοποίηση – Αλγόριθμος LDA • Κατανομή θεμάτων − λέξεων • Κατανομή εγγράφων − θεμάτων Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 12
  13. • Αναπαράσταση λέξεων ως διανύσματα Ιεραρχική Ταξινόμηση με TF-IDF Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 13 𝑇𝐹(𝑡) = Αριθμός εμφάνισης του όρου t στο έγγραφο Αριθμός όρων στο έγγραφο IDF(𝑡) = Αριθμός εγγράφων Αριθμός εγγράφων που περιέχουν τον όρο t TF−IDF(t) = 𝑇𝐹 𝑡 × 𝐼𝐷𝐹 𝑡 • Απόσταση λέξεων 𝑑𝑖𝑠𝑡 = 1 − 𝑠𝑖𝑚 𝑨, 𝑩 = 1 − 𝑨 ∙ 𝑩 𝑨 ∙ 𝑩 • Υπολογισμός πίνακα Linkage • Μέθοδος Ward
  14. Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 14 02 Μεθοδολογία 05 Μελλοντική Εργασία 01 Εισαγωγή 04 Συμπεράσματα 03 Αποτελέσματα & Αξιολόγηση
  15. Έργο Λογισμικού Εισόδου Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 15 • Ημιτελές project: Stereo, εφαρμογή μουσικής με λειτουργικότητα κοινωνικού δικτύου • 2 παρόμοια projects στο σύνολο δεδομένων: Mob, Spotify
  16. Κανόνες συσχέτισης για το σετ εκπαίδευσης Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 16 Left Hand Side Right Hand Side Support Confidence user/edit user/search 0.138 0.630 user/search user/view 0.138 0.405 user/create user/search 0.130 0.615 user/delete user/edit 0.122 0.652 user/delete user/search 0.106 0.565 user/search user/select 0.106 0.310 user/create user/delete 0.098 0.462 user/search user/see 0.098 0.286 notify/user system/notify 0.089 0.786 create/account user/create 0.089 0.579 user/delete user/view 0.089 0.478 user/create user/edit 0.089 0.423 user/create user/view 0.089 0.423 login/system user/login 0.081 0.833 system/notify user/search 0.081 0.714 user/add user/delete 0.081 0.455 user/add user/search 0.081 0.455 Left Hand Side Right Hand Side Support Confidence user/add user/select 0.081 0.455 user/login user/search 0.081 0.417 user/edit user/select 0.081 0.370 user/navigate user/search 0.073 0.750 notify/user user/search 0.073 0.643 user/add user/edit 0.073 0.409 user/see user/select 0.073 0.360 user/create user/see 0.073 0.346 user/edit user/view 0.073 0.333 user/rate user/search 0.065 0.727 administrator/delete user/login 0.065 0.571 create/account user/search 0.065 0.421 user/delete user/login 0.065 0.348 user/delete user/select 0.065 0.348 user/login user/logout 0.065 0.333 user/login user/select 0.065 0.333 user/create user/login 0.065 0.308
  17. Κανόνες για το Stereo Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 17
  18. Σενάρια χρήσης LDA Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 18 Νο. Σύνολο δεδομένων Αρχείο εισόδου Φιλτράρισμα λέξεων 1 Ολόκληρο Οντολογία τύπου «all» Όχι 2 Ολόκληρο Ολόκληρα τα Projects Όχι 3 Ολόκληρο Οντολογία τύπου «all» Ναι 4 Ολόκληρο Ολόκληρα τα Projects Ναι 5 Υποσύνολο Οντολογία τύπου «all» Όχι 6 Υποσύνολο Ολόκληρα τα Projects Όχι 7 Υποσύνολο Οντολογία τύπου «all» Ναι 8 Υποσύνολο Ολόκληρα τα Projects Ναι access, account, add, be, change, create, delete, edit, have, information, login, other, provide, search, select, system, that, use, user, see, view, new, update, datum, administrator, log, know, able, ability Φιλτράρισμα Λέξεων • Συχνότερη εμφάνιση στα δεδομένα • Λέξεις που περιγράφουν την κοινή λειτουργικότητα
  19. Επιλογή καλύτερων σεναρίων χρήσης • Υπολογισμός topic coherence για κάθε σενάριο για αριθμό θεμάτων από 2 μέχρι το μήκος του συνόλου δεδομένων • Εκπαίδευση των 10 καλύτερων μοντέλων για κάθε σενάριο • Εισαγωγή του ημιτελούς project σε κάθε μοντέλο • Απόφαση καλύτερων ομαδοποιήσεων • Έστω ένα από τα δύο παρόμοια projects να έχει το ίδιο κυρίαρχο θέμα • Μικρός άλλων projects με το ίδιο κυρίαρχο θέμα Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 19
  20. Καλύτερα σενάρια χρήσης • Σενάριο χρήσης 3, Αριθμός Θεμάτων: 10, 14 • Σενάριο χρήσης 4 , Αριθμός Θεμάτων: 5 • Σενάριο χρήσης 7 , Αριθμός Θεμάτων: 9, 11 • Σενάριο χρήσης 8 , Αριθμός Θεμάτων: 7, 10 Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 20
  21. Ενδεικτικά: Σενάριο χρήσης 7, αριθμός θεμάτων 9 Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 21 • 14 projects στην ομάδα του Stereo • Και οι 2 παρόμοιες εφαρμογές
  22. Ιεραρχική ομαδοποίηση • Ιεραρχική ομαδοποίηση για τα καλύτερα σενάρια χρήσης του LDA με αντιστοίχιση αριθμού θεμάτων σε αριθμό clusters • Ενδεικτικά: Σενάριο χρήσης 7, Αριθμός clusters 9 • 5 projects στην ομάδα του Stereo • 1 παρόμοια εφαρμογή Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 22
  23. Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 23 02 Μεθοδολογία 05 Μελλοντική Εργασία 01 Εισαγωγή 04 Συμπεράσματα 03 Αποτελέσματα & Αξιολόγηση
  24. Συμπεράσματα • Παραγωγή του πρώτου συνόλου δεδομένων λειτουργικών απαιτήσεων • Αποδοτική εξαγωγή της οντολογίας από τις λειτουργικές απαιτήσεις παρά την απλή προσέγγιση με χρήση εμπειρικών κανόνων • Εύκολη δυνατότητα επαναχρησιμοποίησης • Κανόνες συσχέτισης που υποδεικνύουν επιτυχημένα απούσα λειτουργικότητα • Καλύτερα αποτελέσματα LDA για τα σενάρια χρήσης που πρότειναν την αφαίρεση της κοινής λειτουργικότητας • Ιεραρχική ομαδοποίηση: αποδοτικές ομαδοποιήσεις για τα καλύτερα σενάρια χρήσης του LDA Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 24
  25. Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 25 02 Μεθοδολογία 05 Μελλοντική Εργασία 01 Εισαγωγή 04 Συμπεράσματα 03 Αποτελέσματα & Αξιολόγηση
  26. Μελλοντική εργασία Χρήση αλγορίθμου Word2Vec αντί για τον TF-IDF Ενσωμάτωση συστήματος προτάσεων στην πλατφόρμα UseReq Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 26
  27. Ευχαριστώ πολύ για την προσοχή σας! Ερωτήσεις; Μάρτιος 2022 Εφαρμογή τεχνικών μηχανικής μάθησης και ευφυούς διαχείρισης πληροφορίας για τη βελτιστοποίηση των φάσεων ανάλυσης απαιτήσεων λογισμικού 27

Editor's Notes

  1. Εδώ μπορείς να πεις ότι με τη βοήθεια την προεπεξεργασίας Actor: Πρόκειται για τον δράστη του εκάστοτε project όπως π.χ. Χρήστης - User, ∆ιαχειριστής -Administrator, Σύστημα - System Object: Πρόκειται για οποιοδήποτε αντικείμενο ή πόρο πάνω στο οποίο εκτελείται κάποια ενέργεια όπως π.χ. A user must be able to create an account by providing a username and a password. Action: Πρόκειται για μια διαδικασία την οποία εκτελεί ο Actor πάνω σε ένα Object όπως π.χ. A user must be able to create an account by providing a username and a password. Property: Πρόκειται για οποιαδήποτε ιδιότητα μπορεί να προσδιορίζει το Object όπως π.χ. A user must be able to create an account by providing a username and a password.
Advertisement