apis power mvc for the web
TRANSCRIPT
ACHIEVING API MATURITY @ GLUECON 2011Panel thoughts:
APIS POWER MVC FOR THE WEB
Steven Willmott / 3scale [email protected]://www.3scale.net@njyx
All content http://creativecommons.org/licenses/by-sa/3.0/us/
MVC (Model / View / Controller)
Wildly Successful Architectural Pattern for Application Development
APIs are spreading across the web
Seem like random points of data, each with their own rules, features,
functions and value
These two things have nothing do with each other right?
(apart from in the obvious way)
MAYBE THEY DO…
VIEW = FORM
MODEL = DATA
CONTROLLER = BUSINESS LOGIC
Model
View Controller
MVC is Model / View / Controller
Lots of Frameworks
Originally described for Smalltalk at Xerox Park
(copyrights / respective owners)
MVC has Revolutionized Software Web App Development
Clear separation between Data, Presentation & Business Logic
First : MVC Applications
Model
View
Controller
Separate at Design Time
Baked together at Run Time
Then : MVC SAAS
Model
View
Controller
Separate at Design Time
Baked together at Run Time
Separate at Deploy Time
So What does this have to do with APIs?
Actually Yes - APIs Enable Separation of Concerns:
Across the Web
Across Companies
Example…
Model View Controller
Data Anywhere in any form
Many Delivery Channels
Third parties operating on data
Example Models
Model
Data Anywhere in any form
(copyrights / respective owners)
Example: Views
View
Many Delivery Channels
(copyrights / respective owners)
Example: Controllers
Controller
Many Delivery Channels
(copyrights / respective owners)
APIs Enable Separation & Focus
Model View Controller
Data Anywhere in any form
Many Delivery Channels
Third parties operating on data
APIs / Integration / Ecosystems
Impact
Value
Speed
Leverage
More value from existing assets
Time to Market
Ecosystems are strength
Focus on Core
Business
Architectural Patterns
MODELS: Push / Pull Data
CONTROLLERS: Transform or Orchestrate
VIEWS: Integrate and Visualise
API Maturity
Trends: Convergence
MODELS: Consolidation (e.g. Twitter Model for blogging)
CONTROLLERS: Similarities in Communications APIs
VIEWS: Emerging Winning PlatformsWith Eyeballs
Trends: Internet Operating System (Tim O’Reilly)
Search
Media Access(Auth / Caching / Analytics)
Communications (Email, IM, …)
Identity & Social Graph
Payment
AdvertisingLocation Activity Streams
Time
Image & Speech Recognition Government Data
Storage Compute Power Connectivity
Trends: Enabling components
C.f. Tim O’Reilly
Search
Media AccessTime
LocationAdvertising
Communications
Identify & Social Graph
The Internet Operating System Emerging
Search
Media Access(Auth / Caching / Analytics)
Communications (Email, IM, …)
Identity & Social Graph
Payment
AdvertisingLocation Activity Streams
Time
Image & Speech Recognition Government Data
Storage Compute Power Connectivity
(copyrights / respective owners)
CONCLUSIONS
APIs enable separation of concern – MVC patterns are emerging across the Web
An “Internet Operating System” may not be that far away
Thank You to Gluecon!
Steven Willmott / 3scale networks
Find 3scale at http://www.3scale.netFind me at [email protected] & @njyx
http://www.3scale.net/
Out of the box management infrastructure to power your API & App Strategy
/END