9

I am confused concerning the unified process model and agile development. When I'm reading about the UP, I'm only understanding that it is an iterative improvement. Can someone please clarify this?

0

3 Answers 3

6

Both UP and Agile are iterative approaches. If we were to draw a spectrum of documentation requirements for development processes then Waterfall would represent one extreme, Agile would be placed on the other side. UP exists in the middle between Waterfall and Agile and can take many slots in that spectrum depending upon how it's implemented.

No documentation as a development model would be much further past Agile on that spectrum, so please don't misconstrue my comment as indicating Agile is as far from the "middle" as Waterfall is. Agile can be a pretty reasonable approach to development.

UP is more document (artifact) heavy than Agile is. There is a broader range of artifacts that can be created through the development process, and there are potentially more stages for review. Agile relies a lot more on direct communication and short iterations for constant validation.

As a generalization, UP is better suited for larger teams on larger projects where you won't always have face to face communications. Agile works better on smaller teams and smaller projects. But those are just generalizations, not hard and fast rules.

IMO, every team should examine the various development approaches, including Waterfall, to understand the strengths of the approach and to determine if that's appropriate for the team. I have seen a number of Agile projects that could use better defined documentation. I have seen UP projects that disconnected from the client's real requirements because they picked the wrong artifacts to work with. All processes have their negatives, so make sure the right approach is picked for the project and team.

1
  • After 8 years of RUP and 16 years of various Agile approaches, I've often pictured the amount of documentation from different methodologies as a spectrum in my head. Today I decided to google it to try to find a good diagram or explanation I can share with my current agile team which errs way too far toward the "no documentation" end of the spectrum. This post sums things up perfectly!
    – Troy Gizzi
    Feb 15 at 15:40
3

Unified Process is a detailed and well-defined process.

"Agile" is not a process at all, it is simply a way of saying that one follows the Agile manifesto which, in turn, is just a bunch of values and practices.

So, in short, any process that follows the agile manifesto can be considered agile.

1

So here's the problem, CMMI and RUP have gotten a bad rep because they have been associated with expensive, documentation-riddled, over-priced projects. This is how it was sold by the "experts". Think about it, when you ask an outside company to help you put a software process into place and then to implement a pilot project using that process, the temptation is very high for that company to make the process as drawn out and convoluted as possible.

The RUP does not require you to fill out every document in the catalog, it provides them as guidelines and templates and encourages you to take what you need and even GASP customize the process to fit your company.

Likewise CMMI does not REQUIRE reams of documentation. Unfortunately, a lot of the companies that perform CMMI appraisals are the same ones that sell RUP as a waterfall process. One need not look far to see how conflicting interests of an auditor who is also a contractor can lead to disaster (e.g. Enron).

RUP is a framework and as you've recognized is an iterative process. There are agile frameworks that recognize this (see eXtreme Unified Process).

4
  • then, what is main difference between UP and Agile? or is UP a variant of Agile
    – Noor
    Oct 3, 2012 at 15:44
  • The Agile movement was a reflex to the heavy-handed approach of the "Big 5" consultancies. RUP was around before Agile hit the mainstream. Unfortunately, for some reason it was never implemented in an iterative fashion. Oct 3, 2012 at 18:12
  • Enron isn't a good example of an auditor also being a contractor, its an example of Fraud they knowingly mislead others. That is entirely different than having someone say "you have X problem and we have product Y that will solve that problem and make you breakfast."
    – Ryathal
    Oct 3, 2012 at 20:57
  • If you ask a toddler whether he wants a cookie or a cracker, he'll have one or the other for snack. If you give him a box of assorted cookies, he'll eat until his appetite is spoiled. Agile processes give people a cut-down menu of practices to choose from. RUP gives people the whole box of cookies. Oct 5, 2012 at 16:22

Not the answer you're looking for? Browse other questions tagged or ask your own question.