Streamline your SOA Portfolio


Published on

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

Streamline your SOA Portfolio

  1. 1. Learn  with  WSO2   Streamlining  your  SOA  Por7olio   Chris  Haddad   Vice  President  Technology  Evangelism  
  2. 2. Service  Oriented  Architecture   •  SOA  is  the  best  prac*ce  for  building  distributed   interconnected  systems   –  Using  well-­‐defined  interac@ons  between  systems   –  Moving  from  proprietary  formats  to  open  formats:   •  XML,  HTTP,  SOAP,  JSON,  OAuth     –  Integra@on  is  dependent  on  external  interfaces  not  on   internal  code   •  SOA  is  the  basis  of  all  modern  Enterprise  Architecture  
  3. 3. Services  Defined   •  Services  are  applicaDon,  process,  or  data   assets  that  provide  useful  func@on   •  The  service  is  not  just  the  soMware…  it  is  the   accessible  business  capability   •  Services  are  accessible  in  a  common  way   across  the  network  and  organiza@on   •  Services  are  re-­‐usable  building  blocks  that  can   be  re-­‐used  to  build  other  applica@ons  
  4. 4.    
  5. 5. SOA – Enterprise Expectations
  6. 6. Por7olio  Business  Goal   “to  help  organiza*ons  consistently  deliver   sustainable  business  value,  with  increased  agility   and  cost  effec*veness...”   Source:  Annotated  SOA  Manifesto    hQp://www.soa-­‐ annotated.htm  
  7. 7. SOA  Manifesto   “Service  orienta*on  posi*ons  services  as  IT   assets  that  are  expected  to  provide  repeated   value  over  *me  that  far  exceeds  the  ini*al   investment  required  for  their  delivery.”       Source:  Annotated  SOA  Manifesto    hQp://www.soa-­‐    
  8. 8. SOA  Por7olio  Goal   •  A  set  of  services  matching  business   capabili@es  and  resources  (one-­‐to-­‐one)   •  Services  re-­‐used  rather  than  re-­‐built   •  Data  transforma@ons  occur  at  the  edge  
  9. 9. How  to  idenDfy  an  inefficient     SOA  Por7olio   •  Hundreds  or  thousands  of  services   •  Difficult  to  discover  services  to  include  in  a   project   •  Applica@on  design  only  contains  services  as   integra@on  interfaces   – Rather  than  fundamental  building  blocks  
  10. 10. SOA  Pi7alls   •  Tight  Coupling   •  Service  Oriented  Integra@on     – instead  of  Service  Oriented  Architecture   •  Wrong  Focus   •  LiQle  Re-­‐use    
  11. 11. Is  your  Por7olio  Tightly  Coupled?   •  Tightly  coupled  systems  have  significant   problems:   – Errors,  delays  and  down@me  spread  through  the   system   – The  resilience  of  the  whole  system  is  based  on  the   weakest  part   – Cost  of  upgrading  or  migra@ng  spreads   – Hard  to  evaluate  the  useful  parts  from  the  dead   weight    
  12. 12. Service  Oriented  IntegraDon     •  Services  used  to  connect  systems   •  Services  move  and  replicate  informa@on   •  Services  do  not  map  to  business  capabili@es,  data   resources,  processes   •  Service  used  for  point-­‐to-­‐point  data  transfer   •  SOI  Example:         –  Move  SalesForce  informa@on  to  Accoun@ng   •  SOA  Example:   –  Get  CustomerList    
  13. 13. Wrong  Focus   •  Short  term   •  Single  Project   •  Technical  
  14. 14. LiPle  Re-­‐use   Can’t  manage  what  you  don’t  measure   •  Do  you  have  a  re-­‐use  dashboard?   •  Does  your  governance  process  check  for   available  re-­‐usable  services?   •  Do  you  measure  service  coupling?  
  15. 15. Por7olio  Streamlining  SoluDons   •  SOA  PaQerns   •  SOA  Governance   •  Por^olio  Management    
  16. 16. SOA  PaPerns   •  Founda*onal  Inventory  PaGerns   •  Logical  Inventory  Layer  PaGerns   •  Inventory  Centraliza*on  PaGerns   •  Inventory  Implementa*on  PaGerns   •  Inventory  Governance  PaGerns   •  Founda*onal  Service  PaGerns   •  Service  Implementa*on  PaGerns   •  Service  Security  PaGerns   •  Service  Contract  Design  PaGerns   •  Legacy  Encapsula*on  PaGerns   Source:  SOA  PaQerns    hQp://  
  17. 17. SOA  Governance   •  Service  Project  Checklist  Items   – Annotate  service  meta-­‐data   •  Business  domain   •  Resource  name     – Available  services  that  fit  requirements   – Loosely  Coupled  Design  
  18. 18. Por7olio  Management   •  Create  a  service  por^olio  dashboard   •  Track  subscrip@ons  to  a  service   •  Calculate  business  value  obtained  by  re-­‐use   •  Calculate  devia@on  from  streamlined  por^olio   •  Por^olio  Reviews   – Number  of  @mes  a  service  is  re-­‐used   – Number  of  services  incorporated  into  a  project   – Redundant  services