Dr. Hale
University of Nebraska at Omaha
CYBR 8470 - SOA and Microservices module
Part 1: Service-oriented Architectures (SOA)
Part 2: Service Oriented Methods and Data formats
Real world 'service':
A piece of work performed by a service provider
Takes some input and produces some desired results
e.g. a restaurant: pay some money and get some food
e.g. a roofing company: pay some money, get a roof repair
Has quality characteristics (price, time, goodness of product, etc.)
Software world 'service':
A "web service" is a piece of software that performs processing and uses a web protocol to accept requests and issue responses.
earlier...
web service: a piece of software that serves up data through a web interface. Typically web services are object-oriented, provide access to a database, and encode data in XML or JSON.
SOA (Service-Oriented-Architecture) is an architectural paradigm that modularizes business functions into services by decoupling and encapsulating different portions of the business logic into different service components.
Autonomous -> Need not be aware of other services
stateless -> need not remember state from request to request
standard interfaces -> Re-use web stack and define custom application endpoints
credit:
Torsten Braun, Universität Bern
platform independent -> Write a service once, support many platforms
discoverability
Services need consumers. Consumers use a client to make requests to the service's server. They expect to get a desired result or an error message.
Service providers host and manage their service offerings - maintaining service quality and security.
Service brokers match service consumers and providers - sometimes composing multiple services to fulfill consumer needs.
Will come back to this
img credit: http://usblogs.pwc.com/emerging-technology/agile-coding-in-enterprise-it-code-small-and-local/
credit: https://m.oursky.com/saas-paas-and-iaas-explained-in-one-graphic-d56c3e6f4606
Legacy Services:
Uses SOAP, WSDL, XML, WS-*, etc
Older, more formally specified service types
Modern Services:
SOAP ERA
RESTful ERA
Description in terms of WSDL (Web Service Definition Language):
Protocol uses SOAP to exchange XML, XSD on top of HTTP
SOAP (Simple Object Access Protocol)
XML (Extensible Markup Language)
XSD (Extensible Schema Definition)
HTTP
Simple Object Access Protocol
Note: Refers to some function called 'CalcDistance' that has two parameters 'startPoint' and 'endpoint'. Each point has an x and y field in the object.
© 2014-2020 Matthew L. Hale or as listed
University of Nebraska at Omaha
Assistant Professor, Cybersecurity
mlhale@unomaha.edu
twitter: @mlhale_
Attribution: Some slides are based on material from:
"Web services, SOA, and REST" course by the SoftUNI Foundation and are used under the CC-BY-NC-SA license