| By Java News Desk | Article Rating: |
|
| August 1, 2003 12:00 AM EDT | Reads: |
16,695 |
Software is created by programmers who write code, testers who try and break the code before users do, and analysts who are incapable of either task. Analysts know this and like a congressman's PR agent on their lunch break, they must constantly adapt to find new ways to remain on the payroll. The answer in IT is no different than any similar dilemma in which a person finds himself: bluff, fraud, and deceit.
For inspiration, the analyst thinks back to those days at school when he or she sat in science classes and gazed at complicated diagrams being drawn by the teacher. The kids who understood what the teacher was saying went on to become proper engineers, while the befuddled analysts instead picked up the subliminal message "complicated diagrams = good". The syllogism was clear if they too could create presentations that others couldn't understand perhaps one day they could assume the same authoritative role over the audience that the science teacher enjoyed.
Acting on this childhood experience, the analyst buys books about analysis patterns and sets about to confuse and overwhelm all around him. Expensive tools are bought that don't create any code or contribute to the finished software product, but nevertheless print out reams of paper and create meaningless diagrams. Other analysts and managers nervously guffaw compliments like the emperor's subjects in the Hans Christian Andersen fable. Data modeling becomes trendy, methodologists and process reengineers are hired, while authors of expensive and pathetic hardback books dazzle gullible conference attendees who are mesmerized by presentation foils like first year music students at a John Cage concert.
None of this, however, helps users get their software any sooner. It does have a noticeable advantage over coding, because analysis occurs at the start of a project where time and money are plentiful and the enthusiasm of senior management and users still exists. Just when coding is about to begin, the whole methodology landscape may change, and the same person who one day drew multidimensional Shlaer-Mellor data universes, overnight becomes an expert at the new techniques and wastes valuable project dollars and time convincing senior management that arguments about OO notation and design patterns are now the key to project success. A professional software analyst is a master of trend moulting, chasing bandwagons faster than a Republican party candidate.
Fortunately, it finally looked like analysts were going to be run out of town when grass root programmers gained popular acceptance for Extreme Programming (XP). This put the power back into the hands of the coders and testers who now deal directly with users, create the simplest code possible to get the job done, and do it lots of times.
XP gave me great hope that the overthrown analysts would become the Troy McClures of software development, with perhaps a few survivors becoming electric tongue scraper salesmen on late night infomercials. With this in mind, I recently attended a presentation by a famous analyst "who shall not be named" who began by saying that in the past 10 years, misguided analogies between civil engineering and software had created the mess we had all lived through. Waiting for him to admit he played more than his fair share in the whole charade, I instead had to redefine my definition of irony when he then espoused his own particular variant of XP, tried to sell his recently published book, and attempted to convince us that you had to employ his consulting skills to make sure the methodology was being followed correctly.
I often wonder whether the FBI department investigating bogus claims by companies selling penis-enlargement pills should perhaps turn their attention to professional software analysts. Same scam, different scenario.
Published August 1, 2003 Reads 16,695
Copyright © 2003 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Java News Desk
JDJ News Desk monitors the world of Java to present IT professionals with updates on technology advances, business trends, new products and standards in the Java and i-technology space.
![]() |
Fred Grott 08/15/03 10:13:04 AM EDT | |||
I will point out that not every analyst is a non programmer.. However repeating a myth in order to paint all analysts a s non programmers a non proficient is a bit much of a con game.. Now if the article contain real facts such as how many proejcts failed and trends of interaction between the analysts, porjec tmanagers, and the clients maybe we might learn something here.. But then again I do not think this article was about seeking to commnicate or enlightened.. PLease before writing about this subject again at least consult with some poele more knwoledgeable about the subject such as Robert L Glass.. If you hate XP programming from personal exp than write about that exp of that project..save the attacks without facts for a different journal.. My weblog: |
||||
![]() |
Jeffrey Hoyt 08/15/03 09:15:28 AM EDT | |||
Yes, Anita, you DO need to go on. Don't just provide the definitions that suit your arguement. Take a look as the positive sides of those definitions. Yes, Anita, EXTREME. Extreme because it DOES deviate from accepted standards. The same accepted standards that have created so many software FAILURES. Since you are fond of definitions, my favorite definiation of insanity is "doing the same thing over and over and expecting a different result." We can't keep doing things the same, *accepted* way because the accepted was doesn't work well enough. Have you read up on XP? Do you know that all the things it espouses are tried and true software development processes? Testing. Release planning. Integration. Customer input. These are good, essential things. XP just kicks them up a notch. More of a good thing. And yes, Anita, SIMPLE. Simple is easier to understand than complicated. Simple is easier to modify than complicated. Do you like your user interfaces simple or complicate? Simple is GOOD. Software is complicated enough, thank you. Unfortuantely, simple is harder to do than complicated. Any half wit can create a complicated solution to a problem. It takes time, experience, and intelligence to create a simple, elegant solution. There are not that many people to can forsee all the problems and wrinkles in a design. And NO ONE can forsee all the requirements creep that will occur. XP tries to adjust for these human frailities and create a process which works with our limitations. Is XP a silver bullet? Of course not. See http://www.extremeprogramming.org/when.html. "XP is set up for small groups of programmers. Between 2 and 12, though larger projects of 30 have reported success. Your programmers can be ordinary, you don't need programmers with a Ph.D. to use XP. But you can not use XP on a project with a huge staff." For a one year project with 5 staff years of programming, do you want to spend 6 months for an analyst to fine tune things then dump 10 programmers on it for 6 months, or would you rather have 5 programmers with a well defined process working on that problem for a full year. What do you want after 6 months? A piece of paper or the third release of the end product with three full sets of customer feedback and 80% of the functionality? Of course IBM, with a $1B contract can't use XP. XP tells you that up front. It accepts where it works and where it won't. But for a small project (and that's MOST of the projects), it can work very well. Finally, try to earn a bit of your own praise. I wish I could say, "Thanks, Anita, for at least being open minded enough to see the good and the bad side XP." Alas, I can't. Good day to you, Jeff |
||||
![]() |
Wade Scherer 08/14/03 09:39:02 AM EDT | |||
This story was great in the form of a joke. Being a long time developer who, from time to time has had to put on the analysis hat to ensure the success of a project, the only way I can look at this expulsion, is as a parody. If this wasn't a parody, the author needs to pull his/her head out of the sand, a take a sniff of reality. |
||||
![]() |
Anita Russell 08/12/03 06:32:30 PM EDT | |||
To the author(s) of the ?Twenty-First Century Snake Oil Salesmen? article I say the real "Snake Oil Salesman" is the one who doesn't give his name when making his pitch!!! Congratulations! It took you seven paragraphs to try and convince the business community how useless analysts are and only two sentences to proclaim how wonderful ?grass roots programmers? are. Well, those of you who are nodding in agreement with the writer(s), be forewarned: Be prepared to call your local exterminator. Grass roots are full of bugs! The author has obviously never had the privilege of working with a good systems analyst. That would be one who has worked his way from end-user to systems operator to software support tech to mainframe language programmer to systems and analyst, applying practical experience and business sense to software design and development and systems implementation projects along the way. Ah, but ?none of this, however, helps users get their software any sooner? you say. Thank goodness for ?Extreme Programming? and those coders who ?create the simplest code possible? and ?do it lots of times?! Thank you for helping me make my point. ?Extreme? programming . . . think about these definitions of extreme from the Merriam-Webster Dictionary and see if that?s how you want to describe the software that runs your business: extreme: synonym see EXCESSIVE, departure from accepted standards. ?Simplest? code lots of times . . . Let?s look that term up. Consider these definitions: simple: synonyms see FOOLISH, ASININE, actually or apparently deficient in intelligence, being or seeming unable to use judgment, good sense, or discretion, failure to use normal rationality or perception. Need I go on? Oh, the users get their software sooner alright. Along with fixes, patches, updates, and hard-coding sooner. Don?t forget about those database reloads, system reboots, aborted files, lost records and incomplete, inaccurate information. The users get that sooner too. I?m not saying there?s no place for your extreme programmers. Let them sit in the cubicles of video game companies and play around as much as they want with their toys, but keep business software in the hands of professional, competent and experienced analysts where it belongs. And to insure continued success of businesses across America, remember your best analysts aren?t outsourced and brought in from off-shore either. (No offense intended towards our foreign friends.) To the Senior IT Executives of our corporations, the next time you?re considering laying off an analyst in favor of bringing in a coder, I ask you to imagine yourself saying this to your CEO at your next senior management meeting: ?Instead of analysis, research, planning and forethought going into our database design and setup, I decided to just let an ?extreme? programmer that has no idea what business standards and best practices are haphazardly throw together the simplest code he could think of and I then made major business decisions based on the data he has the system spew out.? To some of the reader?s feedback: ?Meaty Reply? ?Analyst Arrogance? ?Analyst Dilema? And to the readers who are nodding in agreement to my response I confess that I wanted to begin my rebuttal with ?Jane, you ignorant slut? but that would have gone way over most of our grass root coder friends? heads, wouldn?t it? If I may borrow and slightly modify your closing thoughts . . . I too often wonder about the FBI investigations of bogus claims by companies selling penis-enlargement pills. Perhaps they should turn their attention to grass roots extreme programmers. Same scam, different scenario. |
||||
![]() |
Robert White 08/08/03 04:36:43 PM EDT | |||
I enjoyed this article because it skewered the oft-overrated analysts, who fulminate at the high-level, but never seem to be around when the dirty details bedevil us. What good is an analyst if he/she cannot get his ideas across to those who will eventually implement them? Still, I am currently working on a project that was created by tyros: nice guys who just didn't know what they were doing. They kludged together a system, but they violated many design rules that good engineers take for granted. I really wish a good analyst had been on-hand, especially since it would greatly simplify my task of rewriting this system if I had a description of what each piece was meant to do. I've worked on over-engineered projects and unengineered projects and they both suck. PS - Why pick on Republicans? |
||||
![]() |
Robert White 08/08/03 04:22:51 PM EDT | |||
Please permit this petty, but well-intended reminder. It is traditional to end questions with a question mark '?', and to reserve the apostrophe-s combination to indicate possession and contraction, rather than plurality (as in, "today's", not as in "analyst's"). A clear writer would indicate the end of a sentence, not with a comma, but with a period or a colon: Is that not clearer? Before we take the speck out of our brother's eye, let us first remove the log from our own. We can more effectively criticize academia when we take care to express our ideas with proper punctuation. Of course, my hat's off to non-native English speakers who struggle with our difficult language. But sometimes we engineers act as though our engineering degree entitles us to be sloppy with our communication. |
||||
![]() |
Tony Bereshnyi 08/08/03 09:33:06 AM EDT | |||
The business analysts are the people who understand the businesses,and are the creator of the business processes. Functional requirements are the interpretion of those business processes. When will the academia make those distinctions between processes(hands on) and automated processes(computer), or Both(conceptual integration) among there curricular. |
||||
![]() |
Dave M. 08/07/03 09:52:17 PM EDT | |||
Right on - and let me add - Analysts are whores that need to be taught what is really happening in the SW industry by SW vendor sales people. |
||||
- It's the Java vs. C++ Shootout Revisited!
- Patterns for Building High Performance Applications
- Asynchronous Logging Using Spring
- Java for Programmers (2nd Edition)
- Cross-Platform Mobile Website Development – a Tool Comparison
- Three Buzzwords That Every CIO Hears but One They Should Listen To
- Write Once Run Anywhere or Cross Platform Mobile Development Tools
- Immersing into JavaScript Frameworks
- Workday Reportedly Prepping to Go Public
- Cloud Expo New York: The Java EE 7 Platform - Developing for the Cloud
- Book Review: Sams Teach Yourself Java in 24 Hours
- OpenOffice.com Lives
- Book Excerpt: Introducing HTML5
- Adobe Sends Flex to the Apache Foundation
- Five Years Waiting for JRE 7: Is It Justified? (Part 1)
- Book Excerpt: Java Application Profiling Tips and Tricks
- i-Technology in 2012: Five Industry Predictions
- It's the Java vs. C++ Shootout Revisited!
- Patterns for Building High Performance Applications
- OpenXava 4.3: Rapid Java Web Development
- The Next Web Architecture
- Asynchronous Logging Using Spring
- Java for Programmers (2nd Edition)
- Is Write Once Run Anywhere Ever Going to Be a Reality?
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- JavaServer Faces (JSF) vs Struts
- The i-Technology Right Stuff
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- What's New in Eclipse?
- i-Technology Predictions for 2007: Where's It All Headed?



















