ExamGecko
Question list
Search
Search

List of questions

Search

Related questions











Question 64 - MCPA - Level 1 discussion

Report
Export

Say, there is a legacy CRM system called CRM-Z which is offering below functions:

A.
Customer creation
Answers
A.
Customer creation
B.
Amend details of an existing customer
Answers
B.
Amend details of an existing customer
C.
Retrieve details of a customer
Answers
C.
Retrieve details of a customer
D.
Suspend a customer
Answers
D.
Suspend a customer
E.
Implement a system API named customerManagement which has all the functionalities wrapped in it as various operations/resources
Answers
E.
Implement a system API named customerManagement which has all the functionalities wrapped in it as various operations/resources
F.
Implement different system APIs named createCustomer, amendCustomer, retrieveCustomer and suspendCustomer as they are modular and has seperation of concerns
Answers
F.
Implement different system APIs named createCustomer, amendCustomer, retrieveCustomer and suspendCustomer as they are modular and has seperation of concerns
G.
Implement different system APIs named createCustomerInCRMZ, amendCustomerInCRMZ, retrieveCustomerFromCRMZ and suspendCustomerInCRMZ as they are modular and has seperation of concerns
Answers
G.
Implement different system APIs named createCustomerInCRMZ, amendCustomerInCRMZ, retrieveCustomerFromCRMZ and suspendCustomerInCRMZ as they are modular and has seperation of concerns
Suggested answer: A, C, D, E, F

Explanation:

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.

asked 18/09/2024
Matteo Picchetti
28 questions
User
Your answer:
0 comments
Sorted by

Leave a comment first