Slashdot Mirror


Ask Slashdot: How Long Should Devs Support Software Written For Clients?

lucky4udanny writes "My client says any software/website we develop for them should be supported with bug fixes forever, with no further compensation. We have generally supported our work for two months, to give the client adequate time for real-world testing, after which we charge by the hour for all support. How long should a company fix bugs without compensation in software they developed? What is the industry convention?"

11 of 384 comments (clear)

  1. Too late to be asking.... by jmorris42 · · Score: 5, Insightful

    Dude! The support details are something that you should have had in writing before you even started working on detailed requirements.

    Both sides agree in writing on the scope of work, acceptance procedure, support, training, documentation, code disposition (work for hire, GPL, third party libraries, possibly even escrow), all of that stuff. Anything else just shows a total lack of professionalism.

    If you are now in a position of being asked to support it forever without anything in writing you have to decide which will be worse, cutting your losses now and writing off that client and everyone they will bad mouth (with some justification but they are equally guilty of not insisting on getting anything in writing) you to or digging yourself into a hole providing free support until they eventually toss that codebase. Which one you choose depends on far too many factors you haven't provided.

    --
    Democrat delenda est
    1. Re:Too late to be asking.... by pclminion · · Score: 5, Insightful

      How long the software should be supported for defects? Forever. Since the software doesn't wear out, any defect was developed there from origin, it's a reasonable expectation that when someone asks for something, it is asking for something without defects, so covering for bugs forever is the only sensible way to respect the contract.

      If you have a contract that actually makes you provide free bug fixes forever, then you signed a shitty contract. Software always has defects, this is simply a fact of life. Extremely rare defects, by definition, do not make themselves visible very often. The reason rare defects are not found during testing is precisely because of this. More comprehensive testing does not ensure zero defects -- it only ensures that whatever defects do remain happen exceedingly rarely, or under exceedingly improbable circumstances.

      It is quite reasonable, as a client, to expect a software maker to provide bug fixes for software they provide. It is equally reasonable for the software maker to request ongoing payment (commonly called "maintenance") to continue providing these bug fixes indefinitely. Both parties to the contract are making a risk tradeoff when they sign. The client is risking that they will pay a certain amount of money for the software (including the initial development costs and any ongoing maintenance costs) and never actually recoup this expense by using the software. The software maker is risking that they will charge a certain amount for development and maintenance and some defect will arise that will cost more to fix than they are getting paid to fix it.

      The two parties hopefully meet in the middle with a price and contract that seems optimal for both.

      Just because it's software, doesn't mean you let your eyes glaze over and throw basic economics out the window. Or, for that matter, the basic observation that humans are fundamentally fallible and you can't expect people to magically do things perfectly just because they work in a technical field.

      (Another factor in this is that it is actually not risk-free to fix bugs. Fixing bugs necessarily involves changing code. Changing code may introduce yet another defect, or expose a latent one.)

  2. Never. by LWATCDR · · Score: 5, Insightful

    " after which we charge by the hour for all support. How long should a company fix bugs without compensation in software they developed?"
    You have your answer. You charge by the hour for support including bug fixes. Only slaves work for free.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  3. The client is always right by Wonko+the+Sane · · Score: 4, Insightful

    If they want lifetime support then price your services accordingly and offer that as a option. Chances are if you give them two quotes, one with your typical policy and another one priced for what they are asking for, they'll choose the one that makes the most sense.

  4. Re:Your bugs.. your problem by Anonymous Coward · · Score: 5, Insightful

    >>They didnt code it, you did.

    You didn't sign off on the acceptance testing, they did.

  5. Be careful... by billster0808 · · Score: 5, Insightful

    Clients have a funny way of making everything into a bug. Customer changed their minds about something after they've already signed off on it? Bug! Your code doesn't run on an OS that didn't even exist when you wrote the software? Bug! Customer wants a new feature? Bug!

  6. Re:Your bugs.. your problem by jdastrup · · Score: 5, Insightful

    Why should they pay to fix your mistakes?

    Once the client signs-off on it, they accept the bugs as well as the features.

  7. Re:Your bugs.. your problem by sideslash · · Score: 4, Insightful

    Not necessarily.

    Bespoke software (written for hire) that is owned by the customer should typically NOT have an expectation that the developer(s) would come back and fix bugs for free, especially for a time and materials work arrangement. Fixed bids can be different, but typically the customer is responsible to certify that it's "acceptable" on delivery and final payment, and after that point they're on their own (i.e. have to pay for further changes).

    Software like Microsoft's that is licensed or purchased does typically have an expectation of free bug fixes from customers, but unless it's in writing the customer should be prepared for the possibility that the company will refuse to fix it, particularly if it's old.

  8. After accpetance, it's pay-as-you-go by dbc · · Score: 5, Insightful

    A 60-day acceptance period sounds generous to me. Have them sign off on an acceptance letter. After that, it could be hourly, or they could pay monthly support that covers things like pro-active security patching and the right to call you with questions.

    Major software packages are sold with support. Oracle, for instance, gives their salesfolk lots of discretion to negotiate price, but *not* to discount the monthly support contract. That should tell you something about how the big boys think.

  9. Re:Ok no problem by Tridus · · Score: 4, Insightful

    That's one theory. But when someone decides to keep using the program on a new version of Windows and stuff changes, who gets to support that? Hell, I've seen Windows patches break stuff.

    Software does in fact tend to require ongoing maintenance from time to time, just like anything else.

    --
    -- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
  10. Re:Too late to be asking. (maybe not) by Registered+Coward+v2 · · Score: 5, Insightful

    Both sides know that there is no such thing as bug free software. Never has been. Never will be. Expectations to the contrary are not reasonable, and never have been. Expectations of indentured servitude went out with the 13th amendment, and no contract can bring that back.

    Expectations of being sued into indentured servitude, however, did not go out with the 13th (nor did indentured, only involuntary, servitude)

    --
    I'm a consultant - I convert gibberish into cash-flow.