Please use this identifier to cite or link to this item: http://dspace.lib.uom.gr/handle/2159/24538
Author: Βλαχάβας, Γεώργιος
Title: Προτεραιοποίηση περιπτώσεων ελέγχου σε συστήματα λογισμικού
Date Issued: 2019
Department: Πρόγραμμα Μεταπτυχιακών Σπουδών Ειδίκευσης στην Εφαρμοσμένη Πληροφορική
Supervisor: Χατζηγεωργίου, Αλέξανδρος
Abstract: Σε σύγχρονα συστήματα μεγάλου μεγέθους, με υψηλή πολυπλοκότητα και ταχύτατη ανάπτυξη, εφαρμόζονται έλεγχοι παλινδρόμησης, ώστε να διασφαλιστεί η σωστή λειτουργία του υπάρχοντος κώδικα. Αυτοί όμως οι έλεγχοι αποτελούν μια χρονοβόρα και κοστοβόρα διαδικασία και είναι πιθανό να μην υπάρχουν οι πόροι για την εκτέλεσή τους με κάθε αλλαγή που πραγματοποιείται στον κώδικα. Η Προτεραιοποίηση Περιπτώσεων Ελέγχου είναι η διαδικασία με την οποία μεταβάλλεται η σειρά εκτέλεσης των περιπτώσεων ελέγχου ενός έργου λογισμικού, με σκοπό την ανίχνευση των σφαλμάτων που πιθανόν υπάρχουν, νωρίτερα. Στην παρούσα έρευνα χρησιμοποιήθηκαν έργα λογισμικού, μεσαίου και μεγάλου μεγέθους, υλοποιημένα με τη χρήση της γλώσσας Python. Τα πειράματα πραγματοποιήθηκαν σε πολλαπλές εκδόσεις των έργων με τη χρήση του πλαισίου ελέγχων pytest. Σφάλματα προστέθηκαν με τεχνητό τρόπο στις σουίτες περιπτώσεων ελέγχου των έργων αυτών. Αξιοποιήθηκε η πληροφορία κάλυψης των περιπτώσεων ελέγχου σε επίπεδα αρχείου, μεθόδου, διακλάδωσης και εντολής υπό τη μορφή τόσο της ολικής κάλυψης, όσο και της επιπρόσθετης κάλυψης κώδικα, για τη δημιουργία και την αξιολόγηση διαφορετικών διατάξεων των περιπτώσεων ελέγχου του κάθε έργου. Εξετάστηκαν επίσης, πέρα από την αρχική διάταξη των περιπτώσεων ελέγχου, η χρήση της τυχαίας διάταξης και η αντίστροφη διάταξη της αρχικής. Η αξιολόγηση των αποτελεσμάτων πραγματοποιήθηκε με τη χρήση της μετρικής APFD (Average Percentage of Faults Detected), η οποία εκτιμά το ρυθμό ανίχνευσης σφαλμάτων σε μία σουίτα ελέγχου. Τα αποτελέσματα έδειξαν ότι η χρήση της πληροφορίας κάλυψης για την προτεραιοποίηση περιπτώσεων ελέγχου, βελτιώνει σημαντικά τους ρυθμούς ανίχνευσης σφαλμάτων. Μάλιστα, η βελτίωση είναι τόσο μεγαλύτερη, όσο πιο λεπτομερής είναι η χρήση της πληροφορίας κάλυψης. Δεν υπήρχαν σημαντικές διαφορές μεταξύ της χρήσης πληροφορίας ολικής και επιπρόσθετης κάλυψης. Αρκετά μικρότερες, αλλά επίσης σημαντικές βελτιώσεις στο ρυθμό ανίχνευσης σφαλμάτων επιτυγχάνονται και από τη χρήση της τυχαίας και της αντίστροφης διάταξης των περιπτώσεων ελέγχου.
Keywords: Προτεραιοποίηση Περιπτώσεων Ελέγχου
Έλεγχοι παλινδρόμησης
Python
Pytest
Κάλυψη κώδικα
APFD
Information: Διπλωματική εργασία--Πανεπιστήμιο Μακεδονίας, Θεσσαλονίκη, 2019.
Rights: Attribution-NonCommercial-NoDerivatives 4.0 Διεθνές
Appears in Collections:Π.Μ.Σ. στην Εφαρμοσμένη Πληροφορική (M)

Files in This Item:
File Description SizeFormat 
VlachavasGeorgiosMsc2019.pdf5.82 MBAdobe PDFView/Open


This item is licensed under a Creative Commons License Creative Commons