INTERLUDE: Οδηγός επιβίωσης κατά την εκμαίευση προδιαγραφών

0

Έφτασε λοιπόν η ποθητή στιγμή να μαζέψετε τις προδιαγραφές για το νέο εκείνο έργο, για το οποίο τόσα είχατε ακούσει αλλά μόλις χθες μάθατε ότι η εταιρία σας, πατώντας επί αδύναμων προσφορών και φιλώντας κατεβασμένα budgets κατάφερε να κερδίσει.

Στην ιδανική περίπτωση, θα επιβλέψετε την ομάδα που θα συλλέξει τις προδιαγραφές ξεκινώντας από τα ανώτερα στελέχη της εταιρίας - πελάτη, και κατεβαίνοντας την ιεραρχία ως τους απλούς χρήστες, ακούγοντας σχόλια, παράπονα και προτιμήσεις. Θα συντονίσετε την ομάδα μεθοδικά, θα διενεργήσετε διπλές και τριπλές συναντήσεις ώστε να ξεκαθαρίσουν τα μελανά σημεία, και θα δημιουργήσετε μια πλήρη υποδομή ικανή να αφήσει τους πάντες ευχαριστημένους. Στη συνέχεια οι προδιαγραφές θα
ακολουθηθούν κατά γράμμα χωρίς κενά, δημιουργώντας ευέλικτες, επεκτάσιμες αλλά και γρήγορες και εύκολες στη χρήση εφαρμογές που θα αυξήσουν την παραγωγικότητα του πελάτη σας, και εσείς θα τσιμπήσετε ένα διόλου ευκαταφρόνητο bonus για την αξιέπαινη αυτή προσπάθειά σας.

Παραθέτουμε, όμως, εδώ μια ιστορική, σοφή ρήση του τεράστιας εμπειρίας αναλυτή και φιλοσόφου κ. Egotaperasa Fatetakieseis που ελέχθη πριν από αρκετές δεκαετίες:

“Το μεγάλο πράσινο λιβάδι δείχνει πάντα το δρόμο της σοφίας ώσπου να έρθει το τραίνο της φυγής και έργο που έχει σωστές προδιαγραφές είναι έργο με έτοιμες προδιαγραφές που προέρχεται από άλλη εταιρία που χρεοκόπησε κατά τη σύνταξή τους. Τώρα μπορώ να χλαπακιάσω τα σουβλάκια μου; ”

Στην down-to-earth περίπτωση (η οποία και είναι πιθανό κατά 101% να σας κάτσει, θα είστε ΕΣΕΙΣ η ομάδα (και, ενδεχομένως, και αυτός που θα υλοποιήσει την εφαρμογή). Θα μάθετε ότι πρέπει να μαζέψετε προδιαγραφές καμιά δεκαριά μέρες πριν το deadline και θα πρέπει να μιλήσετε με κάποιο ανώτατο στέλεχος το οποίο δεκάρα δεν δίνει για το τι σκέφτονται οι τελικοί χρήστες, και που φυσικά δεν έχει  ποτέ τον απαιτούμενο χρόνο για να σκεφτεί να επιλέξει ανάμεσα σε ένα ραντεβού μαζί σας και ένα καφάσι μπύρες στη διπλανή ταβέρνα.

Η συγκεκριμένη διαδικασία, αν την περνάτε για πρώτη φορά, ονομάζεται "διαβολοπροδιαγραφάδα". Αν επιζήσετε από αυτήν, παίρνετε το βάπτισμα του πυρός και είστε έτοιμοι για ακόμα μεγαλύτερα κόλπα. ΑΝ. Αν όχι, το ΟΑΕΔ club είναι ανοιχτό και καθημερινές για ποτό και επίδομα.

Η διαβολοπροδιαγραφάδα εφαρμόζεται κυρίως σε νέα στελέχη και το ποσοστό απολυσιμότητας υπερβαίνει το 90%. Μιλάμε για πολύ δύσκολη κατάσταση, συνεπώς είναι χρέος μας να σας υποδείξουμε τα σημεία που πρέπει να προσέξετε για να έχετε ορισμένες μικρές πιθανότητες επιβίωσης.

Η πρώτη συνάντηση

Συνήθως θα υποχρεωθείτε να διεξάγετε μια συνάντηση με κάποιον βαριεστημένο διορισμένο «υπεύθυνο» του έργου, ο οποίος δεν θα έχει ιδέα για το τι πρέπει να φτιαχτεί ούτε και διάθεση να καταλάβει. Η συνάντηση θα γίνει στο χώρο ΤΟΥ, φυσικά, όπου, αφού υποφέρετε μαρτυρικά για να βρείτε μια θέση πάρκινγκ επί πληρωμή στα 2-3 χιλιόμετρα από τα γραφεία του πελάτη, θα αναγκαστείτε να υπομείνετε το σαδιστικό βασανιστήριο της αναμονής στη ρεσεψιόν του εν λόγω στελέχους που επιστρέφει από το μεσημεριανό του φαγητό (διάρκειας περίπου 3 ωρών – από την ώρα που θα φτάσετε εσείς).

Αν είστε ΠΟΛΥ άτυχος, η εταιρία θα είναι μικρή και θα συναντηθείτε απευθείας με το αφεντικό. Ισχύουν τα παραπάνω, με την επιπρόσθετη μικρή λεπτομέρεια ότι ενδέχεται να χρειαστεί να τα επαναλάβετε ως και 4-5 φορές γιατί "κάτι του έτυχε, έχει πολλά στο μυαλό του σήμερα". Οπλιστείτε με υπομονή και ηρεμιστικά και επαναλάβετε χωρίς φόβο και πάθος ώσπου να επιτύχετε το τελικό αποτέλεσμα που είναι...

Η αρχική συλλογή προδιαγραφών

Όποιος και αν είναι αυτός με τον οποίο θα μιλήσετε για τις προδιαγραφές, το πιθανότερο είναι να μην κατανοεί καν για τι μιλάτε ή, στην καλύτερη περίπτωση, το expertise του για το όλο θέμα να συνοψίζεται στη φράση "θέλω ένα πρόγραμμα στο ΚΟΜΠΙΟΥΤΕΡ που να μας κάνει Ι-Αρ-Πι". Μην τον ζορίζετε. Ακούστε τον να σας μιλάει για την κίνηση, τον καιρό, τη γυναίκα του, και οτιδήποτε άλλο δεν έχει να κάνει με τις προδιαγραφές σας και προσποιηθείτε ότι ενδιαφέρεστε.

Στην κατάλληλη στιγμή, όταν πλέον θα πιστεύει ότι έχει τον πλήρη έλεγχο της συζήτησης, πετάξτε του την ερώτηση - μπαλαντέρ που μπορείτε να χρησιμοποιήσετε στο 99% των περιπτώσεων:

"Μια και το έφερε η κουβέντα, το πρόγραμμα που θέλετε θα χρησιμοποιεί κεντρική βάση δεδομένων και κατανεμημένο διακομιστή εφαρμογών τρέχοντας στο εταιρικο intranet με web-based interface ή θα λειτουργεί ως client-server εφαρμογή, με τυχόν απομακρυσμένη διασύνδεση με άλλα σημεία της επιχείρησής σας σε άλλες πόλεις μέσω web services";

Αν παρατηρήσετε ελαφρά ωχρότητα στο δέρμα του συνομιλητή σας, έντονο βήχα ή αλληθωρισμό, ή βιώσετε μια μεγάλη - πολύ μεγάλη - παύση στην συζήτησή σας, τότε χαμογελάστε! Έχετε σπάσει τον πάγο!

Ο συνομιλητής σας θα θελήσει να απαντήσει - ως ειδήμων - σε όλα όσα τον ρωτήσατε, φυσικά χωρίς να ρωτήσει τι σημαίνουν όλα αυτά - εξάλλου, υποτίθεται ότι τα ξέρει ήδη. Μια από τις απαντήσεις που μπορεί να λάβετε ενδέχεται να είναι και η παρακάτω:

"Εεεε, δεν ξέρω αν θα είναι κεντρική, αλλά σίγουρα ο σερβερ μας εδώ έχει χώρο στο δίσκο οπότε δεν θα την κατανείμουμε. Και ΠΡΟΣ ΘΕΟΥ, όχι web! Κάποτε φτιάξαμε site αλλά δεν μας άρεσε. Τώρα για το client-server, ε, θα προτιμούσα το server".

Σημειώστε ο,τι ακούτε. Έτσι, αργότερα, όταν τα πράγματα θα έχουν φτάσει στο αμήν, θα μπορείτε να δικαιολογήσετε επιπρόσθετες χρεώσεις για υπηρεσίες consulting.

Όσο θα είναι ακόμα ζαλισμένος, ρωτήστε στο ίδιο μοτίβο ο,τι θέλετε να γνωρίζετε σχετικά με τις διαδικασίες ή τη λογική της εφαρμογής που θα κατασκευάσετε. Μην πτοείστε από το ότι ο συνομιλητής σας θα αναζητά διαρκώς τρόπο ταχείας εξόδου από το δωμάτιο, βομβαρδίστε τον με ερωτήσεις και ΣΗΜΕΙΩΣΤΕ ΤΑ ΠΑΝΤΑ.

Η επιβεβαίωση

Σε ένα όσο το δυνατόν πιο μακροσκελές και φλύαρο κείμενο, περιγράψτε τι έχετε καταλάβει και στείλτε το στον πελάτη για υπογραφή. Ει δυνατόν, βιβλιοδετήστε το σε δύο τουλάχιστον τόμους (500 σελίδων έκαστος).

Μην χρησιμοποιήσετε ΠΟΤΕ διαγράμματα. Αναλύστε περιφραστικά ΟΛΕΣ τις διαδικασίες, ακόμα και τις απλούστερες. Για παράδειγμα, ο ΛΑΝΘΑΣΜΕΝΟΣ τρόπος ανάλυσης μιας διαδικασίας όπως το user logoff είναι:

«Το logoff επιτυγχάνεται πατώντας το ομώνυμο κουμπί στην επάνω δεξιά γωνία όλων των φορμών της εφαρμογής»

Ενώ ο σωστός είναι:

«Το κουμπί logoff, το οποίο μπορεί να βρεθεί στην επάνω δεξιά γωνία της εφαρμογής, εκτός από τις περιπτώσεις που έχετε κάποια άλλη εφαρμογή στο προσκήνιο, στην οποία περίπτωση θα πρέπει να επαναφέρετε την αρχική εφαρμογή πατώντας Alt+Tab, και φυσικά εκτός της περίπτωσης κατά την οποία έχετε σβηστό τον υπολογιστή σας, οπότε και φυσικά δεν χρειάζεται να κάνετε logoff, χωρίς να αγνοούμε την περίπτωση που κάποιος άλλος χειρίζεται τον υπολογιστή σας, οπότε χρειάζεται να τον ενημερώσετε για το που βρίσκεται το κουμπί logoff με βάση τα παραπάνω, εκτελεί τη διαδικασία logoff».

Αναμένετε όσο χρειάζεται για να ολοκληρώσει ο πελάτης την ανάγνωση των προδιαγραφών.

Φροντίστε να δικαιολογήσετε το χρόνο αυτό ως χρόνο αναμονής feedback, ο οποίος θα επεκτείνει το deadline του έργου. Στο μεσοδιάστημα, αποκτήστε ακόμα ένα πτυχίο ξένης γλώσσας ή μάθετε να παίζετε κάποιο μουσικό όργανο και εμπλουτίστε το βιογραφικό σας με καμιά 10αριά συμμετοχές σε συναυλίες ανά τον κόσμο.

Επαναλάβετε περί τις 5-10 φορές ώσπου ο πελάτης να σας γυρίσει πίσω το κείμενο χωρίς παρατηρήσεις, ή να μάθετε ότι έπαθε νευρικό κλονισμό.

Περιμένετε μια-δυο μέρες.

Επαναλάβετε περί τις 5-10 φορές ώσπου ο πελάτης να σταματήσει να θυμάται ότι ξέχασε να σας πει ακόμα κάτι. Προσθέστε έναν ακόμα 500σέλιδο τόμο ανά δύο «κάτι» που θα ακούσετε, και προτείνετε επαναδιαπραγμάτευση της χρέωσης του έργου μια και οι προδιαγραφές άλλαξαν άρδην (για παράδειγμα, ο πελάτης ήθελε το κουμπί logoff κάτω αριστερά αντί για πάνω δεξιά, κάτι που σας οδηγεί – προφανώς – σε επανασχεδίαση όλου του business logic layer της εφαρμογής σας καθώς και δυο –τριών άλλων εφαρμογών, μεταξύ των οποίων βρίσκεται και μέρος του kernel των Windows).

Περιμένετε μια-δυο μέρες.
Περιμένετε άλλες μια-δυο μέρες.

Αν ο πελάτης δεν έχει τηλεφωνήσει για να σας πει ότι άλλαξε γνώμη για μια "λεπτομέρεια" της εφαρμογής (π.χ. δεν θέλει πλέον ένα report αλλά περίπου 50 διαφορετικά μεταξύ τους, και τα οποία θα εμφανίζονται δυναμικά με πολλαπλούς τρόπους), και αν δεν έχει έρθει ακόμα ο καιρός για τη συνταξιοδότησή σας, προχωρήστε στο επόμενο βήμα που είναι...


Η υλοποίηση

Ανεξαρτήτως αν θα υλοποιήσετε εσείς ή κάποιος άλλος την εφαρμογή, πάντα θα πρέπει να έχετε στο μυαλό σας το εξής:

- Ξεκινήστε τη διαδικασία υλοποίησης
- Φτιάξτε στο μυαλό σας το πλάνο
- Εντοπίστε τα βασικά εναρκτήρια σημεία της υλοποίησης
- Καθορίστε ένα χρονοδιάγραμμα
- Ακούστε όλη σας τη συλλογή από MP3. Σε περίπτωση που η συλλογή σας δεν ξεπερνά τα 10.000 κομμάτια, ακούστε τη και δεύτερη φορά.
- Αλλάξτε τις προδιαγραφές λόγω του ότι ο πελάτης θυμήθηκε ότι θέλει ακόμα 50 reports και άλλες 10 οντότητες στην εφαρμογή.
- Ξανακούστε τη συλλογή από MP3 σας.
- Στείλτε βιογραφικά σε άλλες εταιρίες
- Περιμένετε μια-δυο μέρες
- Αν δεν συμβεί κάτι κακό, και αν δεν σας έχουν καλέσει από κάποια άλλη εταιρία, αρχίστε την υλοποίηση.

Αν στο πρώτο review meeting διαπιστώσετε ότι ο πελάτης «τώρα που το κατάλαβε» ζητούσε, τηρουμένων των αναλογιών, ένα βάζο με κόκκινα τριαντάφυλλα, δίνοντάς σας προδιαγραφές για την κατασκευή ενός ορνιθοτροφείου με ηχοσύστημα dolby digital και μηχανή espresso, τότε η τύχη δεν είναι με το μέρος σας. Σκεφτείτε σοβαρά μια καριέρα σε ψυχιατρική κλινική. Καλύτερα ως εργαζόμενος, παρά ως πελάτης.

Αν βέβαια όλα πάνε καλά, ο πελάτης θα έχει στα χέρια του μετά από αρκετό καιρό κάτι το οποίο δεν θα μπορεί να κατανοήσει και για το οποίο θα είναι περήφανος, και εσείς θα έχετε στα χέρια σας το επόμενο, λογικότερο ενδεχομένως, έργο για να αναλάβετε.

Η καλύτερη, βέβαια, λύση, είναι ΠΟΤΕ, μα ΠΟΤΕ, να μην ανταποκριθείτε θετικά στο άκουσμα των λέξεων “Use Case”. Κάντε την πάπια. Κάποιο άλλο θύμα θα βρεθεί.

Καλές αυξήσεις!