Service Orientated Architecture
Download
Report
Transcript Service Orientated Architecture
Service Orientated
Architecture
Matthew Cunliffe
© 2011 Europoint Communications Ltd
www.euro-point.co.uk
Who Am I?
• IT Consultant and Contractor for over 12
years
• Test Manager and Technical Test Analyst
• Have worked on multiple Blue Chip
contracts including:
– New Electricity Trading Arrangements (NETA)
– London Congestion Charging Scheme
– Education Maintenance Allowance
programmes
Where Do We Go From
Here?
• Why and how do we build software?
• What is Service Orientated Architecture?
• Implementing SOA
• What are the Do’s and Don’ts of SOA?
Why Do We Build
Software?
• To refresh technology
• To introduce new functionality to existing
software
• To save money in the long term
• To improve competitiveness
… Because there is a business need
The Benefits of SOA
• The ability to carry on using existing
applications
• Reuse of service removes duplication
• Built on open standards
• Improves Quality of Service
• Allows the ability to react quickly
What is Service
Orientated Architecture?
• What it is!
– A business approach
– A collection of services
– Middleware
– Reusable
– Loosely coupled
What is Service
Orientated Architecture?
• What it isn’t!
– An off-the-shelf (COTS) product
– Existing technologies bundled together
– A replacement for your existing software
– Any use where your systems don’t need
changing and don’t use common functionality
or need to talk to each other.
What is Service
Orientated Architecture?
Sales
System
Customer
Data
Invoicing
System
Enquiry
System
Address
Validation
What is Service
Orientated Architecture?
Sales
System
Invoicing
System
Enquiry
System
Adapter
SOA Enterprise Service Bus
Customer
Data
Address
Validation
Implementing SOA
• What do we mean by a service?
– A service is a well-defined, self-contained
function that is independent of other services
or functions.
Implementing SOA
• Web Services
– XML (eXtensible Markup Language)
– WSDL 2.0 (Web Services Description
Language)
– SOAP (Simple Object Access Protocol)
– MTOM (Message Transmission Optimisation
Mechanism)
Implementing SOA
• Processing the Data
– Adapters
– SOA Registry and Repository
– Business Process Orchestration Manager
– BPM (Business Process Management)
– BPEL (Business Process Execution Language)
– Service Broker
– SOA Service Manager
– ESB (Enterprise Service Bus)
Implementing SOA
• The Enterprise Service Bus
– Is invoked by a call to a web service
– Authenticates that the call is legitimate
– Routes the data received to the right place
– Mediates the data if necessary
– Orchestrates the calling of other services if
necessary
– Manages the process
Implementing SOA
• The Enterprise Service Bus
– Is system agnostic
– Tends to use XML for transmitting data
– Supports web service standards
– Supports different ways of sending
information
– Queues messages and processes them
according to priority
– Provides Business Activity Monitoring
Implementing SOA
Create / Find
Customer Search
SOA Enterprise Service Bus
Create
Customer
No
Does
Customer
Exist?
Yes
Query
Customer
Retrieve
Customer
Validate
Address
Customer
Data
Do’s and Don’ts
• Do
– Collaborate with the business
– Use business process
– Use SOA appropriately, creating bigger,
reusable services
– Use a blueprint
– Implement a Test Case
Do’s and Don’ts
• Don’t
– Build a proprietary interface
– Build a service that is too generic
– Use SOA for everything
– Start from scratch
– Build it “because you can”
Useful Links
•
SOA Suppliers
–
–
–
–
–
•
Web References:
–
–
–
–
–
•
IBM SOA Foundation: http://www-01.ibm.com/software/solutions/soa/offerings.html
Progress Sonic: http://web.progress.com/en-gb/soa-middleware.html
Oracle SOA Suite: http://www.oracle.com/us/technologies/soa/index.html
SAP NetWeaver: http://www.sap.com/platform/soa/index.epx
SOA Software: http://www.soa.com
Halifax IF Case Study: http://www.pptsearch.net/download.php?fid=412151
SOA Institute White Papers: http://www.soainstitute.org/white-papers.html
W3C Web Services: http://www.w3.org/2007/Talks/0116-plh-hartford/#(1)
W3C Web Open Standards and SOA: http://www.w3.org/2008/11/dd-soa.html#(1)
Wikipedia SOA: http://en.wikipedia.org/wiki/Service-oriented_architecture
Books
–
–
–
–
100 SOA Questions (Prentice Hall):
http://www.pearsoned.co.uk/bookshop/detail.asp?item=100000000387102
Enterprise for SOA (O’Reilly): http://oreilly.com/catalog/9780596102388
SOA For Dummies (Wiley): http://eu.dummies.com/DummiesTitle/productCd-0470376848.html
SOA In Practice (O’Reilly): http://oreilly.com/catalog/9780596529550