Υπηρεσιοστρεφης αρχιτεκτονικη
Υπηρεσιοστρεφής Αρχιτεκτονική Η υπηρεσιοστρεφής αρχιτεκτονική (Service-oriented architecture, SOA) είναι η σχεδίαση λογισμικού με την χρήση μονάδων, οι οποίες είναι διακριτά τμήματα λογισμικού και έχουν ως σκοπό την εκτέλεση λειτουργιών, αφού πρώτα χρησιμοποιήσουν διεπαφές προγραμματισμού εφαρμογών (application programming interfaces, API). Συγκεκριμένα, οι διεπαφές προγραμματισμού εφαρμογών είναι στην πραγματικότητα μικρό-υπηρεσίες, οι οποίες εκτελούν λειτουργίες που τους έχουν ανατεθεί. Επιπλέον, το ενδιάμεσο λογισμικό (middleware) αναλαμβάνει τον ρόλο του διαμεσολαβητή μεταξύ λειτουργικού συστήματος και εφαρμογής κάνοντας ευκολότερη την ανταλλαγή πληροφοριών. Επίσης, το ενδιάμεσο λογισμικό αποτελεί αφετηρία για την δημιουργία της υπηρεσιοστρεφούς αρχιτεκτονικής. Η αρχιτεκτονική ασχολείται με τον τρόπο με τον οποίο τα διακριτά τμήματα λογισμικού συνδέονται μεταξύ τους καθώς και τα συστήματα ή τα υποσυστήματα που αυτά δημιουργούν. Έτσι η τμηματικότητα ενισχύει την ευκολία εξέτασης και εκτέλεσης της εργασίας που κάθε μονάδα οφείλει να υλοποιήσει. Κατά συνέπεια,, με την σύνδεση όλων αυτών των μικρό-υπηρεσιών μπορεί να επιτευχθεί μια εξαιρετικά λειτουργική εφαρμογή. Ωστόσο, η ίδια μικρό-υπηρεσία δύναται να χρησιμοποιηθεί όσες φορές και σε όποια εφαρμογή κριθεί αυτό απαραίτητο. Πολλές εταιρίες και υπηρεσίες βασίζουν τις εφαρμογές τους σε αυτή τη μέθοδο. Αυτό έχει ως αποτέλεσμα ο χρόνος και ο κόπος σχεδίασης του λογισμικού να συρρικνώνεται σημαντικά ενώ η λειτουργικότητα να βελτιώνεται.