Xp Is Result Of Applying Business Process Reeng To Sw Eng Process

This is a thought I just had. It may or may not have any merit. Also, it is probably not well communicated. I would appreciate help developing this thought.

ExtremeProgramming is the result of applying BusinessProcessReengineering (as defined by HammerAndChampy? as described in Reengineering the Corporation : A Manifesto for Business Revolution, ISBN 088730687X ) to the SoftwareEngineeringProcess?. My rationale outlined:

  1. BPR means drastic and fundamental changes to existing processes in order to archieve order of magnitude performance improvements by contemporary measures. Xp seems to be a drastic and fundamental change. I would like to see if it gives a order of magnitude performance improvement.

  2. BPR's focus is on serving the customer. Xp seems to do this quite well through UserStories.

  3. BPR says that a company needs to move away from tasks and toward processes. This seems to meets Xp's believe that developers should work on making a UserStory work, not just making a particular module work for a UserStory.

  4. BPR says that a large portion of the work can be done by one or two people (PairProgramming) and that only a small portion of the work requires expert help (ala TheCoach or ChiefArchitect).

  5. BPR says that you should supply all the information needed so that one or two people can complete an entire process. This seems to work in with CrcSessions? and the entire engineering team being in that session.

  6. BPR says change is the norm, not the exception. This seems to be one of the core principles driving Xp.

  7. BPR says that process should be minimal. If there is an exception then a new minimal process should be developed to handle the exception. This seems to be the case with Xp (MinimalMethodology?, understanding how the process is performing and feeding that back into the process, JustRules?, . . .).

Maybe I have taken the analogy too far, but it seems to match OneToOne. Input?

-- HankRoark

Sweet, and very helpful, as we're preparing a report to management on the occasion of our upcoming Distributed Computing article. BPR is a hot buzzword here at Walter's place. Thanks! --RonJeffries


I would say that XP is an example of Hammer's BPR thinking applied to programming or software development. Minimizing the process, embracing change, etc., opens the possibility for XP procedures. BPR is much broader in scope (and less specific in detail) than XP. --AlistairCockburn


What is BusinessProcessReengineering?

WilliamGrosso


I am not sure the example in item 3 accurately describes the change. By focusing on UserStories instead of the methods that make them up (see also EngineeringTask), all you are saying is that you have upped the granularity of the task.

ExtremeProgramming does, however, focus on the process (tasks involved) in writing code, investigating what activites are useful in that process, when they should occur, etc.

BillTrost


I've only just started the book, so am as yet uneducated. XP is about eliminating what is not necessary, and doing what is necessary only as it is really needed. Seems to be consistent with what I know of BPR. --RonJeffries


If one size fits all, or one process fits all, or XP fits all, there is no need for BPR or process re-engineering. Lets not jump to conclusions -- that made BPR go wrong in so many places; you don't want many examples where XP goes wrong. -- Martine Devos

Wise words, Martine, and words we strive to follow. We're sure XP can work in environments near where we've tried it. Outside some reasonable range, it's not yet tested. And we do not want a bunch of failed projects calling themselves XP. Thanks! --RonJeffries

Does this mean that XP projects cannot fail? I mean, if some project started earnestly as an XP effort but failed, are XPers going to automatically say, "They weren't doing XP! XP cannot fail if done correctly."? I raise this having lived through other past wars waged by zealots for a particular process who used just such logic, to the ultimate discrediting of the process. So far the proponents of XP have shown wise restraint. I hope it continues so XP doesn't become similarly tainted. --DonOlson


On the other hand, even if XP doesn't work outside Chrysler, it is a notable success in some ways. For example, I'm teaching a course on Java in the spring (and again, in the summer). And UnitTests have made it onto the syllabus, as has constant refactoring.I wouldn't have put them on it, and been actively thinking about how to write slides / explain the ideas, if I hadn't run across the XP pages. I think the course will be better, and the students will be better programmers, due to this.

While I don't particularly like the fervor of the XP pronouncements, it is nonetheless the case that the XP advocacy here has been quite interesting. Both from a "hey I do that too" perspective (ala the original reason i liked the GOF book so much) and from a "hey, there's something concrete on the table to think about" perspective.

Thanks to the XP people for sharing some interesting thoughts.

WilliamGrosso

Fervor? FERVOR??? William, you oughta see me when I get going! ;-> --RonJeffries, dialing down the fervor dial.


The title of this page begs the question: IsExtremeProgrammingaProcess?


XP seems to be a lot of things. When I read TheMythicalManMonth last year, all sorts of XP-like stuff jumped out. --IanRae


EditText of this page (last edited March 22, 2004) or FindPage with title or text search