Martin Fowler est un auteur, conférencier, informaticien et consultant britannique dans la conception de logiciels d'entreprise. Ses centres d'intérêt principaux sont l'architecture informatique, la programmation orientée objet, la refactorisation (refactoring), les patrons de conception, UML et les méthodes de programmation agile où il est un pionnier et une référence. À ses débuts, il utilisait les langages smalltalk et C++ mais utilise aujourd'hui Java, C# et Ruby.