the enterprise architecture you always wanted
DESCRIPTION
TRANSCRIPT
![Page 1: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/1.jpg)
The Enterprise Architecture you always wanted has been hiding in
plain sight since 1991 Jim Webber
h<p://jim.webber.name
Twi<er: @jimwebber
![Page 2: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/2.jpg)
Or: A Billion TransacDons Per Month Using the Web for Enterprise Heavy LiLing
Jim Webber h<p://jim.webber.name
Twi<er: @jimwebber
![Page 3: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/3.jpg)
![Page 4: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/4.jpg)
Today’s Enterprise Architecture
![Page 5: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/5.jpg)
![Page 6: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/6.jpg)
“SOA: Principles of Service Design underwent a thorough technical review involving over 60 reviewers from different vendors, organiza3ons, and professions across North America, Europe, and Asia. The book has been formally endorsed by members of major SOA vendors, including IBM, MicrosoC, Oracle, BEA, and Intel.”
-‐-‐ Thomas Erl
![Page 7: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/7.jpg)
Tomorrow’s Enterprise Architecture
BPM Services
Business Service
Data Service
Business Service
Data Service
Data Service
Business Service
Data Service
Data Service
![Page 8: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/8.jpg)
Nirvana Enterprise Architecture, or…
BPM Service
Business Service
Business Service
ESB
Basic Service
Basic Service
Basic Service
Basic Service
Basic Service
Business Service
![Page 9: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/9.jpg)
ESB -‐ Erroneous SpagheU Box?
Enterprise Service Bus
![Page 10: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/10.jpg)
![Page 11: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/11.jpg)
![Page 12: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/12.jpg)
![Page 13: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/13.jpg)
But we sDll do it.
![Page 14: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/14.jpg)
Why?
Because it’s “less risky”
![Page 15: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/15.jpg)
Why?
Because that’s what the market does
![Page 16: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/16.jpg)
Why?
Because we need the -‐iliDes
![Page 17: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/17.jpg)
So let’s talk about those -‐iliDes
![Page 18: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/18.jpg)
![Page 19: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/19.jpg)
![Page 20: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/20.jpg)
Web
Scale!
![Page 21: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/21.jpg)
Trad
i'on
al Enterprise Security
![Page 22: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/22.jpg)
!"#$%&'"!(
)*%%#+*(&"',*%%-$+(
.*/(0*"1-,*(2'+-,(
"*%'3",*%(
%*,3"-!4(
-$!*")*5-#"4(
%*"1-,*(
!"#$%&'"!(
)*%%#+*(&"',*%%-$+(
.*/(0*"1-,*(2'+-,(
"*%'3",*%(
%*"1-,*(
2'+-,#2(
&'-$!6!'6&'-$!(
)*%%#+*(!"#$%7*"(
%*,3"-!4(
-$!*")*5-#"4(
!"#$%&"' !"#$%&"'
()*+,-%).'!"&/#%*0'123"4'524*"6*'
)"&/#"'&24*"6*'
!%74"89"4�:*"8';)7'*#+4)<"#'
="4">9+;"48')"&/#%*0'&24*"6*'*23"4'
!"&/#%*0'123"4'!"#$%&"'
?@!A1#/)*B'
!%74"89"4�:*"8';)7'*#+4)<"#'
5+4&"-9"6:%#"')"&/#%*0'&24*"6*'*23"4'
End to End Secure Messaging
End to End Secure ConversaDons
![Page 23: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/23.jpg)
!"#$%&'(' !"#$%&')'
*+',$-%.$/0'120.0&3$-4'
5+'62$&4702'401820'#044$90'
:0;8043&9'
402<%10'
:0;8043&9'
402<%10'
=.0&3/>'
?2"<%.02'@A6AB'
=.0&3/>'
C2"<%.02'@A6AB'
D+'E0/'6"F0&'G+',$-%.$/0'
120.0&3$-4'
!"#$%&'()*+,"-)!"%.&#")
/0!1*%$2'3)
4+5&#()
!"#$%&'()
*+,"-)
657&8)657&8)657&8)
!"#$%&'()*+,"-)!"%.&#")
/0!1*%$2'3)
4+5&#()
!"#$%&'()
*+,"-)
657&8)657&8)657&8)
!"#$%&'()*+,"-)!"%.&#")
/0!1*%$2'3)
4+5&#()
!"#$%&'()
*+,"-)
657&8)657&8)657&8)
Security Tokens and claims
FederaDng access with tokens
![Page 24: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/24.jpg)
![Page 25: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/25.jpg)
…you wouldn’t use it at home!
![Page 26: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/26.jpg)
![Page 27: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/27.jpg)
!"#$%&"' !"#$%&"'
(#")*"'+",-".&"'
!",-".&"'&#")*"/'
0&12'!",34'56375'
8"++)9"2'!",34':'5'
8"++)9"2'!",34':'3'
8"++)9"2'!",34':'3';'5'
<"+"./2'!",34':'32'0&1'<",-"+*"/'
!",-".&"'0&12'56'3'
=./'
![Page 28: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/28.jpg)
![Page 29: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/29.jpg)
!"#$%&"'
(#)*+)&,-*'&-*(".('
!"#$%&"' !"#$%&"'
/0%"*(')110%&),-*'2#)*+)&,-*'
&--#3%*)(-#'
2#)*+)&,-*'&-*(#-0'4"++)5"+'
67+%*"++'&-41-*"*('%*("#)&,-*+'
Bottleneck
No trustCrash recovery?
Denial of Service
![Page 30: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/30.jpg)
![Page 31: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/31.jpg)
<?xml version="1.0" encoding="UTF-8"?> <definitions name="HelloService" targetNamespace="http://www.ecerami.com/wsdl/HelloService.wsdl" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://www.ecerami.com/wsdl/HelloService.wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<message name="SayHelloRequest"> <part name="firstName" type="xsd:string"/> </message> <message name="SayHelloResponse"> <part name="greeting" type="xsd:string"/> </message>
<portType name="Hello_PortType"> <operation name="sayHello"> <input message="tns:SayHelloRequest"/> <output message="tns:SayHelloResponse"/> </operation> </portType>
<binding name="Hello_Binding" type="tns:Hello_PortType"> <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/> <operation name="sayHello"> <soap:operation soapAction="sayHello"/> <input> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:examples:helloservice" use="encoded"/> </input> <output> <soap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:examples:helloservice" use="encoded"/> </output> </operation> </binding>
<service name="Hello_Service"> <documentation>WSDL File for HelloService</documentation> <port binding="tns:Hello_Binding" name="Hello_Port"> <soap:address location="http://localhost:8080/soap/servlet/rpcrouter"/> </port> </service> </definitions> Hello W
orld!
![Page 32: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/32.jpg)
The Web is a coordina'on pla<orm Status cod
es Verbs
Med
ia
Type
s
![Page 33: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/33.jpg)
![Page 34: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/34.jpg)
A Case Study
Client • UK-‐based telecoms service provider • Global customers (no easy downDme) Problem • Scalability and system resilience issues • Huge growth curve to from a million to a billion messages per month
• Costs
![Page 35: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/35.jpg)
Plaaorm Architecture
CarrierCarrierCarrierCarrier
Gateway
Voice to Text
Algorithms
Integration Database
Post Processing
Shared Filesystem
Bottleneck Nightmare! Where’s my file gone?
Shoehorn it in that other
program
Fix things up here
![Page 36: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/36.jpg)
![Page 37: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/37.jpg)
The £10 Million SoluDon
CarrierCarrierCarrierCarrier
Gateway
Voice to Text
Algorithms
“Queue”Database
Post Processing
Shared Filesystem
Enterprise Service Bus
*
* SoluDon does not include actual implementaDon
![Page 38: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/38.jpg)
![Page 39: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/39.jpg)
ThoughtWorks was given the output from a previous enterprise consultancy…
…and told to “do that, but cheaper”
![Page 40: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/40.jpg)
![Page 41: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/41.jpg)
Think differently!
(or even just stop and think)
![Page 42: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/42.jpg)
Architecture is still important
![Page 43: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/43.jpg)
Agile EA: PrioriDse Service Delivery
CarrierCarrierCarrierCarrier
Gateway
Voice to Text
Algorithms
Integration Database
Post Processing
Shared Filesystem
Start by fixing storage
![Page 44: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/44.jpg)
![Page 45: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/45.jpg)
![Page 46: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/46.jpg)
![Page 47: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/47.jpg)
![Page 48: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/48.jpg)
Storage Manager Project Delivery
Small team
3 Week Incep'on
14 itera'ons
Java solu'on
Performance tes'ng throughout – See Jones and Kua paper, Agile 2009
Con'nuously built and deployed for tes'ng
![Page 49: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/49.jpg)
Web-‐friendly Architecture (mostly wallet-‐friendly too!)
Storage Manager
Jboss/Tomcat
GPFS SAN
Cacheable!
Optimised disk access!
Optimised server config
Free!
Encapsulates storage detail!
Fast!
Spend £ on the right
Infrastructure
![Page 50: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/50.jpg)
![Page 51: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/51.jpg)
![Page 52: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/52.jpg)
What is going on here?
What is going on with these peaks?
![Page 53: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/53.jpg)
Hypothesis
Directories are becoming full, slowing random access to files
![Page 54: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/54.jpg)
PredicDon
A single directory will result in linearly degrading performance
![Page 55: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/55.jpg)
![Page 56: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/56.jpg)
Outcome
Adapt the directory structure to take advantage of the underlying file
system
![Page 57: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/57.jpg)
Improving Enterprise Architecture
CarrierCarrierCarrierCarrier Gateway
Voice to Text
Algorithms
Integration Database
Post Processing
Storage Manager
Reduced Load
Just shoehorn it in that
other program
“She’ll be right”
Scalable!
![Page 58: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/58.jpg)
Storage Manager Benefits
• Immediate reduced load on integraDon database
• Enabled removal of code from systems
• Delivered business value by keeping customers happy
• “The best soLware we have ever deployed” – OperaDons director I’ll come back to this
![Page 59: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/59.jpg)
What’s wrong with this picture?
Voice to Text
Algorithms!
Storage Manager!
Just shoehorn it in that
other program!
Scalable!!
![Page 60: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/60.jpg)
What if…
We took our inspiraDon from successful Web-‐scale companies?
![Page 61: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/61.jpg)
What if…
And took the Dme to understand our SLAs?
![Page 62: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/62.jpg)
What if…
And picked the right technology soluDon?
Not just the one we’re being sold?
![Page 63: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/63.jpg)
What if…
We built a scalable compute plaaorm?
![Page 64: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/64.jpg)
![Page 65: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/65.jpg)
Grid Project Delivery
Larger team
3.5 Week Incep'on
18 itera'ons
Java solu'on
Performance tes'ng throughout
Con'nuously built and deployed for tes'ng
![Page 66: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/66.jpg)
Web-‐friendly Architecture (very wallet-‐friendly!)
Grid Manager
Embedded Jetty
Grid Manager
Embedded Jetty
Grid Manager
Embedded Jetty
Grid Manager
Embedded Jetty
Grid Manager
Embedded Jetty
ASR ASR ASR ASR
Grid Pipeline
ASR ASR ASR ASR
Grid Pipeline
Just HTTP
Fault Tolerant
Fault Tolerant
Just HTTP
Sustainable container for business logic
£0Software
Infrastructure
![Page 67: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/67.jpg)
Improving Enterprise Architecture
CarrierCarrierCarrierCarrier Gateway
Grid
Integration Database
Post Processing
Storage Manager
Massively Reduced Load
“She’ll be right”
Scalable!
Scalable, sustainable!
Scalable Processing Platform
![Page 68: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/68.jpg)
Grid Benefits
• Scalable, resilient plaaorm • Aligned with business goals • Further reduced load on integraDon database • Set architectural pa<erns • Deliver business value by processing more messages at lower cost than ever before
• “The best soLware we have ever deployed” – OperaDons director Be<er every Dme!
![Page 69: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/69.jpg)
£10,000,000Up-Front Cost of Bus Architecture
![Page 70: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/70.jpg)
£1,000,000Actual Cost of Completed Project
![Page 71: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/71.jpg)
£0Cost of Middleware
![Page 72: The Enterprise Architecture You Always Wanted](https://reader034.vdocument.in/reader034/viewer/2022051608/540b711cdab5ca00638b849a/html5/thumbnails/72.jpg)
The Web works
And its economies of scale eclipse your vendors’