Θα διαπιστώσετε επανειλημμένα ότι το 50% των έργων ανάπτυξης προσαρμοσμένου λογισμικού αποτυγχάνουν. Αυτό το πανάρχαιο πρόβλημα αποτελεί εφιάλτη για πολλούς CTO και τεχνικούς διευθυντές. Από την άλλη πλευρά, η εκ των προτέρων προειδοποίηση σημαίνει ότι μπορείτε να προετοιμάσετε τον εαυτό σας και την ομάδα σας και να ελαχιστοποιήσετε τον κίνδυνο αποτυχίας.
Στον κλάδο της τεχνολογίας, θα διαπιστώσετε επανειλημμένα ότι έως και 50-70% των *προσαρμογή έργα ανάπτυξης λογισμικού τέλος αποτυχία. Αυτό το πανάρχαιο πρόβλημα είναι ένας εφιάλτης για πολλούς CTOs και τεχνικούς διευθυντές. Από την άλλη πλευρά, η εκ των προτέρων προειδοποίηση σημαίνει ότι μπορείτε να προετοιμάσετε τον εαυτό σας και τις ομάδα και να ελαχιστοποιήσετε τον κίνδυνο αποτυχίας. Αυτή είναι μια πρόκληση που αντιμετωπίζει κάθε ομάδα προγραμματιστών, προϊόν οι σχεδιαστές και εσείς - ως ηγέτης - θα πρέπει να συναντηθούν.*
Δεν έχω καμία αμφιβολία ότι προσαρμοσμένο λογισμικό έργα είναι απαιτητικές και πρέπει να φροντίζετε ακόμα και τις πιο μικρές λεπτομέρειες για να πετύχετε. Για να είμαι ειλικρινής, έχοντας μελετήσει τις στατιστικές για το θέμα αυτό, εκπλήσσομαι με την κλίμακα του προβλήματος. Προσωπικά συνειδητοποίησα πόσο σημαντικό είναι όταν διάβασα τις ιστορίες εταιρειών των οποίων η συνεργασία με τεχνολογικούς συνεργάτες κατέληξε σε αποτυχία ή η ομάδα τους έχασε ένα έργο λόγω σημαντικής υπέρβασης του προϋπολογισμού ή της προθεσμίας.
Άρχισα να αναρωτιέμαι γιατί συμβαίνει αυτό. Έχω αρκετά χρόνια εμπειρίας σε έργα ανάπτυξης προσαρμοσμένου λογισμικού, οπότε με ενδιέφερε ιδιαίτερα αυτό το θέμα. Αποφάσισα ότι, με βάση τη δική μου εμπειρία, θα προσδιορίσω όλες τις μεγαλύτερες απειλές που σχετίζονται με *προσαρμογή ανάπτυξη λογισμικού, το οποίο θα μοιραστώ τώρα μαζί σας.*
Ο προσωπικός μου κατάλογος με τις μεγαλύτερες προκλήσεις στην ανάπτυξη προσαρμοσμένου λογισμικού
-
Γλωσσικό εμπόδιο. Αυτό είναι ένα από τα πιο συνηθισμένα προβλήματα όταν οι άνθρωποι αναζητούν έναν τεχνολογικό συνεργάτη. Ωστόσο, δεν έχω καμία αμφιβολία ότι αυτός ο παράγοντας μπορεί να επιλυθεί εύκολα. Δηλαδή, πρέπει απλώς να επιλέξετε έναν συνεργάτης ανάπτυξης λογισμικού που μπορεί να εγγυηθεί την απρόσκοπτη επικοινωνία. Η άριστη γνώση της αγγλικής γλώσσας είναι υποχρεωτική. Είναι μια διεθνής γλώσσα και δεν μπορείτε να επικοινωνήσετε σωστά χωρίς αυτήν. Φανταστείτε την κατάσταση ότι θέλετε να μιλήσετε με έναν προγραμματιστή για κάποιο πρόβλημα ή σφάλμα. Αν αποδειχθεί ότι το μόνο άτομο που μιλάει αγγλικά είναι ένας διαχειριστής έργου που δεν είναι τεχνικός, τότε υπάρχει πρόβλημα. Πρέπει να γνωρίζετε ότι η επικοινωνία με τους προγραμματιστές - για να είναι αποτελεσματική - πρέπει να είναι πολύ ακριβής, πράγμα που απαιτεί γνώση της αγγλικής γλώσσας. Να θυμάστε αυτόν τον απλό κανόνα.
-
Κακή επικοινωνία. Οι πτυχές της επικοινωνίας σχετίζονται κάπως με το γλωσσικό εμπόδιο. Εκτός από τη γλώσσα, πρέπει να είστε πεπεισμένοι ότι η καθημερινή σας συνεργασία είναι καλά οργανωμένη. Κατά τη γνώμη μου, αυτή η πτυχή συχνά παραβλέπεται. Η επάρκεια της ομάδας ανάπτυξης μπορεί να αποτελεί βασικό μέρος της δουλειάς τους, αλλά το ίδιο ισχύει και για την επικοινωνία με έναν πελάτη. Εξάλλου - και το γνωρίζω αυτό από τη δική μου εμπειρία - αν η διαδικασία της αμοιβαίας επικοινωνίας διαχειρίζεται σωστά, τότε ολόκληρο το έργο τρέχει πολύ πιο αποτελεσματικά και θα αποφύγετε περιττά προβλήματα, όπως καθυστερήσεις.
-
Σπάσιμο προθεσμιών. Αυτή είναι μια πολύ συνηθισμένη κατάσταση, την οποία μπορεί να έχετε βιώσει και εσείς. Είναι πολύ δύσκολο να εκτιμηθούν τα χρονοδιαγράμματα για έργα ανάπτυξης λογισμικού. Συχνά, οι αρχικές υποθέσεις είναι εντελώς λανθασμένες. Η αδυναμία τήρησης των προθεσμιών μπορεί να επηρεαστεί από πολλούς παράγοντες, συμπεριλαμβανομένων αυτών που περιγράφω σε αυτό το άρθρο. Νομίζω ότι η κατάλληλη μέθοδος διαχείρισης έργων παίζει μεγάλο ρόλο εδώ. Συστάσεις; Σίγουρα Scrum.
-
Ανεπαρκής γνώση. Τα έργα ανάπτυξης λογισμικού απαιτούν συνήθως ευρεία γνώση της τεχνολογίας. Αυτό αποτελεί μεγάλη πρόκληση αν αναλογιστούμε ότι η τεχνολογία εξελίσσεται συνεχώς και οι προγραμματιστές πρέπει να είναι ενήμεροι για όλα τα νέα. Σε αυτό το σημείο, είναι σημαντικό η δική σας ομάδα να είναι ενημερωμένη για τα τεχνολογικά νέα. Αυτό δεν είναι τόσο προφανές όσο φαίνεται, ειδικά όταν η υλοποιείται έργο ανάπτυξης λογισμικού εσωτερικό από μια μικρή ομάδα προγραμματιστών. Μπορεί να υπάρξει μια κατάσταση στην οποία οι ικανότητες της ομάδας σας να αποδειχθούν ανεπαρκείς, γεγονός που μπορεί να οδηγήσει γρήγορα σε προβλήματα και, κατά συνέπεια, στην αποτυχία του έργου σας.
-
Ασυνάρτητο όραμα. Φανταστείτε μια κατάσταση στην οποία ξεκινάτε συνεργασία με έναν τεχνολογικό συνεργάτη - για παράδειγμα, ένα οίκος λογισμικού και να μιλήσετε για τις ανάγκες σας. Περιγράφετε λεπτομερώς το προϊόν που θα θέλατε να δημιουργήσετε. Στην αρχή, όλα φαίνονται να κυλούν ομαλά. Με την πάροδο του χρόνου, όμως, αποδεικνύεται ότι το όραμά σας είναι εντελώς διαφορετικό από αυτό του συνεργάτη σας. Ως αποτέλεσμα, δημιουργείται ένα πρόβλημα επειδή η εργασία της ομάδας προγραμματιστών και σχεδιαστών προϊόντων δεν ανταποκρίνεται στις προσδοκίες σας.
Νομίζω ότι αυτό είναι ένα αρκετά συνηθισμένο πρόβλημα. Μερικές φορές είναι δύσκολο να συνδυαστεί το όραμα του πελάτη με τις "σκληρές" λύσεις που χρησιμοποιούν οι προγραμματιστές. Σε αυτή την περίπτωση, η εμπειρία της τεχνικής ομάδας και οι κοινωνικές δεξιότητες είναι σίγουρα χρήσιμες. Είναι σημαντικό για τον τεχνικό συνεργάτη σας να ανταποκρίνεται στις προσδοκίες σας, αλλά ως πελάτης, πρέπει να γνωρίζετε ότι μια συγκεκριμένη λύση που προτείνεται από την εταιρεία λογισμικού μπορεί στην πραγματικότητα να αποδειχθεί πιο αποτελεσματική. Λάβετε αυτό υπόψη σας.
-
Αλλαγές κατά τη διάρκεια του έργου. Στην περίπτωση των έργων πληροφορικής, οι πιο συνηθισμένες απειλές είναι η διάρρηξη του πεδίου εφαρμογής (από την πλευρά του ιδιοκτήτη) και η "φύτευση χρυσού" (από τον PM, τον Scrum Master ή τους προγραμματιστές). Οι ανεξέλεγκτες αλλαγές στο έργο, η προσθήκη νέων λειτουργιών ή η εισαγωγή αλλαγών εμπίπτουν αναμφίβολα στις απειλές που επηρεάζουν τόσο την αποτελεσματικότητα όσο και την ταχύτητα των έργων. Η σωστή προσέγγιση στη διαχείριση είναι να διασφαλιστεί ότι το πρώτο βασικό στάδιο είναι 100% ακριβές, καθώς αυτό θα επηρεάσει τη μετέπειτα επιτυχία του έργου.
-
Ανεπαρκή κεφάλαια για ανάπτυξη έργων. Η χρηματοδότηση είναι ουσιαστικά ένας από τους σημαντικότερους παράγοντες για την επιτυχία του έργου σας. Αυτό είναι προφανές. Ωστόσο, θα ήθελα να επιστήσω την προσοχή σας σε μια ελαφρώς διαφορετική πτυχή. Είναι σημαντικό να έχετε έναν εγγυημένο προϋπολογισμό μακροπρόθεσμα και όχι μόνο για την περίοδο ανάπτυξης που υποτίθεται στην αρχή. Γιατί; Ο λόγος είναι απλός. Πολύ συχνά παρατηρείται ότι ο χρόνος ανάπτυξης παρατείνεται έως και κατά 20-30%. Αυτό πρέπει να το λάβετε υπόψη σας, ώστε το έργο σας να είναι οικονομικά ασφαλές. Θα ελαχιστοποιήσετε τον κίνδυνο το έργο σας να βρίσκεται ακόμη στη φάση ανάπτυξης όταν αρχίσουν να εμφανίζονται ελλείψεις στον προϋπολογισμό. Αυτό σχετίζεται άμεσα με μια λανθασμένη εκτίμηση της διάρκειας του έργου.
-
Απροσδιόριστες απειλές και αδυναμίες. Πριν ξεκινήσετε το έργο, πιθανώς γνωρίζετε ότι η όλη διαδικασία μπορεί να μην είναι απλή. Πιθανώς θα συμφωνήσετε μαζί μου ότι κάθε έργο είναι μια πρόκληση. Έτσι, πιστεύω ότι πριν ξεκινήσετε, θα πρέπει να αναλύσετε τις πιθανές απειλές και αδυναμίες που μπορεί να επηρεάσουν το τελικό αποτέλεσμα. Είναι σημαντικό να διαχειριστείτε σωστά τις απειλές αυτές από την αρχή.
Περίληψη
Δεν θα ήθελα να υποδείξω ποια από τις απειλές που αναφέρονται παραπάνω είναι η πιο συνηθισμένη. Νομίζω ότι δεν υπάρχει κανόνας γι' αυτό - όλα εξαρτώνται από τις ιδιαιτερότητες του έργου. Ωστόσο, αν αντιμετωπίζετε την πρόκληση της επιτυχούς υλοποίησης του δικού σας έργου, λάβετε υπόψη σας όσα έχω γράψει εδώ. Νομίζω ότι η συνεκτίμηση των προβλημάτων που περιγράφω μπορεί να αποτελέσει έναν οδηγό για εσάς, υποδεικνύοντας τι δεν πρέπει να κάνετε και πώς να αντιμετωπίσετε μια απειλή. Όλα αυτά για να μην γίνετε θύμα βάναυσων στατιστικών στοιχείων αλλά, αντίθετα, να ολοκληρώσετε με επιτυχία το έργο.
Και αυτό είναι που εύχομαι για εσάς. Εάν έχετε οποιεσδήποτε ερωτήσεις σχετικά με ανάπτυξη προσαρμοσμένου λογισμικού, παρακαλώ επικοινωνήστε μαζί μου. Θα χαρώ να σας απαντήσω σε όλες.
Διαβάστε περισσότερα:
Γιατί αξίζει να υπάρχει μια ομάδα ανάπτυξης υπεύθυνη για την επιχειρηματική ανάπτυξη; Μελέτη περίπτωσης της Codest
Πώς να βρείτε την κατάλληλη αγορά για το προϊόν σας;