I am answering following question:
- What will be the scope of project post launch agreement?
- What should be expected from Development company after project Go Live or launched?
- Technically what AMC i.e., Annual Maintenance Contract or Support agreement should contain?
Onsite, Remote, telephonic & off-site support for
- Fixing bugs and lacunas;
- Change Request/Additional Request/Modifications/ add-ons to the current implementation;
Bugs can be of high priority or medium priority which needs to be resolved.
Types of Errors:
There are various types of errors that a customer can face in his day to day operational activities.
Errors, which are agreed as valid, will be categorised as follows:
- A Bug
- A Lacuna
Definition of a BUG:
A problem that causes a program to produce invalid output or to crash (lock up). The problem is either insufficient logic or erroneous logic. For example, a program can crash if there are not enough validity checks performed on the input or on the calculations themselves, and the computer attempts to divide by zero. Bad instruction logic misdirects the computer to a place in the program where an instruction does not exist, and it crashes.
Type of Bugs:
- Category A – Serious errors that could (or did) cause disastrous consequences for the system in question.
- Category B – Serious or missing data related errors that will not prevent implementation.
- Category C – Minor errors that do not prevent or hinder functionality.
Explanation of Classifications
1. An “A” bug is a either a showstopper or of such importance as to radically affect the functionality of the system i.e.:
- If, because of a consistent crash during processing of a new application, a user could not complete that application.
- Incorrect data is passed to system resulting in corruption or system crashes
Example of severely affected functionality:
- Calculation of repayment term/ amount are incorrect.
- Incorrect credit agreements produced
2. Bugs would be classified as “B” where a less important element of functionality is affected, e.g.:
- A value is not defaulting correctly and it is necessary to input the correct value
- Data is affected which does not have a major impact, for example – where an element of a customer application was not propagated to the database
- There is an alternative method of completing a particular process – e.g. a problem might occur which has a work-around.
- Serious cosmetic error on front-end.
3. “C” type bugs are mainly cosmetic bugs i.e.:
- Incorrect / misspelt text on screens.
- Drop down lists missing or repeating an option.
Based on the category, the minimum turn-around time from Developer company would be:
Category A – Immediate response. Developer company will offer a resolution within a day (Working/Non-Working Day).
Category B – Response will be within a day. Developer company will offer a resolution within 1-2 working days.
Category C – Response will be within a day. Developer company will offer a resolution based on resource availability. A minimum guarantee of a resolution offering will be 1 week.
In the case of bug reporting, Developer company will perform the following steps:
- Talk to the customer, to re-create the error.
- Analyse the error category.
- Resolve it immediately if possible.
- Analyse whether the error is due to a customization/development or due to Data.
- If it is a customization/development the bug will be fixed by Developer company.
- If it is a Data error, it will be reported to Client for the error to be fixed by proper guidance.
- Based on point 5 & 6, provide a response to the customer as to when the error will be resolved. In case of a Category A error, Developer company will be committed to resolve the error – irrespective of the source of the error, within the time specified.
Definition of A Lacuna:
Generally, a lacuna is a gap in software functioning. These gaps are generally identified in unique scenarios, and therefore are difficult to uncover during the testing phase. Generally there is always a workaround to a lacuna. They get created when new modules are built on top of existing modules, wherein all the integration points between them are not covered completely. For eg. If a customer pays less money against an invoice amount and the company accepts that as a discount, the Tax payable by the company does not reduce proportionately. However, the tax can be adjusted using the service journals.
In case an error reported by the customer is a Lacuna, Developer company will do the following:
- Talk to the customer, to re-create the lacuna.
- Suggest a solution/work-around immediately if possible.
- Analyze whether the lacuna is due to a customization or due to Data.
- If it is a customization the Lacuna will be fixed by Developer company.
- If it is due to Data, it will be reported to Client for the Lacuna to be fixed by proper guidance.
- Based on point 5 & 6, provide a response to the customer as to when the Lacuna will be resolved.
Change Request or Additional Request Development
There will be some requirements which will be urgent to get developed. As businesses change, so does the IT system supporting it, change. All modifications/add-ons requested by the Customer will be managed by Developer Company. Developer company will consider modifications/add-ons as a new project or change request and will follow the standard implementation procedure of Requirements Gathering, Gap Fit, Development, Testing, Training, Deployment and Support for that. Developer company will provide an estimate to the client for the time required to do the Modification or change request. If the client accepts the estimate, the modification/add-on will be provided.
No company has a static set of employees. In today’s world where attrition rates are high, employees are constantly on the move. This can prove to be a critical factor in the smooth functioning of the IT system. Developer company will provide complete user training, either classroom based or one to one as the need arises. As part of its implementation package, the user manuals provided by Developer company will also be updated in case of modifications/add-ons/up-grades etc.
Whenever Customer wants to know about some data which is not shown in the admin panel or not developed as report will be provided by the developer by performing some queries or exporting table data.
The updates and developments should update following documentation which is always sync with the project.
- User Manual
- Application architecture and deployment guide (includes all the third-party tools used with their credentials)
- Database documentation
Monitor and Observation
Monitoring web servers or database servers and customer may need to change or scale server or redeploy the application. Also it is necessary to take backup regularly and to keep watch on the third party tools and services integrated in the application.
Above article is generic and not specific to any project. This may change as per the project behaviour and it’s type. Feel free to contact me if you have any question regarding this article or any project of support and maintenance.