Πρακτικές του ΑΠ
- Πλάνο της κάθε έκδοσης
-
Τα στοιχεία που μπορούν να μεταβληθούν είναι:
ο χρόνος, το κόστος, η ποιότητα και το εύρος του έργου.
Τα επιχειρηματικά στελέχη αποφασίζουν σχετικά με
- το εύρος,
- τις προτεραιότητες,
- τι θα περιέχει η έκδοση,
- ημερομηνίες των εκδόσεων.
Τα στελέχη ανάπτυξης έχουν τον τελικό λόγο για:
- το χρόνο που απαιτεί κάθε στοιχείο,
- τα αποτελέσματα των επιχειρηματικών αποφάσεων,
- τη διεργασία ανάπτυξης
- το λεπτομερή χρονικό προγραμματισμό
- Μικρές εκδόσεις
-
Κάθε έκδοση του λογισμικού πρέπει να είναι η μικρότερη δυνατή έτσι
ώστε να είναι μικρός ο αντίστοιχος χρονικός κύκλος.
- Μεταφορά (metaphor)
-
Χρήση μιας μεταφοράς που εκφράζει την αρχιτεκτονική του συστήματος.
- Απλό σχέδιο
-
Το σχέδιο πρέπει να είναι το απλούστερο δυνατό με την προϋπόθεση να:
- Τρέχει όλους τους ελέγχους
- Να μην περιέχει διπλά στοιχεία
- Να εκφράζει κάθε σκοπό που έχει σημασία για τους προγραμματιστές
- Να έχει τις λιγότερες δυνατές κλάσεις και μεθόδους
- Έλεγχος
-
Για κάθε λειτουργία του προγράμματος πρέπει να υπάρχει ο αντίστοιχος
έλεγχος.
Οι έλεγχοι γράφονται σε συνεργασία με τον πελάτη.
- Αναπαραγοντοθέτηση (refactoring)
-
Σχέδια και αντίστοιχες υλοποιήσεις που μπορούν να βελτιωθούν,
χωρίς να αλλάξουν οι λειτουργικές προδιαγραφές,
ξαναγράφονται.
- Προγραμματισμός σε ζευγάρια
-
Ένα ζευγάρι μοιράζεται τον υπολογιστή.
Όταν το ένα μέλος πληκτρολογεί, το άλλο ελέγχει:
- Θα δουλέψει το σύνολο της προσέγγισης;
- Υπάρχουν έλεγχοι που δεν έχουν υλοποιηθεί;
- Μήπως μπορεί το σύστημα να απλοποιηθεί;
Τα ζευγάρια αλλάζουν δυναμικά.
- Συλλογική ιδιοκτησία (collective ownership)
-
Ο κώδικας ανήκει σε όλα τα μέλη της ομάδας.
Κάθε ένας έχει δικαίωμα να βελτιώσει οποιοδήποτε τμήμα του και όλοι
είναι υπεύθυνοι για την ποιότητα του συνόλου του κώδικα.
- Συνεχής ολοκλήρωση
-
Τα τμήματα του κώδικα ενώνονται τακτικά μεταξύ τους.
- Εβδομάδα 40 ωρών
-
Οι υπερωρίες είναι δείγμα προβλημάτων στο έργο.
- Πελάτης στο χώρο της εργασίας
-
Εκπρόσωπος του πελάτη βρίσκεται στο χώρο της ανάπτυξης.
Βοηθά στο σχεδιασμό, τους ελέγχους και τις προδιαγραφές.
- Πρότυπα κώδικα
-
Με βάση τα πρότυπα ο κώδικας μπορεί να είναι ιδιοκτησία
όλης της ομάδας.
Σημείωση
Γιατί η λέξη refactoring αποδίδεται ως αναπαραγοντοθέτηση και όχι ... ;
Βλέπε την ανάλυση του κ. Κώστα Βαλεοντή,
προέδρου της ΕΛΕΤΟ και μια σχετική
συζήτηση που προηγήθηκε και ακολούθησε.