Maintenance: the cost for software vendors and what it means to your organization

16
Software maintenance: the cost for vendors and what it means to you… Nicolas C. Hans dotCast Consulting Services September 2008

description

 

Transcript of Maintenance: the cost for software vendors and what it means to your organization

Page 1: Maintenance: the cost for software vendors and what it means to your organization

Software maintenance: the cost for

vendors and what it means to you…

Nicolas C. Hans

dotCast Consulting Services

September 2008

Page 2: Maintenance: the cost for software vendors and what it means to your organization

Maintenance, the last line on the invoice

Software maintenance has bad

press with both buyers and

vendors:

“el impuesto revolucionario”

An annual cost of 12 to 20%

of the list price for large

systems

As part of support costs,

software maintenance fees

have a significant impact on

the Total Cost

of Ownership/Operation (TCO)

Page 3: Maintenance: the cost for software vendors and what it means to your organization

The cost of maintenance for software vendors

“The modification of a software

product after delivery to correct

faults […] improve performance […]

or to adapt the product to a

modified environment”

The total cost of system

maintenance for a vendor is

estimated to be at least 60%

of the total product life cycle costs

Requirements Analysis 3%

Specification 3%

Design 5%

Coding 7%

Testing 3%

Operations & maintenance 67%

Source: ISO/IEC 14764 and “Principles of software engineering and design”,

Zelkowitz, M.V. Shaw, A.C., and Ganon, J.D., 1979.

Estimated cost of software

engineering and design

Page 4: Maintenance: the cost for software vendors and what it means to your organization

Maintenance, the hidden part of the iceberg

Software is a product whereas

maintenance is a service

Page 5: Maintenance: the cost for software vendors and what it means to your organization

Maintenance, the hidden part of the iceberg

Software is a product whereas

maintenance is a service Requirements Analysis,

specifications, design, coding

and testing1/3

Page 6: Maintenance: the cost for software vendors and what it means to your organization

Maintenance, the hidden part of the iceberg

Software is a product whereas

maintenance is a service

Two recent trends

in the software industry try

to switch the paradigm:

Open Source Initiative(GNU GPL)

Software As A Service (SaaS)

Requirements Analysis,

specifications, design, coding

and testing1/3

Operations & maintenance

2/3

Page 7: Maintenance: the cost for software vendors and what it means to your organization

There’s more to maintenance than bug fixes…

Corrective maintenance

Bug fixing (“residual errors”)

Trigger: a problem report from an end-user

Adaptive maintenance

Adapting software to changes in the hardware or O/S platform

Trigger: none. Monitoring the software environment

Perfective maintenance

Enhancing the system features and functions

Trigger: a modification request from an end-user

Preventive maintenance

Increasing a system’s maintainability by updating documentation,

commenting code, improving the modular structure of the system

Source: ISO/IEC 14764

Page 8: Maintenance: the cost for software vendors and what it means to your organization

Users drive the maintenance effort…

Corrective,

20%

Adaptive, 25%Perfective,

50%

Preventive, 5%

Source: “Software maintenance management: a study of the maintenace of computer application

software in 487 data processing organizations”, Lientz, B.P. and Swanson, E.B. 1980

Page 9: Maintenance: the cost for software vendors and what it means to your organization

Maintenance issues faced by software vendors

Vendors face a number of issues when maintaining software systems:

Unstructured code

Poor development practices

Insufficient knowledge of the maintenance team

Original developers rarely ensure long-term maintenance

Lack of documentation

Understanding of user environment is limited

Software maintenance has a bad image

It’s the last wagon of the software development cycle

Page 10: Maintenance: the cost for software vendors and what it means to your organization

Specifics of software for broadcast environments

Bespoke developments

Number of specific integrations rapidly give way to custom solutions

Mission critical environments

From black screens to dead air

High profile users

Floating standards

MOS, MXF…

Regulatory issues

Amortization of broadcast specific devices is often different

from IT ones requiring for longer support of legacy devices

Requirements of as-run logs, unions,…

Page 11: Maintenance: the cost for software vendors and what it means to your organization

Factors that directly impact maintenance costs

1. Size

The larger a system, the larger the effort to maintain it

Maintenance=(complexity)

2. Age

The older the system, the more legacy of changes needs to be taken

into account, the less likely the original development team available

3. Number of inputs/outputs

Integration with third party systems

4. Documentation (or lack of)

Page 12: Maintenance: the cost for software vendors and what it means to your organization

What to look for when buying

maintenance contracts…

Page 13: Maintenance: the cost for software vendors and what it means to your organization

Practice due diligence of maintenance services

Check the vendor’s infrastructure

Do they have a dedicated support and maintenance team?

How can users submit problem reports and modification requests?

Do they have a central repository and queuing system?

Do they have a user group?

Do they provide 24/7 hotline services?

Review the Service Level Agreement (SLA)

Updates and upgrades

Response times for bugs and change requests

Penalties for delays and downtime

Page 14: Maintenance: the cost for software vendors and what it means to your organization

Negotiate your maintenance fee

Remember that for some vendors the logic is to “give away the razor and

charge for the blades”

Negotiate purchase price first…

then the maintenance price,

then the impact of paying upfront 3 to 5 years maintenance fees (if

your organization can afford it)

Negotiate maintenance cost on the basis of the purchase price instead

of the list price

Setup a penalty system if SLAs are not met (service credits)

Beware of annual increases in maintenance cost…

Page 15: Maintenance: the cost for software vendors and what it means to your organization

Optimize the service that you get

Train your support team: your own support staff will be a lot quicker

to solve issues than the vendor’s hotline

When implementing a system for the first time, hire consultants

that know the product well and learn from their experience

Minimize the amount of customizations required

Upgrade to the next release as soon as possible

Have a stand-alone test system to validate updates and upgrades

Document your system

Invest in the relationship with the vendor’s support team

Attend training sessions organized by your supplier

Make sure that your supplier is well informed about your plans

Source: http://www.supportandmaintenance.org/support/self-service/230-gain-more-from-your-software-supplier.html

Page 16: Maintenance: the cost for software vendors and what it means to your organization

A few worthwhile links:www.supportandmaintenance.org

Software Maintenance Maturity Model (SMmm)

Nicolas C. Hans

[email protected]

+33 687 549 166

http://www.slideshare.net/secret/t1wiQlQ2UDt2PY