Εισαγωγή
Στη μοντέρνα εποχή, το λογισμικό συνήθως παρέχεται ως υπηρεσία: καλούμενο εφαρμογές ιστού (web apps), ή λογισμικό-ως-υπηρεσία (software-as-a-service). Η εφαρμογή δώδεκα παραγόντων είναι μια μεθοδολογία κατασκευής εφαρμογών λογισμικού-ως-υπηρεσίας όπου:
- Χρησιμοποιεί δηλωτικές μορφές (declarative formats) για να στήσει τον αυτοματισμό, να ελαχιστοποιήσει το χρόνο και το κόστος για νέους προγραμματιστές να συμμετέχουν στο έργο,
- Έχει ένα καθαρό συμβόλαιο (clean contract) με το υποκείμενο λειτουργικό σύστημα, προσφέροντας μέγιστη φορητότητα (maximum portability) μεταξύ περιβαλλόντων εκτέλεσης,
- Είναι κατάλληλη για ανάπτυξη (deployment) σε μοντέρνες πλατφόρμες υπολογιστικού νέφους (cloud platforms), καθιστώντας περιττή την ανάγκη για εξυπηρετητές και διαχείριση συστημάτων,
- Ελαχιστοποιεί την απόκλιση μεταξύ υλοποίησης (development) και παραγωγής (production), διευκολύνοντας την συνεχή ανάπτυξη (continuous deployment) για μέγιστη ευκινησία (maximum agility),
- Και μπορεί να κλιμακωθεί προς τα πάνω (scale up) χωρίς σημαντικές αλλαγές στα εργαλεία, στην αρχιτεκτονική, ή στις πρακτικές υλοποίησης.
Η μεθοδολογία δώδεκα παραγόντων μπορεί να εφαρμοστεί σε εφαρμογές οι οποίες είναι γραμμένες σε οποιαδήποτε γλώσσα προγραμματισμού, και οι οποίες χρησιμοποιούν οποιοδήποτε συνδυασμό από υπηρεσίες υποστήριξης (βάση δεδομένων, ουρά εργασιών, προσωρινή μνήμη, κλπ).