Agile Modeling (AM) is a practices-based software process whose scope is to describe how to model and document in an effective and agile manner. The practices of AM should be used, ideally in whole, to enhance other, more complete software process such as eXtreme Programming (XP) (Beck, 2000), the Microsoft Solutions Framework (MSF) (Microsoft Corporation, 2001), the Rational Unified Process (RUP) (Rational Corporation, 2001), and the Enterprise Unified Process (EUP) (Ambler & Constantine, 2002) to name a few. These processes cover a wider scope than AM, in the first three cases the development process and in the fourth the full software process including both development and production. Although these processes all include modeling and documentation activities, in one form or the other, there is definitely room for improvement. In the case of XP and MSF the modeling processes should be better defined, and in the case of both the RUP and the EUP the modeling processes could definitely stand to be made more agile.
敏捷建模(Agile Modeling，AM)是一种基于实践的软件过程，它的范围包括描述如何建模以及以一种高效而敏捷的方式编写文档。理想情况下，AM的实践应该用来促进其它更完整的软件过程，比如极限编程(XP)(Beck, 2000)、微软解决方案框架(MSF)(Microsoft Corporation, 2001)、Rational统一过程(RUP) (Rational Corporation, 2001)和企业统一过程(EUP) (Ambler & Constantine, 2002)。这些过程比AM的范围更广，在前三个开发过程和第四个的全部软件过程中都包含了开发和生产。尽管这些过程都以不同的方式包含建模和文档活动，但都留有可以改进的明确余地。在XP和MSP中，建模过程应该定义得更好，而在RUP和EUP中，建模过程可以定义得更加敏捷一些。
In this chapter I explore in detail how AM can be used in conjunction with the various instantiations of the Unified Process (UP), including but not limited to the RUP and the EUP. To do so, I discuss
· How modeling works in the Unified Process
· How good is the fit between AM and UP?
· Case study
· Adopting AM on an UP project
· How does this work?
· References and Suggested Reading
How Modeling Works in the Unified Process
All efforts, including modeling, is organized into disciplines (formerly called workflows) in the UP and is performed in an iterative and incremental manner. The lifecycle of the EUP is presented in Figure 1, a superset of the current lifecycle for the RUP. I like to say that the UP is serial in the large and iterative in the small. The five phases of the EUP clearly oclearcase/" target="_blank" >ccur in a serial manner over time, at the beginning of an UP project your focus is on project initiation activities during the Inception phase, once your initial scope is understood your major focus becomes requirements analysis and architecture evolution during the Elaboration phase, then your focus shifts to building your system during the Construction phase, then you deliver your software during the Transition phase, and finally you operate and support your software in the Production phase. However, on a day-to-day basis you are working in an iterative manner, perhaps doing some modeling, some implementation, some testing, and some management activities.
In the RUP there are three disciplines that encompass modeling activities for a single project--Business Modeling, Requirements, and Analysis & Design--and the EUP adds a fourth discipline, Enterprise Management, that includes enterprise-wide requirements and architecture modeling activities. All four disciplines are described in Table 1. For a description of potential artifacts to create during these disciplines read the modeling artifacts essay or read the white paper The Object Primer -- An Introduction to Techniques for Agile Modeling.
在RUP中，有三个律条约束着单个项目的建模活动,它们是业务建模、需求、分析与设计。而EUP又增加了第四个——企业管理，它包含企业级需求和架构建模活动。图1中描述了所有这四个律条。想了解在这些律条中如何创建潜在工件，可以参考《modeling artifacts essay》或白皮书《The Object Primer -- An Introduction to Techniques for Agile Modeling》。
Figure 1. The lifecycle for the Enterprise Unified Process (EUP).
Table 1. The Modeling Disciplines of the Unified Process.