Η έννοια της «ανάλυσης αναγκών» είναι κάτι πολύ περισσότερο από μια απλή αρχική συζήτηση με τον πελάτη. Στην πράξη, ειδικά στις custom εφαρμογές, η ανάλυση αναγκών δεν τελειώνει ποτέ πραγματικά. Εξελίσσεται μαζί με την εφαρμογή. Συχνά οι εργοδότες ή οι πελάτες πιστεύουν ότι «γράφουμε τις ανάγκες στην αρχή και μετά απλώς προγραμματίζουμε». Στην πραγματικότητα όμως, η ανάπτυξη λογισμικού λειτουργεί σε στάδια.Θα μπορούσαμε να το πούμε σαν επίπεδα ωρίμανσης της κατανόησης των αναγκών.


1. Αρχική Ανάλυση – Η Θεωρητική Εικόνα

Στην αρχή, οι ανάγκες περιγράφονται θεωρητικά.Ο χρήστης λέει:

  • τι πιστεύει ότι χρειάζεται
  • ποιο πρόβλημα θέλει να λύσει
  • ποια διαδικασία θέλει να οργανώσει

Όμως στην πραγματικότητα σε αυτό το στάδιο πολλές λεπτομέρειες λείπουν , αρκετές διαδικασίες θεωρούνται «αυτονόητες» , υπάρχουν κρυφές εξαρτήσεις που δεν έχουν φανεί ακόμη. Άρα η αρχική ανάλυση είναι περισσότερο ένας χάρτης κατεύθυνσης και όχι η πλήρης πραγματικότητα


2. Η Εφαρμογή Αρχίζει να “Ζει”

Μόλις δημιουργηθεί ένα πρώτο λειτουργικό draft, συμβαίνει κάτι πολύ σημαντικό ,οι χρήστες αρχίζουν να βλέπουν τη διαδικασία μπροστά τους και τότε εμφανίζονται σχόλια όπως:

  • «Α εδώ χρειαζόμαστε άλλο πεδίο»
  • «Αυτό τελικά το χειρίζεται άλλο τμήμα»
  • «Αυτή η πληροφορία πρέπει να συνδέεται με εκείνη»
  • «Η πραγματική ροή είναι διαφορετική»

Δηλαδή η πραγματική ανάλυση αναγκών ξεκινά να αποκαλύπτεται στους χρήση.


3. Η Ανακάλυψη Κρυφών Διαδικασιών

Σε πολλά projects, η επιχείρηση λειτουργεί επί χρόνια με προφορικές διαδικασίες , εμπειρικούς κανόνες , προσωπικές συνήθειες εργαζομένων, εγγραφα (όπως excel) που “κρατάνε το σύστημα ζωντανό”. Όταν όμως πάμε να τα μεταφέρουμε σε εφαρμογή, αποκαλύπτονται:

  • εξαιρέσεις
  • ειδικές περιπτώσεις
  • άτυποι κανόνες
  • πραγματικές ροές εργασίας

Αυτό είναι ίσως το πιο δύσκολο κομμάτι της ανάπτυξης custom εφαρμογών , ουσιαστικά δεν αναπτύσεται απλά ένα software αλλά ταυτόχρονα γίνεται κάτι πολύ σημαντικό που πολλές φορες περνάει απαρατήρητο. Ταυτόχρονα με την ανάπτυξη γίνεται χαρτογράφηση της ίδιας της λειτουργίας της επιχείρησης.


4. Η Ανάλυση Μετατρέπεται σε Συνεργασία

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


5. Η Φάση Ωρίμανσης

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

  • σταθεροποιούνται οι διαδικασίες
  • βελτιώνονται οι ροές
  • μειώνονται τα περιττά βήματα
  • αυτοματοποιούνται επαναλαμβανόμενες εργασίες
  • δημιουργούνται νέες ανάγκες που πριν δεν ήταν ορατές

Ένα σημαντικό συμπέρασμα

Η ανάπτυξη custom λογισμικού δεν είναι μια γραμμική διαδικασία όπου γράφουμε τις ανάγκες / απαιτήσεις μετα γράφουμε κώδικα και τελειώσαμε.Στην πράξη είναι ένας συνεχής κύκλος ανάλυσης , υλοποίησης , παρατήρησης και ανατροφοδότησης με σκοπό την βελτίωση αλλά και το επανασχεδιασμό όπου χριεάζεται. Και αυτός ακριβώς είναι ο λόγος που οι μεγάλες custom εφαρμογές ωριμάζουν πραγματικά μόνο μέσα από τη μακροχρόνια χρήση τους και την καταλληλη σχέση μεταξύ του τμήματος ανάπτυξης και των χρηστών.