Πρακτικές του ΑΠ

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

Σημείωση

Γιατί η λέξη refactoring αποδίδεται ως αναπαραγοντοθέτηση και όχι ... ; Βλέπε την ανάλυση του κ. Κώστα Βαλεοντή, προέδρου της ΕΛΕΤΟ και μια σχετική συζήτηση που προηγήθηκε και ακολούθησε.