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 Dos and Donts 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 it isnt! –An off-the-shelf (COTS) product –Existing technologies bundled together –A replacement for your existing software –Any use where your systems dont need changing and dont use common functionality or need to talk to each other. What is Service Orientated Architecture?
Sales System Invoicing System Enquiry System Customer Data Address Validation
What is Service Orientated Architecture? Sales System Invoicing System Enquiry System Customer Data Address Validation SOA Enterprise Service Bus Adapter
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 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 Customer Data SOA Enterprise Service Bus Does Customer Exist? Create Customer Retrieve Customer Validate Address Query Customer No Yes
Dos and Donts Do –Collaborate with the business –Use business process –Use SOA appropriately, creating bigger, reusable services –Use a blueprint –Implement a Test Case
Dos and Donts Dont –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 –IBM SOA Foundation: –Progress Sonic: –Oracle SOA Suite: –SAP NetWeaver: –SOA Software: Web References: –Halifax IF Case Study: –SOA Institute White Papers: –W3C Web Services: –W3C Web Open Standards and SOA: –Wikipedia SOA: Books –100 SOA Questions (Prentice Hall): –Enterprise for SOA (OReilly): –SOA For Dummies (Wiley): –SOA In Practice (OReilly):