SlideShare a Scribd company logo
1 of 20
Download to read offline
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος
βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης
παραβάσεων ποιότητας κώδικα
Αγρότη Ιωάννη
agrotis.ioannis@gmail.com
ΑΕΜ 7567
Υπό την επίβλεψη του Επίκουρου Καθηγητή
κ. Συμεωνίδη Ανδρέα
Και του υποψήφιου διδάκτορα
κ. Παπαμιχαήλ Μιχαήλ
Διπλωματική
Εργασία
Εισαγωγή
Ποιότητα Κώδικα
Σύστημα που υλοποιήθηκε
Πειράματα & Αποτελέσματα
Συμπεράσματα & Ανοιχτά
θέματα
1
Οκτώβριος 2017
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Η παραγωγή λογισμικού σήμερα
• Open Source Community
• Code Reuse
Δημιουργία Λογισμικού:
•Γρηγορότερα
•Χαμηλότερο Κόστος
Διαθέσιμος κώδικας:
Δεν καλύπτει πάντα τις
προδιαγραφές ποιότητας
κώδικα
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
2
Ποιότητα κώδικα (1/2)
• Μοντελοποίηση ποιότητας κώδικα
• Προτάθηκαν ενδεικνυόμενοι τρόποι γραφής
• Εργαλεία στατικής ανάλυσης κώδικα
Πρότυπα Ποιότητας
(ISO/IEC 25010)
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
3
Ποιότητα Κώδικα (2/2)
Μετρικές ποιότητας κώδικα:
• Weighted Method per Class
(WMC)
• Coupling Between Objects (CBO)
• Response For a Class (RFC)
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
4
Κατηγορίες παραβάσεων (Violations):
• Naming
• Optimization
• Design
• Braces
• Empty Code
• Java Logging
Παραδείγματα Παραβάσεων (Violations)
Συνθήκη πάντα αληθής Αχρησιμοποίητη μεταβλητή
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
5
Το Σύστημα που υλοποιήθηκε
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
6
Builder & Analyzer
Sourcemeter (PMD)
AnalyzerBuilder
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
7
Αποτελέσματα PMD – Xml file
Γραμμές που βρίσκεται η παράβαση Rule: Ο κανόνας που
παραβιάζεται
Ruleset: Κατηγορία κανόνα
Προτεραιότητα
Παράβασης
Περιγραφή
Παράβασης
Αρχείο
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
8
Results Handler
Violations Finder & Logger
Path Begin Line End Line Rule Violation Description
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
9
Comparator
• Priorities
• Categories
Imports Finder
ASTs.json Imports.json
Violations Fixer
Violation
Category
Number of
Violations
Design 5
Braces 3
Empty Code 2
Naming 2
Java Logging 1
Optimization 1
Controversial 1
Type
Resolution
1
Junit 1
Total Violations: 17
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
10
Οι διορθώσεις που εκτελούνται:
• Έχουν σαν πρωταρχικό στόχο να μην εμφανιστούν
νέες παραβάσεις (Violations)
• Λαμβάνουν υπόψη την διαδικασία μεταγλώττισης και
έχουν ως στόχο να μην επηρεαστεί
Με βάση τα ASTs :
• Εκτελούνται οι διορθώσεις στα υπόλοιπα αρχεία που
επηρεάζονται από τις αλλαγές που γίνονται
• Έχουμε αντίληψη της δομής του αρχείου ώστε να
γίνουν οι αλλαγές σε αυτό
Πειράματα & Αποτελέσματα
24 Projects από το GitHub
• Min: 3392 LLOC
• Max: 114332 LLOC
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
11
Συνολική Επίδραση του Συστήματος
• Min: 6.8%
• Max: 84.14%
Η διακύμανση στο ποσοστό οφείλεται:
1. Το σύστημα δεν διορθώνει όλες τις
κατηγορίες παραβάσεων
2. Διαφέρει το μέγεθος κάθε project
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
12
Ποσοστό του συνόλου
των παραβάσεων:
76,16%
Ανάλυση αποτελεσμάτων ανά
προτεραιότητα
Priority 1: 29,4%
Priority 2: 21,55%
Priority 3: 58,32%
Priority 4: 40,73%
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
13
Ανάλυση αποτελεσμάτων ανά κατηγορία
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
14
Κατηγορία Ποσοστό Διόρθωσης
Junit 89.52%
Type Resolution 67.44%
Optimization 67.18%
Braces 62.58%
Empty Code 57%
Naming 40.10%
Java Logging 33.77%
Controversial 30.28%
Design 20.02%
Επίδραση στις μετρικές ποιότητας κώδικα
WMC: 2,70%
CBO: 5,09%
RFC: 11,98%
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
15
Ανάλυση χρονικής πολυπλοκότητας του
συστήματος
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
16
Συμπεράσματα
Το σύστημα που υλοποιήθηκε είναι σε θέση να:
• Εκτελεί διορθώσεις στο υπό εξέταση σύστημα
• Δημιουργεί αρχεία για εύκολη επισκόπηση των αλλαγών που έγιναν
και τις παραβάσεις που εμφανίζονται
• Δίνει την δυνατότητα σύγκρισης αποτελεσμάτων πριν και μετά τις
αλλαγές που έγιναν
• Η δομή και η λειτουργία του μπορούν να αποτελέσουν βάση για την
ανάπτυξη ενός πιο ολοκληρωμένου συστήματος
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
17
Ανοιχτά Θέματα
• Εφαρμογή σε άλλες γλώσσες προγραμματισμού
• Διόρθωση περισσοτέρων παραβάσεων κώδικα
• Επέκταση και σε άλλους τύπους project (εκτός maven)
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
Οκτώβριος 2017
18
Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα
μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
19
Οκτώβριος 2017

More Related Content

Similar to Ιoannis Αgrotis

Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...
Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...
Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...ISSEL
 
Γκιλίρης Ιωάννης 7419
Γκιλίρης Ιωάννης 7419Γκιλίρης Ιωάννης 7419
Γκιλίρης Ιωάννης 7419ISSEL
 
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...ISSEL
 
Design and Implementation of a Mechanism that automates the generation of Sof...
Design and Implementation of a Mechanism that automates the generation of Sof...Design and Implementation of a Mechanism that automates the generation of Sof...
Design and Implementation of a Mechanism that automates the generation of Sof...ISSEL
 
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...ISSEL
 
Software process improvement
Software process improvementSoftware process improvement
Software process improvementGeorge Kara
 
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...ISSEL
 
Analysis and profiling of developer profiles using data mining techniques fro...
Analysis and profiling of developer profiles using data mining techniques fro...Analysis and profiling of developer profiles using data mining techniques fro...
Analysis and profiling of developer profiles using data mining techniques fro...ISSEL
 
Dimitris Niras
Dimitris NirasDimitris Niras
Dimitris NirasISSEL
 
Pantelidou Eirini: Design and development of a system for incremental static ...
Pantelidou Eirini: Design and development of a system for incremental static ...Pantelidou Eirini: Design and development of a system for incremental static ...
Pantelidou Eirini: Design and development of a system for incremental static ...Manos Tsardoulias
 
Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...
Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...
Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...ISSEL
 
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...ISSEL
 
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...ISSEL
 
Ελευθεριάδου
ΕλευθεριάδουΕλευθεριάδου
ΕλευθεριάδουISSEL
 
Νίνα Ελευθεριάδου
Νίνα ΕλευθεριάδουΝίνα Ελευθεριάδου
Νίνα ΕλευθεριάδουISSEL
 
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικούΑνάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικούISSEL
 
Development of an automatic procedure for Continuous Integration
Development of an automatic procedure for Continuous IntegrationDevelopment of an automatic procedure for Continuous Integration
Development of an automatic procedure for Continuous IntegrationISSEL
 
Kagiafas Nikolaos Thesis Presentation
Kagiafas Nikolaos Thesis PresentationKagiafas Nikolaos Thesis Presentation
Kagiafas Nikolaos Thesis PresentationISSEL
 

Similar to Ιoannis Αgrotis (20)

Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...
Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...
Εφαρµογή Τεχνικών Μηχανικής Μάθησης για την Ανάλυση Αλλαγών Κώδικα µε στόχο τ...
 
Γκιλίρης Ιωάννης 7419
Γκιλίρης Ιωάννης 7419Γκιλίρης Ιωάννης 7419
Γκιλίρης Ιωάννης 7419
 
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...
Σχεδίαση και ανάπτυξη Μηχανισμού Αυτοματοποίησης παραγωγής Λογισμικού Ελέγχου...
 
Design and Implementation of a Mechanism that automates the generation of Sof...
Design and Implementation of a Mechanism that automates the generation of Sof...Design and Implementation of a Mechanism that automates the generation of Sof...
Design and Implementation of a Mechanism that automates the generation of Sof...
 
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
Ανάπτυξη εργαλείου αυτοματοποίησης της παραγωγής σεναρίων για τη δημιουργία ψ...
 
Software process improvement
Software process improvementSoftware process improvement
Software process improvement
 
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
Ανάλυση και μοντελοποίηση προφίλ προγραμματιστών μέσω τεχνικών εξόρυξης γνώση...
 
Analysis and profiling of developer profiles using data mining techniques fro...
Analysis and profiling of developer profiles using data mining techniques fro...Analysis and profiling of developer profiles using data mining techniques fro...
Analysis and profiling of developer profiles using data mining techniques fro...
 
Dimitris Niras
Dimitris NirasDimitris Niras
Dimitris Niras
 
Pantelidou Eirini: Design and development of a system for incremental static ...
Pantelidou Eirini: Design and development of a system for incremental static ...Pantelidou Eirini: Design and development of a system for incremental static ...
Pantelidou Eirini: Design and development of a system for incremental static ...
 
Μια εισαγωγή στο Bootstrap
Μια εισαγωγή στο Bootstrap Μια εισαγωγή στο Bootstrap
Μια εισαγωγή στο Bootstrap
 
Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...
Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...
Βελτίωση Αυτοματοποιημένης Ανάθεσης Εργασιών Λογισμικού με χρήση Commits σε Δ...
 
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...
Εφαρμογή Τεχνικών Εξόρυξης Δεδομένων για την Εξαγωγή Προτύπων Διόρθωσης σε Σφ...
 
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...
Applying Data Mining Techniques to Extract Fix Patterns for Static Analysis V...
 
KanoutasThomasThesis
KanoutasThomasThesisKanoutasThomasThesis
KanoutasThomasThesis
 
Ελευθεριάδου
ΕλευθεριάδουΕλευθεριάδου
Ελευθεριάδου
 
Νίνα Ελευθεριάδου
Νίνα ΕλευθεριάδουΝίνα Ελευθεριάδου
Νίνα Ελευθεριάδου
 
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικούΑνάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού
Ανάπτυξη αυτοματοποιημένης διαδικασίας Continuous Integration σε έργα λογισμικού
 
Development of an automatic procedure for Continuous Integration
Development of an automatic procedure for Continuous IntegrationDevelopment of an automatic procedure for Continuous Integration
Development of an automatic procedure for Continuous Integration
 
Kagiafas Nikolaos Thesis Presentation
Kagiafas Nikolaos Thesis PresentationKagiafas Nikolaos Thesis Presentation
Kagiafas Nikolaos Thesis Presentation
 

More from ISSEL

Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...
Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...
Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...ISSEL
 
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...ISSEL
 
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής Νοημοσύνης
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής ΝοημοσύνηςΑνάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής Νοημοσύνης
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής ΝοημοσύνηςISSEL
 
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptx
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptxΑνάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptx
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptxISSEL
 
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...ISSEL
 
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...ISSEL
 
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...ISSEL
 
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας Ισχυρισμών
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας ΙσχυρισμώνΔημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας Ισχυρισμών
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας ΙσχυρισμώνISSEL
 
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµατα
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµαταΕξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµατα
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµαταISSEL
 
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των διαδικασιών κατασκευής συστημάτων λο...
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των  διαδικασιών κατασκευής συστημάτων λο...Ανάπτυξη Μηχανισμών Αυτοματοποίησης των  διαδικασιών κατασκευής συστημάτων λο...
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των διαδικασιών κατασκευής συστημάτων λο...ISSEL
 
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...ISSEL
 
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικού
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικούΕξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικού
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικούISSEL
 
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία Εφαρµογής
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία ΕφαρµογήςΑνάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία Εφαρµογής
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία ΕφαρµογήςISSEL
 
Camera-based localization of annotated objects in indoor environments
Camera-based localization of annotated objects in indoor environmentsCamera-based localization of annotated objects in indoor environments
Camera-based localization of annotated objects in indoor environmentsISSEL
 
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...ISSEL
 
Design and implementation of an automation mechanism to automatically develop...
Design and implementation of an automation mechanism to automatically develop...Design and implementation of an automation mechanism to automatically develop...
Design and implementation of an automation mechanism to automatically develop...ISSEL
 
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...ISSEL
 
Static Analysis of Python code and Identification of Potential Security Vulne...
Static Analysis of Python code and Identification of Potential Security Vulne...Static Analysis of Python code and Identification of Potential Security Vulne...
Static Analysis of Python code and Identification of Potential Security Vulne...ISSEL
 
Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...
Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...
Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...ISSEL
 
Design and Development of an Authorization and Access Control Mechanism for C...
Design and Development of an Authorization and Access Control Mechanism for C...Design and Development of an Authorization and Access Control Mechanism for C...
Design and Development of an Authorization and Access Control Mechanism for C...ISSEL
 

More from ISSEL (20)

Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...
Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...
Ανίχνευση αντικειµένων από λίγα δείγµατα µε χρήση γραφηµάτων και τεχνικών ΜΕΤ...
 
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...
Ανάπτυξη ∆υναµικού και Προσωποποιηµένου Συστήµατος Ερωταπαντήσεων µε Πηγή το ...
 
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής Νοημοσύνης
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής ΝοημοσύνηςΑνάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής Νοημοσύνης
Ανάπτυξη Φίλτρων Ανεπιθύμητων Μηνυμάτων με Χρήση Τεχνικών Τεχνητής Νοημοσύνης
 
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptx
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptxΑνάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptx
Ανάπτυξη Ελληνικών Μοντέλων Εντοπισμού Ρητορικής Μίσους.pptx
 
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
Σχεδιασμός και υλοποίηση πλήρους και αυτοματοποιημένου εργαλείου ελέγχων ασφά...
 
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...
Ανάπτυξη συστήματος ιεραρχικής ομαδοποίησης και διαχείρισης κειμένων για αποκ...
 
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...
Ανάπτυξη γραφικής διεπαφής σε σύστημα προσομοίωσης ηλεκτρονικών αγορών με στό...
 
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας Ισχυρισμών
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας ΙσχυρισμώνΔημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας Ισχυρισμών
Δημιουργία Ολοκληρωμένου Συστήματος Επαλήθευσης Ορθότητας Ισχυρισμών
 
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµατα
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµαταΕξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµατα
Εξόρυξη δεδοµένων για τη δυναµική ενσωµάτωση γνώσης σε πολυπρακτορικά συστήµατα
 
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των διαδικασιών κατασκευής συστημάτων λο...
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των  διαδικασιών κατασκευής συστημάτων λο...Ανάπτυξη Μηχανισμών Αυτοματοποίησης των  διαδικασιών κατασκευής συστημάτων λο...
Ανάπτυξη Μηχανισμών Αυτοματοποίησης των διαδικασιών κατασκευής συστημάτων λο...
 
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...
ΕΥΦΥΗΣ ΜΕΘΟΔΟΛΟΓΙΑ ΑΠΟΤΙΜΗΣΗΣ ΤΟΥ ΒΑΘΜΟΥ ΔΙΑΤΗΡΗΣΙΜΟΤΗΤΑΣ ΕΡΓΩΝ ΛΟΓΙΣΜΙΚΟΥ ΜΕ...
 
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικού
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικούΕξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικού
Εξόρυξη δεδομένων τεχνολογίας λογισμικού για επαναχρησιμοποίηση λογισμικού
 
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία Εφαρµογής
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία ΕφαρµογήςΑνάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία Εφαρµογής
Ανάλυση ∆εδοµένων ΄Εργων Λογισµικού για Ανάπτυξη σε Νέα Πεδία Εφαρµογής
 
Camera-based localization of annotated objects in indoor environments
Camera-based localization of annotated objects in indoor environmentsCamera-based localization of annotated objects in indoor environments
Camera-based localization of annotated objects in indoor environments
 
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...
Εντοπισμός θέσης επισημασμένου αντικειμένου σε εσωτερικό χώρο με χρήση πολλαπ...
 
Design and implementation of an automation mechanism to automatically develop...
Design and implementation of an automation mechanism to automatically develop...Design and implementation of an automation mechanism to automatically develop...
Design and implementation of an automation mechanism to automatically develop...
 
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...
ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΠΤΥΞΗ ΜΗΧΑΝΙΣΜΟΥ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗΣ ΤΗΣ ΑΝΑΠΤΥΞΗΣ ΓΡΑΦΙΚΩΝ ΕΝΤΟΛ...
 
Static Analysis of Python code and Identification of Potential Security Vulne...
Static Analysis of Python code and Identification of Potential Security Vulne...Static Analysis of Python code and Identification of Potential Security Vulne...
Static Analysis of Python code and Identification of Potential Security Vulne...
 
Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...
Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...
Στατική Ανάλυση Κώδικα Python και Αναγνώριση Πιθανών Ευπαθειών Ασφαλείας για ...
 
Design and Development of an Authorization and Access Control Mechanism for C...
Design and Development of an Authorization and Access Control Mechanism for C...Design and Development of an Authorization and Access Control Mechanism for C...
Design and Development of an Authorization and Access Control Mechanism for C...
 

Recently uploaded

Ο εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdf
Ο εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdfΟ εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdf
Ο εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdfEvangelia Patera
 
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑΝίκος Θεοτοκάτος
 
Διαχείρηση Gmail - Βήμα προς Βήμα - Βασικά Στοιχεία
Διαχείρηση Gmail - Βήμα προς Βήμα - Βασικά ΣτοιχείαΔιαχείρηση Gmail - Βήμα προς Βήμα - Βασικά Στοιχεία
Διαχείρηση Gmail - Βήμα προς Βήμα - Βασικά Στοιχείαbasket20032020
 
ΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdf
ΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdfΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdf
ΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdfChrisa Kokorikou
 
ΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdf
ΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdfΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdf
ΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdfChrisa Kokorikou
 
Το τέλος του Δυτικού Ρωμαϊκού κράτους.pdf
Το τέλος του Δυτικού Ρωμαϊκού κράτους.pdfΤο τέλος του Δυτικού Ρωμαϊκού κράτους.pdf
Το τέλος του Δυτικού Ρωμαϊκού κράτους.pdfEvangelia Patera
 
15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf
15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf
15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdfMaria Koufopoulou
 
ΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdf
ΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdfΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdf
ΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdfChrisa Kokorikou
 
Αφίσες θεατρικής παράστασης
Αφίσες                   θεατρικής παράστασηςΑφίσες                   θεατρικής παράστασης
Αφίσες θεατρικής παράστασηςDimitra Mylonaki
 
Προσκλήσεις θεατρικής παράστασης
Προσκλήσεις θεατρικής          παράστασηςΠροσκλήσεις θεατρικής          παράστασης
Προσκλήσεις θεατρικής παράστασηςDimitra Mylonaki
 
Οι δικές μας αεροσκάφες
Οι δικές μας                    αεροσκάφεςΟι δικές μας                    αεροσκάφες
Οι δικές μας αεροσκάφεςDimitra Mylonaki
 
Ιπτάμενη σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝ
Ιπτάμενη                σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝΙπτάμενη                σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝ
Ιπτάμενη σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝDimitra Mylonaki
 
Η εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένη
Η εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένηΗ εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένη
Η εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένηEvangelia Patera
 
Οι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptx
Οι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptxΟι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptx
Οι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptx36dimperist
 
1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"
1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"
1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"margaritathymara1
 
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑΝίκος Θεοτοκάτος
 
Ο μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά Λυκείου
Ο μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά ΛυκείουΟ μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά Λυκείου
Ο μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά ΛυκείουVasiliki Matiaki
 

Recently uploaded (18)

Ο εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdf
Ο εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdfΟ εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdf
Ο εξελληνισμός του Ανατολικού Ρωμαϊκού κράτους.pdf
 
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
 
Διαχείρηση Gmail - Βήμα προς Βήμα - Βασικά Στοιχεία
Διαχείρηση Gmail - Βήμα προς Βήμα - Βασικά ΣτοιχείαΔιαχείρηση Gmail - Βήμα προς Βήμα - Βασικά Στοιχεία
Διαχείρηση Gmail - Βήμα προς Βήμα - Βασικά Στοιχεία
 
ΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdf
ΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdfΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdf
ΣΤ2 -ΕΓΩ ΚΑΙ ΣΥ ΜΑΖΙ-ΦΙΛΟΙ ΠΑΝΤΟΤΙΝΟΙ .pdf
 
ΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdf
ΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdfΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdf
ΡΑΛΛΙΟΥ ΕΛΕΝΗ-les droits des animaux.pdf
 
Το τέλος του Δυτικού Ρωμαϊκού κράτους.pdf
Το τέλος του Δυτικού Ρωμαϊκού κράτους.pdfΤο τέλος του Δυτικού Ρωμαϊκού κράτους.pdf
Το τέλος του Δυτικού Ρωμαϊκού κράτους.pdf
 
15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf
15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf
15η ΕΝΟΤΗΤΑ ΓΛΩΣΣΑΣ Ε ΤΑΞΗ :ΤΗΛΕΟΡΑΣΗ.pdf
 
ΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdf
ΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdfΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdf
ΣΠΑΣΕ ΤΗ ΣΙΩΠΗ ΑΠΟ ΤΟΥΣ ΜΑΘΗΤΕΣ/ΤΡΙΕΣ ΤΟΥ Β2.pdf
 
Αφίσες θεατρικής παράστασης
Αφίσες                   θεατρικής παράστασηςΑφίσες                   θεατρικής παράστασης
Αφίσες θεατρικής παράστασης
 
Προσκλήσεις θεατρικής παράστασης
Προσκλήσεις θεατρικής          παράστασηςΠροσκλήσεις θεατρικής          παράστασης
Προσκλήσεις θεατρικής παράστασης
 
Οι δικές μας αεροσκάφες
Οι δικές μας                    αεροσκάφεςΟι δικές μας                    αεροσκάφες
Οι δικές μας αεροσκάφες
 
Ιπτάμενη σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝ
Ιπτάμενη                σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝΙπτάμενη                σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝ
Ιπτάμενη σκάφη ΚΟΜΙΚ ΠΑΙΔΙΩΝ
 
Η εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένη
Η εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένηΗ εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένη
Η εποχή του Ιουστινιανού-Η ελληνοχριστιανική οικουμένη
 
Οι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptx
Οι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptxΟι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptx
Οι μικροί αρτοποιοί της Γ τάξης και το ψωμί τους.pptx
 
1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"
1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"
1ο ΓΥΜΝΑΣΙΟ ΠΕΙΡΑΙΑ-ECOMOBILITY "ΑΛΛΑΖΟΝΤΑΣ ΤΟΝ ΠΕΙΡΑΙΑ!"
 
Πρόγραμμα διήμερου σεμιναρίου Β. Ελλάδας 12-13 Απριλίου 2024
Πρόγραμμα διήμερου σεμιναρίου Β. Ελλάδας 12-13 Απριλίου 2024Πρόγραμμα διήμερου σεμιναρίου Β. Ελλάδας 12-13 Απριλίου 2024
Πρόγραμμα διήμερου σεμιναρίου Β. Ελλάδας 12-13 Απριλίου 2024
 
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
ΚΠΑ Γ' ΓΥΜΝΑΣΙΟΥ 10.2.3 ΔΙΚΑΣΤΙΚΗ ΛΕΙΤΟΥΡΓΙΑ
 
Ο μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά Λυκείου
Ο μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά ΛυκείουΟ μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά Λυκείου
Ο μοναχισμός στις διάφορες θρησκείες. Θρησκευτικά Λυκείου
 

Ιoannis Αgrotis

  • 1. Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Αγρότη Ιωάννη agrotis.ioannis@gmail.com ΑΕΜ 7567 Υπό την επίβλεψη του Επίκουρου Καθηγητή κ. Συμεωνίδη Ανδρέα Και του υποψήφιου διδάκτορα κ. Παπαμιχαήλ Μιχαήλ Διπλωματική Εργασία
  • 2. Εισαγωγή Ποιότητα Κώδικα Σύστημα που υλοποιήθηκε Πειράματα & Αποτελέσματα Συμπεράσματα & Ανοιχτά θέματα 1 Οκτώβριος 2017 Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα
  • 3. Η παραγωγή λογισμικού σήμερα • Open Source Community • Code Reuse Δημιουργία Λογισμικού: •Γρηγορότερα •Χαμηλότερο Κόστος Διαθέσιμος κώδικας: Δεν καλύπτει πάντα τις προδιαγραφές ποιότητας κώδικα Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 2
  • 4. Ποιότητα κώδικα (1/2) • Μοντελοποίηση ποιότητας κώδικα • Προτάθηκαν ενδεικνυόμενοι τρόποι γραφής • Εργαλεία στατικής ανάλυσης κώδικα Πρότυπα Ποιότητας (ISO/IEC 25010) Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 3
  • 5. Ποιότητα Κώδικα (2/2) Μετρικές ποιότητας κώδικα: • Weighted Method per Class (WMC) • Coupling Between Objects (CBO) • Response For a Class (RFC) Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 4 Κατηγορίες παραβάσεων (Violations): • Naming • Optimization • Design • Braces • Empty Code • Java Logging
  • 6. Παραδείγματα Παραβάσεων (Violations) Συνθήκη πάντα αληθής Αχρησιμοποίητη μεταβλητή Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 5
  • 7. Το Σύστημα που υλοποιήθηκε Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 6
  • 8. Builder & Analyzer Sourcemeter (PMD) AnalyzerBuilder Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 7
  • 9. Αποτελέσματα PMD – Xml file Γραμμές που βρίσκεται η παράβαση Rule: Ο κανόνας που παραβιάζεται Ruleset: Κατηγορία κανόνα Προτεραιότητα Παράβασης Περιγραφή Παράβασης Αρχείο Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 8
  • 10. Results Handler Violations Finder & Logger Path Begin Line End Line Rule Violation Description Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 9 Comparator • Priorities • Categories Imports Finder ASTs.json Imports.json
  • 11. Violations Fixer Violation Category Number of Violations Design 5 Braces 3 Empty Code 2 Naming 2 Java Logging 1 Optimization 1 Controversial 1 Type Resolution 1 Junit 1 Total Violations: 17 Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 10 Οι διορθώσεις που εκτελούνται: • Έχουν σαν πρωταρχικό στόχο να μην εμφανιστούν νέες παραβάσεις (Violations) • Λαμβάνουν υπόψη την διαδικασία μεταγλώττισης και έχουν ως στόχο να μην επηρεαστεί Με βάση τα ASTs : • Εκτελούνται οι διορθώσεις στα υπόλοιπα αρχεία που επηρεάζονται από τις αλλαγές που γίνονται • Έχουμε αντίληψη της δομής του αρχείου ώστε να γίνουν οι αλλαγές σε αυτό
  • 12. Πειράματα & Αποτελέσματα 24 Projects από το GitHub • Min: 3392 LLOC • Max: 114332 LLOC Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 11
  • 13. Συνολική Επίδραση του Συστήματος • Min: 6.8% • Max: 84.14% Η διακύμανση στο ποσοστό οφείλεται: 1. Το σύστημα δεν διορθώνει όλες τις κατηγορίες παραβάσεων 2. Διαφέρει το μέγεθος κάθε project Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 12 Ποσοστό του συνόλου των παραβάσεων: 76,16%
  • 14. Ανάλυση αποτελεσμάτων ανά προτεραιότητα Priority 1: 29,4% Priority 2: 21,55% Priority 3: 58,32% Priority 4: 40,73% Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 13
  • 15. Ανάλυση αποτελεσμάτων ανά κατηγορία Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 14 Κατηγορία Ποσοστό Διόρθωσης Junit 89.52% Type Resolution 67.44% Optimization 67.18% Braces 62.58% Empty Code 57% Naming 40.10% Java Logging 33.77% Controversial 30.28% Design 20.02%
  • 16. Επίδραση στις μετρικές ποιότητας κώδικα WMC: 2,70% CBO: 5,09% RFC: 11,98% Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 15
  • 17. Ανάλυση χρονικής πολυπλοκότητας του συστήματος Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 16
  • 18. Συμπεράσματα Το σύστημα που υλοποιήθηκε είναι σε θέση να: • Εκτελεί διορθώσεις στο υπό εξέταση σύστημα • Δημιουργεί αρχεία για εύκολη επισκόπηση των αλλαγών που έγιναν και τις παραβάσεις που εμφανίζονται • Δίνει την δυνατότητα σύγκρισης αποτελεσμάτων πριν και μετά τις αλλαγές που έγιναν • Η δομή και η λειτουργία του μπορούν να αποτελέσουν βάση για την ανάπτυξη ενός πιο ολοκληρωμένου συστήματος Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 17
  • 19. Ανοιχτά Θέματα • Εφαρμογή σε άλλες γλώσσες προγραμματισμού • Διόρθωση περισσοτέρων παραβάσεων κώδικα • Επέκταση και σε άλλους τύπους project (εκτός maven) Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα Οκτώβριος 2017 18
  • 20. Σχεδίαση και ανάπτυξη αυτοματοποιημένου συστήματος βελτίωσης ποιότητας κώδικα μέσω αυτόματης διόρθωσης παραβάσεων ποιότητας κώδικα 19 Οκτώβριος 2017