The practice of enterprise application development has benefited from the emergence of many new enabling technologies. Multi-tiered object-oriented platforms, such as Java and .NET, have become commonplace. These new tools and technologies are capable of building powerful applications, but they are not easily implemented. Common failures in enterprise applications often occur because their developers do not understand the architectural lessons that experienced object developers have learned.
Ο Martin Fowler είναι επιστημονικός υπεύθυνος της «ThoughtWorks», μιας εταιρείας που αναπτύσσει και παραδίδει λογισμικό σε μεγάλες επιχειρήσεις. Εφαρμόζει τις αντικειμενοστρεφείς τεχνικές στην ανάπτυξη μεγάλων επιχειρηματικών εφαρμογών εδώ και μία δεκαετία. Είναι γνωστή η ενασχόλησή του με τα μοτίβα (patterns), τη UML, την ανακαίνιση (refactoring), και τις ευέλικτες διαδικασίες ανάπτυξης.