Get Instant Help From 5000+ Experts For
question

Writing: Get your essay and assignment written from scratch by PhD expert

Rewriting: Paraphrase or rewrite your friend's essay with similar meaning at reduced cost

Editing:Proofread your work by experts and improve grade at Lowest cost

And Improve Your Grades
myassignmenthelp.com
loader
Phone no. Missing!

Enter phone no. to receive critical updates and urgent messages !

Attach file

Error goes here

Files Missing!

Please upload all relevant files for quick & complete assistance.

Guaranteed Higher Grade!
Free Quote
wave

Service-Oriented Architecture (SOA) and Web services APIs

Task  consists of a demo code package and a technical report for the integration plan. Submit your work as a .zip file, which contains the code files (another .zip file) and your report (a .docx file), to Blackboard Task 2. Please follow the submission instructions described in this document. The assignment will be marked out of a total of 100 marks and forms 30% of the total assessment for the course.

ALL assignments will be checked for plagiarism by SafeAssign 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. Assignment submission extensions will only be made using the official Faculty of Arts, Business and Law Guidelines. 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.

ICT321 Architecture and Systems Integration Assignment 2 Page 3 of 6 Case Study: System Integration for Dell After evaluating various platforms, Dell finally decided to adopt Service Oriented Architecture (SOA) for its future IT infrastructure. The EA team also noticed the trends of new technologies including data analytics, cloud-based services, social media, and mobile computing. It was a shared belief that that the business functionalities delivered by services will reduce the technical obstacles to embrace these new technologies. The EA team needed to figure out the following issues:

1. Computing and storage infrastructure design. There are three possible options: renting from public Cloud providers, building a private Cloud, or maintaining its current infrastructure distributed across various locations and business units. Which one should the company choose? What are the benefits of the selected solution, and how does it support the IT operations? You are also encouraged to propose a different solution other than the previous list (Optional).

2. Application/service integration. There are different types of applications and services coexisting in the company, including legacy applications, internal Web services, and external Web services. Some external services are provided by business partners, and others are from public service providers, such as Google Map and Google Search. General solutions for application integration should be discussed, and a demo system (see below) is also expected to be implemented.

3. Information integration. Currently, there are multiple data sources developed by different teams for various business units and departments. Some databases will be unified and merged to replace existing system. However, some data sources have to be maintained individually due to the existence of legacy systems. In either case, how data from difference sources can be integrated should be discussed. In addition, a demo system (see below) is expected to be implemented. To demonstrate the ideas of application and data integration, the EA team decided to build a demo system to validate their designs.

Advantages and Challenges of SOA

The demo enables customers to search the locations of retailers in Google Map. There are three major components in the demo system:

1. Data integration demo. In this demo, there are two data source files: “stores.csv” contains the information about stores, and “locations.xml” contains the information about the location coordinates for each store. A Python scrip file with the name “data_merger.py” should be implemented to read these two data files, and output the merged result into a CSV file with the name “store_locations.csv”.

2. RESTful Web service demo. In this demo, we need to build a RESTful Web service which returns a JSON object with three attributes (storename, latitude, longitude) when receiving a call similar to “/getlocation?postcode=xxxx”. The framework Bottle is recommended for this implementation. A Python scrip file with the name “store_locator.py” should be implemented to retrieve the correct data from “store_locations.csv”, and to return the value via Web Service.

3. Mashup demo. In this demo, we need to build a mashup application which accepts a postcode as the input. If a store in that suburb can be found, then its location is displayed in Google Map. Otherwise, the default store (with postcode 2000) is ICT321 Architecture and Systems Integration Assignment 2 Page 4 of 6 displayed.

A HTML file “store_map.html” should be implemented. In this file, a text field is provided at the page top to accept user’s input of postcode. In addition, a Submit button will trigger the “getlocation” Web Service to retrieve its corresponding latitude and longitude, and highlight and centre the location in Google map. You need to include a section in the report to explain the key points for the demo design and implementation. Moreover, you need to explain how to run your demo/code. With regard to the above requirements, implement a demo system (30%) and write a technical report (70%).

Please use the following outline in your report:

1. Introduction

2. Computing and storage infrastructure design

3. Application/service integration

4. Information integration

5. Demo introduction

6. Conclusion

The detailed distribution of marks can be found at the end of this file. The following guidelines will be used in marking each part of the assignment: 100% 90% 75% 65% 50% 25% 0 Outstanding: High Distinction: Distinction: Credit: Pass: Fail: Not Submitted: An outstanding attempt – well formatted and professionally presented piece of work. An excellent piece of work that meets all the specified criteria with very minor omissions or mistakes More than competently meets the criteria specified with only minor mistakes or omissions. Competently meets the criteria as specified with few minor mistakes or omissions.

Middleware for Coordinating Tactical Routers with SOA Services

Satisfactorily meets the criteria. Did not sufficiently meet the criteria to pass. No attempt made or different from what is acceptable Code Package Format The code implementation should be with Python 3 and PyCharm. Your .zip code package should include Python source files, data files, and all supporting packages/modules. Make sure your demo codes are runnable in PyCharm after being unzipped. Report Format Your report should be no less than 1,200 words and it would be best to be no longer than 3,000 words long.

The report MUST be formatted using the following guidelines:

• Paragraph text – 12 point Calibri single line spacing

• Headings – Arial in an appropriate type size

• Margins – 2.5cm on all margins ICT321 Architecture and Systems Integration Assignment 2 Page 5 of 6

• Header – Report title

• Footer – page number (including the word “Page”)

• Page numbering – roman numerals (i, ii, iii, iv) up to and including the Table of Contents, restart numbering using conventional numerals (1, 2, 3, 4) from the first page after the Table of Contents.

• Title Page – Must not contain headers or footers. Include your name as the report’s author.

• The report is to be created as a single Microsoft Word document (version 2007, 2010, 2013 or Office 365). No other format is acceptable and doing so will result in the deduction of marks.

• No reference is required. Please follow the conventions detailed in: Summers, J. & Smith, B., 2014, Communication Skills Handbook, 4th Ed, Wiley, Australia. Submission Submit your work as a zip file to Blackboard Task 2 by the due date of 11:59pm Friday, Week 12. Inside the zip file, a zip package of code and a Word file of report should be included.

The assignment will be assessed according to the marking sheet. Late submission will be penalised according to the policy in the course outline. Please note Saturday and Sunday are included in the count of days late. Assignment Return and Release of Grades Assignment grades will be available on the course website in two weeks after the submission. An electronic assignment marking sheet will be available at this time. Where an assignment is undergoing investigation for alleged plagiarism or collusion the grade for the assignment and the assignment will be withheld until the investigation has concluded. Assignment Guidelines This assignment will take a number of weeks to complete and will require a good understanding of application and information integration technologies for successful completion. It is imperative that students take heed of the following points in relation to doing this assignment:

1. Ensure that you clearly understand the requirements for the assignment – what has to be done and what are the deliverables.

2. If you do not understand any of the assignment requirements – Please ASK the course coordinator or your tutor.

3. Each time you work on any aspect of the assignment reread the assignment requirements to ensure that what is required is clearly understood.

Service-Oriented Architecture (SOA) and Web services APIs

Access to capacity is made conceivable through a Web administrations application programming interface (API) utilizing the various WS protocols for example, Simple Object Access Protocol (SOAP) or Representational State Transfer (REST) convention. The foundation is regularly worked with ware equipment and servers are grouped so the capacity limit of each can be collected into a solitary pool. In this foundation arrangement, limit development is made conceivable by adding another server to the bunch. 

Computing and storage infrastructure design 

It demonstrates structural model of a versatile Cloud stockpiling framework. It comprises of the accompanying segments:

  • VM-facilitating machines: A physical machine has countless and has constrained nearby storage room. vStore utilizes nearby capacity as a piece level reserve and gives to VMs the figment of boundless storage room. 
  • Storage Server Cluster: Storage server groups give arrange appended capacity to machines present physically . They could also be either committed elite stockpiling servers or a group of servers utilizing item stockpiling gadgets. 
  • Directory Server: The catalog server holds the area data about the capacity server bunches. At the point when a hypervisor needs to interface with a particular stockpiling server.

Application/service integration 

The greatest advantage of SOA is adaptability. A SOA enables the endeavor to rapidly change its framework in light of changes in the business condition, on the grounds that a large portion of the fundamental procedures are as of now accessible as Web administrations. New usefulness can be created as a Web benefit and connected back to other fundamental business forms. The business can adjust and flourish. 

In the conventional application design, and rather than into the more present day universe of Web benefits, present foundation assets commonly bolster a particular application or association inside your venture. As you anticipate limit and execution, you can test the points of confinement of your framework assets and foundation with a genuinely decent comprehension of where the request will originate from and how it will be handled. With SOA, this kind of arranging and testing is all the more difficult on the grounds that your foundation assets may bolster a group of clients and applications through administrations spread all through your endeavor. 

While an essential advantage of SOA is that applications can be worked by joining inexactly coupled and interoperable administrations, the way that an administration might be generally utilized all through the endeavor by numerous applications can prompt the accompanying exposures for your IT foundation: 

  • Poor reaction times for clients and business forms
  • Missed administration levels for basic business capacities
  • Noncompliance with industry and government controls
  • Security breaks
  • Inadequate administration
  • Governance holes and restrictions
  • Testing challenges 

Up to this point, your IT association has in all probability been centered around overseeing the foundation as a resource for help applications and specialty units. With SOA, your concentration needs to move toward dealing with the administrations which bolster business forms and, hence, business comes about. SOA changes the part of the IT framework. You will now need to deal with your IT assets so that the administrations that help the business can use that framework

Information integration

The issue is frequently portrayed by issues with no normal work process approach, an absence of information quality and information profiling capacities, modified change rationale extraordinary to every datum encourage, absence of continuous checking ability, and a failure to rapidly include new information nourishes.

Advantages and Challenges of SOA

Setting

Information should be imparted to new frameworks created on open frameworks and with other centralized server frameworks, both inside and outer to the association. Most inheritance frameworks have approaching or active information sustains.

Powers

Remain solitary applications and associations are relics of days gone by. The need presently is for data sharing amongst applications and organizations. 

Demo introduction 

Task 1 

from pandas import DataFrame, read_csv

import matplotlib.pyplot as plt

import pandas as pd 

file = r'store.csv'

df = pd.read_csv(file)

# print(df) 

def getvalueofnode(node):

    """ return node text or None """

    return node.text if node is not None else None 

# for i in df.index:

#     listID = df['ID']

#     listName = df['Name']

#     listSuburb = df['Suburb']

#     listState = df['State']

#     listPostcode = df['Postcode'] 

# print(listState)

import xml.etree.cElementTree as et 

parsedXML = et.parse("locations.xml")

dfcols = ['Name', 'Suburb', 'Lat', 'Lon']

df_xml = pd.DataFrame(columns=dfcols) 

for node in parsedXML.getroot():

    Name = node.find('Name')

    Suburb = node.find('Suburb')

    Lat = node.find('Lat')

    Lon = node.find('Lon')

    df_xml = df_xml.append(

        pd.Series([getvalueofnode(Name), getvalueofnode(Suburb),

                   getvalueofnode(Lat), getvalueofnode(Lon)], index=dfcols),

        ignore_index=True)

    # print(df_xml) 

# print(df_xml)

#result = pd.concat([df, df_xml], axis=1)

# result = df.append(df_xml, ignore_index=False)

# result1 = pd.concat([df, df_xml], ignore_index=True)

result2 = pd.merge(df, df_xml, on='Name')

# print(result2) 

for i in result2.index:

    listID = result2['ID']

    listName = result2['Name']

    listSuburb = result2['Suburb_x']

    listState = result2['State']

    listPostcode = result2['Postcode']

    listLat = result2['Lat']

    listLon = result2['Lon'] 

file_name = 'store_locations.csv'

result2.to_csv(file_name, sep=';') 

Task 2

import json

import os

from bottle import route, run, static_file, request

structure_file = open('structure.json')

structure_data = json.load(structure_file)

pth_xml = structure_data["paths"]["xml"] 

@route('/getlocation/')

def getlocation_list():

    paths = []

    lst = os.listdir(pth_xml)

    for mylistitem in lst:

        if ".xml" == os.path.splitext(mylistitem)[1]:

            paths.append(mylistitem)

    return {"success": True, "correct path is": paths} 

@route('/getlocation/postcode', method='GET')

def getlocation_show(getlocation=""):

    if "" != getlocation:

        return static_file(getlocation, pth_xml)

    else:

        return {"success": False, "error": "No filename was mentioned"}

run(host='localhost', port=8080, debug=True) 

Task 3

Using ws and previous programs

import json

import os

from bottle import route, run, static_file, request 

structure_file = open('structure.json')

structure_data = json.load(structure_file)

pth_xml = structure_data["paths"]["xml"] 

@route('/getlocation/')

def getlocation_list():

    paths = []

    lst = os.listdir(pth_xml)

    for mylistitem in lst:

        if ".xml" == os.path.splitext(mylistitem)[1]:

            paths.append(mylistitem)

    return {"success": True, "correct path is": paths} 

@route('/getlocation/postcode', method='GET')

def getlocation_show(getlocation=""):

    if "" != getlocation:

        return static_file(getlocation, pth_xml)

    else:

        return {"success": False, "error": "No filename was mentioned"}

run(host='localhost', port=8080, debug=True) 

Conclusion 

A SOA enables the endeavor to rapidly change its framework in light of changes in the business condition, on the grounds that a large portion of the fundamental procedures are as of now accessible as Web administrations. The greatest advantage of SOA is adaptability. Access to capacity is made conceivable through a Web administrations application programming interface (API) utilizing the various WS protocols for example, Simple Object Access Protocol (SOAP) or Representational State Transfer (REST) convention.

Reference 

Jansen, N., Krämer, D., Barz, C., Niewiejska, J. and Spielmann, M., 2015, May. Middleware for coordinating a tactical router with SOA services. In Military Communications and Information Systems (ICMCIS), 2015 International Conference on (pp. 1-7). IEEE.

Johnsen, F.T., Bloebaum, T.H., Calero, J.M.A., Wang, Q., Nightingale, J., Manso, M. and Jansen, N., 2017, May. WS-Notification case study and experiment. In Military Communications and Information Systems (ICMCIS), 2017 International Conference on (pp. 1-8). IEEE.

Pandey, A.K., Kumar, A. and Zade, F.R., 2014, March. A novel robust & fault tolerance framework for Webservices using WS-I∗ specification. In Green Computing Communication and Electrical Engineering (ICGCCEE), 2014 International Conference on (pp. 1-5). IEEE.Sun, C.A., Zhao, Y., Pan, L., Liu, H. and Chen, T., 2015. Automated testing of WS-BPEL service compositions: A scenario-oriented approach. IEEE Transactions on Services Computing.Walkowiak, T., 2017. Language Processing Modelling Notation–Orchestration of NLP Microservices. In Advances in Dependability Engineering of Complex Systems (pp. 464-473). Springer, Cham. 

Lukashin, C., Bartle, A., Callaway, E., Gyijrjyan, V., Mancilla, S., Oyarzun, R. and Vakhnin, A., 2015, October. Earth science data fusion with event building approach. In Big Data (Big Data), 2015 IEEE International Conference on (pp. 1943-1947). IEEE. 

Stroi?ski, A., Dwornikowski, D. and Brzezi?ski, J., 2014, May. Resource mining: Applying process mining to resource-oriented systems. In International Conference on Business Information Systems (pp. 217-228). Springer, Cham. 

Petrova-Antonova, D., Ilieva, S. and Stoyanova, V., 2015, July. A pattern for WSDL-based testing of web service compositions. In Proceedings of the 20th European Conference on Pattern Languages of Programs (p. 2). ACM.

Bloebaum, T.H., Johnsen, F.T., Brannsten, M.R., Alcaraz-Calero, J., Wang, Q. and Nightingale, J., 2016, May. Recommendations for realizing SOAP publish/subscribe in tactical networks. In Military Communications and Information Systems (ICMCIS), 2016 International Conference on (pp. 1-8). IEEE.

Cite This Work

To export a reference to this article please select a referencing stye below:

My Assignment Help. (2020). Understanding SOA And Cloud Storage Systems Is Crucial For Writing An Essay.. Retrieved from https://myassignmenthelp.com/free-samples/mn405-data-and-information-management/application-programming.html.

"Understanding SOA And Cloud Storage Systems Is Crucial For Writing An Essay.." My Assignment Help, 2020, https://myassignmenthelp.com/free-samples/mn405-data-and-information-management/application-programming.html.

My Assignment Help (2020) Understanding SOA And Cloud Storage Systems Is Crucial For Writing An Essay. [Online]. Available from: https://myassignmenthelp.com/free-samples/mn405-data-and-information-management/application-programming.html
[Accessed 20 April 2024].

My Assignment Help. 'Understanding SOA And Cloud Storage Systems Is Crucial For Writing An Essay.' (My Assignment Help, 2020) <https://myassignmenthelp.com/free-samples/mn405-data-and-information-management/application-programming.html> accessed 20 April 2024.

My Assignment Help. Understanding SOA And Cloud Storage Systems Is Crucial For Writing An Essay. [Internet]. My Assignment Help. 2020 [cited 20 April 2024]. Available from: https://myassignmenthelp.com/free-samples/mn405-data-and-information-management/application-programming.html.

Get instant help from 5000+ experts for
question

Writing: Get your essay and assignment written from scratch by PhD expert

Rewriting: Paraphrase or rewrite your friend's essay with similar meaning at reduced cost

Editing: Proofread your work by experts and improve grade at Lowest cost

loader
250 words
Phone no. Missing!

Enter phone no. to receive critical updates and urgent messages !

Attach file

Error goes here

Files Missing!

Please upload all relevant files for quick & complete assistance.

Plagiarism checker
Verify originality of an essay
essay
Generate unique essays in a jiffy
Plagiarism checker
Cite sources with ease
support
Whatsapp
callback
sales
sales chat
Whatsapp
callback
sales chat
close