Ανοιχτό Λογισμικό από την Interamerican
Η INTERAMERICAN προσφέρει στην κοινότητα του ανοικτού λογισμικού ένα ολοκληρωμένο πλαίσιο ανάπτυξης εφαρμογών για τη γλώσσα java. Το πλαίσιο ανάπτυξης εφαρμογών Bo2 έχει αναπτυχθεί από το τμήμα μηχανογράφησης της εταιρίας στα πλαίσια της ανάπτυξης της νέας εφαρμογής Γενικών Ασφαλίσεων OnE η οποία καλύπτει με σύγχρονο τρόπο τις εταιρικές ανάγκες στους τομείς της δημιουργίας προϊόντων, αντασφάλειας, διαχείρισης χαρτοφυλακίου, διακανονισμού και πληρωμής ζημιών. Η εφαρμογή έχει αναπτυχθεί με ιδιαίτερη έμφαση στην ποιότητα και πιστοποιήθηκε για αυτήν με το Trusted Product Maintainability Certificate από την εταιρία SIG.
Το πλαίσιο ανάπτυξης εφαρμογών Bo2 δημιουργήθηκε σαν υποδομή για την ανάπτυξη μηχανογραφικών εφαρμογών υψηλής ποιότητας. To framework τυποποιεί μία αρχιτεκτονική πολλών επιπέδων στην οποία πρότυπα κλάσεων (stereotype classes) περιγράφονται από προκαθορισμένα java interfaces. Το επίπεδο της επιχειρησιακής λογικής υλοποιείται με χρήση των interfaces που δηλώνονται από την αρχιτεκτονική χωρίς εξάρτηση στις τεχνολογίες που χρησιμοποιούνται σε χαμηλότερα επίπεδα για την υλοποίηση τυπικών λειτουργιών όπως persistence και transaction management. Ο διαχωρισμός αυτός βελτιστοποιεί την αναγνωσιμότητα και συντηρησιμότητα του κώδικα ενώ μεγιστοποιεί την επεκτασιμότητα καθώς δίνει τη δυνατότητα μελλοντικής υποστήριξης και άλλων τεχνολογιών.
Το Bo2 υποστηρίζει τις τεχνολογίες jdbc, hibernate, jta και apache wicket.
To framework συνοδεύεται και από μία σειρά βοηθητικών βιβλιοθηκών οι οποίες μπορούν να χρησιμοποιηθούν αυτόνομα καλύπτοντας τις παρακάτω ανάγκες:
• Κοινά utilities
• Utilities για το Apache Wicket
• Δυναμική δημιουργία java κλάσεων με αυτόματη δημιουργία τυποποιημένου κώδικα.
• Υποδομή μετα-δεδομένων για την δημιουργία λεξικών δεδομένων και την αυτόματη δημιουργία διεπαφών χρήστη.
• Δυναμική δημιουργία SQL queries
• Δημιουργία εγγράφων με αυτόματη συμπλήρωση προτύπων βασισμένο στο πρότυπο ODF.
Ο κώδικας χρήσης της εφαρμογής βρίσκεται στη διεύθυνση http://code.google.com/p/bo2/ και διατίθεται με την άδεια χρήσης LGPL (http://www.gnu.org/copyleft/lesser.html).
Η δουλειά που έχει κάνει ο δημιουργός του bo2 είναι πολύ καλή. Βλέποντας τους κώδικες αποκόμισα αμέσως την εντύπωση ότι ο προγραμματιστής είχε σαφή εικόνα τόσο του προβλήματος όσο και της λύσης που επέλεξε να ακολουθήσει.
Η προσωπική μου άποψη είναι ότι η ενσωμάτωση του spring framework στο έργο θα προσέδιδε ένα πιο ανοιχτό και πιο κατανοητό χαρακτήρα. Το πακέτο Bo2ImplOpen θα μπορούσε να έχει απλοποιηθεί χρησιμοποιώντας τις τεχνολογίες Spring IoC και Spring AOP. Αντίστοιχα οφέλη θα μπορούσαν να υπάρξουν από την καλή συνεργασία που εξασφαλίζει το Spring με το Hibernate και το transaction management γενικότερα.
Τέλος, δεδομένου ότι το bo2 αποτελείται από διάφορα αρχεία με διαφορετικές εξωτερικές εξαρτήσεις το κάθε ένα, η τοποθέτηση τους στο Maven Central θα διευκόλυνε πολύ όσους θα ήθελαν να το χρησιμοποιούσουν.