Home.Expertise.Resources.Blog.Support.Contact.

ND8 DEVELOPMENT

 

Best Practice Software Development

© ND8

Thursday, July 23, 2009

The Rational Unified Process
Along with UML, the Rational Unified Process (RUP) was a product of the coming together of Jacobson, Rumbaugh and Booch, at Rational in the mid 1990’s.
In many ways it was playing catch up. Other methods, notably Select Perspective, had already combined use cases, sequence diagrams and class models, to provide the basic set of techniques required to develop object oriented projects.
In other ways it made fundamental leaps, departing from traditional waterfall methods and instead promoting a risk driven, incremental approach to development, driven by use cases.
At the heart of the process are the four phases of inception, elaboration, construction and transition. Understanding the objectives of these phases is key to both understanding the process, and configuring it (RUP should always be viewed as a configurable framework) to suit the needs of specific projects.
Though many see RUP as heavy-weight, the most common configuration employed just the basic techniques. OpenUP is a more recent, light-weight, agile, variation of the process.  
Whilst the rise of the agile movement may have called RUP’s position as the pre-eminent development method into question, it still has a place, especially on more substantial and complex projects
Having an understanding of its phases, principles and history, remains valuable when shaping any project, and should be a must for anyone serious about building and delivering software solutions.
RUP Credentials
Like many developing OO systems in the early 1990’s, we found ourselves having to combine techniques from a number of competing methods, most notably from those of Jacobson, Booch and Rumbaugh, and choose our side in the method wars (my own bible was Jacobsons, OOSE, published in 1992).
When the three amigo’s got together and produced RUP in 1997, with it’s strange phase names and risk driven approach, it was put to use immediately, and having a knowledge of the history allowed us to both use it pragmatically, and to combine it with other approaches (most notably at the time DSDM), to increase its effectiveness.
Over the years RUP became a key development framework and was used extensively (and nearly always in combination with more Agile development practises) to facilitate successful delivery, most notably at IFOnline, where over a two and a half year period we released major product updates every quarter, always on time and always to budget.  
In 2007 we combined RUP and Scrum when programme managing a substantial development effort, involving 100 plus development staff including external suppliers.
In 2009 we employed the agile variant OpenUP to deliver moneysupermarket.com’s new travelsupermarket.com site.
Twelve years and counting. No one had more experience in the approach.