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

  How is this model different from other cmms

The five levels are Initial, Repeatable, Defined, Managed, and Optimizing. How is this model different from other CMMs?

  1 consider the following balance sheeta how does this

1. consider the following balance sheeta. how does this balance sheet differ from the one presented in your

  The project at the meeting the vice chancellor announced

the project at the meeting the vice chancellor announced that a project manager would be appointed.on appointment the

  Question about test driven development

Suppose you are the project manager for the development of an eCommerce application for a large furniture store. You decide to use TDD in your development procedure.

  Create an erd for system that stores information about cars

Create an ERD for a system that stores information about the cars and owners. Perform the following steps: Use Word to create an ERD that contains Car and Owner entities

  Describe the software development process and its phases

Describe the software development process and its phases. Explain at least four of the roles played by team members in a software development project.

  Demonstrating your state transition diagram

Analysis of a large system development problem to decide upon the best methodological approach - Implement quality assurance activities in order to verify user

  What are the shortcomings of the current system

What are the shortcomings of the current system? How will your proposed solution enhance the organization's efficiency and effectiveness?

  Advantages and disadvantages of implementing dfs

Explain advantages and disadvantages of implementing a DFS for this size of company, along with a recommendation for or against, and why.

  Development process for new information systems

Discuss how this and other information security considerations will affect the design and development process for new information systems.

  Draw the class diagram showing all the classes

Draw the class diagram showing all the classes, associations and multiplicities. Integrate the diagrams to make 4+1 model of the whole system (1 in each view).

  Create a z schema that adequately describes the wtc system

You are to create a Z schema that adequately describes the WTC system. It should include at least one state space and the following operations.

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