SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Mobile Domino Applications –
                     Offline Capability and Security

                     Matthew Fyleman | Product / Project Manager - We4IT




© 2013 IBM Corporation
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.




2   © 2013 IBM Corporation
Agenda

   Why is Offline Persistence Important?
   Offline Persistence and HTML 5.0
   Synchronisation and REST APIs
   Security Considerations
   Securing Offline Data
   An Easier Way ...
   Q&A




3    © 2013 IBM Corporation
Welcome and Introductions

   Matthew Fyleman
     ─ Senior Product / Project Manager: We4IT GmbH.
         – 20 years of Lotus Notes / Domino Development Experience
         – Recently focused entirely on XPages development
         – Working on We4IT's XPages framework – Aveedo
         – Also on Offline capabilities for docLinkr




4   © 2013 IBM Corporation
Agenda

   Why is Offline Persistence Important?
   Offline Persistence and HTML 5.0
   Synchronisation and REST APIs
   Security Considerations
   Securing Offline Data
   An Easier Way ...
   Q&A




5    © 2013 IBM Corporation
Increasing Demand for Mobile Applications

   Smartphones and Tablets
    commonplace
   Awareness that application access
    on smart devices is possible
   Initially a mix of mobile browser and
    native applications
   Native applications often worked
    offline ...




     © 2013 IBM Corporation
The Importance of Offline Persistence
   In most cases, connected access only is acceptable
   Some application data is useful to have
    offline:
         ─ Who uses the contacts app on their phone for
           more than just dialling?
         ─ What about a sales rep.?
   Despite provider claims coverage is not
    universal:
         ─ No coverage
         ─ Canyoning in cities
         ─ Mandatory shutdown of wireless connections
           (planes*, hospitals)

       Until recently offline persistence was only possible in native applications
       Titanium Studio, PhoneGap etc. make native applications for multiple device
        platforms easier
       But there is now another option ...

        © 2013 IBM Corporation
Agenda

   Why is Offline Persistence Important?
   Offline Persistence and HTML 5.0
   Synchronisation and REST APIs
   Security Considerations
   Securing Offline Data
   An Easier Way ...
   Q&A




8    © 2013 IBM Corporation
HTML 5 and Web SQL

   HTML 5 has Web SQL and offline storage management features
   If you are competent with HTML, JavaScript and Web 2.0 technologies it is
    reasonably straightforward.
   Simple example can be found at this address:
      ─ http://tutorials.html5rocks.com/en/tutorials/webdatabase/todo/

   But …




     © 2013 IBM Corporation
Current HTML 5 Issues

   The bulk of HTML 5 is established and usable in most browsers, including
    mobile
   However, the standard is unlikely to be ratified before 2014 (?!!)
   Implementation is inconsistent across browsers
      ─ Mostly minor inconsistencies, but in particular -

   Storage and Web SQL currently only work under Chrome
   So for the moment native is still the easiest way to go ...




     © 2013 IBM Corporation
Agenda

    Why is Offline Persistence Important?
    Offline Persistence and HTML 5.0
    Synchronisation and REST APIs
    Security Considerations
    Securing Offline Data
    An Easier Way ...
    Q&A




11    © 2013 IBM Corporation
Synchronicity

   Setting up an offline database is relatively simple
   The tricky bit is the synchronisation with the online
    storage
   We've been here before …
   Notes' replication engine was actually an
    afterthought!
   A short REST ...




     © 2013 IBM Corporation
RESTful Services

    Representational State Transfer – Roy Fielding, see wikipedia article:
       ─ http://en.wikipedia.org/wiki/Representational_state_transfer

    Not a standard!
    Simpler than other protocols (e.g. SOAP), yet still scalable
    Uses URI's for calls
    Asynchronous and stateless




      © 2013 IBM Corporation
Some RESTful Thoughts ...
   Not a tutorial but take a look at:
     ─ BP204 Take a REST and put your data to work with APIs

     ─ Craig Schumann - Inner Ring Solutions

     ─ http://www.innerringsolutions.com/downloads/Connect2013/B
          P204.pdf
   Plan your API – it makes implementation much simpler
   Version it – but avoid providing a general pointer to latest
   Document it – nothing slows adoption like the lack of documentation
   In Domino, make use of XAgents:
     ─ See XAgents – Web Agents Xpages Style at Wissel.Net

     ─ http://www.wissel.net/blog/d6plinks/shwl-7mgfbn



      © 2013 IBM Corporation
Final Synchronisation Thoughts

   Write a generic synchronisation engine:
      ─ Javascript Library client side

      ─ XAgent server side (in Java!)

   Engine will be driven from client:
      ─ Must push (send to server)

      ─ Pull (receive from server)

      ─ Be Asynchronous but allow data to be chunked

   Decide how to deal with conflicts
   You will still need to design each offline version separately
      ─ (Unless you want to construct a formula interpreter!)




     © 2013 IBM Corporation
Agenda

    Why is Offline Persistence Important?
    Offline Persistence and HTML 5.0
    Synchronisation and REST APIs
    Security Considerations
    Securing Offline Data
    An Easier Way ...
    Q&A




16    © 2013 IBM Corporation
They're Out To Get You ...

    Data on a mobile device is inherently insecure
       ─ Even in sandbox environments like Good Technology

    Lost or Stolen phones are an issue – but most thieves
     would not know the value of the data
    Weakest link is the user
    Rule #1: If data is really that sensitive, don't put it on a
     mobile device!
    Rule #2: If you support a BYOD environment (and
     even if you don't) put a mobile data policy in place:
       ─ Otherwise you might be sued!

       ─ Examples available on the web


      © 2013 IBM Corporation
Agenda

    Why is Offline Persistence Important?
    Offline Persistence and HTML 5.0
    Synchronisation and REST APIs
    Security Considerations
    Securing Offline Data
    An Easier Way ...
    Q&A




18    © 2013 IBM Corporation
Security on the Move

    Synchronisation security (online)
      ─ Authentication (HTTP, SSL, LTPA)

      ─ Authorisation (OAuth)

      ─ Interesting article:
          – http://www.darkreading.com/security/client-
             security/232500640/the-future-of-web-authentication.html

    Storage Security (offline)
      ─ Do NOT rely on device-memory storage to keep data secure
        (DropBox!)

      ─ Most important to encrypt sensitive data, particularly, but not
          exclusively, for removable storage

      ─ There are JS encryption libraries out there but not particularly robust

      ─ Always keep in mind Rule #1 on the previous slide!



19    © 2013 IBM Corporation
Agenda

    Why is Offline Persistence Important?
    Offline Persistence and HTML 5.0
    Synchronisation and REST APIs
    Security Considerations
    Securing Offline Data
    An Easier Way ...
    Q&A




20    © 2013 IBM Corporation
Why Go To All That Trouble?

   Several Moderately Complex Applications?
   Need to enable them all for mobile?
   Want offline cabability for some/all?

                                   docLinkr




     © 2013 IBM Corporation
Summary
   Offline capability for mobile applications is desirable
      ─ And in some cases essential!

   HTML 5 will make this simpler, but it is not quite there yet
   Use RESTful services and XAgents for Synchronisation
   The User is the weakest link in the security chain – remember
    Rule #1
   Mobile security centers on Authentication, Authorisation and
    Encryption
   There are easier ways of doing things!




     © 2013 IBM Corporation
Q&A




23   © 2013 IBM Corporation
Legal disclaimer
     © IBM Corporation 2013. 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.
        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.
       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.

       Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
       Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both.




24         © 2013 IBM Corporation

Mais conteúdo relacionado

Mais procurados

The Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App DevThe Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App Dev
IBM Connections Developers
 
Ibm_2-4-5 nov 2010
Ibm_2-4-5 nov 2010Ibm_2-4-5 nov 2010
Ibm_2-4-5 nov 2010
Agora Group
 
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT Group
 
Jmp303 the great howto 5
Jmp303 the great howto 5Jmp303 the great howto 5
Jmp303 the great howto 5
Mats Jansson
 
8 Principales Raisons de Passer du MDM à l'EMM
8 Principales Raisons de Passer du MDM à l'EMM8 Principales Raisons de Passer du MDM à l'EMM
8 Principales Raisons de Passer du MDM à l'EMM
AGILLY
 
Advanced Mobile Content Collaboration with BOX.NET
Advanced Mobile Content Collaboration with BOX.NETAdvanced Mobile Content Collaboration with BOX.NET
Advanced Mobile Content Collaboration with BOX.NET
AGILLY
 

Mais procurados (19)

TI 1641 - delivering enterprise software at the speed of cloud
TI 1641 - delivering enterprise software at the speed of cloudTI 1641 - delivering enterprise software at the speed of cloud
TI 1641 - delivering enterprise software at the speed of cloud
 
The Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App DevThe Power of IBM SmartCloud for Social Business and XPages App Dev
The Power of IBM SmartCloud for Social Business and XPages App Dev
 
Become an IBM Cloud Architect in 40 Minutes
Become an IBM Cloud Architect in 40 MinutesBecome an IBM Cloud Architect in 40 Minutes
Become an IBM Cloud Architect in 40 Minutes
 
Tip from IBM Connect2014: XPages Accessibility
Tip from IBM Connect2014: XPages AccessibilityTip from IBM Connect2014: XPages Accessibility
Tip from IBM Connect2014: XPages Accessibility
 
Ibm_2-4-5 nov 2010
Ibm_2-4-5 nov 2010Ibm_2-4-5 nov 2010
Ibm_2-4-5 nov 2010
 
Integrate Application Security Testing into your SDLC
Integrate Application Security Testing into your SDLCIntegrate Application Security Testing into your SDLC
Integrate Application Security Testing into your SDLC
 
Connect2013: BP306 Connecting the Dots between IBM Domino, Notes 9 and IBM Co...
Connect2013: BP306 Connecting the Dots between IBM Domino, Notes 9 and IBM Co...Connect2013: BP306 Connecting the Dots between IBM Domino, Notes 9 and IBM Co...
Connect2013: BP306 Connecting the Dots between IBM Domino, Notes 9 and IBM Co...
 
Why z/OS is a great platform for developing and hosting APIs
Why z/OS is a great platform for developing and hosting APIsWhy z/OS is a great platform for developing and hosting APIs
Why z/OS is a great platform for developing and hosting APIs
 
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
 
Managing integration in a multi cluster world
Managing integration in a multi cluster worldManaging integration in a multi cluster world
Managing integration in a multi cluster world
 
Jmp303 the great howto 5
Jmp303 the great howto 5Jmp303 the great howto 5
Jmp303 the great howto 5
 
IC6284A - The Art of Choosing the Best Cloud Solution
IC6284A - The Art of Choosing the Best Cloud SolutionIC6284A - The Art of Choosing the Best Cloud Solution
IC6284A - The Art of Choosing the Best Cloud Solution
 
8 Principales Raisons de Passer du MDM à l'EMM
8 Principales Raisons de Passer du MDM à l'EMM8 Principales Raisons de Passer du MDM à l'EMM
8 Principales Raisons de Passer du MDM à l'EMM
 
Advanced Mobile Content Collaboration with BOX.NET
Advanced Mobile Content Collaboration with BOX.NETAdvanced Mobile Content Collaboration with BOX.NET
Advanced Mobile Content Collaboration with BOX.NET
 
Why Ibm cloud private
Why Ibm cloud private Why Ibm cloud private
Why Ibm cloud private
 
IBM Announce Intent to Acquire Fiberlink Analyst Presentation
IBM Announce Intent to Acquire Fiberlink Analyst PresentationIBM Announce Intent to Acquire Fiberlink Analyst Presentation
IBM Announce Intent to Acquire Fiberlink Analyst Presentation
 
Overview of IBM Mobility Portfolio
Overview of IBM Mobility PortfolioOverview of IBM Mobility Portfolio
Overview of IBM Mobility Portfolio
 
IBM Storage for AI and Big Data
IBM Storage for AI and Big DataIBM Storage for AI and Big Data
IBM Storage for AI and Big Data
 
Mdm solutions comparison
Mdm solutions comparisonMdm solutions comparison
Mdm solutions comparison
 

Destaque (7)

Autodesk sim360 ro agora 21 feb 2013
Autodesk sim360 ro agora 21 feb 2013Autodesk sim360 ro agora 21 feb 2013
Autodesk sim360 ro agora 21 feb 2013
 
8 1 presentacion componentes electrónicos lozano joshua
8 1 presentacion componentes electrónicos lozano joshua8 1 presentacion componentes electrónicos lozano joshua
8 1 presentacion componentes electrónicos lozano joshua
 
Scoala de vara english adventure shakespeare school
Scoala de vara english adventure shakespeare schoolScoala de vara english adventure shakespeare school
Scoala de vara english adventure shakespeare school
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Presentación final bibliotecología archivística documentación y ciencia de
Presentación final bibliotecología archivística documentación y ciencia dePresentación final bibliotecología archivística documentación y ciencia de
Presentación final bibliotecología archivística documentación y ciencia de
 
Prezentare scoala de vara - despre decizii
Prezentare scoala de vara - despre deciziiPrezentare scoala de vara - despre decizii
Prezentare scoala de vara - despre decizii
 
Prezentare emotii
Prezentare emotiiPrezentare emotii
Prezentare emotii
 

Semelhante a We4IT lcty 2013 - captain mobility - mobile domino applications offline capability and security

Ibm sametime 9 for social communications
Ibm sametime 9 for social communicationsIbm sametime 9 for social communications
Ibm sametime 9 for social communications
a8us
 
Granite Lotus User Group November 2012 ICS Updates
Granite Lotus User Group November 2012 ICS UpdatesGranite Lotus User Group November 2012 ICS Updates
Granite Lotus User Group November 2012 ICS Updates
Luis Guirigay
 

Semelhante a We4IT lcty 2013 - captain mobility - mobile domino applications offline capability and security (20)

Connect 2013 - Infrastructure Fitness and Design Simplicity for IBM Mobile Co...
Connect 2013 - Infrastructure Fitness and Design Simplicity for IBM Mobile Co...Connect 2013 - Infrastructure Fitness and Design Simplicity for IBM Mobile Co...
Connect 2013 - Infrastructure Fitness and Design Simplicity for IBM Mobile Co...
 
Infrastructure Fitness and Design Simplicity for IBM Mobile Connect
Infrastructure Fitness and Design Simplicity for IBM Mobile ConnectInfrastructure Fitness and Design Simplicity for IBM Mobile Connect
Infrastructure Fitness and Design Simplicity for IBM Mobile Connect
 
Don't Risk Your Reputation or Your Mainframe: Best Practices for Demonstratin...
Don't Risk Your Reputation or Your Mainframe: Best Practices for Demonstratin...Don't Risk Your Reputation or Your Mainframe: Best Practices for Demonstratin...
Don't Risk Your Reputation or Your Mainframe: Best Practices for Demonstratin...
 
Building intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBMBuilding intelligent APIs - Andy Thurai, IBM
Building intelligent APIs - Andy Thurai, IBM
 
Ibm sametime 9 for social communications
Ibm sametime 9 for social communicationsIbm sametime 9 for social communications
Ibm sametime 9 for social communications
 
Ibm software network2012 claudio cinquepalmi #ibmsocialbiz
Ibm software network2012 claudio cinquepalmi  #ibmsocialbiz Ibm software network2012 claudio cinquepalmi  #ibmsocialbiz
Ibm software network2012 claudio cinquepalmi #ibmsocialbiz
 
Smarter Commerce Summit - IBM MobileFirst Services
Smarter Commerce Summit - IBM MobileFirst ServicesSmarter Commerce Summit - IBM MobileFirst Services
Smarter Commerce Summit - IBM MobileFirst Services
 
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
IBM Lotusphere 2013 AD109: Using the IBM® Sametime® Proxy SDK: WebSphere Port...
 
Presentation cloud security the grand challenge
Presentation   cloud security the grand challengePresentation   cloud security the grand challenge
Presentation cloud security the grand challenge
 
Best practices for mobile enterprise security and the importance of endpoint ...
Best practices for mobile enterprise security and the importance of endpoint ...Best practices for mobile enterprise security and the importance of endpoint ...
Best practices for mobile enterprise security and the importance of endpoint ...
 
BP306 - Connecting the dots between Domino, Notes 9 and Connections
BP306 - Connecting the dots between Domino, Notes 9 and ConnectionsBP306 - Connecting the dots between Domino, Notes 9 and Connections
BP306 - Connecting the dots between Domino, Notes 9 and Connections
 
Security in Cloud Computing
Security in Cloud ComputingSecurity in Cloud Computing
Security in Cloud Computing
 
BLU Acceleration on the Cloud – 101
BLU Acceleration on the Cloud – 101BLU Acceleration on the Cloud – 101
BLU Acceleration on the Cloud – 101
 
IBM Mobile Overview for Ecosystem Partners
IBM Mobile Overview for Ecosystem PartnersIBM Mobile Overview for Ecosystem Partners
IBM Mobile Overview for Ecosystem Partners
 
Mobile Apps Develpment - A Comparison
Mobile Apps Develpment - A ComparisonMobile Apps Develpment - A Comparison
Mobile Apps Develpment - A Comparison
 
Social mobile usage Don't Leave Social at the Office
 Social mobile usage   Don't Leave Social at the Office Social mobile usage   Don't Leave Social at the Office
Social mobile usage Don't Leave Social at the Office
 
IBM Mobile First
IBM Mobile FirstIBM Mobile First
IBM Mobile First
 
Nordics IBM Mobile Foundation Integration in Action
Nordics IBM Mobile Foundation Integration in ActionNordics IBM Mobile Foundation Integration in Action
Nordics IBM Mobile Foundation Integration in Action
 
Application Development for IBM Connections with IBM Bluemix
Application Development  for IBM Connections with IBM BluemixApplication Development  for IBM Connections with IBM Bluemix
Application Development for IBM Connections with IBM Bluemix
 
Granite Lotus User Group November 2012 ICS Updates
Granite Lotus User Group November 2012 ICS UpdatesGranite Lotus User Group November 2012 ICS Updates
Granite Lotus User Group November 2012 ICS Updates
 

Mais de We4IT Group

cloud oder nicht-cloud - strategien für sonnenschein am it-himmel
cloud oder nicht-cloud - strategien für sonnenschein am it-himmelcloud oder nicht-cloud - strategien für sonnenschein am it-himmel
cloud oder nicht-cloud - strategien für sonnenschein am it-himmel
We4IT Group
 
We4IT - IBM Notes & Domino 9 Social Edition
We4IT - IBM Notes & Domino 9 Social EditionWe4IT - IBM Notes & Domino 9 Social Edition
We4IT - IBM Notes & Domino 9 Social Edition
We4IT Group
 
We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...
We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...
We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...
We4IT Group
 
We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...
We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...
We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...
We4IT Group
 
We4IT LCTY 2013 - Captain Mobility - INV102 Mobile Strategy
We4IT LCTY 2013 - Captain Mobility - INV102 Mobile StrategyWe4IT LCTY 2013 - Captain Mobility - INV102 Mobile Strategy
We4IT LCTY 2013 - Captain Mobility - INV102 Mobile Strategy
We4IT Group
 
We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...
We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...
We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...
We4IT Group
 
We4IT LCTY 2013 - social girl - enterprise 2.0
We4IT LCTY 2013 - social girl - enterprise 2.0We4IT LCTY 2013 - social girl - enterprise 2.0
We4IT LCTY 2013 - social girl - enterprise 2.0
We4IT Group
 
We4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmap
We4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmapWe4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmap
We4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmap
We4IT Group
 
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshellWe4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT Group
 
We4IT lcty 2013 - social girl - social networks und -activitystreams
We4IT lcty 2013 - social girl - social networks und -activitystreamsWe4IT lcty 2013 - social girl - social networks und -activitystreams
We4IT lcty 2013 - social girl - social networks und -activitystreams
We4IT Group
 
We4IT lcty 2013 - keynote - worst practices - the best of the worst
We4IT lcty 2013 - keynote - worst practices - the best of the worstWe4IT lcty 2013 - keynote - worst practices - the best of the worst
We4IT lcty 2013 - keynote - worst practices - the best of the worst
We4IT Group
 
We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013
We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013
We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013
We4IT Group
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT Group
 
We4IT lcty 2013 - infra-man - domino run faster
We4IT lcty 2013 - infra-man - domino run faster We4IT lcty 2013 - infra-man - domino run faster
We4IT lcty 2013 - infra-man - domino run faster
We4IT Group
 
We4IT lcty 2013 - captain mobility - das dropbox prinzip
We4IT lcty 2013 - captain mobility - das dropbox prinzipWe4IT lcty 2013 - captain mobility - das dropbox prinzip
We4IT lcty 2013 - captain mobility - das dropbox prinzip
We4IT Group
 
We4IT Präsentation - doclinkr
We4IT Präsentation - doclinkrWe4IT Präsentation - doclinkr
We4IT Präsentation - doclinkr
We4IT Group
 
We4IT Flyer - groupcalendar plus
We4IT Flyer - groupcalendar plusWe4IT Flyer - groupcalendar plus
We4IT Flyer - groupcalendar plus
We4IT Group
 

Mais de We4IT Group (20)

Aveedo - Der schnellste Weg zur Modernisierung von Notes Anwendungen (SNoUG 2...
Aveedo - Der schnellste Weg zur Modernisierung von Notes Anwendungen (SNoUG 2...Aveedo - Der schnellste Weg zur Modernisierung von Notes Anwendungen (SNoUG 2...
Aveedo - Der schnellste Weg zur Modernisierung von Notes Anwendungen (SNoUG 2...
 
cloud oder nicht-cloud - strategien für sonnenschein am it-himmel
cloud oder nicht-cloud - strategien für sonnenschein am it-himmelcloud oder nicht-cloud - strategien für sonnenschein am it-himmel
cloud oder nicht-cloud - strategien für sonnenschein am it-himmel
 
Arbeitsplatz der Zukunft - We4IT Collaboration Cloud
Arbeitsplatz der Zukunft - We4IT Collaboration CloudArbeitsplatz der Zukunft - We4IT Collaboration Cloud
Arbeitsplatz der Zukunft - We4IT Collaboration Cloud
 
We4IT Mobile Solutions doclinkr and Aveedo - BLUG/Engage Mobile Conference 2013
We4IT Mobile Solutions doclinkr and Aveedo - BLUG/Engage Mobile Conference 2013We4IT Mobile Solutions doclinkr and Aveedo - BLUG/Engage Mobile Conference 2013
We4IT Mobile Solutions doclinkr and Aveedo - BLUG/Engage Mobile Conference 2013
 
We4IT - IBM Notes & Domino 9 Social Edition
We4IT - IBM Notes & Domino 9 Social EditionWe4IT - IBM Notes & Domino 9 Social Edition
We4IT - IBM Notes & Domino 9 Social Edition
 
We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...
We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...
We4IT LCTY 2013 - Social Girl - Social Communications Strategy and the IBM Sa...
 
We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...
We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...
We4IT LCTY 2013 - Infra-Man - Deep Dive into IBM Sametime - Advanced Video Te...
 
We4IT LCTY 2013 - Captain Mobility - INV102 Mobile Strategy
We4IT LCTY 2013 - Captain Mobility - INV102 Mobile StrategyWe4IT LCTY 2013 - Captain Mobility - INV102 Mobile Strategy
We4IT LCTY 2013 - Captain Mobility - INV102 Mobile Strategy
 
We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...
We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...
We4IT LCTY 2013 - captain mobility - delivering your existing ibm domino appl...
 
We4IT LCTY 2013 - social girl - enterprise 2.0
We4IT LCTY 2013 - social girl - enterprise 2.0We4IT LCTY 2013 - social girl - enterprise 2.0
We4IT LCTY 2013 - social girl - enterprise 2.0
 
We4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmap
We4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmapWe4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmap
We4IT LCTY 2013 - x-pages-men - whats next - application modernization roadmap
 
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshellWe4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
We4IT LCTY 2013 - x-pages-men - ibm domino xpages - performance in a nutshell
 
We4IT lcty 2013 - social girl - social networks und -activitystreams
We4IT lcty 2013 - social girl - social networks und -activitystreamsWe4IT lcty 2013 - social girl - social networks und -activitystreams
We4IT lcty 2013 - social girl - social networks und -activitystreams
 
We4IT lcty 2013 - keynote - worst practices - the best of the worst
We4IT lcty 2013 - keynote - worst practices - the best of the worstWe4IT lcty 2013 - keynote - worst practices - the best of the worst
We4IT lcty 2013 - keynote - worst practices - the best of the worst
 
We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013
We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013
We4IT lcty 2013 - keynote - ibm messaging & collaboration roadmap 2013
 
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application developmentWe4IT lcty 2013 - infra-man - whats new in ibm domino application development
We4IT lcty 2013 - infra-man - whats new in ibm domino application development
 
We4IT lcty 2013 - infra-man - domino run faster
We4IT lcty 2013 - infra-man - domino run faster We4IT lcty 2013 - infra-man - domino run faster
We4IT lcty 2013 - infra-man - domino run faster
 
We4IT lcty 2013 - captain mobility - das dropbox prinzip
We4IT lcty 2013 - captain mobility - das dropbox prinzipWe4IT lcty 2013 - captain mobility - das dropbox prinzip
We4IT lcty 2013 - captain mobility - das dropbox prinzip
 
We4IT Präsentation - doclinkr
We4IT Präsentation - doclinkrWe4IT Präsentation - doclinkr
We4IT Präsentation - doclinkr
 
We4IT Flyer - groupcalendar plus
We4IT Flyer - groupcalendar plusWe4IT Flyer - groupcalendar plus
We4IT Flyer - groupcalendar plus
 

We4IT lcty 2013 - captain mobility - mobile domino applications offline capability and security

  • 1. Mobile Domino Applications – Offline Capability and Security Matthew Fyleman | Product / Project Manager - We4IT © 2013 IBM Corporation
  • 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. 2 © 2013 IBM Corporation
  • 3. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 3 © 2013 IBM Corporation
  • 4. Welcome and Introductions  Matthew Fyleman ─ Senior Product / Project Manager: We4IT GmbH. – 20 years of Lotus Notes / Domino Development Experience – Recently focused entirely on XPages development – Working on We4IT's XPages framework – Aveedo – Also on Offline capabilities for docLinkr 4 © 2013 IBM Corporation
  • 5. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 5 © 2013 IBM Corporation
  • 6. Increasing Demand for Mobile Applications  Smartphones and Tablets commonplace  Awareness that application access on smart devices is possible  Initially a mix of mobile browser and native applications  Native applications often worked offline ... © 2013 IBM Corporation
  • 7. The Importance of Offline Persistence  In most cases, connected access only is acceptable  Some application data is useful to have offline: ─ Who uses the contacts app on their phone for more than just dialling? ─ What about a sales rep.?  Despite provider claims coverage is not universal: ─ No coverage ─ Canyoning in cities ─ Mandatory shutdown of wireless connections (planes*, hospitals)  Until recently offline persistence was only possible in native applications  Titanium Studio, PhoneGap etc. make native applications for multiple device platforms easier  But there is now another option ... © 2013 IBM Corporation
  • 8. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 8 © 2013 IBM Corporation
  • 9. HTML 5 and Web SQL  HTML 5 has Web SQL and offline storage management features  If you are competent with HTML, JavaScript and Web 2.0 technologies it is reasonably straightforward.  Simple example can be found at this address: ─ http://tutorials.html5rocks.com/en/tutorials/webdatabase/todo/  But … © 2013 IBM Corporation
  • 10. Current HTML 5 Issues  The bulk of HTML 5 is established and usable in most browsers, including mobile  However, the standard is unlikely to be ratified before 2014 (?!!)  Implementation is inconsistent across browsers ─ Mostly minor inconsistencies, but in particular -  Storage and Web SQL currently only work under Chrome  So for the moment native is still the easiest way to go ... © 2013 IBM Corporation
  • 11. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 11 © 2013 IBM Corporation
  • 12. Synchronicity  Setting up an offline database is relatively simple  The tricky bit is the synchronisation with the online storage  We've been here before …  Notes' replication engine was actually an afterthought!  A short REST ... © 2013 IBM Corporation
  • 13. RESTful Services  Representational State Transfer – Roy Fielding, see wikipedia article: ─ http://en.wikipedia.org/wiki/Representational_state_transfer  Not a standard!  Simpler than other protocols (e.g. SOAP), yet still scalable  Uses URI's for calls  Asynchronous and stateless © 2013 IBM Corporation
  • 14. Some RESTful Thoughts ...  Not a tutorial but take a look at: ─ BP204 Take a REST and put your data to work with APIs ─ Craig Schumann - Inner Ring Solutions ─ http://www.innerringsolutions.com/downloads/Connect2013/B P204.pdf  Plan your API – it makes implementation much simpler  Version it – but avoid providing a general pointer to latest  Document it – nothing slows adoption like the lack of documentation  In Domino, make use of XAgents: ─ See XAgents – Web Agents Xpages Style at Wissel.Net ─ http://www.wissel.net/blog/d6plinks/shwl-7mgfbn © 2013 IBM Corporation
  • 15. Final Synchronisation Thoughts  Write a generic synchronisation engine: ─ Javascript Library client side ─ XAgent server side (in Java!)  Engine will be driven from client: ─ Must push (send to server) ─ Pull (receive from server) ─ Be Asynchronous but allow data to be chunked  Decide how to deal with conflicts  You will still need to design each offline version separately ─ (Unless you want to construct a formula interpreter!) © 2013 IBM Corporation
  • 16. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 16 © 2013 IBM Corporation
  • 17. They're Out To Get You ...  Data on a mobile device is inherently insecure ─ Even in sandbox environments like Good Technology  Lost or Stolen phones are an issue – but most thieves would not know the value of the data  Weakest link is the user  Rule #1: If data is really that sensitive, don't put it on a mobile device!  Rule #2: If you support a BYOD environment (and even if you don't) put a mobile data policy in place: ─ Otherwise you might be sued! ─ Examples available on the web © 2013 IBM Corporation
  • 18. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 18 © 2013 IBM Corporation
  • 19. Security on the Move  Synchronisation security (online) ─ Authentication (HTTP, SSL, LTPA) ─ Authorisation (OAuth) ─ Interesting article: – http://www.darkreading.com/security/client- security/232500640/the-future-of-web-authentication.html  Storage Security (offline) ─ Do NOT rely on device-memory storage to keep data secure (DropBox!) ─ Most important to encrypt sensitive data, particularly, but not exclusively, for removable storage ─ There are JS encryption libraries out there but not particularly robust ─ Always keep in mind Rule #1 on the previous slide! 19 © 2013 IBM Corporation
  • 20. Agenda  Why is Offline Persistence Important?  Offline Persistence and HTML 5.0  Synchronisation and REST APIs  Security Considerations  Securing Offline Data  An Easier Way ...  Q&A 20 © 2013 IBM Corporation
  • 21. Why Go To All That Trouble?  Several Moderately Complex Applications?  Need to enable them all for mobile?  Want offline cabability for some/all? docLinkr © 2013 IBM Corporation
  • 22. Summary  Offline capability for mobile applications is desirable ─ And in some cases essential!  HTML 5 will make this simpler, but it is not quite there yet  Use RESTful services and XAgents for Synchronisation  The User is the weakest link in the security chain – remember Rule #1  Mobile security centers on Authentication, Authorisation and Encryption  There are easier ways of doing things! © 2013 IBM Corporation
  • 23. Q&A 23 © 2013 IBM Corporation
  • 24. Legal disclaimer © IBM Corporation 2013. 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. 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. 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. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft and Windows are trademarks of Microsoft Corporation in the United States, other countries, or both. 24 © 2013 IBM Corporation