Say, there is a legacy CRM system called CRM-Z which is offering below functions:
1. Customer creation
2. Amend details of an existing customer
3. Retrieve details of a customer
4. Suspend a customer
Correct Answer : Implement different system APIs named createCustomer, amendCustomer, retrieveCustomer and suspendCustomer as they are modular and has seperation of concerns
*****************************************
>> It is quite normal to have a single API and different Verb + Resource combinations. However, this fits well for an Experience API or a Process API but not a best architecture style for System APIs. So, option with just one customerManagement API is not the best choice here.
>> The option with APIs in createCustomerInCRMZ format is next close choice w.r.t modularization and less maintenance but the naming of APIs is directly coupled with the legacy system. A better foreseen approach would be to name your APIs by abstracting the backend system names as it allows seamless replacement/migration of any backend system anytime. So, this is not the correct choice too.
>> createCustomer, amendCustomer, retrieveCustomer and suspendCustomer is the right approach and is the best fit compared to other options as they are both modular and same time got the names decoupled from backend system and it has covered all requirements a System API needs.
Emmett
9 months agoMarylin
10 months agoLavina
10 months agoSerita
10 months agoBerry
10 months agoJackie
10 months agoOra
11 months agoMargurite
11 months agoKimberely
11 months agoKaty
11 months agoMiesha
11 months agoKirk
11 months agoCharlette
11 months agoRia
11 months agoLilli
2 years agoEdwin
2 years agoRaymon
2 years agoMy
2 years agoCecily
2 years agoNydia
2 years agoEloisa
2 years agoHannah
2 years agoChana
2 years agoHannah
2 years ago