openedge mobile an introduction shelley chase progress openedge

33
OpenEdge Mobile An Introduction Shelley Chase Progress OpenEdge

Upload: gyles-walsh

Post on 25-Dec-2015

246 views

Category:

Documents


2 download

TRANSCRIPT

OpenEdge Mobile

An Introduction

Shelley ChaseProgress OpenEdge

© 2013 Progress Software Corporation. All rights reserved.2

Reminder:

Turn your cell phones on!

http://oemobiledemo.progress.com

BYOD – Bring Your Own Device

© 2013 Progress Software Corporation. All rights reserved.3

Mobility Is Top-of-mind for Customers & ISVs

•Allow customers to submit and track their claims using mobile and web devices

Insurance

•Put iPads in the hands of customer service reps to deliver the next-gen retail experience

Retail

•Provide real-time tracking and optimization of the supply chain

Manufacturing

•Move their applications to SaaS in order to increase competitiveness, thus requiring web and mobile UIs

Technology

•Allow customers to self-service their bookings, manage passes, submit claims, and provide feedback through mobile devices

Travel and Transportation

“I want to enable my customers to self-service using their phones or via the web”

“I need to provide mobile capabilities in order to compete for new business”

“I am moving to the cloud and require new, modern UIs”

“I can leverage mobility to gain more information about my customer”

“I can deliver a better customer experience if I can always reach them”

Key Messages

© 2013 Progress Software Corporation. All rights reserved.8

UI Options for OpenEdge Applications

Desktop

• Richest user experience

• User productivity is key

• Powerful features working with complex data

• Internal/back office power users

Web Browser

• Location and machine independence

• Target features made available

• Internal and external users

Mobile Device

• Access from anywhere, at any time

• Ability to sense location and user environment

• And to push information

• Internal and external users - wider user base

© 2013 Progress Software Corporation. All rights reserved.9

Can’t I Just Use My Rich Internet Application (RIA) and Display It On a Mobile Device…?

Different user experience anduser expectations• Apps can be installed• Home screen with no menus/toolbars • Portrait and landscape display modes• Integration with social sites

Limited real estate• Focus is on user needs: maximum productivity for least

effort• Normally a subset of features of a Desktop Web App

Device-specific features• Touch screen• Contact list, calendar• Camera, microphone• Accelerometer, Geo-location

© 2013 Progress Software Corporation. All rights reserved.10

Can’t I Just Use My Rich Internet Application (RIA) and Display It On a Mobile Device…?

Physical resource limitations• Fluctuations in bandwidth - need to minimize data transfer• Unreliable connection, battery power

Additional security challenges• Data storage on device (off-line)• User access, authentication, authorization across open

networks

© 2013 Progress Software Corporation. All rights reserved.11

Three Types of Mobile Applications

• Build app for each platform one by one• Full capabilities and integration with device• AppStore presence, restricted distribution

Native App (Device specific)

• Write app code once run on many devices• Native container provides access to device

capabilities• AppStore presence, restricted distribution

Hybrid App (Device specific + HTML5/CSS/JavaScript)

• Write app once, runs in web browser on device• Limited access to device capabilities• No AppStore, unrestricted distribution• Internet connection required

Mobile Web App (HTML5/CSS/JavaScript)

OpenEdge Mobile

The Product

© 2013 Progress Software Corporation. All rights reserved.13

OpenEdge Mobile

Value Proposition:

• Write Once, Run Anywhere Portability with the Benefits of Native Applications. The Easiest Way to Build an OpenEdge Application Supporting Mobile Devices, End-to-end

Benefits:

• A comprehensive and integrated tool set with support for a wide variety of devices

• Mobile UI development is Cloud-based, so collaboration among the development team, business analysts and with end users is fully supported

• Leverage existing business logic, the OpenEdge AppServer and database

© 2013 Progress Software Corporation. All rights reserved.14

OpenEdge Mobile = “The Best Of Both Worlds”

• Standards-based solution

• Write the UI code once, deploy to multiple devices

• Native container provides support for App Store and HTML5 limitations

• Flexible deployment options of both Web App and Hybrid App

• No need to learn device-specific languages or development environments

Hybrid App (Native Wrapper + Web App)

By 2015, 80% of all mobile web applications

developed will be hybrid or mobile web.

Gartner 2012: Magic Quadrant for Mobile Consumer Application

Platforms

© 2013 Progress Software Corporation. All rights reserved.15

Development: Integrated Development Environment

Mobile App Builder • Drag-n-drop UI designer

• Integrated emulator

• Tight data binding to OE

• Packages mobile apps for deployment

Developer Studio for OE

• Define and build mobile services

• Deploy Mobile services and Mobile Web Apps

• Test App from browser

© 2013 Progress Software Corporation. All rights reserved.16

Developing a Mobile App Methodology

Build UI Build OE services

Bind data and UI

Build and deploy

Step 1 Step 2 Step 3 Step 4

© 2013 Progress Software Corporation. All rights reserved.17

Build the UI (Step 1) - Demo

© 2013 Progress Software Corporation. All rights reserved.21

Define Mobile Service (Step 2) - Demo

© 2013 Progress Software Corporation. All rights reserved.27

Bind Data and UI (Step 3)

Options to access OE AppServer

JavaScript Data Object (JSDO) • Simplifies interaction with OE AppServer

• Client-side “prodataset”

• Support for CRUD and invoke operations

• Handles connection and communication

• Session management built-in

Call OE REST Service

• Understand URL space

• Manage connections and session lifecycle

• Build HTTP Request and decompose HTTP response

• Parse JSON data and handle errors

JSDO

Customer

Order

© 2013 Progress Software Corporation. All rights reserved.28

Use JSDO Service for Visual Data Mapping - Demo

© 2013 Progress Software Corporation. All rights reserved.32

Build and Deploy (Step 4)

© 2013 Progress Software Corporation. All rights reserved.33

Build and Deploy (Step 4) – Mobile Web App

Generate files for App

Run in cloud or copy files local to PDSOE

In PDSOE:

Package Mobile Web App

Deploy App to a Web Server

© 2013 Progress Software Corporation. All rights reserved.34

Build and Deploy (Step 4) – Native App

Generate files for App

Create PhoneGap project

Build binary file

© 2013 Progress Software Corporation. All rights reserved.35

Build and Deploy (Step 4) – Native App

Generate files for App

Create PhoneGap project

Build binary file

Test on local device or deploy to App Store

OpenEdge Mobile

The Architecture

© 2013 Progress Software Corporation. All rights reserved.37

Runtime Architecture for OE Mobile

Client-side

App resides on device

OE DB

*.html*.js

Internet

Server-siden-tier architecture with

Business Logic and data

HTTP (REST / JSON)

Business Entity

JSDO-BE Mapping

JSDO

ABL

© 2013 Progress Software Corporation. All rights reserved.38

Device OS

Mobile device browser

Runtime Architecture of a Mobile Web App

HTTP

HTTPS

Authentication

Session Manager

Web application

HTTP Web Server

Mobile App Mobile Service

Web App HTML, CSS, JS

Progress JSDO

URL Web App HTML, CSS, JS

Progress JSDO

URL-to-ABL mapping

JSDO Catalog.json

© 2013 Progress Software Corporation. All rights reserved.39

Device OS

Mobile device browser

Runtime Architecture of a Mobile Web App

HTTP

HTTPS

Authentication

Session Manager

Web application

HTTP Web Server

Mobile App Mobile Service

Web App HTML, CSS, JS

Progress JSDO

Web App HTML, CSS, JS

Progress JSDO

URL-to-ABL mapping

JSDO Catalog.json

Web App HTML, CSS, JS

Progress JSDO

JSDO Catalog.json

© 2013 Progress Software Corporation. All rights reserved.40

Device OS

Native App

Runtime Architecture of a Native App

HTTP

HTTPS

Authentication

Session Manager

Web application

HTTP Web Server

PhoneGap

Webkit browser

Web App HTML, CSS, JS

Progress JSDO

No need for Mobile App – deployed as Native App

Mobile Service

JSDO Catalog.json

URL-to-ABL mapping

JSDO Catalog.json

© 2013 Progress Software Corporation. All rights reserved.41

App

JSDO

Utilize OpenEdge Backend Services

Web Server

REST Manager

App Server

JSDO (JavaScript Data Object)

Provides access to OpenEdge data available via the AppServer REST

Adapter.

Mobile Application

Based on HTML5 (HTML5, CSS, JavaScript) and can be run in a web

browser, as a web app or as a hybrid app.

REST Manager

Allows execution of business logic on an AppServer via HTTP (internet) calls, which in turn could access the

DB.OpenEdge

DB

App Server

OpenEdge

DB

© 2013 Progress Software Corporation. All rights reserved.42

Mobile App Accessing AppServer Business Logic and Data

Web Server OpenEdge AppServer

Mobile Web App

OrderEntry Mobile Service

fill( )

Customers.cls(Mobile Interface)

Mobile App

Invoke operation

Invoke operation

Update operation

Create operation

Read operation

remove( )save Changes( )

getCreditHistory( )

getOrderHistory( )

assign( )saveChanges( )

add( )saveChanges( )

Delete operation

GetCreditHistory( )

GetOrderHistory( )

UpdateCustomers( )

CreateCustomers( )

DeleteCustomers( )

ReadCustomers( )

Customers Resource

Customers JSDO

© 2013 Progress Software Corporation. All rights reserved.43

REST Adapter

REST Adapter Handling of HTTP Requests

GET http://acme.com/services/sales/customers?where=name%20begins%20coyote

deployment timeend point

information

design timeREST resource

information

runtime timeclient

information

Resource toproceduremapping

Procedureparameter

handler

AppServer client

HTTPheader& bodyhandler

HTTPheaders

&body

IDL &mapping

OE Mobile

Product Availability

© 2013 Progress Software Corporation. All rights reserved.45

Devices Supported and Pricing Considerations

Supported Devices in OpenEdge 11.2 Release1:

• iPhone – iOS 5 or later

• iPad – iOS 5 or later

• Android 4.0 or later (Ice Cream Sandwich, Jelly Bean)

• Web browser (HTML5/CSS3/JavaScipt) – latest versions

Pricing Highlights:

• Development Licenses for Mobile App Builder: Annual Subscription per Developer

• Runtime JSDO Adapter license (Like AppServer)

1 A detailed supported platform list will be provided with the OpenEdge 11.2 supporting documentation

© 2013 Progress Software Corporation. All rights reserved.46

Summary

OpenEdge Mobile

• A Complete End-to-end Solution For Supporting Mobile Devices With OpenEdge Applications

• Develop with the premier OpenEdge development environment, Progress Developer Studio for OpenEdge

• Mobile App Builder in the cloud

Ease-of-use features to simplify interaction with OpenEdge applications

• JavaScript Data Objects easily connect UI screens to the supporting data

• REST Manager to make it easy to execute OpenEdge business logic and access data on the AppServer

October 6–9, 2013 • Boston #PRGS13

www.progress.com/exchange-pug

Special low rate of $495 for PUG Challenge attendees with the code PUGAM

And visit the Progress booth to learn more about the Progress App Dev Challenge!