Data analysis applications in software engineering
Φόρτωση...
Αρχεία
Ημερομηνία
2025-12-05
Συγγραφείς
Τίτλος Εφημερίδας
Περιοδικό ISSN
Τίτλος τόμου
Εκδότης
Επιβλέπων / ουσα
Διαθέσιμο από
Περίληψη
This dissertation examines the impact and evolution of software engineering research through four interconnected studies, addressing how research translates into practical applications and how emerging technologies like machine learning (ML) advance software development practices. The first study analyzes data papers from the Mining Software Repositories (MSR) conference, finding that while these papers are valuable and well-cited (averaging 5.4 citations each), comprising over 15% of MSR publications by 2019, opportunities exist to improve documentation and accessibility. Product-oriented data papers dominate over process-oriented ones, with certain areas like software requirements and economics remaining underrepresented. The second study uses patent analysis and author surveys to assess practical research impact. Results show software engineering research successfully provides practitioners with tools and methods, though adoption faces obstacles from insufficient funding and unfavorable cost-benefit ratios. Practitioner-oriented venues demonstrate more impact than researcher-oriented ones, with cross-disciplinary areas like programming languages and compilers showing the most commercial value. The third study conducts a comprehensive tertiary review of ML applications in software engineering. While ML techniques are extensively applied to testing automation, fault prediction, and cost estimation, significant gaps exist in empirical validation and industrial adoption. Critical needs remain for comparative analyses and industrial trials to facilitate practical adoption. The fourth study investigates Large Language Models (LLMs) for code completion through perplexity analysis, providing the first large-scale, language-specific code perplexity study. Findings reveal that strongly-typed and high-level languages exhibit lower perplexity, perplexity depends on the specific LLM employed, and the training data distribution minimally affects measurements. Collectively, these contributions demonstrate the substantial practical impact of software engineering research while identifying opportunities for enhanced empirical validation, improved artifact design, and expanded cross-disciplinary collaboration. The research provides actionable insights for researchers, practitioners, and funding agencies to ensure academic efforts continue addressing industry needs and societal challenges.Αυτή η διατριβή ερευνά τον αντίκτυπο και την εξέλιξη της έρευνας στην τεχνολογία λογισμικού μέσω τεσσάρων διασυνδεδεμένων μελετών, οι οποίες εξετάζουν πώς η έρευνα μεταφράζεται σε πρακτικές εφαρμογές και πώς οι αναδυόμενες τεχνολογίες όπως η μηχανική μάθηση προωθούν τις πρακτικές ανάπτυξης λογισμικού. Η πρώτη μελέτη αναλύει δημοσιεύσεις δεδομένων από το συνέδριο Mining Software Repositories (MSR), διαπιστώνοντας ότι ενώ αυτές οι δημοσιεύσεις είναι πολύτιμες και καλά αναφερόμενες (με μέσο όρο 5,4 αναφορές η καθεμία), αποτελώντας πάνω από το 15% των δημοσιεύσεων του MSR έως το 2019, υπάρχουν ευκαιρίες για βελτίωση της τεκμηρίωσης και προσβασιμότητας αυτών. Οι δημοσιεύσεις δεδομένων προσανατολισμένες στο προϊόν κυριαρχούν έναντι αυτών που είναι προσανατολισμένες στη διαδικασία, με ορισμένους τομείς όπως οι απαιτήσεις λογισμικού και τα οικονομικά να παραμένουν ελλιπώς εκροσωπημένοι. Η δεύτερη μελέτη χρησιμοποιεί ανάλυση διπλωμάτων ευρεσιτεχνίας και έρευνα συγγραφέων για να αξιολογήσει τον πρακτικό αντίκτυπο της έρευνας. Τα αποτελέσματα δείχνουν ότι η έρευνα στην τεχνολογία λογισμικού παρέχει επιτυχώς στους επαγγελματίες εργαλεία και μεθόδους, αν και η υιοθέτηση αντιμετωπίζει εμπόδια από ανεπαρκή χρηματοδότηση και δυσμενείς αναλογίες κόστους-οφέλους. Οι χώροι δημοσίευσης ερευνών που είναι προσανατολισμένοι στους επαγγελματίες επιδεικνύουν μεγαλύτερο αντίκτυπο από αυτούς που είναι προσανατολισμένοι στους ερευνητές, με διεπιστημονικούς τομείς όπως οι γλώσσες προγραμματισμού και οι μεταγλωττιστές να εμφανίζουν τη μεγαλύτερη εμπορική αξία. Η τρίτη μελέτη διεξάγει μια ολοκληρωμένη τριτοβάθμια ανασκόπηση των εφαρμογών μηχανικής μάθησης στην τεχνολογία λογισμικού. Ενώ οι τεχνικές μηχανικής μάθησης εφαρμόζονται εκτενώς στην αυτοματοποίηση ελέγχων, την πρόβλεψη σφαλμάτων και την εκτίμηση κόστους, υπάρχουν σημαντικά κενά στην εμπειρική επικύρωση και τη βιομηχανική υιοθέτησή τους. Κρίσιμες ανάγκες παραμένουν για συγκριτικές αναλύσεις και βιομηχανικές δοκιμές των τεχνικών μηχανικής μάθησης για τη διευκόλυνση της πρακτικής υιοθέτησής τους. Η τέταρτη μελέτη διερευνά τα Μεγάλα Γλωσσικά Μοντέλα (LLMs) για τη συμπλήρωση κώδικα μέσω ανάλυσης σύγχυσης (perplexity), παρέχοντας την πρώτη μελέτη σύγχυσης κώδικα μεγάλης κλίμακας ανά γλώσσα. Τα ευρήματα αποκαλύπτουν ότι οι γλώσσες ισχυρού τύπου και υψηλού επιπέδου εμφανίζουν χαμηλότερη σύγχυση, η σύγχυση του κώδικα εξαρτάται από το χρησιμοποιούμενο LLM, και η κατανομή των δεδομένων εκπαίδευσης επηρεάζει ελάχιστα τις μετρήσεις. Συνολικά, αυτές οι συνεισφορές αποδεικνύουν τον σημαντικό πρακτικό αντίκτυπο της έρευνας στην τεχνολογία λογισμικού, αναγνωρίζοντας ευκαιρίες για ενισχυμένη εμπειρική επικύρωση, βελτιωμένο σχεδιασμό τεχνουργημάτων και διευρυμένη διεπιστημονική συνεργασία.
Περιγραφή
Λέξεις-κλειδιά
Software engineering, Artificial Intelligence (AI), Data analysis, Τεχνολογία λογισμικού, Τεχνητή Νοημοσύνη (ΤΝ), Ανάλυση δεδομένων

