SOA & APIs: Fearless Lessons from the Field

1,482 views

Published on

Principal API Architect Mike Amundsen's Presentation from Gartner AADI

As Mobility spreads, the need for Agility increases. Yet we still need to maintain a stable, reliable, secure environment. This talk identifies three key lessons from the field (Choosing system models and tools to match specific needs, Encouraging broad experience in your develop base, and applying the USE Paradigm when implementing solutions) that address this need to increase agility while maintaining stability.

0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,482
On SlideShare
0
From Embeds
0
Number of Embeds
68
Actions
Shares
0
Downloads
35
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

SOA & APIs: Fearless Lessons from the Field

  1. 1. SOA and APIs:Fearless Lessons from the FieldMike AmundsenPrincipal API Architect@mamund 1
  2. 2. Fearless 2
  3. 3. Fearless 3
  4. 4. Fearless 4
  5. 5. Mike Amundsen Architect, Developer, Presenter Hypermedia Junkie Principal API Architect for Layer 7 “Help people build great APIs for the Web” Personal Mission “Improve the quality and usability of information on the Web.” 5
  6. 6. THE CHALLENGE 6
  7. 7. More Devices 7
  8. 8. More Apps 8
  9. 9. More APIs 9
  10. 10. The Challenge Mobility 10
  11. 11. The Challenge Agility 11
  12. 12. The Challenge Mobility = Agility 12
  13. 13. The Challenge Increase Agility 13
  14. 14. The Challenge Maintain Stability 14
  15. 15. Lessons from the field Models and tools REST and Hypermedia Broad Experience SOAP, CRUD, and Hypermedia High-level View The USE Paradigm 15
  16. 16. REST AND HYPERMEDIA 16
  17. 17. REST and Hypermedia REST is an architectural model for widely distributed systems 17
  18. 18. REST and Hypermedia - Space http://www.flickr.com/photos/jram23/3088003105/ 18
  19. 19. REST and Hypermedia - Time http://www.flickr.com/photos/alancleaver/2661425133/ 19
  20. 20. REST and Hypermedia - Model http://www.flickr.com/photos/usnationalarchives/5476286211/ 20
  21. 21. REST and Hypermedia - Tools http://http://www.flickr.com/photos/36247316@N00/3108399560/ 21
  22. 22. REST and Hypermedia Hypermedia is a tool for implementing remote, evolvable systems 22
  23. 23. REST and Hypermedia - Space http://www.flickr.com/photos/jram23/3088003105/ 23
  24. 24. REST and Hypermedia - Time http://www.flickr.com/photos/alancleaver/2661425133/ 24
  25. 25. REST and Hypermedia – Evolvable http://www.flickr.com/photos/isherwoodchris/5811756295/ 25
  26. 26. REST and Hypermedia – Evolvable http://http://www.flickr.com/photos/ecbiosheron/4139220163/ 26
  27. 27. REST and Hypermedia – Evolvable http://http://http://www.flickr.com/photos/nrg07/4735858552/ 27
  28. 28. REST and Hypermedia – Real World http://www.flickr.com/photos/smaku/233763545/ 28
  29. 29. SOAP, CRUD, AND HYPERMEDIA 29
  30. 30. SOAP is for Components http://www.flickr.com/photos/amberwalker/5755325926/ 30
  31. 31. SOAP is for Components 31
  32. 32. SOAP is for Components Strong on XML, Weak on HTTP 32
  33. 33. CRUD is for Objects http://www.flickr.com/photos/topekalibrary/4294393624/ 33
  34. 34. CRUD is for Objects 34
  35. 35. CRUD is for ObjectsStrong on HTTP, Weak on Workflow 35
  36. 36. Hypermedia is for Messages 36
  37. 37. Hypermedia is for Messages 37
  38. 38. Hypermedia is for MessagesStrong on HTTP, Strong on Workflow 38
  39. 39. SOAP, CRUD, Hypermedia Moving away from SOAP 39
  40. 40. SOAP, CRUD, Hypermedia Implementing CRUD 40
  41. 41. SOAP, CRUD, Hypermedia Heading toward Hypermedia 41
  42. 42. THE USE PARADIGM 42
  43. 43. UsableUsability is the ease of use and learnability of a human-made object. 43
  44. 44. Usable – Action Life Cycle 44
  45. 45. Usable – Focus on tasks http://www.flickr.com/photos/somoamsterdam/4833837888/ 45
  46. 46. Usable – Employ empirical measurement 46
  47. 47. Usable – Iterative design http://www.flickr.com/photos/aajbutler/5448088057/ 47
  48. 48. Usable Focus 48
  49. 49. Usable Measure 49
  50. 50. Usable Iterate 50
  51. 51. ScalableScalability is the ability of a system, network, or process, to handle a growing amount of work in a capable manner. 51
  52. 52. Scalable – Out vs. Up 52
  53. 53. Scalable http://www.flickr.com/photos/27976837@N00/4347462236/ 53
  54. 54. Scalable – DevOps http://www.flickr.com/photos/friendlydragon/3864150771/ 54
  55. 55. Scalable – Where it counts 55
  56. 56. Scalable Scale Out 56
  57. 57. Scalable Automate 57
  58. 58. Scalable Where it counts 58
  59. 59. Evolvable Evolvability is defined as the capacity of a system for adaptive change. 59
  60. 60. Evolvable 60
  61. 61. Evolvable (pandere – to stretch) http://www.flickr.com/photos/kenjonbro/6277623578/ 61
  62. 62. Evolvable (vertere – to turn) http://www.flickr.com/photos/erdero/2274374743/ 62
  63. 63. Evolvable Versions “break”, extensions don’t. 63
  64. 64. SUMMARY 64
  65. 65. Summary - ChallengeMobility Agility Stability 65
  66. 66. Summary – Models http://www.flickr.com/photos/usnationalarchives/5476286211/ 66
  67. 67. Summary – Tools http://http://www.flickr.com/photos/36247316@N00/3108399560/ 67
  68. 68. Summary – Components http://http://www.flickr.com/photos/36247316@N00/3108399560/ 68
  69. 69. Summary – Objects http://www.flickr.com/photos/topekalibrary/4294393624/ 69
  70. 70. Summary – Messages 70
  71. 71. Summary – Usable 71
  72. 72. Summary – Scalable 72
  73. 73. Summary – Evolvable 73
  74. 74. SOA and APIs:Fearless Lessons from the FieldMike AmundsenPrincipal API Architect@mamund 74

×