Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

InSync11 Event Driven SOA Integration

539 views

Published on

Presentation I gave at inSync11 on event driven soa integration

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

InSync11 Event Driven SOA Integration

  1. 1. Event
Driven
SOA
Integra0on:The
Good,
the
Bad
and
the
Ugly Aaron
Blishen The most comprehensive Oracle applications & technology content under one roof
  2. 2. Project
numbers The most comprehensive Oracle applications & technology content under one roof
  3. 3. Project
numbers 40000
Students The most comprehensive Oracle applications & technology content under one roof
  4. 4. Project
numbers 40000
Students 1000
Staff The most comprehensive Oracle applications & technology content under one roof
  5. 5. Project
numbers 8
Systems 40000
Students 1000
Staff The most comprehensive Oracle applications & technology content under one roof
  6. 6. Project
numbers 60
Integra0on
Processes 8
Systems 40000
Students 1000
Staff The most comprehensive Oracle applications & technology content under one roof
  7. 7. Project
numbers 3
Years
in
the
making 60
Integra0on
Processes 8
Systems 40000
Students 1000
Staff The most comprehensive Oracle applications & technology content under one roof
  8. 8. Project
numbers 10
Months
in
Produc0on 3
Years
in
the
making 60
Integra0on
Processes 8
Systems 40000
Students 1000
Staff The most comprehensive Oracle applications & technology content under one roof
  9. 9. Project
numbers 10
Months
in
Produc0on 3
Years
in
the
making 60
Integra0on
Processes 8
Systems 4,400,000
Events
Processed 40000
Students 1000
Staff The most comprehensive Oracle applications & technology content under one roof
  10. 10. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  11. 11. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  12. 12. Project
Challenges Nightly Batched ETL DataCore System Satellite System The most comprehensive Oracle applications & technology content under one roof
  13. 13. Project
Challenges Nightly Batched ETL DataCore System Satellite System Business IT Business The most comprehensive Oracle applications & technology content under one roof
  14. 14. Project
Challenges Real time DataCore System Satellite System The most comprehensive Oracle applications & technology content under one roof
  15. 15. Project
Challenges Real time DataCore System Satellite System Business & IT The most comprehensive Oracle applications & technology content under one roof
  16. 16. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  17. 17. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  18. 18. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  19. 19. Project
Challenges 7.$"0#3 13(#$, 8%+9(+"4 -::+*"# )*(#+,$%4 1#/2 -.,"(%/0+" 5$#/6( !"#$%&%($ 13(#$, )%$/#$4 =&./#$4 )*(#+,$% )*(#+,$% )*(#+,$% )+";%,4 <%/"(/:# 7.$"0#3 The most comprehensive Oracle applications & technology content under one roof
  20. 20. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  21. 21. Project
Challenges The most comprehensive Oracle applications & technology content under one roof
  22. 22. Project
Challenges + The most comprehensive Oracle applications & technology content under one roof
  23. 23. Project
Challenges 7.$"0#3 13(#$, 8%+9(+"4 -::+*"# )*(#+,$%4 1#/2 + -.,"(%/0+" 5$#/6( !"#$%&%($ 13(#$, )%$/#$4 =&./#$4 )*(#+,$% )*(#+,$% )*(#+,$% )+";%,4 <%/"(/:# 7.$"0#3 The most comprehensive Oracle applications & technology content under one roof
  24. 24. Project
Challenges 7.$"0#3 13(#$, 8%+9(+"4 -::+*"# )*(#+,$%4 1#/2 + -.,"(%/0+" 5$#/6( !"#$%&%($ 13(#$, )%$/#$4 =&./#$4 )*(#+,$% )*(#+,$% )*(#+,$% )+";%,4 <%/"(/:# 7.$"0#3 + The most comprehensive Oracle applications & technology content under one roof
  25. 25. Project
Challenges 7.$"0#3 13(#$, 8%+9(+"4 -::+*"# )*(#+,$%4 1#/2 + -.,"(%/0+" 5$#/6( !"#$%&%($ 13(#$, )%$/#$4 =&./#$4 )*(#+,$% )*(#+,$% )*(#+,$% )+";%,4 <%/"(/:# 7.$"0#3 Real time + Data Core System Satellite System The most comprehensive Oracle applications & technology content under one roof
  26. 26. Project
Challenges 7.$"0#3 13(#$, 8%+9(+"4 -::+*"# )*(#+,$%4 1#/2 -.,"(%/0+" 5$#/6( !"#$%&%($ 13(#$, )%$/#$4 =&./#$4 )*(#+,$% )*(#+,$% )*(#+,$% )+";%,4 <%/"(/:# 7.$"0#3 Real time Client & IP Vendor & Client Data Core System Satellite System Client & IP The most comprehensive Oracle applications & technology content under one roof
  27. 27. Project
Challenges Vendor Client IP The most comprehensive Oracle applications & technology content under one roof
  28. 28. Project
Challenges ?!! Vendor Client IP The most comprehensive Oracle applications & technology content under one roof
  29. 29. Solu0on
Concept Core System Events ? The most comprehensive Oracle applications & technology content under one roof
  30. 30. Solu0on
Concept OrchestrationCore System Business System ? Service Bus The most comprehensive Oracle applications & technology content under one roof
  31. 31. Solu0on
Concept Client Vendor The most comprehensive Oracle applications & technology content under one roof
  32. 32. Solu0on
Concept Does your application have an event engine? Client Vendor The most comprehensive Oracle applications & technology content under one roof
  33. 33. Solu0on
Concept Does your application have No. But we will build it. an event engine? Tell us what you need! Client Vendor The most comprehensive Oracle applications & technology content under one roof
  34. 34. Solu0on
Concept Client IP The most comprehensive Oracle applications & technology content under one roof
  35. 35. Solu0on
Concept IP lets do some analysis to find out what we want. Client IP The most comprehensive Oracle applications & technology content under one roof
  36. 36. Solu0on
Concept IP lets do some analysis to Ok. Lets elaborate find out what we want. Client IP The most comprehensive Oracle applications & technology content under one roof
  37. 37. Solu0on
Elabora0on Category Location Course Unit Type Calendar Course Unit Student Staff Enrolment Enrolment Course Unit GradingSanction Org Unit Availability Availability Scheme The most comprehensive Oracle applications & technology content under one roof
  38. 38. Solu0on
Elabora0on Identity & Provisioning Curriculum Student Staff Course Unit Course Unit Sanction Availability Availability Enrolment Reference Data Course Unit Location Org Unit Enrolment Enrolment Calendar Category Grading Type Scheme The most comprehensive Oracle applications & technology content under one roof
  39. 39. Solu0on
Elabora0on Org Unit Create Created Update Update Updated Delete Deleted The most comprehensive Oracle applications & technology content under one roof
  40. 40. Solu0on
Elabora0on Receive Course Enrolment Application Unassessed Withdraw Withdrawn Assess Withdraw Application Assessed Unsuccessful Unsuccessful Offer Offer Offered Decline Offer Declined Accept Offer Lapse Offer Offer Accepted Lapsed Admit Admitted The most comprehensive Oracle applications & technology content under one roof
  41. 41. Solu0on
Elabora0on Curriculum System A System B System C Course Create ! ! ! Update ! ! Delete ! Unit Create ! ! Update ! ! Delete ! Enrolment Course Assess ! ! Enrolment Withdraw ! Unsuccessful ! Decline Offer ! Accept Offer ! Admit ! ! ! The most comprehensive Oracle applications & technology content under one roof
  42. 42. Solu0on
Elabora0on Enrolment System A System B System C Course Assess Enrolment Attribute A ! ! ! Attribute B ! ! Attribute C ! Attribute D ! ! Attribute E Attribute F ! The most comprehensive Oracle applications & technology content under one roof
  43. 43. Solu0on
Elabora0on Enrolment System A System B System C Course Assess Enrolment Attribute A ! ! ! Attribute B ! ! Attribute C ! Attribute D ! ! Attribute E Attribute F ! The most comprehensive Oracle applications & technology content under one roof
  44. 44. Solu0on
Elabora0on Enrolment System A System B System C Course Assess Enrolment Attribute A ! ! ! Attribute B ! ! Attribute C ! Attribute D ! ! Attribute E Attribute F ! The most comprehensive Oracle applications & technology content under one roof
  45. 45. Solu0on
Elabora0on Enrolment System A System B System C Course Assess Enrolment Attribute A ! ! ! Attribute B ! ! Attribute C ! Attribute D ! ! Attribute E Attribute F ! The most comprehensive Oracle applications & technology content under one roof
  46. 46. Solu0on
Elabora0on Enrolment System A System B System C Course Assess Enrolment Attribute A ! ! ! Attribute B ! ! Attribute C ! Attribute D ! ! Attribute E Attribute F ! The most comprehensive Oracle applications & technology content under one roof
  47. 47. Solu0on
Elabora0on Enrolment System A System B System C Course Assess Enrolment Attribute A ! ! ! Attribute B ! ! Attribute C ! Attribute D ! ! Attribute E Attribute F ! The most comprehensive Oracle applications & technology content under one roof
  48. 48. Solu0on
Elabora0on Client Vendor The most comprehensive Oracle applications & technology content under one roof
  49. 49. Solu0on
Elabora0on We now know what we want. Can you build the event engine? Client Vendor The most comprehensive Oracle applications & technology content under one roof
  50. 50. Solu0on
Elabora0on We now know what we want. Yes we will build the event Can you build the event engine. engine? Client Vendor The most comprehensive Oracle applications & technology content under one roof
  51. 51. Solu0on
Elabora0on Client IP The most comprehensive Oracle applications & technology content under one roof
  52. 52. Solu0on
Elabora0on We need to start the next phase. Client IP The most comprehensive Oracle applications & technology content under one roof
  53. 53. Solu0on
Elabora0on We need to start the next Ok. Lets start on solution phase. design and iterative delivery. Client IP The most comprehensive Oracle applications & technology content under one roof
  54. 54. Solu0on
Delivery End to End Design - Course Enrolment (Admit) - Service Classification Task Student Admitted on Course Entity Student Course Enrolment System Identity Adminsitration Adminsitration Utility Notification The most comprehensive Oracle applications & technology content under one roof
  55. 55. Solu0on
Delivery End to End Design - Course Enrolment (Admit) - Integration Flow 7.$"0#3 13(#$, 8%+9(+"4 -::+*"# )*(#+,$%4 1#/2 -.,"(%/0+" 5$#/6( !"#$%&%($ 13(#$, )%$/#$4 =&./#$4 )*(#+,$% )*(#+,$% )*(#+,$% )+";%,4 <%/"(/:# 7.$"0#3 The most comprehensive Oracle applications & technology content under one roof
  56. 56. Solu0on
Delivery Service Design Capabilities Component Architecture Implementation Logic Non Functionals The most comprehensive Oracle applications & technology content under one roof
  57. 57. Solu0on
Delivery Service Design System Interface Capabilities Services Component Architecture Message Exchange Implementation Logic Non Functionals Non Functionals The most comprehensive Oracle applications & technology content under one roof
  58. 58. Solu0on
Delivery Orchestration Service Bus The most comprehensive Oracle applications & technology content under one roof
  59. 59. Solu0on
Delivery BPEL Unit Test Assert Flow Orchestration Service Bus The most comprehensive Oracle applications & technology content under one roof
  60. 60. Solu0on
Delivery Automated Test Harness BPEL Unit Test Assert Message(s) Initiate Test Assert Flow State Orchestration Mock Core Mock System Business System(s) Service Bus The most comprehensive Oracle applications & technology content under one roof
  61. 61. Solu0on
Delivery Business System ? Standard Implementation Pattern The most comprehensive Oracle applications & technology content under one roof
  62. 62. Solu0on
Delivery Client Vendor The most comprehensive Oracle applications & technology content under one roof
  63. 63. Solu0on
Delivery We wont be able to complete the build until Q4 2011 Client Vendor The most comprehensive Oracle applications & technology content under one roof
  64. 64. Solu0on
Delivery We need something before We wont be able to complete then. the build until Q4 2011 Client Vendor The most comprehensive Oracle applications & technology content under one roof
  65. 65. Solu0on
Delivery Client IP The most comprehensive Oracle applications & technology content under one roof
  66. 66. Solu0on
Delivery Can you help? Client IP The most comprehensive Oracle applications & technology content under one roof
  67. 67. Solu0on
Delivery Can you help? Yes we can. Client IP The most comprehensive Oracle applications & technology content under one roof
  68. 68. Challenges Core System X Service Layer X Business Objects Layer Database ! No Key Constraints Database Integration UGLY!! The most comprehensive Oracle applications & technology content under one roof
  69. 69. Solu0on
Concept The most comprehensive Oracle applications & technology content under one roof
  70. 70. Solu0on
Concept Core System Database Data CDC The most comprehensive Oracle applications & technology content under one roof
  71. 71. Solu0on
Concept Core System Database Data CDC ODI Temporal Database (Warehouse-ish) The most comprehensive Oracle applications & technology content under one roof
  72. 72. Solu0on
Concept Core System Database Data CDC ODI Temporal Database (Warehouse-ish) Custom Event Events Engine The most comprehensive Oracle applications & technology content under one roof
  73. 73. Solu0on
Concept Core System Database Data CDC ODI Temporal Database (Warehouse-ish) Custom Event Events Engine The most comprehensive Oracle applications & technology content under one roof
  74. 74. Solu0on
Concept A Business Object Parent Student Phone Name Citizenship Child Address Email Parent and children can change over time independently The most comprehensive Oracle applications & technology content under one roof
  75. 75. Solu0on
Concept A Temporal Business Object Student Details Timestamp Student Key Phone Timestamp Name Timestamp Citizenship Timestamp Address Email Timestamp Timestamp The most comprehensive Oracle applications & technology content under one roof
  76. 76. Solu0on
Concept Time Create Student Details t1 Student Key t1 Name t1 The most comprehensive Oracle applications & technology content under one roof
  77. 77. Solu0on
Concept Time Create Update Student Student Details Details t1 t1 Student Key Student Key t1 t1 Phone Name t2 Name t1 t1 Address t2 The most comprehensive Oracle applications & technology content under one roof
  78. 78. Solu0on
Concept Core System Database Data CDC ODI Temporal Database (Warehouse-ish) Custom Event Events Engine The most comprehensive Oracle applications & technology content under one roof
  79. 79. Solu0on
Concept Core System Database Data CDC ODI Temporal Database (Warehouse-ish) Custom Event Events Engine The most comprehensive Oracle applications & technology content under one roof
  80. 80. Challenges Course Course Student Enrolment Enrolment Create Offered Admitted 1 2 3 The most comprehensive Oracle applications & technology content under one roof
  81. 81. Challenges Course Course Student Enrolment Enrolment Create Offered Admitted 3 1 2 The most comprehensive Oracle applications & technology content under one roof
  82. 82. Challenges Events Per Day! (!!!!!" Unit Results !!!!!" &!!!!!" %!!!!!" $!!!!!" Unit Enrolment Advanced Standing Bulk Jobs #!!!!!" TAC Admission !" 21/10/10 4/11/10 18/11/10 2/12/10 16/12/10 30/12/10 13/01/11 27/01/11 10/02/11 24/02/11 10/03/11 24/03/11 7/04/11 21/04/11 5/05/11 19/05/11 2/06/11 16/06/11 30/06/11 14/07/11 The most comprehensive Oracle applications & technology content under one roof
  83. 83. Challenges Events Per Day! Peak Load 550k (!!!!!" Unit Results !!!!!" &!!!!!" %!!!!!" $!!!!!" Unit Enrolment Advanced Standing Bulk Jobs #!!!!!" TAC Admission !" 21/10/10 4/11/10 18/11/10 2/12/10 16/12/10 30/12/10 13/01/11 27/01/11 10/02/11 24/02/11 10/03/11 24/03/11 7/04/11 21/04/11 5/05/11 19/05/11 2/06/11 16/06/11 30/06/11 14/07/11 The most comprehensive Oracle applications & technology content under one roof
  84. 84. Challenges Events Per Hour! (!!!!" !!!!" &!!!!" %!!!!" $!!!!" #!!!!" !" !)!!" #)!!" $)!!" %)!!" &)!!" )!!" ()!!" *)!!" +)!!" ,)!!" #!)!!" ##)!!" #$)!!" #%)!!" #&)!!" #)!!" #()!!" #*)!!" #+)!!" #,)!!" $!)!!" $#)!!" $$)!!" $%)!!" The most comprehensive Oracle applications & technology content under one roof
  85. 85. Challenges Events Per Hour! (!!!!" Peak Load 50k !!!!" &!!!!" %!!!!" $!!!!" #!!!!" !" !)!!" #)!!" $)!!" %)!!" &)!!" )!!" ()!!" *)!!" +)!!" ,)!!" #!)!!" ##)!!" #$)!!" #%)!!" #&)!!" #)!!" #()!!" #*)!!" #+)!!" #,)!!" $!)!!" $#)!!" $$)!!" $%)!!" The most comprehensive Oracle applications & technology content under one roof
  86. 86. Solu0on Orchestration Buffering, SequencingCore System and Flow Control Business System(s) Event Capture ? Service Bus The most comprehensive Oracle applications & technology content under one roof
  87. 87. Solu0on Event Processor Receive Event Send Event Sequencing JMS Event Web Service Service Bus Event Message Unprocessed Listener Client DAO Event DAO Threadpool Threadpool Process NotificationsEvent Queue Event Message Repository Flow Control Buffering JMS Event Processing Notifications Event Messages Listener Notifications DAO Threadpool Unprocessed Working Set Metadata Notifications Queue The most comprehensive Oracle applications & technology content under one roof
  88. 88. Solu0on Event Processor Receive Event Send Event Sequencing JMS Event Web Service Service Bus Event Message Unprocessed Listener Client DAO Event DAO Threadpool Threadpool Process NotificationsEvent Queue Event Message Repository Flow Control Buffering JMS Event Processing Notifications Event Messages Listener Notifications DAO Threadpool Unprocessed Working Set Metadata Notifications Queue The most comprehensive Oracle applications & technology content under one roof
  89. 89. Solu0on Process Notifications Flow Control JMS Event Notifications Listener DAO Threadpool Notifications Queue The most comprehensive Oracle applications & technology content under one roof
  90. 90. Solu0on Process Notifications Flow Control JMS Event Notifications Listener DAO Threadpool Notifications Queue Error in Create Student A! Dont send Course Enrolment Offer for Student A. The most comprehensive Oracle applications & technology content under one roof
  91. 91. Solu0on Process Notifications Flow Control JMS Event Notifications Listener DAO Threadpool Notifications Queue Error in Create Student A! Lots of Errors for System B! Dont send Course Enrolment Offer System overloaded. Backoff!! for Student A. The most comprehensive Oracle applications & technology content under one roof
  92. 92. Retrospec0ve Client Vendor The most comprehensive Oracle applications & technology content under one roof
  93. 93. Retrospec0ve Do you have an event engine? Client Vendor The most comprehensive Oracle applications & technology content under one roof
  94. 94. Retrospec0ve Do you have an event engine? No. Client Vendor The most comprehensive Oracle applications & technology content under one roof
  95. 95. Retrospec0ve Ok. We wont do real time integration just yet. Client Vendor The most comprehensive Oracle applications & technology content under one roof
  96. 96. Retrospec0ve Client IP The most comprehensive Oracle applications & technology content under one roof
  97. 97. Retrospec0ve We want to do real time integration. Client IP The most comprehensive Oracle applications & technology content under one roof
  98. 98. Retrospec0ve Ok. It is not suitable for We want to do real time everything. It is a more integration. expensive option. Client IP The most comprehensive Oracle applications & technology content under one roof
  99. 99. Retrospec0ve If you have the choice ✓ Core System Service Layer Database X ! Database Integration is UGLY!! The most comprehensive Oracle applications & technology content under one roof
  100. 100. Retrospec0ve Receive Course Enrolment Application Unassessed Withdraw Withdrawn Assess Withdraw Application Assessed Unsuccessful Unsuccessful Offer Offer Offered Decline Offer Declined Accept Offer Lapse Offer Offer Accepted Lapsed Admit Admitted The most comprehensive Oracle applications & technology content under one roof
  101. 101. Retrospec0ve Receive Course Enrolment Application Unassessed Withdraw Withdrawn Assess Withdraw X Application Assessed Unsuccessful Unsuccessful Offer Offer Offered Decline Offer Declined Accept Offer Lapse Offer Offer Accepted Lapsed Admit Admitted The most comprehensive Oracle applications & technology content under one roof
  102. 102. Retrospec0ve Org Unit Create Created Update Update Updated Delete Deleted The most comprehensive Oracle applications & technology content under one roof
  103. 103. Retrospec0ve Org Unit Create ✓ Created Update Update Updated Delete Deleted The most comprehensive Oracle applications & technology content under one roof
  104. 104. AKribu0on http://www.flickr.com/photos/evaekeblad/3875168218/in/ set-72157621794072507/ http://www.flickr.com/photos/jakecaptive/3205277810/ The most comprehensive Oracle applications & technology content under one roof
  105. 105. Ques0ons? The most comprehensive Oracle applications & technology content under one roof

×