MENU

The Difference Between Software Development & Software Maintenance

December 22, 2009 • Uncategorized

What are the differences between software maintenance and software development from a service point of view, and the consequences thereof for the maturity of software maintenance organizations.

It can be argued that software maintenance can be seen as providing a service, whereas software development is concerned with the development of products.

Differences between products and services affect the way in which customers assess their respective quality. Consequently, customers will judge the quality of software maintenance differently from that of software development. This in turn implies a need for different processes than those used by the average software development organization.

We will discuss two overall approaches to achieve a high-quality IT service organization which include these service-specific processes: ITIL and the Capability Maturity Model (CMM)

  • ITIL is a set of best practices widely used within the IT service industry.
  • CMM is a maturity growth model is a set of best practices (KPA) for software engineering & development

Here we will investigate the differences between software maintenance and software development from a service point of view. There are differences between products and services in general. These differences affect the way in which customers assess the quality of products and services.

In particular, service quality is assessed on two dimensions: the technical quality—what the result of the service is—and the functional quality—how the service is delivered.

It can be argued that software maintenance can be seen as providing a service, whereas software development is concerned with the development of products. Consequently, customers will judge the quality of software maintenance differently from that of software development.

In order to provide high-quality software maintenance, different and additional processes are needed than provided by a high-quality software development organization.

  • Services are produced and consumed simultaneously, whereas for products production and consumption can be separated. For example, a car can be produced first, sold a few months later, and then be consumed over a period of several years. For services the production and consumption has to take place in parallel.

Software maintenance is defined as (IEEE, 1990): “The process of modifying a software system or component after delivery to correct faults, improve performance or other attributes, or adapt to a changed environment”.

It is important that maintenance commitments be planned and documented. This works best if the maintenance organization and customer work together towards the specification of relevant and realistic maintenance service commitments (often called Service Level Agreement—SLA), based on the needs of the customer.

Examples of such conditions could be that the customer should use a certain format for documenting change requests or, in case of a bug, provide the maintenance department with the input that caused the fault to manifest itself. This includes the planning of the maintenance activities themselves, the transfer of the results thereof to the customer, the estimation of resources needed, the scheduling of maintenance activities, and the identification of possible risks.

IT Service Support covers configuration management, problem management, change management, help desk, and software control and distribution.  Whereas the Software CMM targets software development processes that are key to producing and implementing high quality software products.

Process, Software Engineering Institute, Carnegie Mellon University, SEI Series in Software Engineering, Addison-Wesley Publishing Company, Reading, Mass., 441 pp. Singer, Janice (1998) ‘Practices of Software Maintenance’, in Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, Los Alamitos, CA., pp. 139-145.

Frank Niessink received a MSc in Computer Science and a MSc in Economics from the Vrije Universiteit.

Related Posts

19 Responses to The Difference Between Software Development & Software Maintenance

  1. […] original here: The Difference Between Software Development & Software Maintenance … By admin | category: desk help it software | tags: are-key, change-management, cmm, […]

  2. […] the original post: The Difference Between Software Development & Software Maintenance … By admin | category: desk software support | tags: are-key, change-management, cmm, […]

  3. […] original here:  The Difference Between Software Development & Software Maintenance … tags: are-key, change-management, cmm, covers-configuration, help-desk, problem-management […]

  4. […] posted here: The Difference Between Software Development & Software Maintenance … Share and […]

  5. Thank you for sharing good information.

  6. kalpanaceo says:

    i just find a company Informatics Outsourcing, from Google search. They are a outsource Software Engineering Service company. They are providing the following services,

    1. Custom Application Development.
    2. Application Maintenance Service.
    3. Database Development Service.
    4. Database Maintenance Service.
    5. Software Testing Service.

  7. kalpanaceo says:

    I like this post. “The process of modifying a software system or component after delivery to correct faults, improve performance or other attributes, or adapt to a changed environment”.

    I find a company Informatics Outsourcing from Google search. they are also doing Maintenance and development service.

  8. android application development says:

    Magnificent items from you, man. I’ve remember your stuff prior to and you are just extremely magnificent. I really
    like what you’ve acquired here, certainly like what you’re saying and the way in which by which you assert it. You’re
    making it entertaining and you continue to care for to stay it sensible. I can’t wait to learn much more from you. This
    is really a tremendous site.

  9. Profile photo of Bob Anderson Bob Anderson says:

    Thank you very much, it is mostily common sense things when you know the IT Support Industry. Process, Service Level Agreements with users, Metrics you want to track, A method of collecting data, GOOD communicaiton with users and other team members. These seem like common sense things but you would be supprised on how many IT organizaitons do not have them and simply react to the next crisis, instead of keeping them from happening. Bob

  10. Winifred Menezes says:

    If you want to compare ITIL with CMM. You should use the CMMI (Capability Maturity Model Integration). CMM is no longer used, has not been used for 10 years.

    The CMMI model comes in 3 flavors CMMI-DEV, the CMMI for development of products, CMMI-ACQ, CMMI for Acquisition, which deals with the purchasing and acquisition of software systems and CMMI-SVC or the CMMI for Services.

    The latter is comparable to ITIL (change management, problem management,, alll service specific areas are convered). More over CMMI-SVC can be used in any service context – a hospital, an IT organization, taxi service, …

  11. Profile photo of Bob Anderson Bob Anderson says:

    Actually, if you want to compoare ITIL to anything it would be ISO 20000 or CMMI-SVC. However neither of these existed prior to 4 or 5 years ago. ITIL has been around since 1981. These others took their start from ITIL. I find ITIKL V3 Service LifeCycle to be the most sensible model of good service management out there today. Not complex and makes sense. Bob

  12. […] ->Continue reading “The Difference Between Software Development & Software Maintenance” » […]

  13. Shyju says:

    Thanks for the post. I liked it.

  14. Delilah says:

    Hiya very cool blog!! Man .. Excellent .. Superb ..
    I will bookmark your website and take the feeds also?
    I’m satisfied to search out so many helpful information here within the submit, we need develop extra strategies on
    this regard, thanks for sharing. . . . . .

  15. Hi there, I log on to your blogs daily. Your humoristic style is witty, keep
    up the good work!

  16. Helpful info. Lucky me I found your website unintentionally, and I am stunned
    why this twist of fate didn’t came about in advance!
    I bookmarked it.

    my web blog – search engine optimization – 123abcdef123456.com,

  17. Hey fantastic blog! Does running a blog similar to this take
    a massive amount work? I have absolutely no understanding of coding however I
    had been hoping to start my own blog in the near future.
    Anyways, if you have any ideas or tips for new blog owners please share.
    I know this is off subject nevertheless I just
    needed to ask. Thanks!

  18. Dilna says:

    Risk analysis and configuration management are key in case of software maintenance and you have rightly stated that planning of the maintenance activities should include the transfer of the results thereof to the customer, the estimation of resources needed, the scheduling of maintenance activities, and the identification of possible risks.

  19. I was very happy to search out this net-site.I needed to thanks in your time for this excellent learn!! I definitely having fun with every little little bit of it and I have you bookmarked to check out new stuff you blog post.

Leave a Reply

Your email address will not be published. Required fields are marked *

« »