Agile Modeling: A Brief Overview
Scott W. Ambler · 2001
Abstract: Agile Modeling (AM) is a practice-based methodology for effective modeling of software-based systems. Where the Unified Modeling Language (UML) defines a subset of the modeling techniques that software professionals re-quire, AM defines practices that enables developers to model in an efficient and ef-fective manner. This paper provides a brief overview of AM’s values, principles, and practices; defined what agile models are; and summarizes the scope of AM. Agile Modeling (AM) [Am01b; Am02] is a 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. 1 Why AM? Why do we want to be effective at modeling? Because modeling is an important part of any software process. Agile software processes such as eXtreme Programming (XP)