Data and System Integration
ICT705 - Task 2
Assessment
and Submission Details
Marks:
40% of the Total Assessment for the Course
Submit
your assignment to Blackboard Task 2. Please follow the submission instructions
in Blackboard.
The
assignment will be marked out of a total of 100 marks and forms 40% of the total
assessment for the course. All assignments will be checked for plagiarism by
Safe Assign system provided by Blackboard automatically.
Refer
to your Course Outline or the Course Web Site for a copy of the “Student
Misconduct, Plagiarism and Collusion” guidelines.
The
assignment will be assessed according to the marking sheet. Late submission
will be penalized according to the policy in the course outline. Please note
Saturday and Sunday are included in the count of days late.
Requests
for an extension to an assignment must be
made to the course coordinator prior to the date of submission and requests
made on the day of submission or after the submission date will only be
considered in exceptional circumstances. Assignment submission extensions will
only be made using the official Faculty of Arts, Business and Law Guidelines.
After evaluating various platforms,
the government finally decided to adopt a Service Oriented Architecture (SOA)
for its future IT infrastructure. They were impressed with your Template based,
Reference Architecture approach set out in your Task 1 Report and have accepted
your recommendations regarding:
•
Computing
and storage infrastructure design,
•
Application
/ service integration, and
•
Information
integration.
However, they would like to gain a
deeper understanding of the technologies behind your recommendation and have
asked for a small specific demonstration of these technologies along with a
brief explanation of the concepts and principles of how it works.
Specifically, they have asked you to
provide a demonstration web page in which the user will input a service and a
post code. Upon clicking a button, a cluster map of offices, based on the
services they offer and location, will be displayed to the user.
This assignment consists of two
deliverables, being: demonstration code 75%, and a report 25%. All code
relating to this assignment should be contained within a folder named:
Task 2
–
Your Name – Student Number, the folder is then to be zipped and uploaded to
blackboard. The report must be uploaded separately.
Important Note: For
ease of demonstration, your code must be self-contained. In addition to using Standards based HTML and Python, PETL,
Bottle and Parser are the only additional frameworks you should need. If you
use others they must be provided and not require installation.
Demonstration
Code
To
demonstrate your code, you have been provided with four data sources compiled
with fictitious sample data. These are:
•
“Offices.csv” contains the
information about the government offices,
•
“Office_Locations.xml”
contains
the location coordinates for each office
•
“Services.xml” contains a list
of government office services
•
“Office_Services.csv”
contains
a list of offices and the services they offer
Task 1 - Data integration demo.
You are to submit a python script named “Data_Integration.py”.
Your
script should firstly clean the data then merge it into one CSV file named “Office_Service_Locations. csv”.
Task 1.1 Data Cleansing
(10 marks)
Clean
data in the phone number field from “Offices.csv” to ensure all phone numbers
are in the same format: +international code regional code phone number. That is
all phone numbers should have the international code for Australia “+61”,
followed by a space, followed by the regional code, followed by a space,
followed by the first 4 digits of the local phone number, followed by a space,
followed by the last 4 digits of the local phone number. For example, the
Brisbane office should be formatted to: +61 7 3672 8709
Whilst regional codes do not always
adhere to state boundaries, you may apply the
following regional codes for each state:
NSW = 2
VIC = 3
QLD = 7
SA = 9
Merge
the data from the four data sources into “Office_Service_Locations.csv”
with the following fields (attributes):
• Office Services ID
-
a unique field identifying each record from Office_Services
• Office ID - a foreign key
linking to Services from Office_Services
• Service - the Service Name
from Services
• Office ID - a foreign key
linking to offices and locations
• Office – the “Contact
Name” from offices
• Suburb - the “Suburb”
from offices
• Phone - the cleaned “Phone
Number” data from offices
• Email – the “Email”
address from offices
• Lat from
Office_Locations
• Lon from
Office_Locations
Task 2 – RESTful Web Service Demo
You are to submit a python script named “Office_Locator.py”.
For
tasks 2.1 to 2.2 Your script should build a RESTful web service that supports a
‘get offices’ query from the client browser similar to “/get offices ? service id=x”.
The server Web Service will return a JSON table with the following fields
(attributes): Office, Suburb, Service, Phone, Email, Lat, Lon. Data is to come
from the “Office_Service_Locations.csv”
you built in task 1.2.
Task 2.1 Return offices
for a service (5 marks)
The
server will return a table of records (tuples) of offices offering the service
ID passed to it.
Task 2.2 Return all
unique offices (5 marks)
In
the advent of a call to “get offices? Service id=0”, the server will return a
distinct list of offices offering any service. That is a list of all offices
listed once.
Task 2.3 List of
Services (5 marks)
To
populate your drop-down list in task 3.1 you will need to return a JSON table
of all records from “services.csv” with the following fields (attributes):
Service ID, Service. The server should respond to a “get services” request.
Task 2.4 Error Handling
(5 marks)
Your code should handle any errors
including incorrect requests.
Task 3 Mashup Demo
You
are to submit a HTML file “office_map.html” and optionally a CSS file named “office_map.css”.
You
are to create an input form that accepts user input for a particular service.
The input for the service should be a drop-down list with the first item of
being “Any Service” with a value
= 0,
remaining items should be created dynamically from a call to get services from
task 2.3. The drop-down list should be accompanied with descriptors and a “Locate
Offices” button.
Task 3.2 Google Map (10
marks)
Clicking
the “Locate Offices” button the will trigger a “get offices” web service to
retrieve a table of offices matching the service with attributes described in
task 2. From this data you are to display a Google cluster map marking the
position of the returned offices. The map should be centred and zoomed to an
appropriate level to show all offices in Australia.
Task 3.3 Information
Window Demographics (5 marks)
Upon
clicking a marker bubble on the map, the user will be displayed an information
window containing: Contact Name, Suburb, Phone Number, and a clickable email
address.
Task 3.4 Information
window email (5 marks)
Clicking
an email address link in the information window should launch the user’s email
application and automatically insert the subject line “Office Enquiry”.
Report
You
are required to write a report explaining the theory underlining the key
concepts around the design and implementation of your demonstration system. You
are also required to explain how to run your code. Finally, you are to include
all code submitted in the appendices to the report, note that the code will not
count towards the word count.
Your report should follow the following
template:
Executive
Summary
Table
of Contents
Table
of Figures (if needed)
Table
of Tables (if needed)
1.0
Introduction
2.0
Key System Concepts
2.1 Data Matching
2.2 RESTFUL Web Services
2.3 AJAX
3.0
Demo Running Instructions
4.0
Conclusion
Bibliography
Appendices
Your
report should be no less than 800 words and it would be best to be no longer
than 1500 words.
The report must be formatted using the
following guidelines:
•
Paragraph
text 12-point Calibri single line spacing
•
Code
Text 12-point Courier new single line spacing
•
Headings
Arial in an appropriate type size
•
Margins
2.5cm on all sides
•
Title
Page is not to contain headers, footers, or page numbering
•
Header
is to display the Report Title (excluding the title page)
•
Footer
to display your name and the page number (excluding the title page)
• Title Page – Must not contain headers or
footers. Include your name as the report’s author.
•
Page
numbering
o Executive
summary to the last page of Table of Figures / Table of Tables to use
roman numerals
(i, ii, iii, iv)
o Introduction
and onwards to use conventional numerals (1, 2, 3, 4) starting at page 1 from
the introduction
• The report is to be created as a single
Microsoft Word document (version 2007, 2010, 2013, 2016, or Office 365). No
other format is acceptable and doing so will result in the deduction of marks.
• The report must use the built-in
features of Microsoft Word to create page numbers, section numbers, citations,
cross referencing of sections, figures and tables, table of contents, table of
figures, table of tables, and bibliography.
Please follow the conventions detailed
in:
Summers, J. & Smith, B., 2014, Communication Skills Handbook, 4th Ed,
Wiley, Australia.
Referencing
References
should follow the Harvard method of referencing. Note that ALL references
should be from journal articles, conference papers, technical papers or a
recognized expert in the field. DO NOT use Wikipedia as a reference. The use of
unqualified references will result in the deduction of marks.
To get solution visit our websitewww.sourceessay.com
Comments
Post a Comment