Το παράδειγμα της δανειστικής βιβλιοθήκης του βιβλίου Ε. Γιακουμάκης και Ν. Διαμαντίδης, Τεχνολογία Λογισμικού, 2η Έκδοση, Unibooks, 2021. Περιλαμβάνει τον πηγαίο κώδικα και παραδείγματα των λοιπών εγγράφων του λογισμικού.
Είναι μία απλή εφαρμογή σε Swing.
Η οικοδόμηση (build) του λογισμικού γίνεται με το εργαλείο Maven 3
Η εγκατάσταση του Maven είναι σχετικά απλή. Αφού κατεβάσουμε το Maven (π.χ. έκδοση 3.5.0) και τα αποσυμπιέσουμε σε κατάλληλους καταλόγους
π.χ. C:\Program Files\apache-maven-3.5.0\
αντίστοιχα θα πρέπει:
- να ορίσουμε τη μεταβλητή περιβάλλοντος JAVA_HOME η οποία θα δείχνει στον κατάλογο εγκατάστασης του JDK,
- να προσθέσουμε τον κατάλογο
C:\Program Files\apache-maven-3.5.0\bin
στη μεταβλητή περιβάλλοντος PATH. - να ορίσουμε τη μεταβλητή περιβάλλοντος M2_HOME. Στο παράδειγμά μας είναι ο κατάλογος
C:\Program Files\apache-maven-3.5.0\
.
Για να εκτελέσουμε από τη γραμμή εντολών εργασίες οικοδόμησης του λογισμικού χρησιμοποιούμε το Maven μέσω της εντολής mvn
,
αφού μετακινηθούμε στον κατάλογο όπου βρίσκεται το αρχείο pom.xml. Η τυπική εκτέλεση του Maven είναι:
mvn [options] [target [target2 [target3] … ]]
Τα παραγόμενα αρχεία δημιουργούνται από το Maven στο κατάλογο /target
.
Τυπικές εργασίες με το Maven είναι:
mvn clean
καθαρισμός του project. Διαγράφονται όλα τα αρχεία του καταλόγου/target
.mvn compile
μεταγλώττιση του πηγαίου κώδικα. Τα αρχεία.class
παράγονται στον κατάλογο/target/classes
.mvn test-compile
μεταγλώττιση του κώδικα ελέγχου. Τα αρχεία .class παράγονται στον κατάλογο/target/test-classes
.mvn test
εκτέλεση των ελέγχων με το JUnit framework.mvn site
παραγωγή στο site του έργου το οποίο περιλαμβάνει την τεκμηρίωση του έργου.mvn umlet:convert -Dumlet.targetDir=src/site/markdown/uml
παράγει αρχεία εικόνας png για όλα τα διαγράμματα που βρίσκονται στην τοποθεσίαsrc/site/markdown/uml
. Συστήνεται η κλήση της εντολής πριν την υποβολή μιας νέας έκδοσης διαγραμμάτων στο git repository (git commit
). Ως αποτέλεσμα τα παραγόμενα αρχεία εικόνας των διαγραμμάτων συνοδεύουν τα πηγαία αρχεία έτσι ώστε να είναι εύκολη η πλοήγηση στην τεκμηρίωση του project μέσω του github.
Η τεκμηρίωση περιλαμβάνει:
- Ένα πρότυπο εγγράφου προδιαγραφών απαιτήσεων λογισμικού. Τα πηγαία αρχεία του εγγράφου βρίσκονται στον φάκελο
/src/site
. - Το έγγραφο περιγραφής σχεδίασης λογισμικού. Τα πηγαία αρχεία του εγγράφου βρίσκονται στον φάκελο
/src/site
. - Η τεκμηρίωση του κώδικα με το JavaDoc.
- Αναφορές καλύψεων κώδικα με χρήση του εργαλείου JaCoCo.
- Αναφορά αυτόματης επιθεώρησης κώδικα με το εργαλείο CheckStyle.
- Αναφορά αυτόματης επιθεώρησης κώδικα με το εργαλείο SpotBugs.
- Αναφορά αντιγραφής/επικόλλησης κώδικα με το εργαλείο CPD/PMD.
- Αναφορά αυτόματης επιθεώρησης κώδικα με το εργαλείο PMD.
Η εισαγωγή του project στο Eclipse γίνεται με την επιλογή File/Import/Maven/Existing Maven Projects
με την επιλογή του καταλόγου που περιλαμβάνει το project.
Για την τεκμηρίωση του λογισμικού χρησιμοποιήθηκε το Markdown markup για τη συγγραφή των κειμένων και το εργαλείο UMLet για την κατασκευή των διαγραμμάτων UML.