You are requested to implement a simple IoT device management system. IoT devices
can be categorized into three main groups: consumer, enterprise, and industrial.
“Consumer connected devices include smart TVs, smart speakers, toys, wearables and
smart appliances. Smart meters, commercial security systems and smart city technologies
— such as those used to monitor traffic and weather conditions — are examples of industrial
and enterprise IoT devices. Other technologies, including smart air conditioning, smart
thermostats, smart lighting and smart security, span home, enterprise and industrial
uses.”1 An IoT device can be identified by many fields including category, Identifier, …
1- (2.5 mark) Describe the IoT data type, IoTdevice, using Java classes. Make sure
to use Java inheritance, an interface, and an abstract class.
2- (5 marks: 1mark/method) We want to implement a simple application that
manages the IoT devices. You are asked to develop a Java application that uses
an array to store all information regarding the IoT devices installed in a building and
using the newly created data type IoTdevice defined in 1). You should provide a
menu with the following options:
IoT Device Management System (CSC301, Fall2020)
1- Add a new IoT device
2- Delete all existing IoT devices given a category
3- List all existing IoT devices from one category
4- Check if an IoT devices exists based on its ID
5- Sort all IoT devices based on two criteria of your choice
Your choice? __
Please use the partial Java code provided with this assignment which prints the
menu. You MUST do this lab in groups of maximum two students. This Lab
counts for 7.5 marks. You should upload your work via the course website on time
before September 29th, 23:59. Any late submission will be penalized (-0.25 / day).
Evaluation: You will be evaluated based on a demo during which you will be asked
individually various questions.