Answered step by step
Verified Expert Solution
Question
1 Approved Answer
There exist two servers that provide the following services for clients: Server #1: int Service1(int, int, int) float Service1(float, int) int Service2(int, int) void Service4
There exist two servers that provide the following services for clients: Server \#1: int Service1(int, int, int) float Service1(float, int) int Service2(int, int) void Service4 (int L[], int N, int SL[]) // N and list L[] are input parameters and SL[] is an output parameter Server \#2: float Service1(float, int) float Service2(float, int) int Service2(int, int) int Service3(int, int) void Service4 (int L[], int N, int SL[] ) // N and list L[] are input parameters and SL[] is an output parameter In addition, there are two clients: Client_A and Client_B B Client_A may request the following services: float Service1(float, int) int Service3(int, int) void Service4 (int L[], int N, int SL[]) Client_B may request the following services: int Service2(int, int) int Service1(int, int, int) void Service4 (int L[], int N, int SL[]) The client processes do not know the location (pointer) to servers that may provide these services. Devise a software architecture using a Client-Broker-Server architecture for this problem. In this design the client processes are not aware of the location of servers providing these services. - Provide a class diagram for the proposed architecture. In your design, all components should be decoupled as much as possible. - Provide the pseudocode for all operations of the following components/classes: - Broker - Client Proxy of Client- A - Server Proxy of Server-1
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started