Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
IT

95% of IT Projects Not Delivered On Time 654

An anonymous reader wrote " The Globe and Mail reports that 'A new report conducted by market research firm Info-Tech Research Group says 95 per cent of information technology groups are not delivering some number of projects on time or to the full satisfaction of the business executive.' The article goes on to discuss the reasons for this pervasive (perceived?) problem. The article mentions Info-Tech's reasons: unrealistic time frames, staff shortages, and poorly defined project scope. However, the article's author lays the blame with vendors."
This discussion has been archived. No new comments can be posted.

95% of IT Projects Not Delivered On Time

Comments Filter:
  • Phew!!! (Score:5, Interesting)

    by Skraut ( 545247 ) on Thursday March 31, 2005 @11:58AM (#12100364) Journal
    I'm still working on a project due this past Monday.

    Thanks /. a copy of this story now sits on my boss' desk.

  • Comment removed (Score:5, Interesting)

    by account_deleted ( 4530225 ) on Thursday March 31, 2005 @12:00PM (#12100402)
    Comment removed based on user account deletion
  • Not Suprising (Score:2, Interesting)

    by pianoman113 ( 204449 ) on Thursday March 31, 2005 @12:01PM (#12100412) Homepage
    I'm sure that 95% of IT shops have little to no software engineering. Until IT Depts. as a whole start to realize the value of things like defect tracking, estimation, time tracking, coding standards, and the like there will be no improvement in this area.
    It is not necessary to impliment the full-blow SEI CMM to produce good software on-time. If developers would take the time to first make reasonable estimates of how long it will take to finish a project and then track how much time they actually put into it, we might start to see some improvement.
    On the management side, when managers start to realize that software is not developed instantly and that problem solving takes time we might be able to reduce the number of features that are packed into a piece of software without extending the schedule.
  • by Flamesplash ( 469287 ) on Thursday March 31, 2005 @12:06PM (#12100496) Homepage Journal
    I'd be morelikely to conclude that this means the schedules are simply wrong. it's so difficult to plan a correct schedule, and asking developers how long they think XYZ will take doesn't really work well.

    Have there been any advances in scheduling technology? Like profiling developers over the types of software they write, etc.. ?
  • VERY true (Score:5, Interesting)

    by JeanBaptiste ( 537955 ) on Thursday March 31, 2005 @12:08PM (#12100523)
    "Could it be that marketing is always overselling the product?"

    I work with OCR/ICR technologies. NO SALESPERSON should EVER be allowed to sell this without taking a month long training course about what it actually does.

    I can't count the number of times customers were expecting 100% accuracy because thats what the salesman sold them.
  • In my experience (Score:5, Interesting)

    by Fnkmaster ( 89084 ) on Thursday March 31, 2005 @12:09PM (#12100530)
    This is almost always because the scope of a project changes between when it's initially described and when it's delivered. A majority of projects I've been involved with fall into one of two categories:

    1) requirements are agreed on, seem reasonable enough, but then detailed specifications are drawn up and client keeps pushing to add more things to specs until you have a 120 page document that will take 2 years to deliver. If, however, you tell the client it will now take 2 years vs. the 5 months you said when you were looking at a 2 page requirements document, they will cancel the project, and if they weren't paying for the requirements phase, forget about collecting any money for them (why you should always get paid for all phases of project planning). Since you can't do this, the client will eventually get upset, even though it's their own fault.

    2) Project is delivered very early in prototype form, only to have the client say they want 50 more features that they forgot to describe in the requirements process, but they refuse to pay more, and refuse to acknowledge that the time frame must be pushed out to accomodate their new requests.

    Yes, I've managed client relationships before and large (multimillion dollar) implementation and customization projects. I have reasonably good people skills, and still found these problems generally insurmountable when my client's company had a completely nontechnical person in the role of project sponsor and manager on their side.

    The best predictor of success of a project in my experience are the lines of reporting and control in the client's company, and the existence of some technical knowledge in a position of responsibility and authority. If their CIO or President or whoever is the ultimate decision maker has a senior arhitect or tech VP that knows their shit AND functions as a trusted aid in the decision making process, these issues can usually be bypassed. If there is no senior source of technical knowledge, you can kiss the entire project's ass goodbye. Try to get as much money as possible from the client while it's going on, but forget about the project being "successful" in how its received by management.
  • Re:In other news (Score:3, Interesting)

    by leerpm ( 570963 ) on Thursday March 31, 2005 @12:10PM (#12100538)
    Mod parent up. While I don't want to see a return to the excesses of the late 90's, I think some blame has to be layed at the feet of management and customers too. Ask for more features, with fewer resources to implement them and guess what slips?

    There is a good saying: Fast, Cheap, and Good. Pick two. You can't expect to deliver great software on time with a lack of appropriate resources.
  • Optimism (Score:5, Interesting)

    by delta_avi_delta ( 813412 ) <dave.murphy@[ ]il.com ['gma' in gap]> on Thursday March 31, 2005 @12:12PM (#12100572)
    We had some very good project management classes in college. During one, the lecturer asked us to give answers to a pop-quiz, but we could give the answer as a range, for example, for "How long is the Danube" you could guess "1000-1500km" with no limits.

    Even with the benefit of fixing our estimates as we liked, the entire class did very poorly. The morals of the story were

    a) people are over optimistic in the accuracy of thier predictions

    b) even, in our case, when we could have given zero-to-infinity ranges, we tied ourselves to restrictively narrow frames.

    I thought it was fascinating, it's one of the few classes I remember vividly.
  • by CrankinOut ( 629561 ) on Thursday March 31, 2005 @12:52PM (#12101062)
    A summary should give enough information to portray accurately the article's content. This title misrepresents the facts. The article states that most IT projects end successfully and on time. That's a better than 500 batting average.

    Second, the article shows some flaws as well. Because 5% reported that they are always on time and budget, the researchers concluded that 95% were not. That's bad science, letting the observed lead to conclusions about the unobserved.

    Finally, the larger the project, the harder it is to define an end point. Tweaking a screen to change a color is certainly doable, but may take weeks to get to in the project list. Implementing a major project that requires lots of unknown elements, such as a system conversion, cannot be considered a plan, but an estimate. And when it comes to estimates, it's very hard to get *anyone* to be less than optimistic.

    For an interesting read on project planning and estimating, check out Elihu Goldratt's book, Critical Chain, which shows the application of his Theory of Constraints to project management.

  • Why projects fail (Score:2, Interesting)

    by kilodelta ( 843627 ) on Thursday March 31, 2005 @12:54PM (#12101089) Homepage
    It's because there isn't project management in place, or the project management is weak.

    I work in a place that just recently started implementing Project Management. The biggest problem I see is that if you don't have buy-in by upper management you'll be fighting a battle of critical change requests on a constant basis.

    We just had one project take place that was mandated but never went through PM at all. Not even a requirements document was produced. It was a nightmare that touched 75% of the I.T. staff.

    Had PM actually been followed the process would have started back in November of 2004 and then the blame would have been off the plate of I.T. But for fear of stepping on toes I.T. management decided not to follow its own procedures.
  • Re:This is why (Score:4, Interesting)

    by Psychotext ( 262644 ) on Thursday March 31, 2005 @12:59PM (#12101142)
    Couldn't agree more. We've had plenty of conversations like this:

    Customer: Joe Bloggs says his company can do it for (stupidamounts) in (notime)

    Us: OK, we've got no problem being competitive. Can we just check that their system is being designed to the following standards ?

    Customer: They didn't mention it, but I'm sure it must be included.

    Us: I see, and is our support agreement in line with what they are offering?

    Customer: * Thumbs their document * - Don't see anything about support. But they're cheaper - You must be trying to have us over!

    Us: ...

    ...and yes, I've been accused directly of trying to "Have one over" on a customer because our prices were higher than someone else. In those circumstances it's better just to walk away as you're never likely to have a successful relationship on your hands. :) It's the age old story for the customer, pay peanuts - get monkeys.
  • Let me guess... (Score:1, Interesting)

    by Anonymous Coward on Thursday March 31, 2005 @01:15PM (#12101313)
    you're some sort of Agile Process Improvement Consultant, right?
  • by infinii ( 27811 ) on Thursday March 31, 2005 @01:19PM (#12101373) Homepage
    RUP or XP don't do anything to solve the actual problem, that being that requirements change but budget and timelines are rarely updated in a fair manner.

    I'd argue that having constant client interaction (XP) actually hinders progress because you give them opportunity to constantly refine (read 'change') the requirements. Hey no problem with me but someone has to associate a cost with this, nothing is free.

    The whole XP methodology is fine for reliably delivering systems that the user actually wants but it does nothing to do so in a timely fashion, which is the point of the article.

    Housing developers aren't expected to change the foundation and add entire sections to a house after the project has started, without delay. Yet we are expected to perform this magic because the client and management don't equate the bits n bytes in our projects the same as natural resources in any other industry.

    Want to know the worst thing a developer can do? Work on some side project to mock something up to impress the boss, demo it and wow them beyond belief. Problem is, you only took a weekend to hack that demo together but the boss doesn't understand that there is no framework in place to extend it, no authentication, no connection to an actual backend/db, no error handling, no logging, no nothing, just a fancy bun with condiments but no hamburger patty inside.
  • Yep. (Score:5, Interesting)

    by JustNiz ( 692889 ) on Thursday March 31, 2005 @01:37PM (#12101578)
    I'm a software developer now resident in the USA for about 5 yrs. Preivious to that I've been a developer and consultant working all over europe.

    In my experience, a much higher percentage of European projects are delivered on time than US ones. The simple reason is that in Europe, engineers are more respected and are usually tightly involved with the requirements gathering/planning phase.

    Unfortunately in the US it usual practice to keep engineers away from clients and only involve them when everything is already agreed on paper. This means that the engineer gets a garbled requirement to work from, and the technical decisions have already been made/commited to by someone without any technical skills (i.e. sales or management).

    The net result is that the engineer is expected to implement someone elses bad design that usually misses important aspects or doesn't address the actual problem, in a hopelessly optimistic timeline. Furthermore god help the engineer if the customer isn't kept happy.
  • by Oloryn ( 3236 ) on Thursday March 31, 2005 @01:44PM (#12101658)
    On an unrelated note: I wonder how project planning estimate accuracy correlates with the experience level of the person making the estimate. Because if the IT industry tends to burn out the young people os that there are't many older IT people, that could contribute as well.

    For a good look at this, see Tom DeMarco's "Controlling Software Projects". One of Tom's points is that one reason we are so bad at estimation is that we so rarely do it. What we often oall estimation is often actually more like negotiation: "How long will it take you to do X?" "Three months" "No, that's too long" "How about 2 months?" "OK, thanks for the estimate". Instead of actually trying to predict how long it will take, you're negotiating what the schedule will be.

  • Re:Nah (Score:5, Interesting)

    by Coryoth ( 254751 ) on Thursday March 31, 2005 @01:51PM (#12101731) Homepage Journal
    I think that's exactly the problem with software expectations. They always assume that building software is like building a house, or a bridge, or a toaster. In other words, they always assume that building software is done by experienced people who've built nearly identical software systems before.

    When an engineer designs and builds a new bridge it is entirely possible that no bridge like it has ever been designed or built before. Sure, there are some base cases that just get churned out, but there are also big, new, creative designs that occur for bridges. How is that bridge engineers usually manage to not have their bridges falling down all the time? Well, for starters the designer doesn't run with a "build and test" mentality. There are formal methods for bridge design, and if you assume the properties of various basic components, there are methods to prove the stability and properties of the bridge. Did you know that there are formal methods for software design, and if you assume the properties of basic components (like hardware, OS , etc.) there are methods to prove the stability and properties of the software?

    Yes, formal software methods are hard and time consuming compared to just building and testing. Formal bridge design is hard and time consuming compared to just building and testing.

    For some reason we accept that software should be just thrown together rather than properly designed and proved. Yes, there are plenty of projects for which the level of formality I'm talking about simply isn't required - that's fine. My point is that there are plenty of projects for which the level of formality I'm talking about would be a damn good idea - yet it is never even contemplated let alone used. At worst you should be considering some level of formality for just those components of your system that are most critical.

    Jedidiah.
  • Re:Nah (Score:1, Interesting)

    by Anonymous Coward on Thursday March 31, 2005 @02:25PM (#12102124)
    The problem is not as simple as your answer would lead people to believe. You can, of course, formally validate that a program works as planned. You can use clean-room software building techniques and in the end have a (near) bug free implementation.

    However (and it's a big however), it still doesn't mean that your solution is correct! Did you get the requirements right? Is your system what the users expected? Is the interface layout easy to use? Is it fast enough to be useful? Does it add value to the customers toolset? These are all questions that formal software techniques don't address. And the only way to address them is to "build, ask, and test."

    You can't generalize normal software development into engineering. Some of it (for instance, the stuff that keeps the space shuttle from crashing back to earth) COULD benefit from those techniques. However, this certainly doesn't fall into the "normal IT" category.

  • Re:Nah (Score:4, Interesting)

    by iabervon ( 1971 ) on Thursday March 31, 2005 @02:52PM (#12102452) Homepage Journal
    Actually, good civil engineers do have a "build and test" mentality, and the ones who don't have their bridges fall down. The thing is that their tests are performed on models and on the materials. The reason they don't build bridges and test them is simply that the cost and danger of having a bridge fall down is too great, so they do enough testing on smaller parts that when they actually build a bridge, they can be sure that it will work.

    With software, the construction costs are negligable and the costs of a full-size model failing are also trivial. The correct engineering discipline in this case is to do the testing on the actual software.

    In order to use a proper engineering discipline for software, you need to document what the code is supposed to do, all of the assumptions about the state of the system, and so forth. Then you need to test whether the actual code does what it is supposed to and maintains the constraints on the data. But you only do a little of this with theory and formal methods; most of it needs to be done by actually trying the code in various circumstances. Traditional engineering is done with a lot of testing of parts, testing of models you hope are similar, some simulation, some intuition, a bit of theory, and a big final inspection.

    Now, it is true that a lot of the engineering practices are missing in the software world. But the things people actually do in the software world are a part of engineering; just not a complete method. And there is an unfortunate tendancy towards producing extra work which is not actually useful in the name of adding superficial similarity to different parts of the traditional engineering process. It is a bit like asking a civil engineer to produce a drawing of a new bridge not to scale without any information about the materials or the site.

Software production is assumed to be a line function, but it is run like a staff function. -- Paul Licker

Working...