Pak, διαφωνώ μαζί σου τόσο όσο προς την ψυχοσύνθεση του developer όσο και στις διαφορές μεταξύ ΙΤ και Software development, γιατί σε αυτό αναφέρεσαι. Τα λάθη του ΙΤ γίνονται άμεσα εμφανή (π.χ. άμεσα ή την επόμενη μέρα) και μπορούν να διορθωθούν το ίδιο γρήγορα. Εκτός και αν αφορούν λάθος σχεδίαση οπότε θα εμφανιστού πολύ αργότερα και θα απαιτήσουν μεγάλο χρόνο για να διορθωθούν. Η επίδραση τους θα είναι σύντομη αλλά προβλέψιμη. Επειδή το σφάλμα είναι άμεσα ορατό, η ανάγκη να διορθωθεί είναι πιο άμεση και το κόστος διόρθωσης χαμηλό, η άδεια να γίνει η διόρθωση δίνεται πιο εύκολα.
Σε αντίθεση, λάθη στο software development θα γίνουν αντιληπτά πολύ αργά, όταν η εφαρμογή θα έχει εγκατασταθεί σε εκατοντάδες μηχανήματα, ή όταν θα έχουν καταχωρηθεί χιλιάδες συναλλαγές. Η διόρθωση θα είναι εξαιρετικά επίπονη και η αντικατάσταση του λανθασμένου κώδικα δύσκολη. Η επίδραση θα είναι μακροχρόνια και θα κοστίσει πολύ περισσότερο από ένα λάθος του IT. Επειδή το σφάλμα δεν είναι τόσο ορατό και το κόστος της διόρθωσης τόσο μεγάλο, το σφάλμα μπορεί να παραμείνει για καιρό πρωτού δωθεί η άδεια να διορθωθεί.
Όσον αφορά τις ψυχοσυνθέσεις και τη σύγκριση με καρδιοχειρούργο, επίσης διαφωνώ. Απλά να σου πω ότι το μοντέλο της ομάδας του καρδιοχειρούργου το έχει αναφέρει ο Fred Brooks από το 1970 ως μοντέλο οργάνωσης για .... developers. Είτε για IT μιλάς όμως, είτε για Software development, και στις δύο περιπτώσεις υπάρχει σχεδίαση. Κανείς (στα σωστά του) δεν πρόκειται να βασιστεί σε ενέργειες της στιγμής, στις οποίες δεν υπήρχε χρόνος προετοιμασίας και στις οποίες δεν υπάρχουν εναλλακτικές.
Επειδή και ο Γιώργος ο Σακαλής, και εγώ, δουλεύουμε στενά με τα IT τμήματα τραπεζών (διαφορετικών!) εδώ και 2 χρόνια, μπορώ να σε διαβεβαιώσω ότι ακολουθείται πάντα σχεδίαση των ενεργειών και αμέτρητες, ατελείωτες, συναντήσεις πριν δωθεί το OK για να γίνει κάποια ενέργεια όπως π.χ. να βγει μία εφαρμογή στην παραγωγή, ή ακόμα και να ξεκινήσει η ανάπτυξη της. Τί traffic έχει η εφαρμογή? Το αντέχουν τα δίκτυα? Τί αλλαγές ασφαλείας απαιτούνται αν είναι web εφαρμογή? Ποιά accounts? Τί backup procedures θα υλοποιηθούν? Ποιοί θα αναλάβουν το administration? Ποιοί θα αναλάβουν το monitoring? Τί μηχανήματα χρειάζονται, γιατί οι παραγγελίες καθυστερούν?
Τί εναλλακτικές έχουμε αν καθυστερήσει η παράδοση ενός server?
Δεν είναι λίγες οι φορές που μία εφαρμογή έπρεπε να σχεδιαστεί ξανά επειδή κρίθηκε απαράδεκτο το φορτίο που έβαζε στα δίκτυα ή σε άλλες εφαρμογές. Επίσης, δεν είναι λίγες οι φορές που ένα λάθος των προγραμματιστών δημιούργησε πρόβλημα στο deployment και ... έγινε του Ζαχαρία.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos