Maintainability and Reusability
Maintainability It is the ability of the system to undergo changes with a degree of ease. In simple words, how easily changes can be made into functionality to meet new business requirements. Points to be considered:Industry standard coding standards.GoF and other design patterns.TDD or ATDD techniqueRESTful API standards.DDD patterns to solve complex domain.Anti-Corruption Layer (ACL) between modern and legacy system. Reusability It is the ability of the component or sub-system which can be reused in other applications or in other scenarios. It minimizes the duplication of components and reduce the implementation time. Points to be considered:GoF Design Patterns.Designing reusable components and sub-systems.Usage of code analysis tool to identify redundant code.
