A Practical Guide to Enterprise Architecture
So how do you enhance the RUP so that it meets the real-world needs of typical organizations? The place to start is to expand the scope of the RUP to include the entire software process, not just the development process. Your organization likely has several software projects that it's currently managing. You likely have some systems that you are currently operating and supporting in production. The actual focus of most organizations isn't on the development of a single project but on the development, operation, support, and maintenance of a collection of systems. This implies that processes for operations, support, and maintenance efforts need to be added to the RUP. Second, to be sufficient for today's organizations, the RUP also needs to add support for the management of a portfolio of projects, something other processes have called program management, multi project management, infrastructure management, or enterprise management. These first two steps result in an enhanced version of the RUP life cycle first described by Scott Ambler and Larry Constantine (2000a; 2000b; 2000c; 2002) and later evolved into what is depicted in Figure 6-1. Figure 6-1. The life cycle of the Enterprise Unified Process (EUP).
The EUP extends the RUP, as depicted in Figure 6-2. Each project team will follow a tailored version of the RUP called a development case, which is a deliverable that meets the unique needs of your environment discipline efforts. Alternatively, you could use another software development process in place of the RUP, such as eXtreme Programming (XP) (Beck 2000) or Feature- Driven Development (FDD) (Palmer and Felsing 2002). What is important is that the team has a software process to follow that reflects its situation. Figure 6-2 makes it clear that the EUP makes four major additions to the RUP life cycle:
Figure 6-2. The EUP additions to the RUP life cycle.
|