Agile Modeling

Effective Practices for Extreme Programming and the Unified Process

John Wiley & Sons    ISBN#: 0471202827

Scott W. Ambler + Associates
    Home  |  Articles  |  Books  |  IT Surveys  |  Podcasts  |  Contact Us  |  Announcements  |  Site Map
Agile Modeling  



Agile Modeling (AM) is a chaordic, practice-based methodology for effective modeling of software-based systems. The AM methodology is a collection of practices – guided by principles and values – that are meant to be applied by software professionals on a day-to-day basis.  AM is not a prescriptive process, in other words it does not define detailed procedures for how to create a given type of model, instead it provides advice for how to be effective as a modeler.  AM is “touchy-feely” in that it is not hard and fast – think of AM as an art, not a science.

An important concept to understand about AM is that it is not a complete software process. AM’s focus is on effective modeling and documentation. That’s it. It doesn’t include programming activities, although it will tell you to prove your models with code. It doesn’t include testing activities, although it will tell you to consider testability as you model. It doesn’t cover project management, system deployment, system operations, system support, or a myriad of other issues. Because AM’s focus in on a portion of the overall software process you need to use it with another, full-fledged process such as eXtreme Programming (XP), DSDM, SCRUM, the Agile Unified Process (AUP), or the Rational Unified Process (RUP).  You start with a base process, such as XP or RUP or perhaps even your own existing process, and then tailor it with AM (hopefully adopting all of AM) as well as other techniques as appropriate to form your own process that reflects your unique needs. Alternatively, you may decide to pick the best features from a collection of existing software processes to form your own process. For XP projects, AM explicitly describes how to improve productivity through addition of modeling activities whereas with for RUP projects it describes how to streamline modeling and documentation efforts to improve productivity. 

This book is organized into five parts:


Chapter List

A portion of the material from this book has been posted at  I have provided links to relevant material below, although it is important to understand that the material posted on the site is not as robust as the material in the book.  In other words, many of the essays are only partial representations of the relevant chapters in the book.

Part 1: Introduction to Agile Modeling

Part 2: Agile Modeling in Practice


Part 3: Agile Modeling and eXtreme Programming (XP)


Part 4: Agile Modeling and the Unified Process (UP)  


Part 5: Conclusion 


Back Matter


Who Should Read This Book?

You!  Anyone who is interested in improving their productivity as a developer, or who wishes to bring effective modeling practices into their team or organization.

How to Obtain This Book

Amazon U.S.

Agile Modeling

Amazon U.K.

Agile Modeling

Amazon Canada

Agile Modeling

Amazon Japan

Agile Modeling


Agile Modeling



Related Resources

UML Order now!

Let Us Help

We actively work with clients around the world to improve their information technology (IT) practices, typically in the role of mentor/coach, team lead, or trainer.  A full description of what we do, and how to contact us, can be found at Scott W. Ambler + Associates