The code should be readable which will help in quickly debugging the code in case of failure. Labeling with proper comments is recommended which will help understand flow of the code. Coding standards should be followed.
Break code to keep it simple. For complex code, learning curve becomes steep for support team to carry out production support of acceptable quality. Also too many function calls to multiple code elements complicates the code. This delays issue resolution time due to analysis time that will be required to debug the logic, thereby affecting SLA.
Design Consideration should be given to add features to restart the code from the point it failed. Code should restart without breaking the process. This will save support team efforts of analyzing the code.
Design and Code should be optimized to keep its run time as short as possible. Basic techniques that can be implemented are parallel data processing to reduce CPU consumption, database techniques for faster response, data processing techniques for better memory consumption etc.
Needless to say that optimized code is the key to achieve Service Level Agreement target.
Use of generic/reusable code will decrease learning curve for support team.
To achieve maintainability and optimized performance to meet SLA targets in production environment, Development team should adhere to best practices which will allow support team to cope up with new releases and evolving business demands.
Bitwise has many success stories of working on combination of Development and Maintenance / Production Support projects. Our experience has evolved to framework driven Development which is based on best practices that ensures optimal performance in production environment. Below are few benefits that are derived from framework-driven Development to ensure consistent and predictable quality, time and cost.
- Optimal performance due to established code standardization framework
- Ease of code maintenance
- Efficient design to achieve rerun ability