LiveontheEdgeofInnova0onwithIBMBluemixNiklasHeidloff,[email protected]
IBMBluemix• The Digital Innovation Platform • Cloud Foundry, Docker, OpenWhisk • More than 100 services • Public, dedicated and local • Hybrid applications and cognitive services
• Focus today: How to build Line of Business applications
#engageug@nheidloff
Collabora0veLineofBusinessApplica0ons• LoB requirements often lead to the development of new
applications since standard software is not sufficient • Collaborative applications allow employees to work
together synergistically to get their jobs done • Collaborative LoB applications often require the protection
of intellectual property based on roles of employees
• Sample scenarios: Approval workflows, teamrooms, travel expenses
#engageug@nheidloff
RequirementsofLoBApplica0ons• Rapid application development
• Toenableci0zendeveloperstobuildLoBapplica0ons• Toenableinnova0on
• Focus on business needs rather than infrastructure • Leveragecloudapplica0onplaLorms• U0lizeDevOps
• Cost efficient hosting
#engageug@nheidloff
RequirementsofLoBApplica0ons• Access to applications via web and mobile user
experiences • Integration of existing data, documents and files • Integration of existing directories and user profiles • Usage of modern and popular technologies to leverage
communities, libraries and tools • Usage of standard and most common development skills
• Scrip0ngiseasierthanlanguageslikeCandJava• Preferenceistouseonelanguageforeverything
#engageug@nheidloff
TheCLEANStack
Cloudant Loopback Express
AngularJS Ionic, Cordova
Node.js
JavaScript everywhere Bluemix
#engageug@nheidloff
BusinessObjectsandRESTAPIs• Declarative definitions of business objects
• Automatic generation of REST APIs • IncludingAPIdocumenta0on
#engageug@nheidloff
Loopback
Swagger
Cloudant
Customiza0onofthegeneratedAPIs• Scenarios
• Addaddi0onalAPIs• Hidemethodsandendpoints• Execu0onhooksforCRUDopera0ons
• Turn off auto generation for models
#engageug@nheidloff
Loopback
Node
Authen0ca0onagainstBluemix• Single Sign On service on Bluemix allows
authentication with on-premises directories via SAML
#engageug@nheidloff
Loopback
Bluemix
Authoriza0on• Authorization via roles
• Application level authorization is done declaratively
• Business object level authorization is done programmatically
#engageug@nheidloff
Loopback
Node
Deployment• Bluemix compute technologies
• CloudFoundry• Docker
• Deployment options • DeploybuVon• CLIs• GitpushandDevOps
#engageug@nheidloff
Bluemix
Docker
Cloud Foundry
DevelopmentEnvironment• Local environment
• Node.js,texteditor,inspector• LocalpropertyfilewithBluemixcreden0als• Inmemorydatabase
• DevOps web editor
#engageug@nheidloff
Node
WebClient• LoopBack generates JavaScript libraries
to access the services from AngularJS controllers
#engageug@nheidloff
AngularJS
LoopBack
MobileClients• Via Cordova mobile hybrid apps can be
generated for iOS and Android
• LoopBack generates JavaScript libraries to access the services from AngularJS controllers
• The controllers are the same ones as used for the web client
#engageug@nheidloff
Ionic
Cordova
AngularJS