Προσαρμοσμένο λογισμικό
Πόσος χρόνος χρειάζεται για τη δημιουργία προσαρμοσμένου λογισμικού; Ρεαλιστικό χρονοδιάγραμμα
Vincent Wahidi
Τα περισσότερα προσαρμοσμένα λογισμικά προσγειώνονται κάπου μεταξύ έξι εβδομάδων και δώδεκα μηνών και η εξάπλωση αφορά σχεδόν αποκλειστικά το εύρος. Ένα μικρό εσωτερικό εργαλείο που κάνει μια δουλειά καλά μπορεί να είναι σε πραγματική χρήση μέσα σε έξι έως δέκα εβδομάδες. Μια εστιασμένη πλατφόρμα με πολλά συνδεδεμένα χαρακτηριστικά, λογαριασμούς και καθαρή πλευρά διαχειριστή συνήθως εκτελείται από τρεις έως έξι μήνες. Οτιδήποτε πρέπει να συνδεθεί σε παλαιού τύπου συστήματα, να συγχρονίσει δεδομένα με δύο τρόπους ή να περάσει έλεγχο συμμόρφωσης τείνει να εκτείνεται σε έξι έως δώδεκα μήνες ή περισσότερο. Αυτά τα εύρη προϋποθέτουν ένα σαφές πρόβλημα, έναν υπεύθυνο λήψης αποφάσεων που είναι διαθέσιμος και μια ομάδα παράδοσης. Η ίδια η κατασκευή είναι σπάνια το αργό μέρος. Αυτό που διευρύνει ένα χρονοδιάγραμμα είναι οι ασαφείς απαιτήσεις, η αργή ανατροφοδότηση, οι ενσωματώσεις που δεν ελέγχετε και οι κύκλοι αναθεώρησης που βρίσκονται εκτός της ομάδας σας. Αν θέλετε πιο γρήγορο αποτέλεσμα, περιορίστε την πρώτη κυκλοφορία αντί να προσθέσετε άτομα.
Πόσος χρόνος χρειάζεται για τη δημιουργία προσαρμοσμένου λογισμικού ανά εύρος;
Η ειλικρινής απάντηση εξαρτάται από το τι χτίζετε, επομένως βοηθάει να σκέφτεστε σε τρεις ζώνες αντί για έναν μόνο αριθμό.
| Πεδίο εφαρμογής | Τυπικό χρονοδιάγραμμα | Πώς φαίνεται |
|---|---|---|
| Μικρό εργαλείο | 6 έως 10 εβδομάδες | Μία ροή εργασίας, ένας ή δύο τύποι χρηστών, μικρή ή καθόλου ενσωμάτωση. Μια αριθμομηχανή, ένας εσωτερικός πίνακας εργαλείων, μια φόρμα που αντικαθιστά ένα υπολογιστικό φύλλο. |
| Πλατφόρμα | 3 έως 6 μήνες | Αρκετές λειτουργίες που συνεργάζονται, λογαριασμοί και δικαιώματα, μια πλευρά διαχειριστή, μια πραγματική βάση δεδομένων πίσω από αυτό. |
| Ένταξη-βαριά | 6 έως 12 μήνες ή περισσότερο | Συνδέεται με συστήματα που δεν κατέχετε, αμφίδρομος συγχρονισμός δεδομένων, παλαιού τύπου ή ελεγχόμενα περιβάλλοντα, ασφάλεια και έλεγχος συμμόρφωσης. |
Αυτά είναι σειρές, όχι υποσχέσεις. Ένα μικρό εργαλείο με αυστηρή απαίτηση συμμόρφωσης μπορεί να συμπεριφέρεται σαν πλατφόρμα. Μια πλατφόρμα με μια καλά κατανοητή ενοποίηση μπορεί να αποσταλεί κοντά στο κάτω άκρο. Η μπάντα σας λέει την τάξη μεγέθους. Οι παρακάτω οδηγοί σας λένε πού θα προσγειωθείτε μέσα στο συγκρότημα.
Ποιες είναι οι φάσεις ενός προσαρμοσμένου έργου λογισμικού;
Ένα ρεαλιστικό χρονοδιάγραμμα είναι το άθροισμα των φάσεων του, όχι μόνο ο χρόνος που αφιερώνεται στην κωδικοποίηση. Τα περισσότερα έργα προχωρούν σε πέντε.
- Ανακάλυψη και εύρος. Συμφωνείτε τι κάνει η πρώτη κυκλοφορία και, εξίσου σημαντικό, τι όχι. Μια ή δύο εβδομάδες για ένα μικρό εργαλείο, περισσότερο για οτιδήποτε διφορούμενο. Ο χρόνος που δαπανήθηκε εδώ ανακτάται αρκετές φορές αργότερα.
- Σχεδίαση. Οι οθόνες, το μοντέλο δεδομένων και οι βασικές αποφάσεις που είναι ακριβό να αλλάξουν μόλις κατασκευαστούν. Αυτό συχνά εκτελείται παράλληλα με την έναρξη της κατασκευής.
- Build. Η φάση που οι άνθρωποι φαντάζονται όταν φαντάζονται ολόκληρο το έργο. Στην πράξη είναι συνήθως το πιο προβλέψιμο μέρος, γιατί τα άγνωστα τακτοποιήθηκαν νωρίτερα.
- Δοκιμή και σκλήρυνση. Κάνοντας το σωστό, όχι απλώς να λειτουργεί. Edge case, ασφάλεια, απόδοση και πράγματα που εμφανίζονται μόνο με πραγματικά δεδομένα.
- Εκκίνηση και παράδοση. Βάλτε το στην παραγωγή και βεβαιωθείτε ότι η πλευρά σας κατανοεί πώς να το τρέξει και να το αλλάξει.
Η εργασία με λίγα λόγια, ορατές αυξήσεις έχει μεγαλύτερη σημασία από τις ετικέτες. Εάν μπορείτε να δείτε κάτι αληθινό κάθε δύο εβδομάδες, το χρονοδιάγραμμα παραμένει ειλικρινές και οι εκπλήξεις εμφανίζονται ενώ είναι ακόμα φθηνό να διορθωθούν.
Τι επεκτείνει ένα προσαρμοσμένο χρονοδιάγραμμα λογισμικού;
Πέντε πράγματα μετακινούν ένα έργο από το κάτω μέρος του εύρους του στην κορυφή και μόνο ένα από αυτά είναι ο κώδικας.
- Ασαφείς απαιτήσεις. Εάν η ομάδα εξακολουθεί να ανακαλύπτει τι πρέπει να κάνει το λογισμικό κατά τη διάρκεια της κατασκευής, η έκδοση δεν μπορεί να ολοκληρωθεί. Αυτός είναι ο πιο συνηθισμένος λόγος που τα έργα διαρκούν πολύ.
- Αργή ανατροφοδότηση. Ένα έργο κινείται με την ταχύτητα των αποφάσεών του. Εάν μια ερώτηση περιμένει μια εβδομάδα για απάντηση, το ημερολόγιο απορροφά αυτήν την εβδομάδα, παρόλο που κανείς δεν δούλευε αργά.
- Ενσωματώσεις που δεν ελέγχετε. Ένα σύστημα τρίτου μέρους με λεπτή τεκμηρίωση, όρια τιμών ή δική του διαδικασία έγκρισης προσθέτει χρόνο που δεν μπορείτε να σχεδιάσετε πλήρως, επειδή ο περιορισμός βρίσκεται εκτός της ομάδας σας.
- Συμμόρφωση και έλεγχος. Η υπογραφή ασφαλείας, οι απαιτήσεις προστασίας δεδομένων και οι έλεγχοι είναι πραγματική δουλειά με το δικό τους πρόγραμμα. Σχεδιάστε για αυτούς στην αρχή, όχι την εβδομάδα πριν από την κυκλοφορία.
- Πεδίο εφαρμογής που συνεχώς μεγαλώνει. Κάθε "όσο είμαστε σε αυτό" είναι λογικό από μόνο του. Μαζί είναι πώς ένα τρίμηνο έργο γίνεται αθόρυβα εννεάμηνο.
Σημειώστε ότι η προσθήκη περισσότερων προγραμματιστών σπάνια διορθώνει κάποιο από αυτά. Ένα πιο ξεκάθαρο πεδίο εφαρμογής, πιο γρήγορες αποφάσεις και μια μικρότερη πρώτη κυκλοφορία θα μεταφέρει μια ημερομηνία νωρίτερα από μια μεγαλύτερη ομάδα.
Μπορείτε να δημιουργήσετε προσαρμοσμένο λογισμικό πιο γρήγορα;
Ναι, αλλά ο μοχλός είναι η εμβέλεια, όχι η ταχύτητα. Ο πιο γρήγορος δρόμος προς την αξία είναι να στείλετε τη μικρότερη έκδοση που λύνει το πραγματικό πρόβλημα, να την τοποθετήσετε μπροστά στους χρήστες και να αναπτυχθείτε από εκεί. Μια περιορισμένη πρώτη κυκλοφορία φτάνει στην παραγωγή σε εβδομάδες αντί για μήνες, αρχίζει να κερδίζει αμέσως τη φυλή της και σας διδάσκει τι να φτιάξετε στη συνέχεια από πραγματική χρήση και όχι από εικασίες.
Αυτό είναι επίσης όπου η απόφαση κατασκευής έναντι αγοράς διαμορφώνει το ημερολόγιο. Εάν ένα εργαλείο εκτός ραφιού καλύπτει το μεγαλύτερο μέρος της ανάγκης, η προσαρμοσμένη εργασία στο κενό είναι πολύ πιο γρήγορη από την κατασκευή των πάντων. Ο οδηγός μας για κατασκευή έναντι αγοράς λογισμικού περιγράφει πλήρως αυτό το εμπόριο. Και επειδή το χρονοδιάγραμμα και ο προϋπολογισμός κινούνται μαζί, αξίζει να διαβάσετε παράλληλα με το τι κοστίζει πραγματικά το προσαρμοσμένο λογισμικό, καθώς ένα μεγαλύτερο χρονοδιάγραμμα σπάνια είναι απλώς μεγαλύτερος λογαριασμός. Συνήθως είναι ένα σημάδι ότι το πεδίο εφαρμογής δεν διευθετήθηκε ποτέ. Αν θέλετε μια ειλικρινή εκτίμηση για το δικό σας χρονοδιάγραμμα πριν δεσμευτείτε σε ένα, η εργασία μας στο προσαρμοσμένο λογισμικό ξεκινά ακριβώς με αυτή την οριοθέτηση.
Το πρακτικό takeaway
Όταν ένας συνεργάτης σας παραθέτει ένα χρονοδιάγραμμα, ρωτήστε τι προϋποθέτει. Μια καλή απάντηση ονομάζει το εύρος της πρώτης κυκλοφορίας, ποιος πρέπει να λαμβάνει αποφάσεις και πόσο γρήγορα, και ποιες ενσωματώσεις βρίσκονται εκτός του ελέγχου τους. Ένα χρονοδιάγραμμα με αυτές τις υποθέσεις γραμμένες είναι ένα σχέδιο στο οποίο μπορείτε να κρατήσετε κάποιον. Ένας μόνο σίγουρος αριθμός χωρίς τίποτα πίσω του είναι μια εικασία που φοράει κοστούμι.

Vincent Wahidi
Συντάκτης
Vincent Wahidi is the director of Encelyte, a computer engineer who builds production AI, automation, and custom software for enterprises across Cyprus and the wider region. He writes the strategy, cost and decision-maker pieces himself; the practical how-to guides are curated under the five mission-cat bylines below.
Διαβάστε στη συνέχεια
Build vs buy: ένα πλαίσιο απόφασης για off-the-shelf έναντι προσαρμοσμένου λογισμικού
Έχετε ένα πρόβλημα που αξίζει να λυθεί;
Πείτε μας τι δημιουργείτε ή τι διορθώνετε. Θα απαντήσουμε εντός μίας εργάσιμης ημέρας με ένα σαφές επόμενο βήμα.
