background image

85 | 

9 4

 

 

5.  Μετρικές κώδικα και προδιαγραφές συστήματος 

 

5.1 

Κυκλωματική πολυπλοκότητα (Cyclomatic complexity) 

 

Η κυκλωματική πολυπλοκότητα ενός τμήματος του πηγαίου κώδικα είναι ο αριθμός 

των  γραμμικά  ανεξάρτητων  διαδρομών  μέσα  σε  αυτό  -  όπου  "γραμμικά  ανεξάρτητο" 

σημαίνει  ότι  κάθε  διαδρομή  έχει  τουλάχιστον  ένα  άκρο  που  δεν  βρίσκεται  σε  μια  από  τις 

άλλες  διαδρομές.  Για  παράδειγμα,  εάν  ο  πηγαίος  κώδικας  δεν  περιείχε  δηλώσεις  ροής 

ελέγχου (υπό όρους ή σημεία απόφασης), η πολυπλοκότητα θα ήταν 1, αφού θα υπήρχε μόνο 

μία  διαδρομή  μέσω  του  κώδικα.  Εάν  ο  κώδικας  είχε  μια  δήλωση  IF  μίας  συνθήκης,  θα 

υπήρχαν δύο διαδρομές μέσω του κώδικα: μία όπου η δήλωση IF αξιολογείται σε TRUE και 

μια  άλλη  όπου  αξιολογεί  FALSE,  οπότε  η  πολυπλοκότητα  θα  είναι  2.  Δύο  ένθετα  IF  μίας 

συνθήκης , ή ένα IF με δύο συνθήκες, θα προκαλούσε πολυπλοκότητα 3. 

 

5.2 

Μετρικές πηγαίου κώδικα 

 

Χρησιμοποιώντας  το  εργαλείο  Simple  Code  Metrics  πήραμε  τα  παρακάτω 

αποτελέσματα: 

Total lines of code: 10552 

Top 5 Classes Lines of Code: 

Dc_schem 

792 

Circuit_solution 

778 

XMLReaderWriter 

544 

CustomComponent 

500 

Object 

307 

 

Packages Lines of Code: 

dc_schematic 

4183 

comp 

6369 

 

 

Total lines with imports: 497