Question
TheOpportunisticCompany Pvt. Ltd. Is developing a sensor-enabled vaccine carrier to take advantage of the Vaccine distribution efforts. The vaccine carriers are battery enabled fridges with
TheOpportunisticCompany Pvt. Ltd. Is developing a sensor-enabled vaccine carrier to
take advantage of the Vaccine distribution efforts. The vaccine carriers are battery
enabled fridges with sensors to monitor temperature and on-board logic to control the
temperature. The on-board logic also has hooks to report temperature, GPS location,
state of the fridge door, etc. to a REST-based API at certain intervals and at certain
events i.e. opening of the carrier door. Each carrier is identified through a 15 character
identification number consisting of lower case English alphabets and numerals which
has to be a part of each API call.
The company is developing a back-end software system to keep track of all the vaccine
carriers. Each vaccine carrier can be associated with a Trip-route for a particular day.
The trip-route is a graph superimposed on a map dictating the path the carrier is to take
to deliver vaccines to different locations and is set by the administrator. The software
system monitors each carrier to check whether they are conforming to the planned
route. If a carrier veers away from the route then there are multiple things that may be
interested in this event. For example, for low-risk vaccines, such an even will merit an
SMS to the administrator as well as an email report of the incident. However,
depending on the importance of the delivery, any discrepancy can also result in
notification to country managers and reports to the DGHS via API. What steps to take
in the event of a discrepancy should be configurable on a per-trip basis and it should be
easy to add new steps in the future.
The deviation from the planned route is an exceptional event that can be
calculated/determined from the data sent by the carrier. There are other exceptional
circumstances that are also of interest, i.e. unfavorable temperature. The design of the
system should allow for each data payload sent by the carrier to go through one or
more such checks. These checks should be configurable on a per-trip basis and the
design should allow to easily add newer checks in the future..
Q1. Draw the use case diagram for the system described in the case study.
Q2. (a) Name a maximum of three design patterns that you will use to solve the
design problem mentioned in the second paragraph (P2).
(b) Draw a high-level UML class diagram depicting the design of your solution
to the design problem mentioned in the second paragraph (P2).
Q3. (c) Name a maximum of three design patterns that you will use to solve the
design problem mentioned in the third paragraph (P3).
(d) Draw a high-level UML class diagram depicting the design of your solution
to the design problem mentioned in the third paragraph (P3).
Q4. Use the design in your answer to Question 3(b) and write the code of a class
whose responsibility is to check the temperature reported in the Carrier Data and
if it is above a certain threshold then it should send the appropriate notifications.
Assume that the threshold temperature will be given as a parameter to the
constructor when the object will be created.
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