Insieme a Kent Beck è stato uno dei padri dell'extreme programming[2] e dello sviluppo agile del software. È membro della Agile Alliance ed è uno degli autori del Manifesto Agile. Fra le sue opere più influenti si possono citare UML Distilled sul linguaggio UML e Refactoring: Improving the Design of Existing Code che ha introdotto il concetto di refactoring, oggi fra i cardini delle metodologie di sviluppo agili e test driven.[3] Ha introdotto il concetto di dependency injection, largamente usato nella pratica dello sviluppo di test automatici[4].
Pubblicazioni
M. Fowler, 1996. Analysis Patterns: Reusable Object Models. Addison-Wesley. ISBN 0-201-89542-0.
M. Fowler, 1997. UML Distilled: A Brief Guide to the Standard Object Modeling Language.
Kent Beck, John Brant, M. Fowler, William Opdyke e Don Roberts, 1999. Refactoring: Improving the Design of Existing Code. Addison-Wesley. ISBN 0-201-48567-2.
Kent Beck e M. Fowler, 2000. Planning Extreme Programming. Addison-Wesley. ISBN 0-201-71091-9.
Matthew Foemmel, M. Fowler, David Rice, Edward Hieatt, Robert Mee e Randy Stafford, 2002. Patterns of Enterprise Application Architecture. Addison-Wesley. ISBN 0-321-12742-0.
M. Fowler e Rebecca Parsons, 2010. Domain-Specific Languages. Addison-Wesley. ISBN 978-0-321-71294-3.
M. Fowler e Pramod Sadalage, 2012. NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence. Addison-Wesley. ISBN 978-0-321-82662-6.
Kent Beck, Jay Fields, M- Fowler e Shane Harvie, 2013. Refactoring: Ruby Edition. Addison-Wesley. ISBN 978-0-321-98413-5.