Having spent some time reviewing the Rational
Unified Process (RUP), I've been impressed. It thoroughly describes how to
build software systems using UML and the full set of tools from Rational,
including version control, testing, and modeling products.
Also, this exercise has helped me further
understand the distinction between Scrum and RUP.
RUP can be classified as an Academic Process.
With all of its detail, it is appropriate for teaching new software engineers
the proper way to build software. Once they learn all the ins and outs in
RUP, they are ready to start making tradeoff's and manage themselves without
Scrum can be classified as a Professional
Process. Scrum presumes that most of the team members are qualified
software engineers who understand most of the stuff presented in RUP.
Scrum helps them organize their work and get it done. More like an
adaptive, empirical project management process, with www.scrumonline.com as the project
I recently tried to use Scrum with a group of
engineers who - although .com bright, weren't software engineers (although they
thought that they were). Many troubles. RUP would have been far more
appropriate, because they would have been guided through all of the appropriate
steps. However, the product would have never made it to market on
time. Which leads to the conclusion ... use RUP (and like Academic
Methodologies) for training purposes, but use Scrum and professional software
engineers to build products.