Consider you are tasked with designing an e-commerce system for a bookstore. The system should allow users to search for books, add them to a cart, and purchase them. The system should also manage user accounts, inventory, and process payments.
a. Identify and describe the key functional and non-functional requirements of the system.
b. Using the requirements identified in 1(a) , develop a high-level class diagram for the e-commerce system.
c. Discuss how you would approach modelling the interactions between the system and external payment gateways. Include considerations for security and data privacy