Help Center/ ServiceStage/ FAQs/ Application Development/ Why Do I Have to Define Service Contracts?
Updated on 2024-10-31 GMT+08:00

Why Do I Have to Define Service Contracts?

The enterprise-level systems are in large scale use and involve many microservice components. Therefore, unified API management is a key requirement of enterprises. CSE uses contract management to meet this requirement.

For management: Through contract management, API definition files that comply with API description standards for microservices are defined. In this way, API development of multiple development teams can be standardized and coordinated. This reduces communication costs and facilitating management.

For development: During microservice development, different teams or even different independent software vendors (ISVs) can develop the same application or system based on the unified API definition file. This facilitates consistency maintenance for the overall system. For example, modules in a monolithic application are called using code and any API incompatibility can be resolved economically during early compilation. When microservices are decoupled, services are remotely called. Therefore, API inconsistency cannot be found during early compilation, resulting in high bug fixing costs. Using service contracts, contract design can be assured, changes can be strictly reviewed, and code can be reversely generated. This ensures API compatibility.

In addition, for small-scale systems that do not have high requirements on unified management, API definition files can be automatically generated through APIs.