Wednesday, January 26, 2005

Part 1: RUP Basics

One thing that often confuses people is that RUP is both a process and a product. I’d like to start by clarifying the difference between them.

When people first start looking at the products and services of IBM’s Rational brand, it seems overwhelming. But the RUP is the thing that ties it all together. All of the products, consulting services, instructor led and web based training that they offer are there to support the RUP’s six best practices. So basically if you understand the six best practices, you understand if Rational has a solution that could help you.

The six best practices are:
* Develop Iteratively
* Manage Requirements
* Use Component Architectures
* Model Visually
* Continuously Verify Quality
* Manage Change

So every product, service and training class in the Rational brand are there to help you succeed in these six areas, and the RUP process describes the approach to take to achieve this improvement.

The RUP product, on the other hand, helps to deliver the RUP process into the hands of the team. Basically the tool consists of four major parts.
* Process Delivery Tools
- Workflow
- Roles and Responsibilities
- Templates
- Examples
- Tool Mentors
- Guidelines
- Checklists
- Etc.
* Process Configuration Tools
* Process Authoring Tools
* Community Tools

The “Delivery Tools” get the RUP process into your hands by defining the workflow for nine different disciplines, such as requirements management, the roles and their responsibilities, templates for their artifacts, etc.

The “Configuration Tools” let you customize your version of RUP with your own process assets or with various RUP “plug ins” that center around other process or technologies, for example there are plug-ins for “XP,” “User Experience Development,” “COTS selection,” “J2EE development,” etc.

“Authoring Tools” allow you to create your own processes in the same style as the RUP and to create plug-ins like those listed above.

“Community Tools” are about the forums that exist (and even this blog!) to help you adopt the RUP successfully.

In this blog, I assume that you have access to the RUP tool. Even if you don’t I think you will derive huge value from the posts I put here, but to really maximize your chances of success, having a license of RUP will greatly help. And happily, it is the least expensive Rational tool by orders of magnitude.

Tuesday, January 25, 2005

RUP Blog

This blog will help readers understand the Rational Unified Process. It will cover both how to use the RUP successfully on a project as well as how to deploy it in an organization. I plan to start with an introduction to iterative development, the most confusing part of RUP, then move into how to use it on a project, and then how to deploy it in an organization, however I will go whatever direction the blog seems to flow.

For the last six years I have worked for IBM Rational, helping customer to understand and adopt the RUP. In the last few years, I have introduced RUP to over 700 IBM Partners, to hundreds of IBMers during internal IBM educational events, and to attendees at the 2004 Rational Software Development Users Conference.

Now here's the thing. While many self proclaimed RUP experts have been thrown out of accounts due to an inability to show tangible results, over the last six years, I have had zero dissatisfied customers, and this is among literally thousands of software professionals as well as managers, directors, VPs and CxO level professionals. Because my approach to helping people understand the RUP is so unusual and so effective, hundreds of my colleagues and clients have asked when I will finally write a book.

This is where this blog comes in. I am at my best when I am teaching others about the RUP, rather than just narrating about it. So, I plan to start by sharing some great gems, but I am avidly hoping that questions will pour in allowing me to answer them in the blog, which is my best mode for communicating the RUP.

Eventually I hope to then transfer all of that to a book.

Enjoy!