SlideShare a Scribd company logo
© 2014 IBM Corporation
Radically Simple Management
& Assembly of API-based
Applications
Rania Khalaf, Jim Laredo, Alek Slominski
{rkhalaf, laredoj, aslom}@us.ibm.com
Please Note
IBM’s statements regarding its plans, directions, and intent are subject to change
or withdrawal without notice at IBM’s sole discretion.
Information regarding potential future products is intended to outline our general
product direction and it should not be relied on in making a purchasing decision.
The information mentioned regarding potential future products is not a
commitment, promise, or legal obligation to deliver any material, code or
functionality. Information about potential future products may not be incorporated
into any contract. The development, release, and timing of any future features or
functionality described for our products remains at our sole discretion.
Performance is based on measurements and projections using standard IBM
benchmarks in a controlled environment. The actual throughput or performance
that any user will experience will vary depending upon many factors, including
considerations such as the amount of multiprogramming in the user’s job stream,
the I/O configuration, the storage configuration, and the workload processed.
Therefore, no assurance can be given that an individual user will achieve results
similar to those stated here.
© 2013 IBM Corporation3
IBM Research
APIs is a strategic business tool for value co-
creation
3
All Fortune 1000 companies will have APIs by 2015
© 2013 IBM Corporation4
IBM Research
Achieving fast and beautiful compositions
Consumable, Agile
Proven patterns, quickly assembled and
delivered
Resiliency and QoS from API providers
Secure and scalable
5
Example: My Smart Home
•Demonstrate how home
APIs can be composed
together into recipes
•Show how recipes can
simplify home automation
http://www.brickshelf.com/gallery/slovakiasteph/hillsidemod/lego_005.jpg
6
Menu driven, single action Conversational, complex actions
© 2013 IBM Corporation7
IBM Research
7
Demo: The home owner
What people love
8
Channels
Recipes
Apps
Zaps
Limitation of these models
Integration of two APIS through Trigger  Action combinations
No flow control logic
Composition limited to mapping of outputs from the trigger into
inputs on the action
Optimized for ease of configuration
An API in the Catalog
Key
Provisioning
Test
invocation
Dev Support
API Spec
Authentication
mechanism
Provider ToS Community QoS History
Register the Recipe
11
© 2013 IBM Corporation12
IBM Research
12
Demo: The developer
Engaging with your home through APIs
13
Lightweight Workflow Scripting
Deploy to
scalable
runtime
Contextual queries
of service registry
REST Interaction
with APIs in cloud
Rich semantic
representation
of cloud APIs
Data collectionRetrieve
instance
state
Analytics
operations
Hosted IDE
Splice runtime
API Metadata
Cloud services
Creating Scripts: Login, author, deploy, invoke in
minutes
1. Login to Orion IDE
3. Generate call template for service endpoints 4. Convenient buttons to deploy and invoke
2. Content assist for built-in activities.
Create the Recipe
16
Workflow and
instance store
Workflow and
instance store
Workflow and
instance store
Workflow and
instance store
Splice engineSplice engineSplice engineSplice engine
workflow
engine
workflow
engine
Cloud capabilities
Workflow and
instance store
Workflow and
instance store
Elasticity
Use Auto Scaling Group
management service
(Netflix OSS)
Versioning
Fault isolation
Avoid cascading failures,
and transparently retry
failed invocations
(Netflix OSS)
Resilience
Tie together highly available
persistence layer, elastic engine,
and fault-isolation
(Netflix OSS)
Dynamic routing
Enables canary, A/B testing,
and staged deployment
(Netflix OSS)
Incoming
calls
v1
v2
Outgoing
calls
Edge service
(Zuul)
Edge service
(Zuul)
Splice engineSplice engineSplice engineSplice engine
Anatomy
wf enginewf engine
Edge service
(Zuul)
Edge service
(Zuul)
Service AService A Service BService B
User requests
(JMeter)
Direct percentage of
requests to different
versions of scriptVisualize
invocation
metrics
V2V1
Circuit breakerCircuit breaker
Services Fabric
BlueMix
Recipe InstanceRecipe Instance
APIs Recipes
Recipe2App
Recipe Architecture
workflow as a service
Summary: API Choreography for the Cloud
start = RECEIVEGET(null, ’mint');
geturs = SCRIPT(start, function() {
var user1 = start.out.user[0];
var user2 = start.out.user[1];
if (user1 == user2) { /* ... */ }
});
getlocation1 = GET(geturs, ...);
getlocation2 = GET(geturs, ...);
Script
Scale
Analyze
APIs
BlueMix
App
Recipe
PatternAPI
Endpoin
t
Endpoin
t
Endpoin
t
Endpoin
t
Pattern
AssetPattern
AssetPattern
Asset
Assets and
Orchestratio
ns
Binding Configuration
Pattern
AssetPattern
AssetPattern
Asset
Sample
(Client, UI)
Assets
Properties
Properties
Endpoint
Dependency
Endpoint
Dependency
Recipe
Cloud
Thank You
© 2013 IBM Corporation22
IBM Research
Legal Disclaimer
• © IBM Corporation 2014. All Rights Reserved.
• The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained
in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are
subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing
contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and
conditions of the applicable license agreement governing the use of IBM software.
• References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or
capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to
future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you
will result in any specific sales, revenue growth or other results.
• If the text contains performance statistics or references to benchmarks, insert the following language; otherwise delete:
Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will
experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage
configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
• If the text includes any customer examples, please confirm we have prior written approval from such customer and insert the following language; otherwise delete:
All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs
and performance characteristics may vary by customer.
• Please review text for proper trademark attribution of IBM products. At first use, each product name must be the full name and include appropriate trademark symbols (e.g., IBM
Lotus® Sametime® Unyte™). Subsequent references can drop “IBM” but should include the proper branding (e.g., Lotus Sametime Gateway, or WebSphere Application Server).
Please refer to http://www.ibm.com/legal/copytrade.shtml for guidance on which trademarks require the ® or ™ symbol. Do not use abbreviations for IBM product names in your
presentation. All product names must be used as adjectives rather than nouns. Please list all of the trademarks that you use in your presentation as follows; delete any not included in
your presentation. IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International
Business Machines Corporation in the United States, other countries, or both. Unyte is a trademark of WebDialogs, Inc., in the United States, other countries, or both.
• If you reference Adobe® in the text, please mark the first use and include the following; otherwise delete:
Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries.
• If you reference Java™ in the text, please mark the first use and include the following; otherwise delete:
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
• If you reference Microsoft® and/or Windows® in the text, please mark the first use and include the following, as applicable; otherwise delete:
Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.
• If you reference Intel® and/or any of the following Intel products in the text, please mark the first use and include those that you use as follows; otherwise delete:
Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and
other countries.
• If you reference UNIX® in the text, please mark the first use and include the following; otherwise delete:
UNIX is a registered trademark of The Open Group in the United States and other countries.
• If you reference Linux® in your presentation, please mark the first use and include the following; otherwise delete:
Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of
others.
• If the text/graphics include screenshots, no actual IBM employee names may be used (even your own), if your screenshots include fictitious company names (e.g., Renovations, Zeta
Bank, Acme) please update and insert the following; otherwise delete: All references to [insert fictitious company name] refer to a fictitious company and are used for illustration
purposes only.
Workflow Services in Cloud Platforms
23
Simple Workflow Service
Workflow FoundationService
Parameterizing the recipe
24
Interact with my house: Scripts using open APIs
25
Definitions: Services API, Recipe, Recipe Instance,
App
A running service provide Application
Programming Interface via endpoint
Services API Definition
Provide a reusable, configurable composition of services
template for replicable business scenarios.
Recipe Definition
A Recipe that is being configured is Recipe Instance
Recipe Instance has been deployed as one App (with one or multiple Recipe Assets)
Recipe Instance, App
Configured
Configure Deploy
Destroy
RecipeInstance
Registered Deleted
Register Delete
Recipe
Destroyed
Harvested
Workflows
/Scenarios
Create
Create
App
Deployed
Create
BlueMix
Recipe
PatternAPI
Endpoint
Endpoint
Endpoint
Endpoint
Pattern
AssetPattern
AssetPattern
Asset
Assets and
Orchestrations
Binding Configuration
Deploy
App
Pattern
AssetPattern
AssetPattern
Asset
Sample (Client,
UI) Assets
Properties
Properties
Endpoint
Dependency
Endpoint
Dependency
Service
ServiceAPI
Endpoint
Endpoint
Endpoint
Endpoint Runtime
Recipe Instance
CatalogAPI Catalog
API B
API A
Bindings
Binding Option 1
Binding Option 2
Configurations
Configuration
Property 1
Configuration
Property 2
Configuration
Property 3
RecipeCatalog
Lockdown
SmartHome
Runtime
Bluemix
App Runtime
(for PHP)
App Runtime
(for J2EE)
API Mgmt
A
P
I
A
P
I
A
P
I
A
P
I
Asset
Pkg
Asset
Pkg
Sample
Pkg
A
PI
Service Registry
RecipeLoaded
from Catalog
Recipe Instance Ready for
Deployment
AppDeployed
inBlueMix
Recipe User

More Related Content

What's hot

Maximize o valor do z/OS
Maximize o valor do z/OSMaximize o valor do z/OS
Maximize o valor do z/OS
Anderson Bassani
 
Connect 2014 - JMP102: Creating a Great XPages User Interface
Connect 2014 - JMP102: Creating a Great XPages User InterfaceConnect 2014 - JMP102: Creating a Great XPages User Interface
Connect 2014 - JMP102: Creating a Great XPages User Interface
Howard Greenberg
 
IBM Verse New Way To Work
IBM Verse New Way To WorkIBM Verse New Way To Work
IBM Verse New Way To Work
Dominopoint - Italian Lotus User Group
 
IBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversationsIBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversations
Dominopoint - Italian Lotus User Group
 
CERTIFICATE_INFO_F1814345_8
CERTIFICATE_INFO_F1814345_8CERTIFICATE_INFO_F1814345_8
CERTIFICATE_INFO_F1814345_8Anil Kumar
 
Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...
Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...
Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...dominion
 
Optimizing z/OS Batch
Optimizing z/OS BatchOptimizing z/OS Batch
Optimizing z/OS Batch
Martin Packer
 
Relative Capacity por Eduardo Oliveira e Joseph Temple
Relative Capacity por Eduardo Oliveira e Joseph TempleRelative Capacity por Eduardo Oliveira e Joseph Temple
Relative Capacity por Eduardo Oliveira e Joseph TempleJoao Galdino Mello de Souza
 
Find out userexits in sap
Find out userexits in sapFind out userexits in sap
Find out userexits in sap
Dau Thanh Hai
 
User exits
User exitsUser exits
User exits
anilkv29
 
IBM Certified Database Associate
IBM Certified Database AssociateIBM Certified Database Associate
IBM Certified Database AssociateHongjin Zhou
 
Advanced reporting with Opsview
Advanced reporting with OpsviewAdvanced reporting with Opsview
Advanced reporting with Opsview
Opsview
 

What's hot (16)

Maximize o valor do z/OS
Maximize o valor do z/OSMaximize o valor do z/OS
Maximize o valor do z/OS
 
Connect 2014 - JMP102: Creating a Great XPages User Interface
Connect 2014 - JMP102: Creating a Great XPages User InterfaceConnect 2014 - JMP102: Creating a Great XPages User Interface
Connect 2014 - JMP102: Creating a Great XPages User Interface
 
IBM Verse New Way To Work
IBM Verse New Way To WorkIBM Verse New Way To Work
IBM Verse New Way To Work
 
IBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversationsIBM Worspace: Towards a culture of conversations
IBM Worspace: Towards a culture of conversations
 
IBMCERTIFICATE
IBMCERTIFICATEIBMCERTIFICATE
IBMCERTIFICATE
 
CERTIFICATE_INFO_F1814345_8
CERTIFICATE_INFO_F1814345_8CERTIFICATE_INFO_F1814345_8
CERTIFICATE_INFO_F1814345_8
 
CERTIFICATE_TDS
CERTIFICATE_TDSCERTIFICATE_TDS
CERTIFICATE_TDS
 
Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...
Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...
Lotusphere 2007 AD405 -Increase yourIBM Lotus Notes Application ROI through C...
 
IBM certificate
IBM certificateIBM certificate
IBM certificate
 
Optimizing z/OS Batch
Optimizing z/OS BatchOptimizing z/OS Batch
Optimizing z/OS Batch
 
Relative Capacity por Eduardo Oliveira e Joseph Temple
Relative Capacity por Eduardo Oliveira e Joseph TempleRelative Capacity por Eduardo Oliveira e Joseph Temple
Relative Capacity por Eduardo Oliveira e Joseph Temple
 
Find out userexits in sap
Find out userexits in sapFind out userexits in sap
Find out userexits in sap
 
User exits
User exitsUser exits
User exits
 
IBM Certified Database Associate
IBM Certified Database AssociateIBM Certified Database Associate
IBM Certified Database Associate
 
A perspective on web testing
A perspective on web testingA perspective on web testing
A perspective on web testing
 
Advanced reporting with Opsview
Advanced reporting with OpsviewAdvanced reporting with Opsview
Advanced reporting with Opsview
 

Similar to Radically Simple Management & Assembly of API-based Applications

Gene Villeneuve - Redefinning the Analytics Experience
Gene Villeneuve - Redefinning the Analytics ExperienceGene Villeneuve - Redefinning the Analytics Experience
Gene Villeneuve - Redefinning the Analytics Experience
IBM Sverige
 
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
IBM Systems UKI
 
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Michael Elder
 
IBM Data Science Experience and Machine Learning Use Cases in Healthcare
IBM Data Science Experience and Machine Learning Use Cases in HealthcareIBM Data Science Experience and Machine Learning Use Cases in Healthcare
IBM Data Science Experience and Machine Learning Use Cases in Healthcare
IDEAS - Int'l Data Engineering and Science Association
 
Impact 2014 - enabling an intelligent enterprise theory and practice
Impact 2014 -  enabling an intelligent enterprise theory and practiceImpact 2014 -  enabling an intelligent enterprise theory and practice
Impact 2014 - enabling an intelligent enterprise theory and practiceAndrew Coleman
 
Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...
Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...
Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...
Scott Simmons
 
Spark working with a Cloud IDE: Notebook/Shiny Apps
Spark working with a Cloud IDE: Notebook/Shiny AppsSpark working with a Cloud IDE: Notebook/Shiny Apps
Spark working with a Cloud IDE: Notebook/Shiny Apps
Data Con LA
 
From Creepy to Cool: Fine Lines in Audience Analytics
From Creepy to Cool: Fine Lines in Audience AnalyticsFrom Creepy to Cool: Fine Lines in Audience Analytics
From Creepy to Cool: Fine Lines in Audience Analytics
graemeknows
 
Creepy to cool audience analytics e merge 2014
Creepy to cool   audience analytics e merge 2014Creepy to cool   audience analytics e merge 2014
Creepy to cool audience analytics e merge 2014graemeknows
 
Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...
Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...
Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...
paul young cpa, cga
 
IBM Mobile Quality Assurance Study Group Session 4 - Over the Air Distribution
IBM Mobile Quality Assurance   Study Group Session 4 - Over the Air DistributionIBM Mobile Quality Assurance   Study Group Session 4 - Over the Air Distribution
IBM Mobile Quality Assurance Study Group Session 4 - Over the Air Distribution
Roger Snook
 
Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...
Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...
Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...
Marc Nehme
 
IBM Z for the Digital Enterprise 2018 - API Discovery & Debugging
IBM Z for the Digital Enterprise 2018 - API Discovery & DebuggingIBM Z for the Digital Enterprise 2018 - API Discovery & Debugging
IBM Z for the Digital Enterprise 2018 - API Discovery & Debugging
DevOps for Enterprise Systems
 
Big Data Expo 2015 - IBM Outside the comfort zone
Big Data Expo 2015 - IBM Outside the comfort zoneBig Data Expo 2015 - IBM Outside the comfort zone
Big Data Expo 2015 - IBM Outside the comfort zone
BigDataExpo
 
IBM z/OS V2R2 Networking Technologies Update
IBM z/OS V2R2 Networking Technologies UpdateIBM z/OS V2R2 Networking Technologies Update
IBM z/OS V2R2 Networking Technologies Update
Anderson Bassani
 
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e QualidadeIBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
Gustavo Grillo
 
Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...
Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...
Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...
SocialBiz UserGroup
 
Business value Drivers for IoT Solutions
Business value Drivers for IoT SolutionsBusiness value Drivers for IoT Solutions
Business value Drivers for IoT Solutions
IBM_Info_Management
 
Improving Predictability and Efficiency with Kanban Metrics using Rational In...
Improving Predictability and Efficiency with Kanban Metrics using Rational In...Improving Predictability and Efficiency with Kanban Metrics using Rational In...
Improving Predictability and Efficiency with Kanban Metrics using Rational In...Paulo Lacerda
 
Informix REST API Tutorial
Informix REST API TutorialInformix REST API Tutorial
Informix REST API Tutorial
Brian Hughes
 

Similar to Radically Simple Management & Assembly of API-based Applications (20)

Gene Villeneuve - Redefinning the Analytics Experience
Gene Villeneuve - Redefinning the Analytics ExperienceGene Villeneuve - Redefinning the Analytics Experience
Gene Villeneuve - Redefinning the Analytics Experience
 
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
PureApp Hybrid Cloud Jonathan Langley Presentation 11th September 2014
 
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...
 
IBM Data Science Experience and Machine Learning Use Cases in Healthcare
IBM Data Science Experience and Machine Learning Use Cases in HealthcareIBM Data Science Experience and Machine Learning Use Cases in Healthcare
IBM Data Science Experience and Machine Learning Use Cases in Healthcare
 
Impact 2014 - enabling an intelligent enterprise theory and practice
Impact 2014 -  enabling an intelligent enterprise theory and practiceImpact 2014 -  enabling an intelligent enterprise theory and practice
Impact 2014 - enabling an intelligent enterprise theory and practice
 
Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...
Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...
Using bpm, mdm and odm to implement on boarding solutions for banking - sessi...
 
Spark working with a Cloud IDE: Notebook/Shiny Apps
Spark working with a Cloud IDE: Notebook/Shiny AppsSpark working with a Cloud IDE: Notebook/Shiny Apps
Spark working with a Cloud IDE: Notebook/Shiny Apps
 
From Creepy to Cool: Fine Lines in Audience Analytics
From Creepy to Cool: Fine Lines in Audience AnalyticsFrom Creepy to Cool: Fine Lines in Audience Analytics
From Creepy to Cool: Fine Lines in Audience Analytics
 
Creepy to cool audience analytics e merge 2014
Creepy to cool   audience analytics e merge 2014Creepy to cool   audience analytics e merge 2014
Creepy to cool audience analytics e merge 2014
 
Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...
Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...
Vision 2016 fpm 1072 - tips on using ibm cognos command center with ibm plann...
 
IBM Mobile Quality Assurance Study Group Session 4 - Over the Air Distribution
IBM Mobile Quality Assurance   Study Group Session 4 - Over the Air DistributionIBM Mobile Quality Assurance   Study Group Session 4 - Over the Air Distribution
IBM Mobile Quality Assurance Study Group Session 4 - Over the Air Distribution
 
Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...
Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...
Improve Predictability & Efficiency with Kanban Metrics using IBM Rational In...
 
IBM Z for the Digital Enterprise 2018 - API Discovery & Debugging
IBM Z for the Digital Enterprise 2018 - API Discovery & DebuggingIBM Z for the Digital Enterprise 2018 - API Discovery & Debugging
IBM Z for the Digital Enterprise 2018 - API Discovery & Debugging
 
Big Data Expo 2015 - IBM Outside the comfort zone
Big Data Expo 2015 - IBM Outside the comfort zoneBig Data Expo 2015 - IBM Outside the comfort zone
Big Data Expo 2015 - IBM Outside the comfort zone
 
IBM z/OS V2R2 Networking Technologies Update
IBM z/OS V2R2 Networking Technologies UpdateIBM z/OS V2R2 Networking Technologies Update
IBM z/OS V2R2 Networking Technologies Update
 
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e QualidadeIBM Technical Summit 2013 - Desenvolvimento e Qualidade
IBM Technical Summit 2013 - Desenvolvimento e Qualidade
 
Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...
Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...
Tip from IBM Connect 2014: Extend Your Security into the Cloud with IBM Smart...
 
Business value Drivers for IoT Solutions
Business value Drivers for IoT SolutionsBusiness value Drivers for IoT Solutions
Business value Drivers for IoT Solutions
 
Improving Predictability and Efficiency with Kanban Metrics using Rational In...
Improving Predictability and Efficiency with Kanban Metrics using Rational In...Improving Predictability and Efficiency with Kanban Metrics using Rational In...
Improving Predictability and Efficiency with Kanban Metrics using Rational In...
 
Informix REST API Tutorial
Informix REST API TutorialInformix REST API Tutorial
Informix REST API Tutorial
 

Recently uploaded

top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
XfilesPro
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
Globus
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
Georgi Kodinov
 
Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...
Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...
Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...
Hivelance Technology
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
varshanayak241
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
MayankTawar1
 

Recently uploaded (20)

top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx2024 RoOUG Security model for the cloud.pptx
2024 RoOUG Security model for the cloud.pptx
 
Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...
Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...
Multiple Your Crypto Portfolio with the Innovative Features of Advanced Crypt...
 
Strategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptxStrategies for Successful Data Migration Tools.pptx
Strategies for Successful Data Migration Tools.pptx
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Software Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdfSoftware Testing Exam imp Ques Notes.pdf
Software Testing Exam imp Ques Notes.pdf
 

Radically Simple Management & Assembly of API-based Applications

  • 1. © 2014 IBM Corporation Radically Simple Management & Assembly of API-based Applications Rania Khalaf, Jim Laredo, Alek Slominski {rkhalaf, laredoj, aslom}@us.ibm.com
  • 2. Please Note IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 3. © 2013 IBM Corporation3 IBM Research APIs is a strategic business tool for value co- creation 3 All Fortune 1000 companies will have APIs by 2015
  • 4. © 2013 IBM Corporation4 IBM Research Achieving fast and beautiful compositions Consumable, Agile Proven patterns, quickly assembled and delivered Resiliency and QoS from API providers Secure and scalable
  • 5. 5 Example: My Smart Home •Demonstrate how home APIs can be composed together into recipes •Show how recipes can simplify home automation http://www.brickshelf.com/gallery/slovakiasteph/hillsidemod/lego_005.jpg
  • 6. 6 Menu driven, single action Conversational, complex actions
  • 7. © 2013 IBM Corporation7 IBM Research 7 Demo: The home owner
  • 9. Limitation of these models Integration of two APIS through Trigger  Action combinations No flow control logic Composition limited to mapping of outputs from the trigger into inputs on the action Optimized for ease of configuration
  • 10. An API in the Catalog Key Provisioning Test invocation Dev Support API Spec Authentication mechanism Provider ToS Community QoS History
  • 12. © 2013 IBM Corporation12 IBM Research 12 Demo: The developer
  • 13. Engaging with your home through APIs 13
  • 14. Lightweight Workflow Scripting Deploy to scalable runtime Contextual queries of service registry REST Interaction with APIs in cloud Rich semantic representation of cloud APIs Data collectionRetrieve instance state Analytics operations Hosted IDE Splice runtime API Metadata Cloud services
  • 15. Creating Scripts: Login, author, deploy, invoke in minutes 1. Login to Orion IDE 3. Generate call template for service endpoints 4. Convenient buttons to deploy and invoke 2. Content assist for built-in activities.
  • 17. Workflow and instance store Workflow and instance store Workflow and instance store Workflow and instance store Splice engineSplice engineSplice engineSplice engine workflow engine workflow engine Cloud capabilities Workflow and instance store Workflow and instance store Elasticity Use Auto Scaling Group management service (Netflix OSS) Versioning Fault isolation Avoid cascading failures, and transparently retry failed invocations (Netflix OSS) Resilience Tie together highly available persistence layer, elastic engine, and fault-isolation (Netflix OSS) Dynamic routing Enables canary, A/B testing, and staged deployment (Netflix OSS) Incoming calls v1 v2 Outgoing calls
  • 18. Edge service (Zuul) Edge service (Zuul) Splice engineSplice engineSplice engineSplice engine Anatomy wf enginewf engine Edge service (Zuul) Edge service (Zuul) Service AService A Service BService B User requests (JMeter) Direct percentage of requests to different versions of scriptVisualize invocation metrics V2V1 Circuit breakerCircuit breaker
  • 19. Services Fabric BlueMix Recipe InstanceRecipe Instance APIs Recipes Recipe2App Recipe Architecture workflow as a service
  • 20. Summary: API Choreography for the Cloud start = RECEIVEGET(null, ’mint'); geturs = SCRIPT(start, function() { var user1 = start.out.user[0]; var user2 = start.out.user[1]; if (user1 == user2) { /* ... */ } }); getlocation1 = GET(geturs, ...); getlocation2 = GET(geturs, ...); Script Scale Analyze APIs BlueMix App Recipe PatternAPI Endpoin t Endpoin t Endpoin t Endpoin t Pattern AssetPattern AssetPattern Asset Assets and Orchestratio ns Binding Configuration Pattern AssetPattern AssetPattern Asset Sample (Client, UI) Assets Properties Properties Endpoint Dependency Endpoint Dependency Recipe Cloud
  • 22. © 2013 IBM Corporation22 IBM Research Legal Disclaimer • © IBM Corporation 2014. All Rights Reserved. • The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. In addition, this information is based on IBM’s current product plans and strategy, which are subject to change by IBM without notice. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from IBM or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software. • References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results. • If the text contains performance statistics or references to benchmarks, insert the following language; otherwise delete: Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here. • If the text includes any customer examples, please confirm we have prior written approval from such customer and insert the following language; otherwise delete: All customer examples described are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics may vary by customer. • Please review text for proper trademark attribution of IBM products. At first use, each product name must be the full name and include appropriate trademark symbols (e.g., IBM Lotus® Sametime® Unyte™). Subsequent references can drop “IBM” but should include the proper branding (e.g., Lotus Sametime Gateway, or WebSphere Application Server). Please refer to http://www.ibm.com/legal/copytrade.shtml for guidance on which trademarks require the ® or ™ symbol. Do not use abbreviations for IBM product names in your presentation. All product names must be used as adjectives rather than nouns. Please list all of the trademarks that you use in your presentation as follows; delete any not included in your presentation. IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino, Quickr, Sametime, WebSphere, UC2, PartnerWorld and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both. Unyte is a trademark of WebDialogs, Inc., in the United States, other countries, or both. • If you reference Adobe® in the text, please mark the first use and include the following; otherwise delete: Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. • If you reference Java™ in the text, please mark the first use and include the following; otherwise delete: Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. • If you reference Microsoft® and/or Windows® in the text, please mark the first use and include the following, as applicable; otherwise delete: Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both. • If you reference Intel® and/or any of the following Intel products in the text, please mark the first use and include those that you use as follows; otherwise delete: Intel, Intel Centrino, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. • If you reference UNIX® in the text, please mark the first use and include the following; otherwise delete: UNIX is a registered trademark of The Open Group in the United States and other countries. • If you reference Linux® in your presentation, please mark the first use and include the following; otherwise delete: Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. Other company, product, or service names may be trademarks or service marks of others. • If the text/graphics include screenshots, no actual IBM employee names may be used (even your own), if your screenshots include fictitious company names (e.g., Renovations, Zeta Bank, Acme) please update and insert the following; otherwise delete: All references to [insert fictitious company name] refer to a fictitious company and are used for illustration purposes only.
  • 23. Workflow Services in Cloud Platforms 23 Simple Workflow Service Workflow FoundationService
  • 25. Interact with my house: Scripts using open APIs 25
  • 26. Definitions: Services API, Recipe, Recipe Instance, App A running service provide Application Programming Interface via endpoint Services API Definition Provide a reusable, configurable composition of services template for replicable business scenarios. Recipe Definition A Recipe that is being configured is Recipe Instance Recipe Instance has been deployed as one App (with one or multiple Recipe Assets) Recipe Instance, App Configured Configure Deploy Destroy RecipeInstance Registered Deleted Register Delete Recipe Destroyed Harvested Workflows /Scenarios Create Create App Deployed Create BlueMix Recipe PatternAPI Endpoint Endpoint Endpoint Endpoint Pattern AssetPattern AssetPattern Asset Assets and Orchestrations Binding Configuration Deploy App Pattern AssetPattern AssetPattern Asset Sample (Client, UI) Assets Properties Properties Endpoint Dependency Endpoint Dependency Service ServiceAPI Endpoint Endpoint Endpoint Endpoint Runtime
  • 27. Recipe Instance CatalogAPI Catalog API B API A Bindings Binding Option 1 Binding Option 2 Configurations Configuration Property 1 Configuration Property 2 Configuration Property 3 RecipeCatalog Lockdown SmartHome Runtime Bluemix App Runtime (for PHP) App Runtime (for J2EE) API Mgmt A P I A P I A P I A P I Asset Pkg Asset Pkg Sample Pkg A PI Service Registry RecipeLoaded from Catalog Recipe Instance Ready for Deployment AppDeployed inBlueMix Recipe User

Editor's Notes

  1. http://www.familyfuncalgary.com/wp-content/uploads/2012/12/Bricks-4-Kidz-Birthday2.jpg
  2. Create flexible compositions that easily weave together interactions with known services and APIs, making use of a rich API catalog Define points of variability to expose your recipes to end users for customization and reuse Make your recipes available for reuse and have them ready to run in the Cloud Instantiate with own API entitlements and configuration
  3. Lookup recipe. Configure the Recipe: Enable channel (configure API), provide parameter settings for the recipe. Run it.
  4. Instantiate Recipe “Deploy to BlueMix” Show Deployed Application in BlueMix Txt 2 Home (OpenHab UI + Google Voice)
  5. Switch to API catalog
  6. Name API dependencies Configuration parameters BlueMix
  7. Lookup recipe. Configure the Recipe: Enable channel (configure API), provide parameter settings for the recipe. Run it.
  8. Talk also here about the language
  9. Show dev experience and language. Show the same api come up from the home owner slide and the catalog screen grab. Will be in jazzhub. Explain splice and so on. If this is demo part: start with create a very simple interaction flow and then show the whole home one.
  10. Pattern is a template of an App contains deployable assets, with configurable properties and bindings to service dependencies. Registered in pattern catalog. Service dependencies refer to services registered in service catalog. May or may not expose an API with endpoints. Must be configured before being deployed. Deployed to Cloud OE using the SSE fabric.