Αρχιτεκτονική Επαναφορά και Σχεδιασμός Επαναφωτισμός Πώς να Πουλήστε τον Πελάτη - Alex και Vira

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

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

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

  • Προσδιορίστε την αρχική αιτία της αρχιτεκτονικής για έκδοση
  • Προσδιορίστε τις αλλαγές που πρέπει να γίνουν
  • Επιχειρηματική αιτιολόγηση
  • Αρχιτεκτονικό σχέδιο αρχιτεκτονικής υψηλού επιπέδου
  • Δημιουργήστε μια γραμμή χρόνου
  • Παρουσιάστε την περίπτωσή σας

Προσδιορίστε την αρχική αιτία της αρχιτεκτονικής για το refactoring

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

Η δημιουργία εφαρμογών αποτυγχάνει όταν κάποιος πραγματοποιεί αλλαγές.

Υπάρχουν δύο λόγοι για τους οποίους μπορεί να είναι:

  • Τα εξαρτήματα εφαρμογής είναι πολύ συζευγμένα και εξαρτώμενα το ένα από το άλλο
  • Τα συστατικά μέρη της εφαρμογής δεν έχουν το σωστό επίπεδο κοκκοποίησης και απομόνωσης
  • Έλλειψη δοκιμής μονάδας
  • Έλλειψη διαδικασιών SDLC και αγωγών CI / CD

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

Η αιτία μπορεί να είναι:

  • Είναι μια μονολιθική εφαρμογή και μεγαλώνει γρήγορα. Είναι πολύ μεγάλο για μια ενιαία εφαρμογή
  • Η εφαρμογή είναι πολύ μεγάλη και καταναλώνει όλη την CPU και τη μνήμη
  • Η εφαρμογή είναι σύνθετη και γράφει έναν αναποτελεσματικό τρόπο

Προσδιορίστε τι θα πρέπει να γίνει το refactoring

Το δεύτερο βήμα είναι λίγο πιο περίπλοκο, αλλά δεν πρέπει να είναι δύσκολο για τους προγραμματιστές που ξεκινούν από ανώτερα επίπεδα και υψηλότερα. Όλοι είμαστε καλοί τεχνικοί ειδικοί και γνωρίζουμε τι πρέπει να γίνει. Αυτή τη στιγμή κάνουμε το συνηθισμένο λάθος και τρέχουμε με αυτή την πρόταση στον πελάτη και μιλάμε στον πελάτη για να το κάνουμε.

Αλλά είμαστε έξυπνοι αρχιτέκτονες και θα ακολουθήσουμε 6 βήματα ένα προς ένα.

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

Επιχειρηματική αιτιολόγηση

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

Η τεχνική αιτιολόγηση μας φαίνεται προφανής. Διαχωρίζοντας την μονολιθική εφαρμογή σε μικρότερες υπηρεσίες, θα μπορούσε να είναι:

  • Τα εξαρτήματα αποσυνδέονται περισσότερο
  • Ζητήματα με την κατασκευή δεν είναι τόσο συχνά
  • Κάθε μικρή υπηρεσία καταναλώνει λιγότερη μνήμη και έχει καλύτερη απόδοση
  • Οι ξεχωριστές υπηρεσίες θα μπορούσαν να αναπτυχθούν ταχύτερα και ανεξάρτητα

Επιχειρηματική αιτιολόγηση - αυτό το βήμα είναι πολύ σημαντικό και συχνά παραλείπεται από τεχνικούς. Πρέπει να θυμάστε τι είναι σημαντικό για την επιχείρηση και την οδήγηση μιας επιχείρησης. Σωστό - είναι χρήματα!

Μεγάλη ιστορία σύντομη, αν ο σχεδιασμός refactoring σας δεν δίνει αξία για τις επιχειρήσεις, δεν έχει νόημα να το κάνετε.

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

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

Αρχιτεκτονικό σχέδιο αρχιτεκτονικής υψηλού επιπέδου

Ένα σχέδιο refactoring θα πρέπει να παρέχει καθαρή όραση και λεπτομερή ανάλυση. Κάθε επανάληψη θα πρέπει να δείχνει αλλαγές αρχιτεκτονικής και σχεδίασης.

Προετοιμάζοντας το σχέδιο refactoring θα πρέπει να απαντήσετε στην επόμενη ερώτηση:

  • Ποιος είναι ο σκοπός αυτής της επανάληψης;
  • Ποια είναι η τεχνική και επιχειρηματική αξία αυτής της επανάληψης;
  • Πώς να ελαχιστοποιήσετε τη διάρκεια επανάληψης;

Δημιουργήστε μια χρονολογική σειρά για την αρχιτεκτονική refactoring

Πολύ σημαντικό βήμα - επενδύστε χρόνο για αυτή την άσκηση. Κάθε μάνατζερ και πρόσωπο από τον κόσμο των επιχειρήσεων τι πρέπει να γνωρίζει απαντήσεις σε δύο ερωτήσεις:

Προσπαθήστε να χωρίσετε μικρές επαναλήψεις αρχιτεκτονικής refactoring. Κάθε επανάληψη θα πρέπει να φέρει ορισμένες τεχνικές και επιχειρηματικές αξίες. Είναι δύσκολο να πουλήσετε refactoring με διάρκεια δύο ετών και εκατομμύρια δολάρια χωρίς ενδιάμεσα αποτελέσματα.

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

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

Παρουσιάστε την περίπτωσή σας

Πριν πάτε στην επιχείρηση, παρουσιάστε και επικυρώστε την ιδέα με τον άμεσο διαχειριστή σας πρώτα. Η επικύρωση από τρίτους είναι πάντοτε καλή, ειδικά εάν πρόκειται για επιχειρηματικό πρόσωπο. Πιθανώς ο διευθυντής σας γνωρίζει κάποιο επιχειρηματικό πλαίσιο που σας βοηθά να προσαρμόσετε τα σχέδια refactoring για την επιχείρηση.

Πρέπει να ξέρετε πώς να απαντήσετε στην κλασική ερώτηση.

Συνήθως, όταν παρουσιάζετε refactoring αρχιτεκτονικής στην επιχείρηση, μπορεί να σας ζητηθεί. Γιατί χρειαζόμαστε refactoring; Πέρασα πριν από ένα χρόνο πολλά χρήματα για την αρχιτεκτονική και το σχεδιασμό και τώρα έχουμε προβλήματα.

Η κλασική ερώτηση έχει μια κλασική απάντηση. Αυτή η λύση ήταν αρκετά καλή πριν από 1 έτος, αλλά η επιχείρησή σας αυξάνεται, ο αριθμός χρηστών και οι αιτήσεις αυξάνονται. Η αρχιτεκτονική πρέπει να προσαρμοστεί με την αλλαγή των επιχειρήσεων.

Επόμενη συμβουλή. Μην κάνετε τους ανθρώπους να πανικοβληθούν - να το παρουσιάσετε αυτό με επείγοντα χαρακτήρα όχι με πανικό. Απλά παραδώστε τις πληροφορίες που έχουμε για 3-6 μήνες για refactoring, αλλά πρέπει να ξεκινήσετε ASAP.

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

Περίληψη

  • Ο επαναληπτικός έλεγχος είναι δαπανηρός. Είναι δύσκολο να πωληθεί η επιχείρηση
  • Αρχιτεκτονική refactoring όχι μόνο τεχνική εργασία είναι επίσης για την πώληση της ιδέας σας
  • Θυμηθείτε σχετικά με την επιχειρηματική αξία και την αιτιολόγηση
  • Οι Easies πωλούν μικρές refactoring συχνά από ό, τι μεγάλη μεγάλη φορά

Περισσότερα άρθρα και συμβουλές σχετικά με τις δεξιότητες μαλακής και σκληρής αρχιτεκτονικής.

Ευτυχισμένος επαναπροσδιορισμός!

Δημοσιεύθηκε αρχικά στη διεύθυνση http://alexandvira.com στις 15 Μαρτίου 2020.