Upload
kyle-brown
View
655
Download
4
Embed Size (px)
Citation preview
© 2015 IBM Corporation
IBM Cloud
How can Bluemix, IDS and Open Source Help in a Natural Disaster?
Kyle Brown and Marc-Arthur Pierre-Louis
IBM Cloud
© 2015 IBM Corporation2
Outline
What do people Need in a Natural Disaster?– Abraham Maslow’s Hierarchy of Needs
Who are our customers in a Natural Disaster?
What is Bluemix and the Bluemix Ecosystem?– Bluemix, IOT Foundation, DevOps Services
Advantages of Bluemix in a Natural Disaster
Application Concepts– Food & Shelter– Safety– Community– Self-Esteem
Architectural assumptions
Support for Teams
IBM Cloud
© 2015 IBM Corporation3
What do I mean by a Natural Disaster?
Natural disasters are unexpected occurrences caused by natural processes that incur damage to property, or cause injury or death
Can be fires, tornadoes, hurricanes, floods, earthquakes, etc.
The key is that they are unexpected – but you can plan for them regardless of the fact that you may have little warning of when they occur.
In a great TEDx Boston talk from 2012, Caitria and Morgan O’Neill give a wonderful list of things you can do to help in any Natural disaster – these form a template for us to discover ways in which Bluemix can help the victims of these disasters
– Plan for recovery before disaster strikes– Care for yourself and your family first– Get online as soon as possible– Find ways to organize people– Find ways to log and record EVERYTHING– Find ways to train others to respond
IBM Cloud
© 2015 IBM Corporation4
What do you need in a Natural Disaster?
In 1943 Psychologist Abraham Maslow developed a framework for what motivates people and keeps them physically and psychologically healthy
His “Hierarchy of Needs” has become common in sociological and psychological research and training.
It’s very useful as a way to view what people need in when they are affected by a Natural Disaster
– Gives you a way to organize the different capabilities and help that can be provided in such emergencies
IBM Cloud
© 2015 IBM Corporation5
Who are our customers in a Natural Disaster?
The first question in understanding how at technology or set of technologies can help you with a problem is to understand who the customers of the technology would be. In our case, these could include:
– Victims of the Natural Disaster– First Responders– Family, Friends and Loved Ones of those affected– Utility Companies, Insurance Companies, Transport companies
The next set of questions come after you’ve identifiedyour customers
– How does this concept help them?– Will they be able to use it effectively?– How is it better than existing approaches?
So what is Bluemix?
6
Bluemix is an open-standards, cloud-based platform for building, running, and managing applications.Build your apps, your wayUse the most prominent compute technologies to power your app: Cloud Foundry, Docker, OpenStack.
Extend apps with servicesA catalog of IBM, third party, and open source services allow the developer to stitch an application together quickly.
Scale more than just instancesDevelopment, monitoring, deployment, and logging tools allow the developer to run and manage the entire application.
Layered SecurityIBM secures the platform and infrastructure and provides you with the tools to secure your apps.
Deploy and manage hybrid apps seamlesslyGet a seamless dev and management experience across a number of hybrid implementations options.
Flexible Pricing Try compute options and services for free and, when you’re ready, pay only for what you use. Pay as you go and subscription models offer choice and flexibility.
Coming Summer 2015
IBM Cloud
© 2015 IBM Corporation7
IBM Internet of Things Foundation allows you to easily compose IoT solutions
Visually define logic flows
Select from a growing list of device recipes
Visualize real-time data stream
Mix with other services in Bluemix to create apps
Simply connect & “recognize” device types
IBM Cloud
© 2015 IBM Corporation8
Advantages of Bluemix in a Natural Disaster
Location – the Bluemix datacenters are physically distant from the area of the natural disaster and applications can keep running even when power and telecommunications are disrupted.
On demand pricing – you only pay for the application as it’s used.
Autoscaling – applications designed for Bluemix can automatically scale to adjust to the number of users they are experiencing
Support for distributed team development – you won’t be tied to inaccessible physical build and deployment servers if you hit a bug at exactly the wrong time
IBM Cloud
© 2015 IBM Corporation9
Application Concepts – Food and Shelter
How do you avoid the long lines for basic necessities (Food, Water, Gasoline)?
How do you find shelter when your home is uninhabitable or unreachable?– One possibility is a set of applications that crowdsource availability and convenience of
different options– For example: a Java application that runs on Cloudant using Google Maps that allows
people to enter location data when they find available shelters (or stores with bottled water, or gasoline, etc…). DataWorks can automatically cleanse address data.
How can you protect your family and home?– Application can use small-grained weather data (within a zipcode) to alert a smart home
and its occupants to protect themselves
IBM Cloud
© 2015 IBM Corporation10
Application Concepts – Health and Safety
Reporting floods and downed power lines is a major information management issue– NHTSA reports almost 400 people drown in vehicles each year in the US– Additional fatalities are caused by contact with downed power lines
Applications can crowd-source the reporting of downed lines and flooded roads– Coordinate with data from governmental agencies and Utility companies– Automatically submit reports to utilities and first responders– Automatically work with existing apps to reroute traffic around those areas
Flood-prone areas can use water sensors that give warning when water begins rising in plenty of time to respond
– Maps of flooded sensors – predicting the most likely path of rising water from historical and hydrological data
Sensing drones for first responders– Applications for drone cameras to stitch together composites and low-level maps for
damage assessment and rescue efforts– Heat sensing robot for fires
IBM Cloud
© 2015 IBM Corporation11
First Responder Assistance Concept: Data-Driven Disaster Response Robot
Temp / Humidity
> Threshold
Activate Responder
F
irst R
esponders
Site S
ecurity
Send Critical Warning alert Via SMS and E-mail
Identify fire location using pre-calculated floor mapping
Constantly send temperature alert to First responders.
Create entry and exit routes for first responders. Create event report based on collected data
using IBM Embeddable Reporting
Hardware: Arduino Micro-controller, DHT11 Temperature &
Humidity Sensor.
API: IOT Foundation to process device data Alchemy API to analyze and identify survivors. Watson Text to Speech to enable trapped
victims to communicate with first responders via text .
IBM Embeddable Reporting to generate fast report sheet that can be analyzed to confirm the causes of the disaster.
Detector monitors room Temp. & Humidity, connects to Bluemix via Wifi
IBM Cloud
© 2015 IBM Corporation12
Application Concepts - Community
Applications to aid in helping locate missing family members– Lots of available libraries for Node.JS for implementing pop-up sites like Wikis– Language translation with Watson can be helpful for displaced persons whose first
language is not English– Twilio can integrate into SMS messaging and VOIP phone networks
Applications to help locate lost pets and locate shelters that will house pets– Analyze Twitter streams to find others who are in the same situation and who are looking
for or have found lost pets
Applications to help share resources with those that need them– Plugshare for mobile phones (e.g. Katrina)
IBM Cloud
© 2015 IBM Corporation13
Application Concepts – Giving and Self-Esteem
Applications for targeted contributions to those having specific needs (like YouFundMe)– Coordination with charities to make sure donated money is sent to the right places– In many cases, that’s a big data import problem – store data in SQL DB, cleanse it with
DataWorks– BigInsights allows you to use Apache Hadoop to manage large-scale data analysis tasks
Applications gathering together and coordinating volunteer opportunities– Tons of Website code available for PHP to start up sites like this– Simple, Fast response from IBM Cloudant
IBM Cloud
© 2015 IBM Corporation14
Architectural Assumptions for applications
You can assume you still have some level of telecommunications capability for Disaster victims, first responders, etc.
– Even through Katrina and Sandy, some cellular phone coverage remained available, albeit, possibly not immediately, at a reduced capacity and with coverage gaps
– This is a known issue, and other mechanisms (Mark-Arthur…) can deal with that problem– Bandwidth will be at a premium (Videos teaching people what to do DURING the crisis are
not appropriate)– Shared internet connections may be used when service is disrupted
You will have reduced power availability from mobile devices and laptops– Always-on, heavily connected GUI-driven applications will drain batteries– Consider notifications, SMS, and lower-power consumption interaction mechanisms
You have to plan for the possibility of the failure of remote application components – and of the Bluemix infrastructure itself
– What if Dallas was the scene of the disaster?
IBM Cloud
© 2015 IBM Corporation15
Downstream - OpenBTS-Bluemix Integration
Remote Bluemix Center
● OpenBTS fully functional Emergency GSM Mobile Network● Exposes Bluemix service (new) via OpenBTS APIs● OpenBTS Optimizer (new)
● Optimizes data going through fragile GSM network● Might use compression and other optimizing
techniques● Data sent to remote Bluemix
● Communicates with optional Local Bluemix● IBM DevOps Services used in conjunction with Bluemix
● Development and Deployment of situational applications● Any composition of disaster-related applications
http://openbts.org - Opensourcehttp://www.rangenetworks.com - Commercial
IBM Cloud
© 2015 IBM Corporation16
Bluemix DR capability
For several reasons (including the possibility of a natural disaster in Dallas – remember the hailstorms of 2012 and 1995, the tornado outbreak of 1955…) you want to always make sure that your application can run in more than one location – for Bluemix today that means both London and Dallas
deploy
CF CF
IBM DevOpsServices
CloudantReplication
App App
CloudantCloudant
deployDallas London
External DNS
IBM Cloud
© 2015 IBM Corporation17
IBM DevOps Services
Provides an end-to-end development solution for teams writing applications for IBM Bluemix
Agile planning and tracking tools for assigning tasks
Support for Web IDE, Eclipse or Command-line tooling
Source code hosting for Jazz and Git projects (including on Github)
Continuous Build and Integration with the Devops Pipeline
Integration Testing tools (Bluemix Labs) coming available
Load testing and performance monitoring tools
• Integration test, System test, Production all united and consistent
• Automation ensures the same procedure in each environment
• Fully hosted, managed, and integrated in the cloud for the cloud
IBM Cloud
© 2015 IBM Corporation18
Support for Development teams (and others!)
• Track and Plan is a hosted tool to plan, track and manage tasks, backlogs and deliverables focused on individual and team productivity Enables development planning
Action views for Individuals and Teams
Sprint Planning & Backlog management
IBM Cloud
© 2015 IBM Corporation19
Usage Context
Upstream– Before disaster strikes use for development and deployment of Bluemix apps
Downstream– After disaster strikes use for support of Bluemix apps
IBM Cloud
© 2015 IBM Corporation20
Upstream – Track and Plan
Track and plan– Track project work trough work items
– Ex. write a defect work item for bug found in project code– Work item management
– Create work items– Work item states– Work item display options– Filter work items– View and organize work items– Triage work items
– Plan work for a team– Review the team's progress
For uniformity ODDR Hackathon team suggests using IDS Track and Plan feature
IBM Cloud
© 2015 IBM Corporation21
Upstream – Source Control
Source Control Options– Git integration
– Can link Git repository with IDS• Use the IDS Web IDE• Many Git commands available
– Work items and Git intercation– Create Project– Set Github hook– Use work item to test hooks
– Local client and Git interaction– Access Git repository from IDS project
• IDS cmd line or EGIT Eclipse plugin– Connect Track & Plan feature to Rational Team Concert– Develop with Bluemix Live Sync and Node.js– Develop with IBM Eclipse Tools
– Eclipse client and Jazz SCM– Use RTC Eclipse client
IBM Cloud
© 2015 IBM Corporation22
Upstream – Build and Deploy
Build and Deploy– Also known as pipeline– Provides continous deployment of apps and changes– Stages
– Organize• Jobs• Inputs
– Code• Built• Tested• Deployed
– Jobs– Execution units within stages– Build jobs prepare/compile code for deployment
– End result– Code built and deployed automatically to Bluemix
The ODDR Hackathon team suggests using IDS build & deploy feature
IBM Cloud
© 2015 IBM Corporation23
Some IDS Web IDE Tips
Git icon IDS command line Edit code, Track & Plan, Build and Deploy
IBM Cloud
© 2015 IBM Corporation24
Editing, Saving and Committing
IBM Cloud
© 2015 IBM Corporation25
Editing Node.js
After edit completes• File->Save or ctrl-s• Go to Git interface to commit to the Git repository
• Click on the button
IBM Cloud
© 2015 IBM Corporation26
Committing
Committing to the Git repository Check/uncheck files to be committed Click on Commit on upper right hand (as circled) Click on Push (as circled)
IBM Cloud
© 2015 IBM Corporation27
Deploy button Deploys appl from workspace to Bluemix
Launch button Starts a new browser window with the application URL
IDS retrieves URL from manifest.yml and inserts into a launch configuration
Stop button Stops the running Bluemix application
Interacting with a Bluemix application
IBM Cloud
© 2015 IBM Corporation28
Sync changes to a running Cloud Foundry application
Sync changes from Bluemix web ide or local (laptop) files
Changes made in the developer workspace are immediately reflected in the running Cloud Foundry application
Dramatically improves developer productivity by debugging directly in the cloud
Insert breakpoints into the running Cloud Foundry application
IBM Bluemix Live Edit
IBM Cloud
© 2015 IBM Corporation29
Live Edit – How to enable
To Enable Live Edit Create new new launch configuration
Used to launch live edit version of application
Production application still running Live edit version independent
Can be edited without affecting production application
After changes made and tested Commit to repository Redeploy production application
For a tutorial visit: http://ibm.co/1dUujTw
IBM Cloud
© 2015 IBM Corporation30
Collaborative Remote Development with DevOps Services
1. Bug reported
In MQA2. Task Assigned to developer
In Track and Plan
3. Code fixed
Locally in Eclipse
4. Changes pushed to GitHub
5. DevOps Pipeline Builds App, Runs Automated Tests
6. New Production version pushed to Bluemix
IBM Cloud
© 2015 IBM Corporation31
Summary
We’ve seen– What people need in a Natural Disaster– How you can use the services in Bluemix to build applications that can help– How Bluemix and the Bluemix ecosystem provides support for distributed team
development that frees you from the constraints of a single development site – in case your development team is the one that suffers the disaster