ειδήσεις: ΕΛ/ΛΑΚ projects και προγραμματιστές που αξίζουν συγχαρητήρια
Giorgos Keramidas
keramida at ceid.upatras.gr
Sun Feb 17 03:39:52 EET 2008
On 2008-02-17 03:03, Michael Iatrou <m.iatrou at freemail.gr> wrote:
>When the date was Sunday 17 February 2008, Nick Demou wrote:
>> κράτησα το παραπάνω δεδομένο από το ref. [2] και μετά από το ref. [1]
>> έφτιαξα αυτόν τον πίνακα:
>>
>> project lines defects defects defects defects
>> of detected per1000 fixed not yet
>> code lines fixed
>> ------------------------------------------------------------
>> Amanda 82,229 0 0.000 - -
>> courier-maildir 82,229 0 0.000 - -
>> OpenVPN 69,223 1 0,014 0 1
>> PostgreSQL 909,148 0.041 53 37
>> linux 2.6 3.640,000 0.127 452 461
>> apache 135,916 0.140 3 19
>> glibC 588,931 83 0.140 83 0
>> OpenSSL 221,194 49 0,221 24 25
>> Firefox (~2,170,000)* 672 0.309 370 302
>> KDE 4,712,273 1,644 0.348 1,554 90
>> samba 450,000 236 0,524 228 8
>> Gnome 430,809 576 1,339 357 219
>
> Ωραία και μπράβο τους! Απλά να έχουμε κατά νου ότι αυτή είναι μια διαδικασία
> που πρέπει να γίνεται περιοδικά.
Σε πολλά projects αυτό γίνεται περιοδικά από την ίδια την Coverity.
Σε άλλα projects, έχει δώσει η ίδια η Coverity το software για static
source analysis. Για παράδειγμα, στο FreeBSD kernel γίνεται περιοδικά
έλεγχος για security προβλήματα, και οι developers του FreeBSD έχουν
απευθείας πρόσβαση στο web interface ενός Coverity Prevent installation,
για να βλέπουν (1) ποιά *νέα* προβλήματα εμφανίστηκαν πρόσφατα, (2) ποιά
παλιά προβλήματα διορθώθηκαν πρόσφατα, και (3) το ιστορικό των reports.
Το Coverity Prevent βγάζει reports με τα πιο χρήσιμα αποτελέσματα που
έχω δει προσωπικά μέχρι σήμερα. Έχει και false positives, αλλά μπορεί
να «εκπαιδευθεί» από τους προγραμματιστές για τις ιδιομορφίες του στυλ
που έχει μια εφαρμογή (ή ο πυρήνας ενός kernel).
Πέρα από το ενδιαφέρον των αποτελεσμάτων όμως, το service που προσφέρει
η Coverity στην κοινότητα του free software είναι πολύ σημαντικό, από
πολλές απόψεις:
* Το ίδιο το Coverity Prevent είναι πολύ ακριβό πακέτο λογισμικού,
οπότε είναι ιδιαίτερα δύσκολο για one-man-projects (όπως π.χ. το
OpenPAM) να αγοραστεί μια full έκδοση.
Με το πρόγραμμα scan.coverity.com που υποστηρίζει η ίδια η Coverity,
αποκτούν πρόσβαση σε state of the art εργαλεία και κάποια free
software / open source software projects, τα οποία δε θα είχαν τη
δυνατότητα για κάτι τέτοιο.
* Τα αποτελέσματα του scan.coverity.org είναι μια από τις καλύτερες
ενδείξεις για την πάρα πολύ καλή ποιότητα του FS/OSS
Η διαφήμιση που κάνει με αυτό τον τρόπο η Coverity στο free software
και το open source software είναι έμμεση, αλλά είναι από τις πιο
αποδοτικές που μπορώ να σκεφτώ. Όταν πραγματικά κάποιος θέλει να
ξέρει την ποιότητα του software που χρησιμοποιεί, κάτι σαν το:
«Το Coverity Prevent δεν έχει βγάλει ούτε ένα λάθος για
τον κώδικά μας, εδώ και 4 συνεχόμενα χρόνια.»
είναι, πιστεύω, ΠΑΡΑ ΠΟΛΥ καλή διαφήμιση :)
> Είναι πάντως ενδιαφέρον ότι το Gnome έχει περίπου 4 φορές περισσότερα
> «προβλήματα» απ' ότι το KDE, ενώ έχει το 1/12 του code base.
Αυτό που μου έκανε εντύπωση αμέσως μόλις είδα τον πίνακα του Νίκου,
είναι ότι δεν ανέφερε καθόλου το OpenPAM, το οποίο έχει ΜΗΔΕΝ (0)
defects στον πίνακα του:
http://scan.coverity.com/rung2.html
Το OpenPAM είναι project του Dag-Erling Sm/orgrav, από το FreeBSD team.
Ο Dag-Erling Sm/orgrav είναι από τους πιο καλούς προγραμματιστές που
έχει η ομάδα του FreeBSD, οπότε δεν είναι ΚΑΘΟΛΟΥ περίεργο που το PAM
implementation που έγραψε για το FreeBSD δεν έχει κανένα defect στα
reports του Coverity. Ο ίδιος ο DES συντηρεί την PAM υλοποίηση του
βασικού συστήματος του FreeBSD, χρησιμοποιώντας τον κώδικα του OpenPAM,
ο οποίος είναι μέρος του source tree ως src/contrib/openpam:
http://cvsweb.freebsd.org/src/contrib/openpam/
Το OpenPAM δεν έχει, βέβαια, εκατομμύρια γραμμές κώδικα, αλλά έχει (ως
τώρα τουλάχιστον) ενδιαφέρουσα θέση από όλα τα προγράμματα που έχω δει
στο scan.coverity.org -- μαζί με τα:
* Amanda
* Postfix
More information about the Linux-greek-users
mailing list