Πορτρέτο του Ξενοφών Απάκη
Ξενοφών Απάκης
Web designer και developer από το 1997

design system

design system

· Με δύο λόγια

Πότε χρειάζεται πλήρες design system και πότε αρκεί οδηγός εμφάνισης ή βιβλιοθήκη στοιχείων; Δες μεταβλητές, προσβασιμότητα και διαδικασία εφαρμογής..

Design system: πότε χρειάζεται, τι περιέχει και πώς το επιλέγεις

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

Τι το ξεχωρίζει από οδηγό ύφους και βιβλιοθήκη στοιχείων

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

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

Τρεις επιλογές και ένα συγκεκριμένο κριτήριο απόφασης

ΛύσηΠότε ταιριάζειΤι δεν καλύπτει επαρκώς
Οδηγός εμφάνισηςΜικρό σταθερό έργοΠολύπλοκες διαδραστικές καταστάσεις
Βιβλιοθήκη διεπαφήςΕπαναλαμβανόμενες οθόνεςΔιακυβέρνηση και επιχειρησιακές αποφάσεις
Πλήρες σύστημα σχεδίασηςΠολλά προϊόντα ή συνεργαζόμενες ομάδεςΑπαιτεί συνεχή ευθύνη συντήρησης

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

Δέντρο απόφασης για το επίπεδο οργάνωσης

  1. Έχεις μόνο λίγες στατικές σελίδες; Ξεκίνα από έναν κατανοητό οδηγό εμφάνισης.
  2. Επαναχρησιμοποιείς τα ίδια έντυπα, πεδία και κάρτες σε πολλές οθόνες; Εξέτασε βιβλιοθήκη διεπαφής.
  3. Συνεργάζονται πολλές ομάδες και αλλάζουν συνεχώς κοινά στοιχεία; Χρειάζεσαι τεκμηριωμένο σύστημα σχεδίασης με υπευθυνότητα ενημέρωσης.
  4. Δεν μπορείς να συντηρείς κανόνες; Εφάρμοσε μικρότερο σύνολο και βελτίωσέ το σταδιακά.

Τα βασικά συστατικά που αξίζει να τεκμηριωθούν

Οι σχεδιαστικές μεταβλητές, γνωστές ως design tokens, δίνουν ονόματα σε αποφάσεις όπως χρώματα ρόλων, κενά, ακτίνες γωνιών και μεγέθη κειμένου. Αντί να αντιγράφεται αυθαίρετα ένας χρωματικός κωδικός, η ομάδα χρησιμοποιεί μια έννοια όπως «κύρια ενέργεια» ή «μήνυμα σφάλματος». Το αμερικανικό δημόσιο σύστημα USWDS (Σύστημα Σχεδίασης Ιστού των ΗΠΑ, U.S. Web Design System) δείχνει πώς τέτοιες μεταβλητές συνδέονται με συστατικά και κοινές οπτικές αρχές.

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

Γιατί ο κανόνας χωρίς ευθύνη ενημέρωσης δεν διαρκεί

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

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

Προσβασιμότητα από τη βάση των στοιχείων

Η προσβασιμότητα δεν προστίθεται μόνο στη φάση τελικού ελέγχου. Ένα σύνολο στοιχείων πρέπει να υποστηρίζει χρήση με πληκτρολόγιο, ορατή εστίαση, σαφή μηνύματα και κατάλληλες σχέσεις ετικετών και πεδίων. Οι WCAG (Οδηγίες Προσβασιμότητας Περιεχομένου Ιστού, Web Content Accessibility Guidelines) δίνουν ελέγξιμα κριτήρια, μεταξύ άλλων για αντίθεση κειμένου και στοιχείων διεπαφής. Η συμμόρφωση, όμως, αξιολογείται και στο τελικό προϊόν, όχι μόνο στο απομονωμένο συστατικό.

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

Παράδειγμα εφαρμογής σε υπηρεσία κρατήσεων

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

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

Κίνδυνοι επιλογής και σημάδια υπερβολής

  • Υπερβολικός αριθμός συστατικών που κάνουν σχεδόν την ίδια δουλειά.
  • Κλειδωμένη μορφή χωρίς δυνατότητα προσαρμογής σε πραγματικό περιεχόμενο.
  • Απουσία διαδικασίας ελέγχου με πληκτρολόγιο και βοηθητικές τεχνολογίες.
  • Διαφορετικές ονομασίες στο σχέδιο και στον κώδικα χωρίς σαφή αντιστοίχιση.
  • Βιβλιοθήκη που κανείς δεν ενημερώνει όταν αλλάζει το προϊόν.

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

Συχνές αποφάσεις των ομάδων

Χρειάζονται ειδικά εργαλεία από την αρχή;

Όχι απαραίτητα. Προέχει η σαφής καταγραφή των κοινών κανόνων και η συμφωνία χρήσης. Το εργαλείο επιλέγεται αργότερα με βάση τις πραγματικές συνεργασίες.

Μπορώ να χρησιμοποιήσω έτοιμο δημόσιο σύστημα;

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

Πότε αξίζει να επενδύσω περισσότερο;

Όταν οι ίδιες αποφάσεις επαναλαμβάνονται σε πολλά προϊόντα, οι αποκλίσεις κοστίζουν και υπάρχει ομάδα που μπορεί να συντηρεί το αποτέλεσμα.

Πώς μετρώ αν λειτουργεί;

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

Εισαγωγή χωρίς να διακοπεί η υφιστάμενη εργασία

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

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

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