Aims The purpose of this project is to gain experience in designing and building distributed systems. You will be expected to demonstrate that your solution meets the objectives set out in this...

Aims The purpose of this project is to gain experience in designing and building distributed systems. You will be expected to demonstrate that your solution meets the objectives set out in this document.
The ProblemDevelop a set of protocols/messages and build a reference implementation of devices in a smart environment. Your devices must publicise themselves and discover each other using Zeroconf, and they should communicate via gRPC. Two programming languages must be used to develop.
Your should begin by devising your own scenario. You can choose any smart environment. For example, a smart home, a smart office (printers, faxes, PCs), a smart meeting space (projector, laptops, PDAs, mobile phones) or a smart hospital (PDAs, table-style PCs, medicine containers, location trackers). In the above example each services provider i.e. projector can be thought of as an “entity”.
There must be a minimum of 4 separate services. It is key to specify what operations are supported on each “device”, for example it would be sensible for a projector to support and on/off function, a get state function, and a change input function (e.g. VGA, HDMI). Perhaps a media player function would support function to retrieve all playable files, and a corresponding play method, among others.
To demonstrate your implementation a simple GUI with devices and controllers should be built.
DeliverablesReport A short report which details the scenario, and services, you have chosen. Additionally this should specify the message formats for data exchange and service actuation.
The report must have all the headings of the marking scheme, if not you get ZERO for the report. Also for example if you do not have a section on “Error Handling” I won’t go looking for your error handling in the code. You have to tell me what you did for those marks.
Program CodeA project, or more than one, with all code, well commented. Code must also be available in a private GitHub repository, the repo must have a commit history, not a last minute code dump.
Marking Scheme• Report (5%)• 4 sufficiently complex services– Marks are equally distributed across the 4 services– One service must be written in a language other than Java• Use of jmDNS• Use of gRPC• Deployment• Error Handling
I mainly just need the programming aspect of the project to be done.
Mar 11, 2021
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here