Download - Μιλτιάδης Σιάββας 7523
![Page 1: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/1.jpg)
Σχεδίαση και ανάπτυξη πλαισίου αξιολόγησης ποιότηταςέργων λογισμικού βασισμένη σε στατική ανάλυση κώδικα και
ασαφείς τεχνικές πολυκριτηριακής λήψης αποφάσεων
Σιάββας ΜιλτιάδηςΥπό την επίβλεψη του κ. Ανδρέα Λ. Συμεωνίδη
Επίκουρου καθηγητή ΤΗΜΜΥ ΑΠΘΚαι του κ. Χατζηδημητρίου Κυριάκου
Μεταδιδακτορικού ερευνητή ΤΗΜΜΥ ΑΠΘ
Θεσσαλονίκη, 2016
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ & ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
Εργαστήριο Επεξεργασίας Πληροφορίας και Υπολογιστών (ΕΠΥ)
![Page 2: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/2.jpg)
2
Δομή Παρουσίασης
Εισαγωγή State of the art Σκοπός της διπλωματικής Ανάλυση του συστήματος Πειράματα/Συμπεράσματα Μελλοντική εργασία
![Page 3: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/3.jpg)
3
Εισαγωγή Ψηφιακή Εποχή Πολλά προϊόντα λογισμικού αναπτύσσονται συνεχώς Ποιότητα λογισμικού βασικό ζήτημα τόσο για τον τελικό χρήστη όσο και για τις εταιρείες. Σημαντικό θέμα έρευνας
Αποσαφήνιση έννοιας Καθολικά αποδεκτός μηχανισμός αξιολόγησης
Αναζήτηση μηχανισμών εξαγωγής μοντέλων ποιότητας τα οποία να ανταποκρίνονται στις ανάγκες/απαιτήσεις των ενδιαφερόμενων.
![Page 4: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/4.jpg)
4
ISO/IEC 25010
![Page 5: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/5.jpg)
5
Ιεραρχική Δομή Μοντέλου Εκτίμησης
![Page 6: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/6.jpg)
6
State of the ArtΠαρόμοια Συστήματα Μειονεκτήματα
Δύο συστήματα με παρόμοια λογική: Το μοντέλο SIG Το Quamoco
Μοντέλο SIG: Κλειστού κώδικα Αξιολόγηση Συντηρισιμότητας Μη αυτοματοποιημένη διαδικασία
σχεδίασης Quamoco:
Μη αξιόπιστος μηχανισμός εξαγωγής βαρών
Εξαιρετικά πολύπλοκα μοντέλα
![Page 7: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/7.jpg)
7
Σκοπός Διπλωματικής Εργασίας
Σχεδίαση και ανάπτυξη ενός συστήματος το οποίο να επιτρέπει την εξαγωγή αξιόπιστων μοντέλων ποιότητας τα οποία να μπορούν να χρησιμοποιηθούν άμεσα για την αξιολόγηση προϊόντων (έργων) λογισμικού.
Το σύστημα βασίζεται: Στη στατική ανάλυση ενός αποθετηρίου αναφοράς Σε πολυκριτηριακές τεχνικές λήψης αποφάσεων
![Page 8: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/8.jpg)
8
Δομή του Συστήματος
![Page 9: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/9.jpg)
9
Δομή του Συστήματος
![Page 10: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/10.jpg)
10
Quality Model Designer
Το σύστημα χρησιμοποιεί δύο εργαλεία:• CKJM Extended• PMD
Δύο τύποι ιδιοτήτων:• Ιδιότητες Μετρικών• Ιδιότητες Ευρημάτων
![Page 11: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/11.jpg)
11
Quality Model Designer
Ιδιότητες Μετρικών :
Ιδιότητες Ευρημάτων:
![Page 12: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/12.jpg)
12
Quality Model Designer
![Page 13: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/13.jpg)
13
Threshold Calculator
![Page 14: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/14.jpg)
14
Quality Model Designer
![Page 15: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/15.jpg)
15
Αναλυτική Ιεραρχική ΔιαδικασίαTQI Maintainability Reliability Security Performance
Maintainability - 5/1 9/1 3/2
Reliability - - 5/3 1/2
Security - - - 1/6
Performance - - - -
TQI Maintainability Reliability Security Performance
Maintainability 1 5/1 9/1 3/2
Reliability 1/5 1 5/3 1/2
Security 1/9 3/5 1 1/6
Performance 2/3 2/1 6/1 1
w0.5178
0.1168
0.0588
0.3066
Έστω τα κριτήρια επιλογής και οι ποσοτικοποιημένες κρίσεις των ζευγών που εκφράζονται μέσω του αμοιβαίου πίνακα :
τότε τα βάρη δίδονται από:
![Page 16: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/16.jpg)
16
Ασαφής Αναλυτική Ιεραρχική Διαδικασία
Ασαφοποιητής
Υπολογισμός Ασαφών Βαρών
Αποασαφοποιητής
w
![Page 17: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/17.jpg)
17
Ασαφής Αναλυτική Ιεραρχική Διαδικασία
Ποιοτική Τιμή Κέντρο Τριγώνου (m)Very Low 1
Low 3Moderate 5
High 7Very High 9
Τιμή Αβεβαιότητας σU 0.9D 0.5C 0.1
1. Ασαφοποιητής
![Page 18: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/18.jpg)
18
Ασαφής Αναλυτική Ιεραρχική Διαδικασία2. Υπολογισμός βαρών
3. Αποασαφοποίηση
Χρήση της μεθόδου του κέντρου βάρους
![Page 19: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/19.jpg)
19
Quality Model Designer
![Page 20: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/20.jpg)
20
Quality Model Exporter
![Page 21: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/21.jpg)
21
![Page 22: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/22.jpg)
22
Δομή του Συστήματος
![Page 23: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/23.jpg)
23
Single Project Evaluator
Συνάθροιση πρώτου επιπέδου :• Υπολογισμός βαθμού ποιότητας των ιδιοτήτωνΣυνάθροιση δευτέρου επιπέδου:• Υπολογισμός βαθμού ποιότητας χαρακτηριστικών• Υπολογισμός συνολικού δείκτη ποιότητας
![Page 24: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/24.jpg)
24
Single Project Evaluator
![Page 25: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/25.jpg)
25
Δομή του Συστήματος
![Page 26: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/26.jpg)
26
Δομή του Συστήματος
![Page 27: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/27.jpg)
27
Online Quality Evaluator
![Page 28: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/28.jpg)
28
Λίστα ΠειραμάτωνΠείραμα 1: Εξαγωγή μοντέλου βάσης – Έλεγχος υπόθεσης
Ελάχιστο πλήθος γραμμών κώδικα αποθετηρίου : 1.4 εκατομμύρια LOC (περίπου)Πείραμα 2: Σύγκριση τεχνικών εξαγωγής βαρών
Υψηλή ετεροσυσχέτιση μεταξύ των αποτελεσμάτωνΠείραμα 3: Σύγκριση σειριακής/παράλληλης υλοποίησης
Σημαντική επίσπευση της διαδικασίας μέσω παραλληλοποίησηςΠείραμα 4: Αξιολόγηση ποιότητας έργων λογισμικούΠείραμα 5: Σύγκριση ποιότητας με δημοτικότητα προϊόντων λογισμικού
Σκοπός Πειραμάτων: Επικύρωση λειτουργίας (πειράματα 1 και 2) Βελτίωση επίδοσης (πείραμα 3) Αξιολόγηση Κώδικα (πειράματα 4 και 5)
![Page 29: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/29.jpg)
29
Πείραμα 4 : Αξιολόγηση ΠροϊόντωνΕφαρμογή σε Auto-generated projectsΕφαρμογή σε υπαρκτά προϊόντα λογισμικού
Όνομα Προϊόντος LOC TQI
Annotations_plugin 58 0.8149
Hamcrest 48890 0.79
Apache Commons 24907 0.7465
Javac 120726 0.7425
Joda Converter 6542 0.7158
Findbugs 491 0.6954
Persistence 1422 0.6767
Jpa 3286 0.6705
Maven-Model 35684 0.6702
Google Protobuf 78046 0.6527
Όνομα Προϊόντος LOC TQI
HyperSQL 361948 0.3934
Hamcrest Core 2557 0.3765
bcel 72470 0.3714
Jackson data mapper 69508 0.3590
Jcommander 6231 0.3489
Osgi 18326 0.3249
Compentium 2272 0.3220
Dom4j 38022 0.3217
Jackson 22035 0.3200
Slf4j 2983 0.2912
![Page 30: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/30.jpg)
30
Πείραμα 4 : Αξιολόγηση ΠροϊόντωνΈκδοση Προϊόντος LOC TQI
v0.1 725 0,7341
v0.2 1647 0,6374
v0.3 10853 0,6538
v0.4 10853 0,6538
v0.5 10742 0,6459
v0.6 14298 0,6492
v0.7 17354 0,6446
v1.0 18365 0,6644
v1.1 19519 0,6654
v1.3 12930 0,6438
v1.4 12930 0,7234
v1.5 13159 0,8115
![Page 31: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/31.jpg)
Πείραμα 5 : Σύγκριση Ποιότητας με ΔημοτικότηταΌνομα Προϊόντος Reputation* Quality
JUnit 1 33
Bcel 2 92
Slf4j 3 99
Jaxb-Runtime 4 73
Logback 5 40
Guava 6 43
Commons-IO 7 66
Log4j 8 51
Mockito 9 60
Commons-Lang 10 30
Spearman’s Rank Coefficient:• rho = -0.2616742• p = 0.008708
* Η κατάταξη που είχαν τα προϊόντα λογισμικού στις 29/1/2016
31
![Page 32: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/32.jpg)
32
Μελλοντική Εξέλιξη Επέκταση σε περισσότερες γλώσσες προγραμματισμού. Εφαρμογή πιο προηγμένων τεχνικών παραλληλοποίησης της στατικής ανάλυσης Δημιουργία ολοκληρωμένης διαδικτυακής υπηρεσίας:
Πιστοποίησης ποιότητας Συνεχούς ελέγχου ποιότητας
![Page 33: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/33.jpg)
33
Ερωτήσεις;
![Page 34: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/34.jpg)
34
Πείραμα 1 : Έλεγχος ΥπόθεσηςΈλεγχος υπόθεσης: Δεν υπάρχει στατιστικά σημαντική διαφορά μεταξύ των ορίων
Μέγεθος
Αποθετηρίουp Total
LOC90 0.1704 5,057,20280 0.1482 4,792,34870 0.1124 4,590,83160 0.1392 3,738,61850 0.06411 3,265,83840 0.05925 2,346,76430 0.05687 1,691,15325 0.04859 1,347,99320 0.04719 1,064,10015 0.04981 959,17910 0.03738 414,563Γεν
ικός τ
ύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικό
ς τύπος
Γενικός τύπος
Γενικός τύπος
Γενικός τύπος
![Page 35: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/35.jpg)
35
Πείραμα 2 : Σύγκριση Τεχνικών Εξαγωγής Βαρών
![Page 36: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/36.jpg)
36
Πείραμα 2 : Σύγκριση Τεχνικών Εξαγωγής Βαρών
![Page 37: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/37.jpg)
37
Πείραμα 3 : Σύγκριση Σειριακού/Παράλληλου
Μοντέλο Βάσης:• Σειριακή Υλοποίηση : 3.5 – 4
hours (best case)• Παράλληλη υλοποίηση: 1.5
hours (worst case)
![Page 38: Μιλτιάδης Σιάββας 7523](https://reader035.vdocuments.pub/reader035/viewer/2022062412/58e4a4d01a28aba3458b69b3/html5/thumbnails/38.jpg)
38
Αποτελέσματα Πολλαπλής Αξιολόγησης