Implement a web application that consumes real-time sensory

Assignment Help Software Engineering
Reference no: EM132374962

Designing User-centric IoT applications

ParkSmart (Smart Parking Recommender): An Overview

In this assignment, you will implement a web application that consumes real-time sensory data coming from parking sensors and provides a dashboard to monitor current status of on-street parking in the City of Melbourne. Furthermore, this application assists drivers in finding carparks by providing related information, that is, working on a smartphone in a web-browser.

Task 1: Invoking public web APIs:

A weather API will be used to provide the weather information (i.e. temperature and weather condition like rain, shower, cloudy, sunny) for a location. You need to call the right API methods and pass the right parameters, and then parse the JSON response to retrieve the current temperature.

The current temperature value will be displayed in the Dashboard when drivers search for a carpark.

These are some examples of weather APIs below, but you can find and use any other weather API. Make sure you use the free access.

Open Weather Map

World Weather Online's weather

Task 2 Parking Information and Status:

City of Melbourne has around 3000 in-ground on-street parking sensors which indicate if a parking bay is occupied or not. This information is available online through City of Melbourne's Open Data Platform1. Moreover, the Open Data portal also offers data about all parking signs and restrictions in Melbourne CBD. The Open Data portal provides programmatic access to these datasets including the ability to filter, query, and aggregate data.

Students should familiarise themselve with these APIs, and develop a search method that accepts geo- coordinates of a location (latitude and longitude) and returns live information about up to 10 parking locations within the radius of 500 meters from the provided location. This method should consume the APIs provided in Table 1, and produce the following information for each parking bay in JSON format:

• Bay ID: The unique ID of the parking bay where the parking sensor is located
• Parking Status: The status will either display: Occupied - A car is present in the parking bay at that time. Unoccupied - The parking bay is available at that time.
• Location: The latitude and longitude of the parking bay
• Restrictions
o Free: Indicates if the parking bay is free or metered.
o Duration: The time that a vehicle can park in the bay (assuming they can legally park there).
o Effective on public holidays: Does this restriction apply on public holidays ?
o Time: The time each day when the restriction applies (i.e. start time and end time)
o Days: An array of days where the restriction applies.

Table 1 - Open Portal APIs

The following text box represent an example of search method output. Please note in days, each day is mapped to an integer form 0(Sunday) to 6(Saturday).
Figure 1 Parking information example

Task 3 AWS IoT Core devices:

a) You should create 10 devices/Things in AWS IoT Core named as parking1, parking2... parking10. Whenever you start the ParkSmart application, you should connect to these 10 devices using AWS IoT Node JS SDK.

b) When a user searches for a location and you have retrieved parking bays (up to 10) using the search method, for each retrieved parking, you need to send a MQTT message to AWS IoT Core that contains the bay_id, status, and type of restriction for the current date and time (10 marks). For example, if the current time is Monday 10am, for the parking bay shown in Figure 1, the MQTT message should be as below:

c) Every two minutes, the application should check the status of parking bay (by invoking the correct Open portal API) and send a MQTT message to AWS IoT core if the status changes.

Task 5 ParkSmart Dashboard:

The dashboard should contain the following components:

a) Search bar: The dashboard should provide a location search bar with autocomplete feature that allows a user to search for parking near a location. Moreover, the search bar should convert the address to geo-coordinates. For this task, you can use any third party library.

After a user presses the search button, the application should call the search parking method. Moreover, it should fetch the weather in the given geo-coordinates.

b) Weather Widget: The dashboard should display the weather condition in the location searched by user.
c) Map: The dashboard should display the location that user has entered in the search bar, and also list all the parking bays near the provided location (outcome of search parking method).

o The marker colour will be based on the parking bay state as below:

• Available: Dark Green
• Likely to be available: Light Green
• Occupied: Blue
• Overstayed: Red
o When you tap on a marker, the parking information should be displayed in Parking Details widget in the dashboard.
o To complete this task, you can use any Map library such as:

d) Parking Details: If users tap on a parking bay marker, the dashboard should display all the information related to that parking. This widget should also have 4 buttons (available, occupied, likely to be available, and overstayed), that allow users to change the state of the parking bay.

e) Activity List: The Dashboard should display the last 50 messages it sent to AWS IoT Core (2 marks). It should also provide an option to save the logs as text file.

Note: Just have to do Task 5

Attachment:- Designing User-centric IoT applications.rar

Reference no: EM132374962

Questions Cloud

Why the planning mode of strategic management better : Describe why the Planning Mode of strategic management better than entrepreneurial and adaptive.
Sustainability impact the understanding of strategy : How does globalization, innovation, and sustainability impact the understanding of strategy, provide examples.
Discuss types of families you are likely to interact with : Discuss the types of families you are most likely to interact with and the accommodations you may need to make in order to get them involved and their children.
How will you locate and order relevant information : How will you locate, organize, and order relevant information about families to improve the educational outcomes of the children you work with?
Implement a web application that consumes real-time sensory : SIT311 - Designing User-centric IoT applications - Deakin University - Implement a web application that consumes real-time sensory data coming from parking
Identify factors that have influenced your choice : Identify factors that have influenced your choice of relational partners. Do you notice consistencies in the factors that influence your choice of relational.
Do you anticipate movement to another stage : Drawing from the example of one of your relationships, do you think you are likely to remain at your present stage, or do you anticipate movement to another.
What would be the key components of a learning community : How do you think your graduate educational experience will be different from your undergraduate experience? How would you describe a graduate learning.
Is it possible to have a non-institutionalized education : What problems might be associated with the institutionalization of education? Is it possible to have a non-institutionalized education?

Reviews

len2374962

9/23/2019 4:11:37 AM

Only completing a task does not yield a HD mark. There are 6 other criteria for marking each task. For a full mark of any task, all the following criteria should be achieved: 1. High quality of design and programming/coding (e.g. high cohesion, loose coupling, detailed comments, separation of concerns, bug free, solid exception handling, following coding standards, proper and meaningful naming of variables and methods, efficient use of variables, etc) 2. Handling all the exceptions and user data entry validation 3. Excellent GUI interface and layout and navigation 4. Evidence of originality and creativity of student (going beyond the assignment specification), 5. Full functionality of all the operations (during the interview), 6. And student’s deep understanding of their code and the program logic

Write a Review

Software Engineering Questions & Answers

  Research report on software design

Write a Research Report on software design and answer diffrent type of questions related to design. Report contain diffrent basic questions related to software design.

  A case study in c to java conversion and extensibility

A Case Study in C to Java Conversion and Extensibility

  Create a structural model

Structural modeling is a different view of the same system that you analyzed from a functional perspective. This model shows how data is organized within the system.

  Write an report on a significant software security

Write an report on a significant software security

  Development of a small software system

Analysis, design and development of a small software system.

  Systems analysis and design requirements

Systems Analysis and Design requirements

  Create a complete limited entry decision table

Create a complete limited entry decision table

  Explain flow boundaries map

Explain flow boundaries map the dfd into a software architecture using transform mapping.

  Frame diagrams

Prepare a frame diagram for the software systems.

  Identified systems and elements of the sap system

Identify computing devices, which could be used to support Your Improved Process

  Design a wireframe prototype

Design a wireframe prototype to meet the needs of the personas and requirements.

  Explain the characteristics of visual studio 2005

Explain the characteristics of Visual Studio 2005.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd