• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Difference between XP and RUP

 
Ranch Hand
Posts: 2545
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
H:
what is the biggest difference between xp and rup?
thanks,
 
Ranch Hand
Posts: 148
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
UP and XP are similiar in many ways, but I think there's more emphasis placed on one methodology than the other in one of the following areas:
1. XP stresses shorter integration cycle (like every 2 hours) UP recommends that too, but perhaps every day or so.
2. XP users must follow Unit-Test first design, that is write Test Cases first, then create application to pass those tests. UP, I believe, don't have this in their process.
3. UP biggest point is getting rapid feedback from its customers. Iterative development takes place from getting feedback from their customers. Not that XP doesn't have this, they do too but UP emphasize this more so.
4. UP follows four distinctive stages in the development cycle, each stage is done iteratively. Inception, Elaboration, Construction, Transition.
5. both XP and UP are agile methods; that is they are both processes that embrace change. It doesn't follow the "waterfall" method in which they must get all the requirements down and freeze them.
6. XP has other stuff like pair-programming, collective-code ownership.
 
John Lee
Ranch Hand
Posts: 2545
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks a lot!
 
Ranch Hand
Posts: 193
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
XP is a hacker process because of lack of
CM.
 
town drunk
( and author)
Posts: 4118
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
What does that mean, exactly?
M
 
Sheriff
Posts: 7001
6
Eclipse IDE Python C++ Debian Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yes, please explain a bit more about what you mean by the term "CM".
I use what I think of as "CM" when I use XP practices, but it seems likely that we have different interpretations of what "CM" is, and what it is useful for.
I'd really appreciate a clarification of what "CM" is to you, and how you use it.
 
author
Posts: 11962
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
XP definitely requires proficient configuration management in order to work. Short cycles--which might be scrapped in the end--force you to use CM systems. I believe it's not said anywhere that XP suggests not using a CM system...
 
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
XP is an ideal or goal and RUP ( a process which has many sub processes ) can help attain ( and maintain ) that goal.
I don't see them being as distinct but complementary up to a point. Of course , RUP can be used independently of XP. The goals in this case may/ may not be too different from XP goals(ideals).
I'm not sure if RUP incorporates all of XP tools yet(e.g. Pair Programming)but there's nothing to stop programmers in a RUP project practising it.
And there is no reason why XP practioners cannot use at least some of the CM tools of the RUP. XP is a grass-roots programmer-driven movement, whereas RUP has evolved from combining the experience of decades of Software development with the new experiences of OO development.
Depending on the change required a sub-project could switch focus from RUP (think of a cruise ship going to from Port d'A to Port d'U but it may stop at various other destinations and may even alter it's course to finally end at Port d'S instead) to XP ( think speed-boat leaving the cruise ship to destinations A and D with short-term plans only - pit stops only for lunch and dropping passengers off)and then switch focus back to RUP(speed boat returns to mother ship).
IMHO....please comment.
regards
[ June 01, 2003: Message edited by: HS Thomas ]
 
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
OK, here is my go - take into account that I know much more about XP than about RUP...
First, RUP is a process *framework*, whereas XP is rather a "minimal set of practices for small teams".
That is, RUP is more along the lines of "these are all good practices, depending on the context - choose from them for your project". XP, on the other hand, says "if you start with all these practices, your project will make good advances, and the rapid feedback, combined with your experience and common sense, will allow you to adjust and extend it properly".
In fact, it can be argued that technically XP is an instance of RUP. Most often, though, RUP is more often installed as a "control the developers" process, whereas XP is about building a collaborative environment and trusting people to figure it out.
 
John Lee
Ranch Hand
Posts: 2545
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
thank you all for the information! i will get back to you later!
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

trusting people to figure it out.


That is the hard part.
Illja, as you've said in another thread

The best way I know to learn about Pair Programming is actually practicing it

.
I guess that's the only way to build trust.
regards
[ June 01, 2003: Message edited by: HS Thomas ]
 
(instanceof Sidekick)
Posts: 8791
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
A good point was made that RUP is a framework. One role in RUP is a process engineer who figures out what parts of RUP to apply and how. If one tried to use RUP "out of the box" with every defined role, process, document, etc. the process would weigh them down until they get nothing done.
RUP is broader than XP. It considers things that happen before and after and outside of the activities described by XP. And the XP folk should have no problem with that - XP focuses on one thing well, and allows you to do other things, too. (XP might think you're wasting your time, but what the heck, it's your time.)
XP is aimed at smaller teams in one site (or one room!) with onsite customers, ie people who know the business requirements and priorities and are empowered to make decisions about them. RUP can be configured for such groups, or for huge groups distributed across the planet.
RUP can be configured to look almost like XP, but remember that XP came about as a rebelion against heavier styles encouraged by RUP, and RUP embraced agile styles a little reluctantly. Before the big "agile" buzz, RUP was usually done in a non-agile way with lots of documents and detailed plans.
XP is in no way a hacker or cowboy mode! It is a high discipline / low formality technique (See Cockburn's book on agile methods) meaning you have to follow the rules very closely, but you don't have a lot of protocol on top of them.
XP has a neat way of looking for the least you can get away with in process, requirements, code and so on. It's never too little, because then you wouldn't be getting away with it. It's rarely too much because they are looking at every activity and asking what is the dollar cost and value.
Professional methodologists rarely take this view, because it doesn't fill up books very well! Well, now they do because "agile" anything sells.
Hope that helped! Comments, complaints, etc are welcome.
 
HS Thomas
Ranch Hand
Posts: 3404
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Stan,
Any books or articles you recommend given your experience on using the 2 methodologies in conjunction ?
regards
 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by HS Thomas:
Any books or articles you recommend given your experience on using the 2 methodologies in conjunction ?


Take a look at http://www.objectmentor.com/resources/articles/RUPvsXP.pdf
 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Stan James:
RUP is broader than XP. It considers things that happen before and after and outside of the activities described by XP. And the XP folk should have no problem with that - XP focuses on one thing well, and allows you to do other things, too.


And most XP folks I now actually don't have any problems with that.

(XP might think you're wasting your time, but what the heck, it's your time.)


Well, I'd think that it's the time of my employer/customer (as long as they are paying for it), so it seems to be fair to use it effectively...


RUP can be configured to look almost like XP,


Well, there is even an XP plugin for the RUP software: http://www.objectmentor.com/processImprovement/xpRupResourceCenter/index

Before the big "agile" buzz, RUP was usually done in a non-agile way with lots of documents and detailed plans.


On the other hand, Grady Booch stated on the XP mailing list that RUP never was meant to favor heavyweight processes.
 
Ilja Preuss
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by HS Thomas:
I guess that's the only way to build trust.


I think a very important point of building trust are the short feedback loops. First, it makes sure that problems are found out about early, when it's still easy to resolve them. Second, it gives opportunity to *show* that you are actually able (and doing your best) to resolve problems.
Two other important points are probably
- being honest (even if it hurts at first), and
- focussing on resolving problems instead of blaming people (so that others are allowed to be honest, too)
 
Stan James
(instanceof Sidekick)
Posts: 8791
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have to smile at Rational's stance on XP. XP was a fresh way of doing things, largely in response to not getting along very well with things like RUP, CMM, ISO, etc. The team I'm with learned RUP with extensive mentoring from Rational, and it was not the least bit "agile". It was very front heavy with tons of analysis, design, modeling, a fantasy of code generation that never quite came true, a "change prevention" mode of change control, looong iterations, etc. We have made ourselves more agile, but wouldn't pretend that we "do XP" - we still consider it mostly RUP.
Rational may not have been leading the way to agility, but they are smart and see the goodness in most of it. RUP was indeed flexible enough to turn into agile stuff. Grady says he buys pretty much everything but "emergent architecture."
Somebody asked about a book comparing methods. I always recommend Alistair Cockburn's Agile Software Development as a survey of agile stuff, and Scott Ambler's many websites (start at ambysoft.com or agilemodeling.com) for some sane views on RUP. May be hard to find - email him if you need help navigating.
 
Ranch Hand
Posts: 150
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hi All,
From my experience RUP tends to focus on "up front" design/analysis, whereas XP focuses more on design or code refactoring.
Regards,
Fintan
 
Consider Paul's rocket mass heater.
reply
    Bookmark Topic Watch Topic
  • New Topic