An unholy wedding of Extreme Programming, the Rational Unified Process, and the Microsoft Solutions Framework begun at a division of GMAC called the Asset Resolution Division (ARD) in the spirit of www.chinapage.org , and continuing at two subsequent employers.
XUP is XP plus whatever parts of RUP and MSF seem necessary for the Simplest Business That Could Possibly Work. XUP can be full-on RUP if you're doing enterprise-scale things or if you're forced by your Powers That Be, but so far as possible it works to lead the business towards the XP end of the scale. MSF is a little tacked-on, but the Powers That Be tend to prefer things with MS stickers on them. Maybe a tighter integration is possible.
Here are two docs describing this at present. The first is for developers:
Use web.archive.org
The second smaller doc is for managers and stakeholders:
Use web.archive.org
Peter, the links to the docs above are broken. Working links added, thanks to the Internet Archive.
Ron and Kent have seen versions of this and said nothing too unkind, but it remains to be seen whether what we're attempting pans out. I'm posting it for critical comment and as another XP data point.
Please be scathing. -- Peter Merel
If you need the Microsoft sticker, see if you can get a video of Craig Wittenberg's talk at OOPSLA98. It is called "Components in the Key of C." Craig works at Microsoft Research. He mentions that their internal development process was influenced quite a bit by Extreme Programming. They even have a double billed hat that they flip around when going in and out of refactoring mode.
Their process resembles XP in some ways, but it is also very different. More like XP through a formalist's eyes. I don't think they have the best parts yet, but things could have changed since then. In any case, you could get mileage out of the reference.
Fascinating. MSF and XP have enough in common that I think they're complementary; at least I don't know where they conflict. The same can't be said of MSF and RUP; if you look at the Rational treatment of MSF it's pretty circumspect. I think this reference will help a lot, and will dig it out. Thanks Mike! -- Peter Merel
Now this is exactly what I needed! Reading through the ARD docs, the process looks (at first glance) like about 80% Extreme Programming and 20% Dont Scare The Boss, which is a nice balance, especially when your boss is all Buzzword Compliant about Rational and UML like mine.
I've been picking and choosing bits of XP when I see an opportunity to start using them, but it's really helpful to see the end result of someone else doing the same sort of thing. Thanks Pete. -- Richard Emerson Oops, I forgot to be scathing.
Wow! What a terrific approach! I want to make this the core of my next methodology proposal.
I cannot be exactly be scathing, as I don't find this to be wrongheaded (far from it). But:
I was a little surprised to see the advocacy of CRC cards as a way to drive out user stories. Perhaps it only feels wrong because I haven't tried it. I would be interested in how people have found that approach.
I see no mention of Non Functional Requirements, such as usability, interoperability, and platform compatibility. These tend to be overlooked and can have major impacts on a project.
scathing comment:
I dont think that interoperability and platform compatibility is MS policy.
Thanks for a great job. -- Russell Gold
I've just put up the slight revision of the first doc. On CRC, the best way is to try it. See if you can pick up The Crc Card Book - lots of excellent tips there.
As to Non Functional Requirements, XP and XUP do these by matching them with the User Stories. They're discussed in the XUP docs as the Quality(s) that get attached to each story by Stakeholders. -- PM
I was skimming through a conference announcement on the Java Spaces users mailing list and I noticed that there's a presentation on XUP by Dick Heijink of Sun Microsystems in the Netherlands. Looks like this 'unholy wedding' is getting around. -- Jason Yip
I didn't see any mention of Peter Merel though and MSF isn't mentioned so maybe this is a independently created XUP? Was the term 'Extreme Unified Process' copyrighted?
Here I go throwing away fortunes again: nope, and I'd be happy for anyone to make free with it. Historically I think I have dibs, but I ought to drop Dick a line just so he isn't taken by surprise if someone brings up my little docs. -- PM
In fact, the pdf available at www.ideamachine.nl does give credit to Peter Merel on the second page. Check it out.
The talk at The Idea Machine was very interesting and interactive. I think XP and RUP are very, very similar. They are both based on iterative development, they both assume an end-user is part of the team, they are both process frameworks, etc.
RUP is more mature and provides more guidance whereas XP is less formal and requires more learning IMHO.
I don't know yet where and when the slides will be made available. Of course, you can always ask me for a copy.
Dick Heijink, (mailto:Dick.Heijink@Holland.Sun.Com)
There's a description of XP as a minimal instance of RUP in the free articles section at www.objectmentor.com (www.objectmentor.com ).
(A preliminary chapter of the third edition of Booch's Object Oriented Analysis and Design with Applications. by Grady Booch, Robert C. Martin, and James W. Newkirk.)
-- Joe Bowbeer
Those of Uncle Bob's words at his Xp2000 talk re: XP as RUP that communicated information rather than emotion suggested strongly that the next release of the RUP CD will discuss this in more detail, with at least some of the practices recommended for (non XP) RUP projects.
I read some of Peter's stuff on the web, and I think he's got some fascinating ideas. He's spot on with XUP, but I'd just wish he'd further it more. In my opinion I think we should start from XP and bring RUP in when needed, not trimming down RUP and infusing it with XP values && practices. I think it makes a big difference. I'm not so sure on the Rational articles below though as they seem to read as two threads. Whereas I think Merel catches a dialectical interplay. Is it worth bringing dx into the mix?
-- Aidy Rutter aidy@auto-e-mission.com
See Also:
I feel that XP and XUP fall down when it comes to the larger company organization and business management processes within that larger company. These processes are covered by MSF and provide businesses with a clear vision of the the structural organization of roles and processes within a company and department. If XUP could absorb that aspect of MSF it'd be great.
I would also prefer it if XUP were to separate some of the XP aspects (quite contradictory) and have the methodology based on contemporary ideas of Agile Methods with additional suppliments to apply various XP-only practices. Certain practices are not typical in other uses of Agile Methods. My motives are to have a single methodology that covers the wide range of Agile Method topics (including XP topics) and covers the business organization aspect of MSF without requiring a management to buy into all of the XP-only practices.
See Xp And Uml
See original on c2.com