ad201 - ibm domino application development today and tomorrow
DESCRIPTION
The past several years have provided developers with a multitude of new capabilities for building IBM Domino applications and 2013 was no different. Come hear about the latest enhancements in Domino and Domino Designer 9.x that further strengthen the RADD value proposition. We will share new features for building web and mobile web applications with XPages, improvements for making your applications social as well as what's new in APIs. You will also hear what's available for running your applications in the IBM cloud. There will be plenty of demos to whet your appetite and we will round it out with some of our plans for the future.TRANSCRIPT
© 2014 IBM Corporation
AD201: IBM Domino Application Development Today And TomorrowPete Janzen, IBMMartin Donnelly, IBM
22
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.
Please Note
3
Agenda
Introduction Today Futures
4
Application Development Priorities
Reduce IT and development costs– Provide tools and runtime that helps companies
realize a greater return on their investment– Support business flexibility and agility
Embrace innovation while preserving investment– Long lasting applications– Choice in platforms and access methods
Bolster partner ecosystem– Make development cost effective– Provide offerings that provide opportunities for ISVs
service providers
5
Domino Application Development Themes
Mobile– Provide access to Domino data from mobile device– Realize true vision of build once, run anywhere
Developer productivity– Support new XPages controls in Domino Designer– More easily integrate with disparate data sources
Cloud– Leverage Platform-as-a-Service for Domino Applications– SoftLayer coming
Social– Empower users of Domino applications with social services– Extend Domino apps in social containers with XPages
6
2009
Lotus Domino &Designer 8.5.2
Domino DesignerUsability and Productivity
enhancementsXPages
Stability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.4.1Better Notes client integration
APIsXPage extensibility APIsNotes views (JavaTM)
Cloud images for developers 2011
Note: Information is subject to change without notice at IBM’s discretion
IBM Domino & Designer 9.0
Domino DesignerUsability enhancementsXPages hover help
& hyperlinkingServer Side JavaScript debugger
XPagesIncorporate 8.5.3 Upgrade
Pack 1+ into baseEnhanced mobile supportDojo, CKEditor & OneUI upgradeSupport Embedded Experiences using URL mode
APIsDomino Access Services (REST APIs)
RefreshC&S APIs for LotusScript & Java
PlatformExpand OSGi consumption and support in Domino OpenSocial for Notes & iNotes
2010 Lotus Domino &Designer 8.5.3
Domino DesignerSource Control IntegrationNew XPages and Forms/Views
perspectivesUpdate CS JavaScript editorNew Java design element
XPagesStability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.5, CKEditor 3.5.3
APIsXPage extensibility APIs
Cloud images for Applications
2012
Lotus Domino & Designer 8.5.3
Upgrade Pack 1Domino Designer
Extensions for designelements
Support new XPagescontrolsXPages
XPages Extension LibraryEnhanced Mobile device
supportAPIs
Domino Access Services (REST APIs)
20142013
Lotus Domino & Designer 8.5.1
Domino Designer LotusScript and Java editor Working set enhancements Performance
XPages Notes client support iWidget/Component Active content filtering Performance & Scalability
APIs Designer extensibility APIs Notes Documents (Java) DXL enhancements
Lotus Domino & Designer 8.5.0
Domino Designer Eclipse Based IDE XPages Editors ServerSide JavaScript CSS & Theme for rendering
XPages Web 2.0 framework based on
Java/JSF Extensive library of controls Built in Ajax support Dojo JavaScript or Java for
business logic APIs
DXL enhancements
IBM Notes & Domino Application Development
7
2009
Lotus Domino &Designer 8.5.2
Domino DesignerUsability and Productivity
enhancementsXPages
Stability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.4.1Better Notes client integration
APIsXPage extensibility APIsNotes views (JavaTM)
Cloud images for developers 2011
IBM Domino & Designer 9.0
Domino DesignerUsability enhancementsXPages hover help
& hyperlinkingServer Side JavaScript debugger
XPagesIncorporate 8.5.3 Upgrade
Pack 1+ into baseEnhanced mobile supportDojo, CKEditor & OneUI upgradeSupport Embedded Experiences using URL mode
APIsDomino Access Services (REST APIs)
RefreshC&S APIs for LotusScript & Java
PlatformExpand OSGi consumption and support in Domino OpenSocial for Notes & iNotes
2010 Lotus Domino &Designer 8.5.3
Domino DesignerSource Control IntegrationNew XPages and Forms/Views
perspectivesUpdate CS JavaScript editorNew Java design element
XPagesStability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.5, CKEditor 3.5.3
APIsXPage extensibility APIs
Cloud images for Applications
2012
Lotus Domino & Designer 8.5.3
Upgrade Pack 1Domino Designer
Extensions for designelements
Support new XPagescontrolsXPages
XPages Extension LibraryEnhanced Mobile device
supportAPIs
Domino Access Services (REST APIs)
20142013
Lotus Domino & Designer 8.5.1
Domino Designer LotusScript and Java editor Working set enhancements Performance
XPages Notes client support iWidget/Component Active content filtering Performance & Scalability
APIs Designer extensibility APIs Notes Documents (Java) DXL enhancements
Lotus Domino & Designer 8.5.0
Domino Designer Eclipse Based IDE XPages Editors ServerSide JavaScript CSS & Theme for rendering
XPages Web 2.0 framework based on
Java/JSF Extensive library of controls Built in Ajax support Dojo JavaScript or Java for
business logic APIs
DXL enhancements
XPages Evolution
XPages Released
Eyes wide open
8
2009
Lotus Domino &Designer 8.5.2
Domino DesignerUsability and Productivity
enhancementsXPages
Stability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.4.1Better Notes client integration
APIsXPage extensibility APIsNotes views (JavaTM)
Cloud images for developers 2011
IBM Domino & Designer 9.0
Domino DesignerUsability enhancementsXPages hover help
& hyperlinkingServer Side JavaScript debugger
XPagesIncorporate 8.5.3 Upgrade
Pack 1+ into baseEnhanced mobile supportDojo, CKEditor & OneUI upgradeSupport Embedded Experiences using URL mode
APIsDomino Access Services (REST APIs)
RefreshC&S APIs for LotusScript & Java
PlatformExpand OSGi consumption and support in Domino OpenSocial for Notes & iNotes
2010 Lotus Domino &Designer 8.5.3
Domino DesignerSource Control IntegrationNew XPages and Forms/Views
perspectivesUpdate CS JavaScript editorNew Java design element
XPagesStability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.5, CKEditor 3.5.3
APIsXPage extensibility APIs
Cloud images for Applications
2012
Lotus Domino & Designer 8.5.3
Upgrade Pack 1Domino Designer
Extensions for designelements
Support new XPagescontrolsXPages
XPages Extension LibraryEnhanced Mobile device
supportAPIs
Domino Access Services (REST APIs)
20142013
Lotus Domino & Designer 8.5.1
Domino Designer LotusScript and Java editor Working set enhancements Performance
XPages Notes client support iWidget/Component Active content filtering Performance & Scalability
APIs Designer extensibility APIs Notes Documents (Java) DXL enhancements
Lotus Domino & Designer 8.5.0
Domino Designer Eclipse Based IDE XPages Editors ServerSide JavaScript CSS & Theme for rendering
XPages Web 2.0 framework based on
Java/JSF Extensive library of controls Built in Ajax support Dojo JavaScript or Java for
business logic APIs
DXL enhancements
XPages Evolution
XPages Released
Eyes wide open
Tool & Runtime hardening
Developerstapping into
potential
9
2009
Lotus Domino &Designer 8.5.2
Domino DesignerUsability and Productivity
enhancementsXPages
Stability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.4.1Better Notes client integration
APIsXPage extensibility APIsNotes views (JavaTM)
Cloud images for developers 2011
IBM Domino & Designer 9.0
Domino DesignerUsability enhancementsXPages hover help
& hyperlinkingServer Side JavaScript debugger
XPagesIncorporate 8.5.3 Upgrade
Pack 1+ into baseEnhanced mobile supportDojo, CKEditor & OneUI upgradeSupport Embedded Experiences using URL mode
APIsDomino Access Services (REST APIs)
RefreshC&S APIs for LotusScript & Java
PlatformExpand OSGi consumption and support in Domino OpenSocial for Notes & iNotes
2010 Lotus Domino &Designer 8.5.3
Domino DesignerSource Control IntegrationNew XPages and Forms/Views
perspectivesUpdate CS JavaScript editorNew Java design element
XPagesStability/performance improvementsImproved rich text editing (CKEditor)Dojo 1.5, CKEditor 3.5.3
APIsXPage extensibility APIs
Cloud images for Applications
2012
Lotus Domino & Designer 8.5.3
Upgrade Pack 1Domino Designer
Extensions for designelements
Support new XPagescontrolsXPages
XPages Extension LibraryEnhanced Mobile device
supportAPIs
Domino Access Services (REST APIs)
20142013
Lotus Domino & Designer 8.5.1
Domino Designer LotusScript and Java editor Working set enhancements Performance
XPages Notes client support iWidget/Component Active content filtering Performance & Scalability
APIs Designer extensibility APIs Notes Documents (Java) DXL enhancements
Lotus Domino & Designer 8.5.0
Domino Designer Eclipse Based IDE XPages Editors ServerSide JavaScript CSS & Theme for rendering
XPages Web 2.0 framework based on
Java/JSF Extensive library of controls Built in Ajax support Dojo JavaScript or Java for
business logic APIs
DXL enhancements
XPages Evolution
XPages Released
Eyes wide open
Tool & Runtime hardening
Developerstapping into
potential
Developers hitting their stride
Complex appsFrameworks
Incorporating 3rd party assets
10
Ecosystem
Developer Community– OpenNTF.org– Stack Overflow– GitHub– Other community sites
XPages Publications– Mastering XPages – over 7000 copies sold worldwide
● Translated to Chinese● Biggest selling IBM Press app dev book● Mastering XPages 2nd Edition
- Estimated publication Q1 2014- Based on 9.0.1- Completely revised + 4 new chapters
New Domino Designer 9 book for Japanese market
11
2013 Releases
Domino Designer and Domino 9.0– Server-side JavaScript debugger– XPages® developer productivity enhancements: content assist,
hyperlinking, hover help– XPages extension library incorporated into platform, including:
● Additional rich controls● Mobile controls
– XPiNC enhancements– Calendaring & Scheduling APIs
Domino Designer and Domino 9.0.1– We'll get to this in a moment
OpenNTF– XPages Social Enabler merged into Social Business Toolkit SDK– Twitterbootstrap4XPages
1212
Today
13
Domino Designer 9.0.1
Update to Designer jvm.properties default setting – Installer asserts higher memory configuration
vmarg.Xmx=-Xmx512mvmarg.Xms=-Xms48mvmarg.Xmca=-Xmca512k
Support for the new “Load Java” ECL Attribute
Important Improvements (we heard you ! )– Fixed bugs when saving LotusScript agents– Improved Help Indexing
14
High Performance View Navigator
Much more responsive display of deep hierarchical document collections Alternative XPages View Navigator in 9.0.1
– Performs well with heavily populated view categories– Based on new 9.0 Java APIs backend classes and NIF capabilities – View navigation is based on document note ids rather than view position– View behavior closely emulates Notes client– Enabled via an xsp.properties setting (not on by default)
● xsp.domino.view.navigator=ByPosition● xsp.domino.view.navigator=ByNoteId
View markup by note id View markup by position
15
XPages Dynamic Search – SEO SupportSearch Engine Optimization
XPages Dynamic Content Control– Dynamically switches content using Ajax– This works well for real users … but
not so well for robots ! 9.0.1 Improvements
– Several popular bots are supported by default
– Designer allows you to customize your bot support
– Runtime now loads default facet on initial page load
16
9.0.1 XPages Core Updates
Dojo upgrade to 1.8.3 CKEditor Upgrade to 3.6.6.2 W3C Web Content Accessibility Guidelines (WCAG) 2.0 Level A / AA & US Section 508
Standard XULRunner Upgrade to 10.0.6 (XPiNC)
– Equivalent of upgrading Notes embedded browser from Firefox 3.6.2 to 10.0.6
17
Domino Mobile Application Development Provide pervasive access to Notes/Domino
data from your smartphone or tablet Ensures your investment in content is
available when you need it Improve business process efficiency by allowing
decision makers to approve workflows on the go Supports spectrum of mobile application
types
XPages – dedicated mobile controls and support for responsive design
Mobile web Mobile Hybrid Native
XPages IBM Worklight+
numerous tools and servicesfrom IBM business partners
18
XPages Mobile Case Studies
Hendricks Regional Health– Using XPages to improve staff scheduling & communication, mobile access to
field protocols for EMTs, an insulin drip calculator and more– Click → Link to case study
Imaging Business Machines, LLC.– Using XPages to modernize existing business applications– Click → Link to case study
VCC – XPages mobile controls provide mobile access to VCC's Endeavor project
management solution– Click → Link to case study
SMC– XPages plus Teamstudio Unplugged allows emplotyees to perform energy
assessments offline with their mobile devices – Attend session CUST104 – Wed 11:15 Pelican 1&2
19
XPages Mobile
XPages 9.0.1 supports Dojo 1.8.3– Opportunity to harness Dojo 1.8.3
enhanced mobile features XPages 9.0.1 Mobile
– Improve mobile “look and feel” – Introduce new JavaScript mobile APIs– Deliver a robust mobile experience– Provide more efficient debugging capabilities– Establish an extensible mobile base platform that
can be enhanced via OpenNTF and/or Upgrade Packs
20
XPages 9.0.1 Mobile Enhancements Cont'd
New Device Bean– Used to identify the most common mobile and tablet devices– deviceBean.isMobile() / deviceBean.isTablet() / deviceBean.isAndroid() etc
Enhancements & Fixes– Photo/File Upload using Partial Refresh (for Mobile and Web)– Mobile Debug User Agent switch to mimic iOS or Android user agents– MoveTo SimpleAction back button restoring previously loaded mobile view– Mobile view and control resizing and layout enhanced on transition / orientation
changes– Custom mobile Theme inheritance now supported– Custom mobile CSS stylesheet ordering corrected to allow custom precedence
21
XPages 9.0.1 Mobile Enhancements Cont'd
Mobile Application & Control Events– Single Page Application onOrientationChange / onResize Events– Application Page onBefore/After Transition In/Out Events
Mobile Themes– Default Mobile Theme and Mobile Theme Overrides for iOS and Android– New OneUI IDX plugin containing IDX v1.3 (not fully supported in all controls)– New mobile theme available oneui_idx_v1.3 Theme– OneUI IDX theme used by TeamRoom and Discussion templates
22
Post 9.0.1 Mobile Enhancements
XPages mobile has new features available on OpenNTF– Available in XPages ExtLib project (>= December 12, 2013)– Requires Domino and Domino Designer 9.0.1
Single Page Application Wizard Infinite Scrolling
23
Single Page Application Wizard Wizard produces a fully-functional well-structured mobile app:
– No expertise required in mobile design, XPages mechanics or XSP markup specifics! Implements Single Page Application design pattern (aka Single Page Interface)
– Optimal startup-time, fast view switching, quick page navigation, request minimization Enforces XPages Mobile best practices:
– Uses Custom Controls each Application Page– Uses preferred mobile-friendly XPages controls like Data View, Form Table etc
Supports bleeding edge features like infiniteScroll Designed with Future Extensibility in mind
– More data sources may be supported in future (for enterprise and social data)
24
XPages Mobile Touch Scrolling
Touch based “infinite” scrolling
Lazy loads the next set of rows using Partial Refresh
Computable infiniteScroll property on the <xe:dataView/> control
Intuitive alternative to “More” button feature
25
Domino REST Services
New in 9.0.1 (and on OpenNTF)– Calendar service
● Access a user's calendar over HTTP● Create, read, update, and delete calendar entries.● Simple actions on entries and notices
(accept, decline, counter, delegate, etc.)– Cross Site Request Forgery (CSRF) protection across all services– Read a user's password expiration date (and other statistics)
New on OpenNTF only– Freebusy service
● Find free time for a person or resource● Find a free room for a given time slot
– Mail service enhancements including quota and delegation
Domino&
External apps
REST
26
XPages – Your On-ramp to Social Business Applications
Integrate social capabilities from IBM Connections, IBM SmartCloud forSocial Busness, Facebook... into XPages applications
XPages social enabler & Social Business Toolkit SDK– Simplifies access to Connections
& SmartCloud for Social Business– Isolates complexity related to
authentication mechanisms– Provides easy to use objects
with many code examples User stories
– Share documents with vendor using Files application in the cloud
– Discover subject matter experts usingConnections Profiles
27
Getting Started With Social Business Toolkit SDK
What you need:– Notes/Domino 9.0 or 8.5.3(plus ExtLib)
● http://www.tinyurl.com/IBMDominoDesigner– IBM Social SDK
● http://ibmsbt.openntf.org/ What you should have:
– Access to IBM Connections, e.g.● a greenhouse account on https://greenhouse.lotus.com● an IBM Collaboration QuickStart Image (free 60 day trial)
– Access to other Social platforms● Twitter, Facebook, Dropbox● … you name it !
– Trouble Ticket app from OpenNTF● http://openntf.org/main.nsf/project.xsp?r=project/Trouble%20Tickets%20Notes-to-XPages
%20Example
2828
Futures
29
Mobile Web Application Trends
Today– Dedicated mobile controls– Look & Feel that emulate a native experience
Tomorrow– Responsive web design– True Build once, run anywhere
30
Mobile First
Responsive web design– Realizing build once,
run anywhere– Increase the number of
XPages controls with responsive renderings
Provide richer experience– Support additional mobile
gestures– Additional events to provide
finer grained control for developers– Improve ability to utilize device
specific services– Progressive enhancement - optionally
configure controls for desktop web or mobile experience(date/time picker vs. spinner)
31
XPages Mobile FuturesResponsive By Nature
For Mobile Web Apps, the industry favors a Mobile First approach that is heavily based on “Responsive Web Design” principles
XPages– XPages applications are essentially Mobile Web Apps– XPages should provide a highly responsive control and feature set– XPages responsive controls and feature set should use progressive enhancement
where possible to provide a richer user experience- Touch Gestures (eg: Touch/Lazy scrolling, …)
– Responsive Themes will be key to enabling a highly responsive experience● IBM OneUI Next (“Beyond C4”) / IBM OneUI IDX ● Bootstrap for XPages (http://bootstrap4xpages.openntf.org/)
– Boosted by Server-side Responsive (RESS) capabilities for maximizing leanness and processing
IBM Domino Applications In The CloudWhat's Coming
An expressway for bringing Domino Applications to the cloud − New or existing customer applications− ISV solutions
Leveraging the IBM SoftLayer cloud infrastructure − Automated, Highly Available− Worldwide data center footprint − Pay per use and scale as needed
Work with ISSC and IBM Business Partners to customize and manage
Based on
32
33
IBM Domino Applications In The CloudA Little Bit Deeper Streamline process for standing up Domino in the cloud
– Provision instances of Domino on SoftLayer– Identify common patterns and configure servers
● Hybrid architectures● Add servers to domains
Build applications for on premises or cloud– Same programming model and APIs– Run with hybrid environments– Customers with only Domino applications
Complement with services– ISSC Managed Business Solutions for hosting applications– Partner services for hosting and modernization– ISVs bundling solutions with platform
IBM Domino Applications
34
QDiligence – Online D & O Questionnaire Solution Challenge: Automate the completion of Corporate Board Directors and Officers annual
questionnaires– Corporations today perform their D&O process manually
or semi-automatically with MS Word/PDF– Questionnaire prep takes weeks, zero visibility
to completion status, analysis requires manual review of each questionnaire
Solution Description:– IBM Domino XPages application accessed via
mobile devices or desktop browsers– XPages architected to quickly provide fully
customized solutions to multiple companies from a single application
Benefits: – Very fast migration of D&O Questionnaire process online– Up to 80% time/cost reduction in Year 2– Increase in Board of Directors satisfaction
"IBM SoftLayer allowed QDiligence to quickly stand up an optimized cloudbased infrastructure for our Domino based corporate directors and officersquestionnaires solution."- Russell Maher Principal, QDiligence
35
Access Connect Online to complete your session surveys using any:– Web or mobile browser – Connect Online kiosk onsite
35
3636
© Copyright IBM Corporation 2014. All rights reserved.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
IBM, the IBM logo, ibm.com, ] are trademarks or registered trademarks of International Business Machines Corporation in the United States, other countries, or both. If these and other IBM trademarked terms are marked on their first occurrence in this information with a trademark symbol (® or ™), these symbols indicate U.S. registered or common law trademarks owned by IBM at the time this information was published. Such trademarks may also be registered or common law trademarks in other countries. A current list of IBM trademarks is available on the Web at “Copyright and trademark information” at www.ibm.com/legal/copytrade.shtml
Other company, product, or service names may be trademarks or service marks of others.
Availability. 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.
The workshops, sessions and materials have been prepared by IBM or the session speakers and reflect their own views. They are provided for informational purposes only, and are neither intended to, nor shall have the effect of being, legal or other guidance or advice to any participant. While efforts were made to verify the completeness and accuracy of the information contained in this presentation, it is provided AS-IS without warranty of any kind, express or implied. IBM shall not be responsible for any damages arising out of the use of, or otherwise related to, this presentation or any other materials. Nothing contained in this presentation 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.
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. 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.
Acknowledgements and Disclaimers