SlideShare a Scribd company logo
(c) 2005 - Andy Berry
(www.tof.co.uk)
SOA – Benefits and Risks
Presentation to ESUG 2005
Conference
Andy Berry – www.tof.co.uk
(c) 2005 - Andy Berry
(www.tof.co.uk)
What we’ll cover…
What is SOA (Service Oriented
Architecture)?
Business Benefits
Risks and how to mitigate them
Smalltalk and SOA
What next for your Business?
(c) 2005 - Andy Berry
(www.tof.co.uk)
What is a SOA?
What is an ‘architecture’?
What is a ‘service’?
What is a SOA?
(c) 2005 - Andy Berry
(www.tof.co.uk)
What is a Architecture?
Let’s pretend that you win the Lottery
and you ask a builder to build you a
new house…
(c) 2005 - Andy Berry
(www.tof.co.uk)
This is what you have in mind…
(c) 2005 - Andy Berry
(www.tof.co.uk)
But this is what you get…
“Well, I saved bricks by
building it ‘in the round’”
the builder says
Yes, but…
He forget that the best
view is where he didn’t
put any windows
(c) 2005 - Andy Berry
(www.tof.co.uk)
Now, let’s scale up the problem…
Cities, comprising many
thousands of buildings,
must work together
(c) 2005 - Andy Berry
(www.tof.co.uk)
Let’s apply this to IT…
We may have wonderful applications for
Sales, Billing and Quality Control but
none of them should exist in isolation…
A Sales Enquiry should ‘turn into’ an
Invoice without the need to re-type it
We need all our applications to work
together so we can save money (That’s
what it’s all about)
(c) 2005 - Andy Berry
(www.tof.co.uk)
So, we need an architecture for
our IT Systems
The architecture must tell us how to
link things together
It must consider both the business itself
and the world around it
(c) 2005 - Andy Berry
(www.tof.co.uk)
Your Business and the World
(c) 2005 - Andy Berry
(www.tof.co.uk)
My key message…
If there’s one message I want you to
take away from this presentation, it’s
this:
A Service Oriented Architecture is a way of
including everyone - Customers, Suppliers
and Enablers – as partners in your IT
system
(c) 2005 - Andy Berry
(www.tof.co.uk)
An SOA is…
Service Oriented Architecture
That is, an Architecture that is designed
around Services
(c) 2005 - Andy Berry
(www.tof.co.uk)
What is a “Service”?
Suppose I am a Taxi Driver…
You ring me up and ask me to take you
somewhere…
I arrive, pick you up and drive you to
your destination…
I have provided a “Service”
(How I get paid is an interesting
question, we’ll cover that near the end)
(c) 2005 - Andy Berry
(www.tof.co.uk)
Characteristics of a Service
It’s business oriented – I don’t need to
tell the Taxi Driver how to drive
It’s asynchronous – I request something
and, sometime later, it happens
Normally, you get what you ask for
(c) 2005 - Andy Berry
(www.tof.co.uk)
Granularity, Granularity,
Granularity…
Let’s return to IT land…
Consider a Billing Application…
Should a Service be to read a row in the
Customer table of the database?
OR
Should a Service be to submit an
Invoice to a customer?
(c) 2005 - Andy Berry
(www.tof.co.uk)
Remember, we’re talking
Architecture, not Coding!
Put simply, Services should be Business
Oriented.
Always ask yourself:
Can I imagine myself doing this?
If it’s doable by a human, it’s probably
Business Oriented enough to be a
Service
(c) 2005 - Andy Berry
(www.tof.co.uk)
And so…
A service to submit an Invoice to a
customer is probably closer to meeting
the definition of a “Business Oriented
Service” in an SOA than a bit of code to
read a row from a database
(c) 2005 - Andy Berry
(www.tof.co.uk)
Where does SOA fit?
Should SOA affect the way
you view the world?
Or, just the way you write
your next line of code?
(c) 2005 - Andy Berry
(www.tof.co.uk)
Try these statements…
SOA is the most important development
in software in the last ten years
SOA is an interesting development that
your company should monitor
SOA is just a messaging application
(c) 2005 - Andy Berry
(www.tof.co.uk)
How to talk to the world…
Messages,
Messages,
And, yes,
Messages
(c) 2005 - Andy Berry
(www.tof.co.uk)
Inside your company…
The role of SOAs isn’t limited to inter-
company communication.
In fact, it makes sense to introduce an
SOA inside your company before you
try to communicate outside
(c) 2005 - Andy Berry
(www.tof.co.uk)
An exercise…
As you know, I always ask you to do
something during my presentations and
so…
Can you think of three business oriented
services that you allow parts of your
company to work more effectively
together?
(c) 2005 - Andy Berry
(www.tof.co.uk)
Implementing an SOA
You can do it all yourself
Or, you can use a product from
suppliers like IBM, Iona, Sonic Software
or CapeClear
If you use a product, you get added
value like tools to manage the flow of
messages
(c) 2005 - Andy Berry
(www.tof.co.uk)
Enterprise Service Bus
One of the implementation mechanisms is to
use an “Enterprise Service Bus” (ESB)
As its name implies, it’s designed for use
within an Enterprise – that’s another name
for a company.
Basically, it lets you wrap your existing
applications up and get them talking to each
other
(c) 2005 - Andy Berry
(www.tof.co.uk)
The ESB Diagram
(c) 2005 - Andy Berry
(www.tof.co.uk)
What goes along the Bus?
Yes, hopefully, you’ve guessed…
Messages, messages and more
messages.
Typically, these are implemented as
Web Services
(c) 2005 - Andy Berry
(www.tof.co.uk)
What’s a Web Service?
At an implementation level, a Web
Service is a service delivered by XML
encoded messages.
For a more abstract view, read Tim
Berners-Lee’s article on the “Semantic
Web” in the May 2001 issue of Scientific
American
(c) 2005 - Andy Berry
(www.tof.co.uk)
And the benefits of using Web
Services are?
When you link your ESB to one of your
suppliers, you can use the Internet to
send and receive messages
Some Smalltalk implementations, for
example, VisualWorks, support Web
Services
(c) 2005 - Andy Berry
(www.tof.co.uk)
Benefits and Risks
Let’s look at the Benefits and Risks of
SOA.
This where it gets scary…
Although, hopefully, you agree that the
benefits are enough to justify taking the
risks
(c) 2005 - Andy Berry
(www.tof.co.uk)
Business Benefits of SOA
You’ll have an Architecture rather than
a heap of isolated applications
Your company can work closer with
Customers and Suppliers
A “future-proof” approach, over a 5 to
10 year timeframe
(c) 2005 - Andy Berry
(www.tof.co.uk)
Risks of SOA
You’ll be an “Early Adopter”
You’ll incur extra costs
The future isn’t SOA after all…
And you can avoid these risks by…
(c) 2005 - Andy Berry
(www.tof.co.uk)
Mitigating the Risks
Don’t “bet the business” – identify a
specific area that can benefit and start
there.
Ensure that you have access to Mentors
– you’re taking a big step and you need
to make sure you know the risks.
Choose a product before you start
implementation
(c) 2005 - Andy Berry
(www.tof.co.uk)
Smalltalk and SOA
As we’ve noted, Web Services are
implemented by some Smalltalk
implementations
It only took me one day to use the
Google Web Service – just do it!
(c) 2005 - Andy Berry
(www.tof.co.uk)
What next?
You could “just do it” with SOA but:
You’d have to consider who is going to do
what and when
Remember, granularity of service is a
critical success factor
You don’t want to end up with just another
bit of technology - you want an
Architecture that supports your business
(c) 2005 - Andy Berry
(www.tof.co.uk)
And so…
I suggest:
You spend some time learning about the
technology
Pick an area that could benefit from a SOA
Develop a prototype
Obtain “buy-in” from senior staff within
your company
(c) 2005 - Andy Berry
(www.tof.co.uk)
The Next Big Idea…
Let’s return to our Taxi driver.
He’s dropped us at our destination and
then what?
He asks for payment for the service he’s
just provided…
(c) 2005 - Andy Berry
(www.tof.co.uk)
Payment for Services
Imagine you didn’t have to buy servers
or support them!
Wow, utopia here we come…
Why not simply pay for every IT service
you need, when you use it?
(c) 2005 - Andy Berry
(www.tof.co.uk)
Questions and Discussion
Thanks for listening
Hope I’ve given you some ideas
What are you going to do next week?

More Related Content

Similar to SOA – Benefits and Risks

2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...
2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...
2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...
Club Alliances
 
Win#24 #Web #eCommerce
Win#24 #Web #eCommerceWin#24 #Web #eCommerce
Win#24 #Web #eCommerce
Olivier Marechal
 
Engineering and construction webinar
Engineering and construction webinarEngineering and construction webinar
Engineering and construction webinar
Orbit Media Studios
 
Service Oriented Government: 7th SOA For E-Gov
Service Oriented Government: 7th SOA For E-GovService Oriented Government: 7th SOA For E-Gov
Service Oriented Government: 7th SOA For E-Gov
davemayo
 
So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...
So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...
So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...
Olaf Janssen
 
Capstone Final Presentation
Capstone Final PresentationCapstone Final Presentation
Capstone Final Presentation
Devang Doshi
 
Compasso Company Overview
Compasso Company OverviewCompasso Company Overview
Compasso Company Overview
Rômulo Rieder
 
Company Overview - August 2010
Company Overview - August 2010Company Overview - August 2010
Company Overview - August 2010
gwaldie
 
State of Tendenci Address with Ed Schipul
State of Tendenci Address with Ed SchipulState of Tendenci Address with Ed Schipul
State of Tendenci Address with Ed Schipul
Katie Laird
 
B2 B Sc And Emarkets
B2 B Sc And EmarketsB2 B Sc And Emarkets
B2 B Sc And Emarkets
Kimmy Chen
 
2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...
2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...
2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...
Club Cloud des Partenaires
 
Web performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thairWeb performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thair
Stephen Thair
 
AIIM CMIS Panel Session - 20 April 2010
AIIM   CMIS Panel Session - 20 April 2010AIIM   CMIS Panel Session - 20 April 2010
AIIM CMIS Panel Session - 20 April 2010
Zia Consulting
 
Business Model
Business ModelBusiness Model
Business Model
Ennova Inc.
 
It looking forward
It looking forwardIt looking forward
It looking forward
Jon Collins
 
FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...
FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...
FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...
Verein FM Konferenz
 
Creating a Global Website
Creating a Global WebsiteCreating a Global Website
Creating a Global Website
Lionbridge
 
API more than payload
API more than payloadAPI more than payload
API more than payload
Phil Wilkins
 
1. Let's study web-development
1. Let's study web-development1. Let's study web-development
1. Let's study web-development
Jungwon Seo
 
Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?
Trieu Nguyen
 

Similar to SOA – Benefits and Risks (20)

2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...
2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...
2011.02.09. Evolution de l'Ecosysteme SaaS et Cloud - Forum SaaS et Cloud IBM...
 
Win#24 #Web #eCommerce
Win#24 #Web #eCommerceWin#24 #Web #eCommerce
Win#24 #Web #eCommerce
 
Engineering and construction webinar
Engineering and construction webinarEngineering and construction webinar
Engineering and construction webinar
 
Service Oriented Government: 7th SOA For E-Gov
Service Oriented Government: 7th SOA For E-GovService Oriented Government: 7th SOA For E-Gov
Service Oriented Government: 7th SOA For E-Gov
 
So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...
So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...
So you think you ….understand everyday life? Web2.0 & API theory – (still) ve...
 
Capstone Final Presentation
Capstone Final PresentationCapstone Final Presentation
Capstone Final Presentation
 
Compasso Company Overview
Compasso Company OverviewCompasso Company Overview
Compasso Company Overview
 
Company Overview - August 2010
Company Overview - August 2010Company Overview - August 2010
Company Overview - August 2010
 
State of Tendenci Address with Ed Schipul
State of Tendenci Address with Ed SchipulState of Tendenci Address with Ed Schipul
State of Tendenci Address with Ed Schipul
 
B2 B Sc And Emarkets
B2 B Sc And EmarketsB2 B Sc And Emarkets
B2 B Sc And Emarkets
 
2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...
2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...
2012.02.09 - Leveraging the IBM Cloud Partner Ecosystem - Cloud Top Gun - Loi...
 
Web performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thairWeb performance and measurement - UKCMG Conference 2011 - steve thair
Web performance and measurement - UKCMG Conference 2011 - steve thair
 
AIIM CMIS Panel Session - 20 April 2010
AIIM   CMIS Panel Session - 20 April 2010AIIM   CMIS Panel Session - 20 April 2010
AIIM CMIS Panel Session - 20 April 2010
 
Business Model
Business ModelBusiness Model
Business Model
 
It looking forward
It looking forwardIt looking forward
It looking forward
 
FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...
FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...
FMK2014 Engaging Design, Snappy Users Experience & Creative User Interaction ...
 
Creating a Global Website
Creating a Global WebsiteCreating a Global Website
Creating a Global Website
 
API more than payload
API more than payloadAPI more than payload
API more than payload
 
1. Let's study web-development
1. Let's study web-development1. Let's study web-development
1. Let's study web-development
 
Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?Why is LEO CDP important for digital business ?
Why is LEO CDP important for digital business ?
 

More from ESUG

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
ESUG
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
ESUG
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
ESUG
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
ESUG
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
ESUG
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
ESUG
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
ESUG
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
ESUG
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
ESUG
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
ESUG
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
ESUG
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
ESUG
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
ESUG
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
ESUG
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
ESUG
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
ESUG
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
ESUG
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ESUG
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
ESUG
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
ESUG
 

More from ESUG (20)

Workshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programmingWorkshop: Identifying concept inventories in agile programming
Workshop: Identifying concept inventories in agile programming
 
Technical documentation support in Pharo
Technical documentation support in PharoTechnical documentation support in Pharo
Technical documentation support in Pharo
 
The Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and RoadmapThe Pharo Debugger and Debugging tools: Advances and Roadmap
The Pharo Debugger and Debugging tools: Advances and Roadmap
 
Sequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in PharoSequence: Pipeline modelling in Pharo
Sequence: Pipeline modelling in Pharo
 
Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...Migration process from monolithic to micro frontend architecture in mobile ap...
Migration process from monolithic to micro frontend architecture in mobile ap...
 
Analyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early resultsAnalyzing Dart Language with Pharo: Report and early results
Analyzing Dart Language with Pharo: Report and early results
 
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
Transpiling Pharo Classes to JS ECMAScript 5 versus ECMAScript 6
 
A Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test GenerationA Unit Test Metamodel for Test Generation
A Unit Test Metamodel for Test Generation
 
Creating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic ProgrammingCreating Unit Tests Using Genetic Programming
Creating Unit Tests Using Genetic Programming
 
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution ModesThreaded-Execution and CPS Provide Smooth Switching Between Execution Modes
Threaded-Execution and CPS Provide Smooth Switching Between Execution Modes
 
Exploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience ReportExploring GitHub Actions through EGAD: An Experience Report
Exploring GitHub Actions through EGAD: An Experience Report
 
Pharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIsPharo: a reflective language A first systematic analysis of reflective APIs
Pharo: a reflective language A first systematic analysis of reflective APIs
 
Garbage Collector Tuning
Garbage Collector TuningGarbage Collector Tuning
Garbage Collector Tuning
 
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame CaseImproving Performance Through Object Lifetime Profiling: the DataFrame Case
Improving Performance Through Object Lifetime Profiling: the DataFrame Case
 
Pharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and FuturePharo DataFrame: Past, Present, and Future
Pharo DataFrame: Past, Present, and Future
 
thisContext in the Debugger
thisContext in the DebuggerthisContext in the Debugger
thisContext in the Debugger
 
Websockets for Fencing Score
Websockets for Fencing ScoreWebsockets for Fencing Score
Websockets for Fencing Score
 
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScriptShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
ShowUs: PharoJS.org Develop in Pharo, Run on JavaScript
 
Advanced Object- Oriented Design Mooc
Advanced Object- Oriented Design MoocAdvanced Object- Oriented Design Mooc
Advanced Object- Oriented Design Mooc
 
A New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and TransformationsA New Architecture Reconciling Refactorings and Transformations
A New Architecture Reconciling Refactorings and Transformations
 

Recently uploaded

Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Neo4j
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
saastr
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Fwdays
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
BibashShahi
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 

Recently uploaded (20)

Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
9 CEO's who hit $100m ARR Share Their Top Growth Tactics Nathan Latka, Founde...
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Principle of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptxPrinciple of conventional tomography-Bibash Shahi ppt..pptx
Principle of conventional tomography-Bibash Shahi ppt..pptx
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 

SOA – Benefits and Risks

  • 1. (c) 2005 - Andy Berry (www.tof.co.uk) SOA – Benefits and Risks Presentation to ESUG 2005 Conference Andy Berry – www.tof.co.uk
  • 2. (c) 2005 - Andy Berry (www.tof.co.uk) What we’ll cover… What is SOA (Service Oriented Architecture)? Business Benefits Risks and how to mitigate them Smalltalk and SOA What next for your Business?
  • 3. (c) 2005 - Andy Berry (www.tof.co.uk) What is a SOA? What is an ‘architecture’? What is a ‘service’? What is a SOA?
  • 4. (c) 2005 - Andy Berry (www.tof.co.uk) What is a Architecture? Let’s pretend that you win the Lottery and you ask a builder to build you a new house…
  • 5. (c) 2005 - Andy Berry (www.tof.co.uk) This is what you have in mind…
  • 6. (c) 2005 - Andy Berry (www.tof.co.uk) But this is what you get… “Well, I saved bricks by building it ‘in the round’” the builder says Yes, but… He forget that the best view is where he didn’t put any windows
  • 7. (c) 2005 - Andy Berry (www.tof.co.uk) Now, let’s scale up the problem… Cities, comprising many thousands of buildings, must work together
  • 8. (c) 2005 - Andy Berry (www.tof.co.uk) Let’s apply this to IT… We may have wonderful applications for Sales, Billing and Quality Control but none of them should exist in isolation… A Sales Enquiry should ‘turn into’ an Invoice without the need to re-type it We need all our applications to work together so we can save money (That’s what it’s all about)
  • 9. (c) 2005 - Andy Berry (www.tof.co.uk) So, we need an architecture for our IT Systems The architecture must tell us how to link things together It must consider both the business itself and the world around it
  • 10. (c) 2005 - Andy Berry (www.tof.co.uk) Your Business and the World
  • 11. (c) 2005 - Andy Berry (www.tof.co.uk) My key message… If there’s one message I want you to take away from this presentation, it’s this: A Service Oriented Architecture is a way of including everyone - Customers, Suppliers and Enablers – as partners in your IT system
  • 12. (c) 2005 - Andy Berry (www.tof.co.uk) An SOA is… Service Oriented Architecture That is, an Architecture that is designed around Services
  • 13. (c) 2005 - Andy Berry (www.tof.co.uk) What is a “Service”? Suppose I am a Taxi Driver… You ring me up and ask me to take you somewhere… I arrive, pick you up and drive you to your destination… I have provided a “Service” (How I get paid is an interesting question, we’ll cover that near the end)
  • 14. (c) 2005 - Andy Berry (www.tof.co.uk) Characteristics of a Service It’s business oriented – I don’t need to tell the Taxi Driver how to drive It’s asynchronous – I request something and, sometime later, it happens Normally, you get what you ask for
  • 15. (c) 2005 - Andy Berry (www.tof.co.uk) Granularity, Granularity, Granularity… Let’s return to IT land… Consider a Billing Application… Should a Service be to read a row in the Customer table of the database? OR Should a Service be to submit an Invoice to a customer?
  • 16. (c) 2005 - Andy Berry (www.tof.co.uk) Remember, we’re talking Architecture, not Coding! Put simply, Services should be Business Oriented. Always ask yourself: Can I imagine myself doing this? If it’s doable by a human, it’s probably Business Oriented enough to be a Service
  • 17. (c) 2005 - Andy Berry (www.tof.co.uk) And so… A service to submit an Invoice to a customer is probably closer to meeting the definition of a “Business Oriented Service” in an SOA than a bit of code to read a row from a database
  • 18. (c) 2005 - Andy Berry (www.tof.co.uk) Where does SOA fit? Should SOA affect the way you view the world? Or, just the way you write your next line of code?
  • 19. (c) 2005 - Andy Berry (www.tof.co.uk) Try these statements… SOA is the most important development in software in the last ten years SOA is an interesting development that your company should monitor SOA is just a messaging application
  • 20. (c) 2005 - Andy Berry (www.tof.co.uk) How to talk to the world… Messages, Messages, And, yes, Messages
  • 21. (c) 2005 - Andy Berry (www.tof.co.uk) Inside your company… The role of SOAs isn’t limited to inter- company communication. In fact, it makes sense to introduce an SOA inside your company before you try to communicate outside
  • 22. (c) 2005 - Andy Berry (www.tof.co.uk) An exercise… As you know, I always ask you to do something during my presentations and so… Can you think of three business oriented services that you allow parts of your company to work more effectively together?
  • 23. (c) 2005 - Andy Berry (www.tof.co.uk) Implementing an SOA You can do it all yourself Or, you can use a product from suppliers like IBM, Iona, Sonic Software or CapeClear If you use a product, you get added value like tools to manage the flow of messages
  • 24. (c) 2005 - Andy Berry (www.tof.co.uk) Enterprise Service Bus One of the implementation mechanisms is to use an “Enterprise Service Bus” (ESB) As its name implies, it’s designed for use within an Enterprise – that’s another name for a company. Basically, it lets you wrap your existing applications up and get them talking to each other
  • 25. (c) 2005 - Andy Berry (www.tof.co.uk) The ESB Diagram
  • 26. (c) 2005 - Andy Berry (www.tof.co.uk) What goes along the Bus? Yes, hopefully, you’ve guessed… Messages, messages and more messages. Typically, these are implemented as Web Services
  • 27. (c) 2005 - Andy Berry (www.tof.co.uk) What’s a Web Service? At an implementation level, a Web Service is a service delivered by XML encoded messages. For a more abstract view, read Tim Berners-Lee’s article on the “Semantic Web” in the May 2001 issue of Scientific American
  • 28. (c) 2005 - Andy Berry (www.tof.co.uk) And the benefits of using Web Services are? When you link your ESB to one of your suppliers, you can use the Internet to send and receive messages Some Smalltalk implementations, for example, VisualWorks, support Web Services
  • 29. (c) 2005 - Andy Berry (www.tof.co.uk) Benefits and Risks Let’s look at the Benefits and Risks of SOA. This where it gets scary… Although, hopefully, you agree that the benefits are enough to justify taking the risks
  • 30. (c) 2005 - Andy Berry (www.tof.co.uk) Business Benefits of SOA You’ll have an Architecture rather than a heap of isolated applications Your company can work closer with Customers and Suppliers A “future-proof” approach, over a 5 to 10 year timeframe
  • 31. (c) 2005 - Andy Berry (www.tof.co.uk) Risks of SOA You’ll be an “Early Adopter” You’ll incur extra costs The future isn’t SOA after all… And you can avoid these risks by…
  • 32. (c) 2005 - Andy Berry (www.tof.co.uk) Mitigating the Risks Don’t “bet the business” – identify a specific area that can benefit and start there. Ensure that you have access to Mentors – you’re taking a big step and you need to make sure you know the risks. Choose a product before you start implementation
  • 33. (c) 2005 - Andy Berry (www.tof.co.uk) Smalltalk and SOA As we’ve noted, Web Services are implemented by some Smalltalk implementations It only took me one day to use the Google Web Service – just do it!
  • 34. (c) 2005 - Andy Berry (www.tof.co.uk) What next? You could “just do it” with SOA but: You’d have to consider who is going to do what and when Remember, granularity of service is a critical success factor You don’t want to end up with just another bit of technology - you want an Architecture that supports your business
  • 35. (c) 2005 - Andy Berry (www.tof.co.uk) And so… I suggest: You spend some time learning about the technology Pick an area that could benefit from a SOA Develop a prototype Obtain “buy-in” from senior staff within your company
  • 36. (c) 2005 - Andy Berry (www.tof.co.uk) The Next Big Idea… Let’s return to our Taxi driver. He’s dropped us at our destination and then what? He asks for payment for the service he’s just provided…
  • 37. (c) 2005 - Andy Berry (www.tof.co.uk) Payment for Services Imagine you didn’t have to buy servers or support them! Wow, utopia here we come… Why not simply pay for every IT service you need, when you use it?
  • 38. (c) 2005 - Andy Berry (www.tof.co.uk) Questions and Discussion Thanks for listening Hope I’ve given you some ideas What are you going to do next week?