As business change accelerates at an unprecedented pace, globalization, coupled with a hyper-competitive business climate in industrialized nations, has intensified the dependency between business success and information technology. Companies and institutions typically look to their IT organizations to deliver solutions more quickly and efficiently to customers and stakeholders. Yet most IT organizations continue to deploy software development methods and approaches suitable for smaller, specialized IT solutions, perhaps prefaced by a few business analysis activities.
IT organizations often have a multitude of technologies and software development methods available from software vendors, service providers, or internal sources. However, they seldom unite these resources effectively to pursue concurrent IT and business changes. For example, a large, traditional enterprise may think that creating an online ordering system is critical to satisfying customer demands for a constantly evolving product line and sustaining competitive market advantage. But establishing a blueprint for both business change and system development requires a single, overarching methodology -- not several. And, unfortunately, most IT organizations have neither the time nor the expertise to integrate multiple methodology frameworks.
To help these organizations, CSC (Computer Sciences Corporation) teamed up with IBM Rational to combine their two well-known process frameworks into a single methodology called "C-RUP." C-RUP is based on CSC Catalyst and IBM Rational Unified Process,Â® both of which are well-suited for integration projects. Both are mature, field tested, and self-contained methodologies. Each addresses particular aspects of large-scale projects encompassing both business change and IT development. And both have the flexibility, modifiability, and agility to accommodate the inevitable additions and changes that result from evolving business and IT requirements.
In this article, we will outline the purpose and architecture of C-RUP, describe the collaborative effort that produced this hybrid methodology, and provide a roadmap for others who might want to pursue a similar path.
Structural similarities, complementary content
Both CSC Catalyst and RUP are based on well-defined foundational principles, industry best practices, and the extensive experience of their respective consulting organizations. Both are engineered and continually enhanced by harvesting best practices from field experts and artifacts, and then fusing these with industry knowledge.
The CSC Catalyst and RUP frameworks have a natural synergy because of their structural similarities and complementary content. Their similar foundational object-model structures -- encompassing lifecycle phases, artifacts (work products), processes, and roles -- enables them to be joined together. However, the scope, perspective, and content of the two methodologies are different. Catalyst takes a broad, high-level view of business change that ultimately drives the system solution; it provides a holistic framework for the change initiative. In contrast, RUP focuses mainly on the immediate business context for the solution to be developed.
CSC's corporate methodology team and IBM Rational collaborated to build and deploy a methodology framework that unified these two approaches, within an accelerated timeframe. Before we describe the principles and processes that guided this effort, let's take a brief look at each of the methodologies.
Overview of CSC Catalyst
CSC Catalyst is a global methodology for delivering business and IT services and solutions. It provides the common framework, language, and processes through which CSC practitioners in various disciplines, industries, and geographies help clients realize business change via integrated solutions and services. Originally, the methodology focused on system integration projects within the systems development lifecycle; then it evolved to address business process reengineering and larger scale, business-driven initiatives. The CSC Catalyst lifecycle provided processes in all domains involved in business change: process, organization, location, data, application, and technology.
Over time, however, CSC Catalyst began to incorporate best practices gleaned from CSC divisions serving clients in large government sectors: civil, defense, and aerospace. This brought enterprise architecture, solution engineering, and program-level governance capabilities to CSC Catalyst. At the same time, the increasingly global nature of CSC clients and the trend toward outsourcing of business, application, and technology services generated greater capability for process repeatability, standardization, and integration -- in both industry clients' operating environments and CSC's own delivery capability. With its integration into CSC's global knowledge environment, CSC Catalyst became the unifying, global language for delivering both client and internal initiatives.
The scope of the CSC Catalyst methodology encompasses both lifecycle and management concerns, as illustrated in Figure 1.
Figure 1: Scope of CSC Catalyst.
CSC Catalyst 1 reflects and guides how CSC professionals deliver services and solutions. They combine processes within the lifecycle framework to form client engagement initiatives, as depicted in Figure 2.
Figure 2: CSC Catalyst-based initiatives
Overview of RUP
IBM Rational Unified Process, or RUP, is a Web-enabled software engineering process that enhances team productivity and delivers software best practices to all team members. These best practices have been culled from over twenty years of collaboration between IBM Rational and its customers, and they represent a mature approach to software engineering:
- Develop software iteratively
- Manage requirements
- Use component-based architectures
- Model visually
- Continuously verify software quality
- Manage changes to software
Organized into a series of four project phases -- Inception, Elaboration, Construction, and Transition -- RUP 2 guides project teams through an iterative approach to software development. Based on the six best practices listed above, the iterative approach allows development teams to add functionality to working software in increments. They tackle the most difficult, high-risk aspects of the project first, and trace essential system requirements through each iteration of the software. The four RUP phases and their associated workflows are illustrated in Figure 3.
Figure 3: RUP phases, with associated workflows and example iterations
C-RUP: Integrating two methodologies into one
C-RUP, a framework for integrating CSC Catalyst and RUP, is available to CSC practitioners via a CSC Catalyst Plug-In to the RUP environment, with hyperlinks to CSC Catalyst's Toolkit environment. Conceptually, C-RUP extends RUP's object-oriented custom development capabilities into a larger business process framework, through which CSC professionals drive service and solution engagements.
Although CSC Catalyst includes a variety of paths for process enablement and development, Rational Unified Process upgrades Catalyst's object-oriented development space with its industry-recognized best practices. Furthermore, IBM Rational products are popular in many of CSC's largest accounts, which use CSC Catalyst as their overarching, business change methodology. In the past, CSC engagement teams often looked for ways to bring Catalyst and RUP together on a project level, but they could never justify the considerable engineering effort required.
Now, with the collaboration of IBM Rational, CSC has brought these technologies together in C-RUP. With C-RUP, RUP can integrate smoothly as a development path within the CSC Catalyst framework. Starting with CSC Catalyst's Architecture phase, as shown in Figure 4, RUP is positioned as a development path for OO custom application development; it includes "touch points" to various CSC Catalyst lifecycle specialty area processes (e.g., Organizational Change) and management area processes (e.g., Project Management).
Figure 4: C-RUP incorporates RUP as a development path within CSC Catalyst, including methodology process interfaces
However, integrating methodologies for successful field use is not as simple as putting some experts in a room for a few months and telling them to combine a prevailing base methodology with RUP software. In fact, combining these two methodologies effectively required a well-planned, disciplined, and coordinated series of workstreams, frequently operating in parallel. The following story of how we produced the C-RUP methodology highlights the essential activities in this effort.
Stage one: Establishing the concept and collaboration
The opportunity to create C-RUP emerged as the result of several business drivers. First, during its planning, the CSC Catalyst Group launched an internal initiative to engineer a knowledge-based asset that would complement and augment CSC Catalyst in areas of significant benefit to field engagement teams.
Although the group maintained relationships with multiple vendors who support elements of CSC Catalyst, such as its process design tools, IBM Rational quickly emerged as the ideal candidate for supporting a methodology augmentation. RUP methodology had principles and a structure similar to those of CSC Catalyst, excellent industry penetration, an object-oriented platform, and complementary capabilities for OO-based work.
The CSC Catalyst team then conducted an internal inquiry to assess how CSC was using IBM Rational products around the globe as well as IBM Rational's capabilities. This confirmed the team's choice for several reasons:
- Many large CSC accounts were already using IBM Rational tools successfully, and CSC practitioners wanted to understand how to use them with CSC Catalyst's strengths in business change and project governance.
- IBM Rational could help upgrade the development portions of CSC Catalyst by incorporating RUP's leading-edge, object-oriented best practices for custom applications.
- IBM Rational could augment CSC Catalyst's capabilities with automated tools and reusable templates.
- RUP supported the UML standard for modeling, as did CSC Catalyst.
When the CSC Catalyst Group contacted IBM Rational, the collaborative relationship developed quickly, and the team soon realized that any methodology implementation, whether customized or not, involves much more than purchasing copies of the product and providing a list of recommended training courses. Especially in globally distributed organizations, a successful implementation requires careful management of the customizations (if any), as well as a comprehensive rollout program to educate end-users and project managers about how to use and benefit from the unified methodology. Rolling out even a simple change within an integrated methodology is not trivial on a global scale. The integration effort needs to be carefully planned and coordinated so that changes can be kept to a minimum. The implementation should also be designed for easy maintenance and upgrades when there are new releases of either methodology.
Originally, the CSC Catalyst/IBM Rational knowledge asset was conceived as an online manual explaining the relationships among CSC Catalyst, IBM Rational tools, and RUP, and how to leverage them all on a CSC engagement. Soon, however, this concept evolved into the notion of an "integrated methodology product" that would allow CSC practitioners to navigate electronically through a single object-oriented methodology environment. Envisioning an integrated product that CSC professionals could easily apply to the planning and execution of client engagements, the team focused on a set of known business and technical priorities to effectively evolve C-RUP. As shown in Table 1, they analyzed these high-level requirements across the CSC Catalyst Domains of Change to identify areas where C-RUP would have an important impact.
Table 1: Analysis of high-level requirements and impact of C-RUP on CSC Catalyst Domains of Change
Stage two: Knowledge transfer
After open discussions between CSC and IBM Rational about deployment and support issues, the IBM Rational team proposed an accelerated six-month certification and qualification program in Rational products and disciplines. This would be delivered to a specified number of CSC practitioners through both online and instructor-led courses. CSC initiated a global query and evaluation of more than 100 interested CSC practitioners across all major continents, and selected fifty of them to undertake the pilot program.
An internal workshop provided initial knowledge on how RUP Organizer, RUP Builder, IBM Rational Rose XDE Developer, and other tools could be used to develop the C-RUP Plug-in and Practice Guide. The latter would explain the use of C-RUP, the integration between CSC Catalyst and RUP, and the requirements for setting up a C-RUP project.
Phase three: Architecture and development
Based on their experience with the IBM Rational tools in the workshop, the team agreed that a "thin plug-in" approach using RUP Organizer and RUP Builder would be the most advantageous. The thin plug-in's modifiability would position the CSC Catalyst Group staff to provide timely and efficient maintenance and updates of C-RUP in the future.
Creating the C-RUP solution began in earnest with mapping the CSC Catalyst architecture to the RUP architecture -- identifying all the touch points, overlaps, and gaps in hundreds of objects: artifacts, activities, and processes. A team of CSC subject matter experts (SMEs) helped analyze the methodology bridging requirements, then designed and developed the solution elements of the C-RUP Plug-In and an accompanying Practice Guide. The team then began to identify and build the Plug-In's "guidance components," which would advise C-RUP practitioners on how to link and apply CSC Catalyst elements to particular components in RUP, and to transition from CSC Catalyst to RUP and vice-versa.
Using the virtual environment of IBM Lotus Notes SameTime, the C-RUP development team showcased a prototype of the C-RUP Plug-In design to a group of practitioners experienced in both CSC Catalyst and RUP. This led to refinements of the solution architecture, including the format and navigation for the guidance component, and sharing of successive prototypes with other internal CSC experts.
Figure 5 depicts the global, virtual approach the C-RUP Team used to create C-RUP:
Figure 5: The C-RUP virtual operating model: coordinated workstreams
As Figure 5 shows, the C-RUP initiative was planned and coordinated from a CSC office near Philadelphia, PA. With input from CSC Subject Matter Experts (SMEs) from Sydney, Australia, who helped to define the architecture and develop content, the C-RUP Plug-In software was engineered at a CSC office in Waltham, MA. Other CSC SME's and reviewers participated remotely from a variety of time zones and locations.
IBM Rational experts provided key RUP knowledge and technical support from a variety of international locations. In addition, the CSC IBM Rational SME program leveraged a Rational licensing arrangement with CSC's Consulting division to create a global support network for C-RUP.
Knowledge management also played an important role in the globally distributed model. CSC's knowledge portal served as a centralized repository for sharing C-RUP knowledge and evolving the solution, providing configuration management and deployment support as well. The portal was also used to collect CSC-produced field collateral early on, and then best practices and lessons learned from using RUP with CSC Catalyst.
At the time of this publication, the C-RUP team is finalizing the solution design and development activities, with feedback from user testing and reviews.
Critical success factors: Deployment, training, and user support
As the CSC and IBM Rational members of the C-RUP team realized, creating and adapting a business change methodology for an organization can be a purely academic exercise if the methodology is not implemented effectively. To be successful, a rollout must be accompanied by an educational program that reaches a high percentage of the target end users and provides sufficient background for people to understand the methodology and its components.
The IBM/CSC collaboration uncovered some significant challenges that a training program would have to address:
- The trainees are globally distributed and billable. A multi-day training event in one location was not feasible.
- The training program would have to be flexible, and self-paced, which meant that achieving full participation and follow-through from students would be more challenging than in a traditional classroom setting. We would have to devise some incentive to ensure successful completion by all.
- The program required active participation and management by both IBM Rational and CSC, so it had to be structured to make co-management possible.
- Since RUP addresses everything from requirements definition to design, coding, and quality assurance, and since each of these areas is supported by a specific IBM Rational tool or toolset, the CSC/IBM team was concerned that field support staff might become too specialized in narrow areas of concern (e.g., a OO/UML expert might not learn about change management).
This last consideration gave rise to the Subject Matter Expert (SME) program, which combines the use of Web Based Training (WBT) with courses at IBM education facilities worldwide for maximum flexibility. Participants were presented with two options for each subject track: one led to "qualification" in the chosen subject area, a designation meaningful only within the CSC organization; the other option led to "certification" in the subject area, which is an industry-wide designation.
IBM Rational provided the training resources and materials to complete the course. CSC provided a pool of candidates from which the company chose carefully to achieve its objectives of global distribution and full representation across all subject areas. CSC also took responsibility to manage training licenses and other assets related to the program, while IBM provided the assets themselves and the back office infrastructure.
Finally, a feedback loop was incorporated into the training program. This has been essential for fine-tuning the program as well as for developing new versions of it that will serve CSC's needs as C-RUP is rolled out to an even wider community.
Participation in the program has been excellent. Clearly, the benefits of training and certification for each program participant, tailored to their work needs, and the cooperative approach to managing the program, were key factors in determining the high level of acceptance and participation in this program.
Blueprint for success: A collaborative roadmap for integrating and deploying business change and IT methodology
Based on the C-RUP lessons learned, the best approach to methodology integration combines the planning and execution of workstreams to meet key milestones.
Workstreams employed in the C-RUP initiative are represented in Figure 6. Note that the times shown in this chart are based on empirical data derived from the collaborative effort described above. Times for other projects may vary considerably.
Figure 6: C-RUP initiative project workstreams
The project management workstream results in a high-level project plan with milestones, deliverables, roles, and timeframes for the key workstreams represented in Figure 6. It encompasses securing sponsorship and stakeholder buy-in and any funding necessary to complete the project. The foundation for the alignment should be established within the first month, although it may take another month to achieve full alignment as key stakeholders are brought on board.
The project manager creates a first iteration project plan and arranges the resources for the methodology integration project, reporting on progress regularly to all stakeholders. The project management discipline is essential for managing and integrating the multiple workstreams, including asset engineering, configuration management, development tool acquisition, implementation, and training.
Envision and evolve concept
This workstream results in an agreement among the methodology initiative planners and architects about which aspects of the methodologies will be integrated to meet the needs of field practitioners on client engagements. The business change methodology should provide a foundation into which the IT methodology will fit, and a vision document should describe how these methods will be integrated. In addition, field practitioner input should be used to define requirements for both the integrated methodology and supporting services that will ensure its effective use. The process -- from formulating the concept to establishing a high-level design -- should take one or two months near the outset of the initiative.
Establish technical infrastructure and development processes
This workstream results in an updated, detailed project plan that reflects acquisition of the technology development environment, installation, development, and the education requirements by development team role and effort required. Additional effort may include migrating content from one format to the desired end format, adding new process content and documentation, and manipulating the underlying technology of the methodologies themselves. The process -- from specifying technology requirements to team process and tool training -- should take from two to three months early in the initiative.
Define methodology architecture
This workstream results in analysis of the gaps between two methodologies, generating content requirements practitioners will use to apply the integrated methodology. These requirements will cover the conceptual framework from which the end user will understand and apply the integrated methodology, and the type, source, focus, and organization of the knowledge needed to address gaps at each of the methodology touchpoints, or interfaces. Cross-mapping the methodologies will play a vital role here, and that work can be extensive, depending on the breadth and depth of the methodologies you're combining. Subject matter experts with in-depth knowledge in both methodologies must be involved. The complete analysis may take from three to four months, and should evolve in parallel with the "develop solution components and content" workstream.
This workstream results in a "meta-architecture" -- a blueprint of the components and interfaces to drive their development. This includes the format for the components inserted in the methodology environment, as well as the hyperlinks within the base methodology environment and between both methodologies if they are in electronic form. It is helpful to review the data/object architectures of the methodologies.
This activity may take from three to four months, and will evolve in parallel with the "define methodology architecture" workstream.
Develop solution components and content
This workstream results in a completed set of content components embedded within (and across) the methodology environments, with hyperlinks in place. Components are developed iteratively by the SMEs in the designated component template formats, and a technical editor reviews them. Development includes providing user instructions for launching and using the integrated methodology environment. Components and links must be tested in a non-production environment. This activity may take from four to five months, and will evolve in parallel with the "design solution" workstream.
Conduct user reviews
This workstream results in a series of iterative prototypes for each major component of the integrated methodology solution that has been deployed and field tested. SMEs, who represent the users of the combined methodology, provide critical feedback about the integrated methodology framework, navigation, knowledge organization, and content. The process -- from establishing a proof-of-concept prototype to realizing a fully functional solution -- may take three to four months.
Communications, deployment, and user support
This workstream results in a deployment strategy, course content, delivery mechanism, and schedule, including identifying and training key participants. This process should start early in the initiative and be launched simultaneously with the integration methodology solution. It should span the lifecycle of the project and then continue after deployment, to provide support.
Content management and release management
This workstream results in a set of procedures for managing the iterative development of content and changes to future releases of the integrated methodology. It begins after the set-up of the technical environment that houses the evolving asset configuration components, as well as the methodology architecture definition. This definition specifies how the data for the solution will be defined, controlled, and evolved as data objects. This activity should begin and evolve in parallel with the "design solution" workstream. It should continue indefinitely beyond the initial release to sustain and refresh the integrated methodology product.
Summary: Business change and methodology integration
Accelerating business change is a fact of life for today's global commercial and institutional entities. Many larger organizations have made considerable investments in both business and software development methodologies, but few have integrated them successfully. Often, attempts at doing so amount to "bolting on" a few process design techniques to an IT methodology, or vice versa. Unfortunately, this creates more extra work than value.
To support business change, what is needed is a comprehensive business change methodology that incorporates leading IT solution development methods. Integrating two richly featured methodologies is not easy to do, but CSC and IBM Rational have proved that it can be done. Following the processes presented in this article, they took the best of CSC Catalyst and IBM Rational Unified Process to create C-RUP. This integrated methodology has already been tested and used successfully by field professionals at CSC.
1 For more information on CSC Catalyst, see http://www.csc.com/solutions/knowledgemanagement/mds/mds122/index.shtml
2 For more information on IBM Rational Unified Process, see the resources available at http://www-306.ibm.com/software/awdtools/rup/.