Camulos Consulting

Camulos Consulting

> Software Maintenance for internal code.  The Code Accord

------------------------------------------------------------------------------

> Business Objectives

There are 3 primary business objectives or goals which will be addressed by a Code Accord. 

//Support

It is a common problem for organisations who have developed software, either through internal developers or external providers, to be able to provide ongoing support and maintenance for these products.  We are proposing to provide that ongoing support, fixes for issues and potentially improvements as the software code ages and the environment around it changes. 

Internal developers often end up in a cycle of support and maintenance for existing products and don't have the time or capacity to develop new innovations.  Similarly they can often end up not spending enough time resolving issues or keeping code compatible in favour of new or more interesting projects. 

We are proposing to give you support for your software.  It is rare that you purchase something "Off the Shelf" and don't receive a level of comfort in the ongoing support, bug fixes and issue resolution.  Consider whether you have this level of comfort for your existing internally developed software products. Contemplate how much you have invested in your custom software product? …A fair investment and one that should be supported.  You should estimate 10% to 20% per year on support requirements for resolving issues and fielding questions. 

//Keeping software compatible

To keep software from moving into a legacy zone run on old hardware and old operating systems they need to be reworked as new Operating environments are being rolled out.  This includes new versions of Office/Access or Internet Explorer (or Chrome or Firefox).  For business critical systems, this should mean a 50% re-work of code every couple of years to keep software compatible and operational.

//Constant improvement

Systems need to be improved as new innovations are realised or environments around them change.  How else do you keep up to date with competing markets and user expectation?

This particular figure can vary.  These are hard to put an actual number on but can be negotiated in the price to have them included. 

> How it works

The Code Accord is an agreement for Camulos Consulting to look after the software code on your behalf.  Depending on the product Tier will depend on what you receive.

Tier1.supportOnly();

[x] Incident tracking;

[x] Incident triage;

[x] Recommendation for resolution and quote to resolve;

Tier2.preventativeSupport();

[x] Tier1() included;

[x] Code assessments and recommendations;

[x] Test plans developed;

[x] This support plan is designed to reduce complexity and provide tools for improved development practices

Tier3.fullSupport();

[x] {Tier1(), Tier2()} - both included;

[x] Code updates;

[x] Issue resolution (within an agreed scope);

[x] Testing;

[x] Release Management

Tier4.fullSupportAndMaintenance();

[x] {Tier1(), Tier2(), Tier3()} - all included;

[x] Development of application for ongoing compatibility with x major releases and y minor releases per year;

[x] Potentially an amount of extra features added or development hours used per month/year

//Some key points to be understood:

[x] The software remains yours, you keep your IP (unless of course you elect otherwise)

[x] The platform remains where it is (we can collectively elect to move it, or host it under recommendation or for other reasons of course but it is fine to leave it where it is)

[x] Developers working on the code may spend time both in your office and externally depending on the state of the code and the requirement to gain access to other associated systems such as AD

[x] The software is still yours, we respect your ownership and are looking after this code as if we were one of the team.

//Some things that we like to ensure exist are below.  Some of these can be creating in the "on-boarding" process.

[x] Test plans and test processes

[x] Clear agreed release cycles

[x] Source code and version management including ensuring there is a good back up procedure.

[x] Application architecture documentation.

> Good reasons to take up a Code Accord

[x] How valuable is the software to the organisation?  Should it be maintained and is it getting the maintenance it requires?

[x] Current cost to support may be too high in either direct cost or opportunity costs to other projects.

[x] How many hours per month are your developers spending on maintenance? How many hours per month should they be spending on maintenance?

[x] The next version of Operating systems, browsers and associated code, server hardware, server Operating Systems etc.  Have they been understood and plans to develop updated versions started/completed?

[x] What does it need to be compatible with which it is not currently? Is it compatible with the existing environment? Is it compatible with planned environments?

[x] SOE upgrades are a great motivation to consider​

[x] Developer turnover is a key reason.