Architecture and Systems Integration


Key System Concepts

Data Merging

RESTful Web Services

Demo Running Instructions



Introduction to Flask Web Development

The Queensland Health eHealth Strategy is for systems that increase health literacy, promote community education and empowers communities to have greater control over their own healthcare. This requires upgrading core ICT infrastructure to enable cutting-edge health service delivery into the future. eHealth includes the following priorities:

  • ICT infrastructure to provide network and datacenter functions to support an increasingly mobile workforce,
  • A desktop environment to support a consistent user experience, and access to common systems and tools across the health system,
  • A secure information system environment to share information and images, and consult with others through and information interoperability platform,
  • Renewing enterprise systems, including those for patient administration, finance and laboratories,
  • Migrating towards statewide medical records and enabling digital hospitals,
  • Integrating other systems such as business intelligence, and systems to support integrated care with primary and community healthcare providers.

After evaluating various platforms, Queensland Health finally decided to adopt a Service

Oriented Architecture (SOA) for its future IT infrastructure. However, the managers from

clinical services would like to gain a deeper understanding of:

  • Computing and storage infrastructure design,
  • Information integration,
  • Application and Service Integration, and
  • Technologies behind Application and Service Integration including a small specific demonstration of these technologies along with a brief explanation of the concepts and principles of how it works.

Therefore, this project consists of two deliverables, being:

  • Demonstration code for data integration and then providing the user with a RESTful service for accessing that data, specifically different services and clinics in that data.
  • A paper (this paper)

Key System Concepts

Data Merging

To demonstrate our recommendations, we were provided with three data sources compiled with fictitious sample data. These are:

  • csv contains the details about the clinical offices,
  • xml contains the location coordinates for each clinic,
  • csv contains a list of clinic offices and the services they offer.

We loaded all the CSV files into Python as pandas dataframe and the xml file also as pandas dataframe using using petl library. The merged the data from all four data sources have the following fields (attributes), saved inside output file “clinic_service_locations.csv”:

  • ClinicServiceID – a unique field identifying each record from clinic_services.csv
  • Service – the service name from clinic_services.csv
  • ClinicID – the ID for each clinic
  • Suburb – the “Suburb” from clinics.csv
  • Postcode – the “Postcode” from clinics.csv
  • Latitude – the “Lat” value from clinic_locations.xml
  • Longitude – the “Lon” value from clinic_locations.xml

RESTful Web Services

RESTful web services are built to work best on the Web. Representational State Transfer (REST) is an architectural style that specifies constraints, such as the uniform interface, that if applied to a web service induce desirable properties, such as performance, scalability, and modifiability, that enable services to work best on the Web. In the REST architectural style, data and functionality are considered resources and are accessed using Uniform Resource Identifiers (URIs), typically links on the Web. The resources are acted upon by using a set of simple, well-defined operations.

We wrote a python script named The script builds a RESTful web service using Bottle Web Development Framework that supports following two RESTful web services:

  • Get services by postcode. The server accepts a ‘getServices’ query from the client browser similar to “/getServices?postcode=xxxx”. After processing this request, the service returns a HTML document containing the list of available services for a given postcode, including the following fields (attributes): Service, Suburb.
  • Get clinics by service name. The server should accept a ‘getClinics’ query from the client browser similar to “/getClinics?service=xxxx”. After processing this request, the service returns a HTML document containing the list of available clinics for a given service, including the following fields (attributes): ClinicID, Suburb, Latitude, Longitude.

Demo Running Instructions

data_integration The following command will run the data integration task but it assumes that pandas and petl library is already installed in the system and all the four data files are in the same folder where this program file is located.


web_service: The following command will start a RESTful services with all the calls described above at http://localhost:8080.


Conclusion on Flask Web Development

In this project, the phone number of different clinics were first cleansed in order to make sure that they all follow the same formatting. Then the data from all the four data files were merged using pandas and petl libraries of Python. Then, a RESTful web service was designed to provide the information about specific service within the data based on post code or the service name.

References for Flask Web Development

McKinney, W., 2010, June. Data structures for statistical computing in python. In Proceedings of the 9th Python in Science Conference (Vol. 445, pp. 51-56).

Rossum, G.V., 1995. Python tutorial, technical report CS-R9526. Centrum voor Wiskunde en Informatica (CWI), Amsterdam.

Ayeva, K. and Kasampalis, S., 2018. Mastering Python Design Patterns: A guide to creating smart, efficient, and reusable software. Packt Publishing Ltd.

Grinberg, M., 2018. Flask web development: developing web applications with python. " O'Reilly Media, Inc.".

Maia, I., 2015. Building Web Applications with Flask. Packt Publishing Ltd.

Remember, at the center of any academic work, lies clarity and evidence. Should you need further assistance, do look up to our Engineering Assignment Help

Get It Done! Today

Applicable Time Zone is AEST [Sydney, NSW] (GMT+11)
Not Specific >5000
  • 1,212,718Orders

  • 4.9/5Rating

  • 5,063Experts


  • 21 Step Quality Check
  • 2000+ Ph.D Experts
  • Live Expert Sessions
  • Dedicated App
  • Earn while you Learn with us
  • Confidentiality Agreement
  • Money Back Guarantee
  • Customer Feedback

Just Pay for your Assignment

  • Turnitin Report

  • Proofreading and Editing

    $9.00Per Page
  • Consultation with Expert

    $35.00Per Hour
  • Live Session 1-on-1

    $40.00Per 30 min.
  • Quality Check

  • Total

  • Let's Start

500 Words Free
on your assignment today

Browse across 1 Million Assignment Samples for Free

Explore MASS
Order Now

Request Callback

My Assignment Services- Whatsapp Tap to ChatGet instant assignment help

Hire Certified Experts
Ask your Question
Need Assistance on your
existing assignment order?

We care

MyAssignmentServices uses cookies to deliver the best experience possible.
My Assignment Services acknowledges the academic integrity guidelines prescribed as per Australian Universities to ensure that the services, sample material, and study resources available on our website, in no way are utilised to commit academic misconduct of any type. All users of our services must adhere to and affirm acceptance of all conditions elucidated in our policy document on academic integrity.

Please accept and affirm the following to be able to continue exploring our website and services: I agree to NOT use any educational material, study resources, assignment samples, online mentoring services, available on the web domain and all its subdomains to commit any academic misconduct. I have read and been made fully aware of the academic integrity policy of My Assignment Services and by clicking on the button below, I am in principle, wilfully and legally bound to adhere to guidelines of the academic integrity policy in whole and in part.
View Cookies policy | How we ensure Academic Integrity?