SAP CodeJam Mobile - Poland 2013

47
SAP CodeJam on Mobile Warsaw and Wrocław Developer Experience, SAP May 2013

description

Slides from SAP CodeJam Mobile in 2013 in Poland. At the end it was about coding, not just slides.

Transcript of SAP CodeJam Mobile - Poland 2013

Page 1: SAP CodeJam Mobile - Poland 2013

SAP CodeJam on Mobile

Warsaw and Wrocław Developer Experience, SAP

May 2013

Page 2: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 2

SAP CodeJam in 2012

Page 3: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 3

Welcome to SAP CodeJam Mobile in Poland

Page 4: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 6

SAP in Mobile Enterprise Applications Platforms

Source: „Magic Quadrant for Mobile Application Platform”, Gartner, April 2012

Page 5: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 7

Consumer-style apps for business: SAP Fiori

Page 6: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 8

Consumer-style apps for business

Page 7: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 9

SAP Runs SAP: http://SAPRunsSAPMobile.com

20,000 iPhones

19,000 iPads

16,000 BB

3,500 Androids

Pilot Windows 8

Page 8: SAP CodeJam Mobile - Poland 2013

SAP: Learn and Practice

Page 9: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 12

Enablement: SAP Developer Center

Developer licenses

for SAP technologies Legal framework

Trial editions

Developer editions

Hosted environments SAP technologies

Building blocks

Getting started

Blogs

Forum

Page 10: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 13

Self-Learning Options: SAP Developer Center on Mobile

http://developers.sap.com/mobile

Page 11: SAP CodeJam Mobile - Poland 2013

Stay in touch

Main site: http://developers.sap.com

Twitter: http://twitter.com/SAPDevCenter

Facebook: https://www.facebook.com/sapdevcenter

Google+: http://plus.google.com/109854366338762275750

Page 12: SAP CodeJam Mobile - Poland 2013

Thank you

Contact information:

Vitaliy Rudnytskiy

Developer Experience

@Sygyzmundovych

[email protected]

Page 13: SAP CodeJam Mobile - Poland 2013

Paradigms

in Mobile Computing Styles of Mobile Development that are Relevant Today

Page 14: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 19

Non-scalable approach to building Mobile Apps

Vendor 1 App

Vendor 2 App

Vendor 3 App

Vendor n App

Vendor 1 Server

Vendor 2 Server

Vendor 3 Server

Vendor n Server

Backend System

1

Backend System

2

Backend System

3

Device T1

Device T2

Device T2

Device T1

Device T2

Device T2

Device T1

Device T2

Device T2

Device T1

Device T2

Device T2

Page 15: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 20

Mobile Enablement Functions Understanding the total picture

Mobile Enablement

Functions

Represents 80% of the total cost of

implementing your own infrastructure

Costly and time consuming

Requires skill sets which are not core to

business

Secure connectivity to business systems

End to end security and authentication

Application versioning and lifecycle management

Multi-device and multi-OS platform support

Usage analytics and reporting

End to end traceability

Represents 20% of the total cost of deploying a mobile

strategy

Can be accelerated with partners and off-the-shelf

applications

Page 16: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 21

The power of a platform Optimization, reusability, maintainability, scalability

There is no one-size-fits-all approach, but there are several use cases with different recurring

architecture patterns that must be supported consistently

Services

platform

for mobile

B2E

B2B

B2C

Challenges and requirements Qualities and features

Skill-set diversity

Application diversity

Rapid evolution

Heterogeneous landscape

Enable world-class tools

Reusable platform services

Device/platform agnostic

Embrace open standards

Page 17: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 22

The platform value proposition

Open platform

millions of developers

Flexible framework

native, HTML, or business

analysts

SDK and tools

fast and productive

Reusable services and

frameworks

consistent and extensible

Developer

Open platform

easily extensible

Seamless integration and

centralized management

optimized TCO

Industry standard security

assurance and control

App platform + app mgmt

end-to-end mobile lifecycle

management

Admin

Platform approach

consistent app experience

Self service portal

user empowerment

BYOD enabled

user choice

Enterprise app store

discover new apps and

capabilities

User

Page 18: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 23

SAP Mobile Platform Product description

SAP Mobile Platform is a mobile application development platform that enables developers to simply and

quickly build B2E, B2B and B2C applications that connect business data to mobile workers on any device,

at any time

Connect to any SAP or non-SAP data source and

application

Create amazing mobile applications using native and

third-party IDEs and SAP SDKs and libraries:

authentication, data integration, synchronization,

3D visualization, and reusable components

Deploy native, hybrid and metadata driven mobile

applications from the device of their choice:

iOS / Android / BlackBerry / Windows 8 /

Windows Phone 8 / Windows Mobile

SAP Mobile Platform

SAP

HANASAP Systems 3rd Party

Native, Hybrid, Meta-Data Driven, SMS Apps

iOS Android BlackBerry Windows 8

Page 19: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 24

Architectural Break-down of a Mobile Solution

•Player

•Hybrid Web Container

•Native

•SMS

•Development Tools

•User Onboarding

•Authentication & Authorization

•Connection Management.

•Application Settings

•Resource Bundles

•Encryption Services

•Central Monitoring, Logging, Tracing

•Web-services

•Synchronization

•SMS

•W3C SOAP

•OData

•JSON

•Mobilink Protocol

•Angel Protocol

•SAP JCO

•JDBC Mobile Application

Consumption Model

Mobile Enablement Functions

UI Implementation

Model

Page 20: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 25

Client Paradigms Why we support them all?

Player

Native

HWC

SMS

Agentry 6.x

SMP 2.2

Mobiliser 5.x

Agentry

Mobiliser 5.x

Agentry

Mobiliser

SUP SUP

SMP 2.3

Q3 2013

SMP 3.0

Q4 2013

Page 21: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 26

Player Type Applications

Pros:

Design Once Deploy Many

Auto App Updates

Codeless

Offline Capable

Cons:

On Device Complex Calculations tedious

UI Control Set Limited

Device support limited

Good Use Cases:

Field Force Automation

Sale Force Automations

Bad Use Cases:

Novel UI Requirements

Consumer Oriented

Player

Page 22: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 27

Hybrid Web Container Applications

Pros:

Design Once Deploy Many

Massive Development Community

Large Device Support

Cons:

No implicit Sync Model for Offline

Apple Rules

Resource Intensive - > User XP

Good Use Cases:

Lightweight workflow apps

Online lookup apps

Consumer Oriented

Bad Use Cases:

Heavy process driven apps with offline requirements

Hybrid Web Container

Page 23: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 28

Native Applications

Pros:

Maximise Performance

Maximise User XP

Direct Access to Peripherals

Cons:

Expensive

Specialized Skills

Rewrite for each Device Type

Updates require redeploy

Good Use Cases:

Specialized Interfaces (3D)

Process Intensive Apps

UX important

Bad Use Cases:

Consumer oriented (cost)

Native

Page 24: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 29

SMS Applications

Pros:

Large Device Support

No App Deployment

Simple and Intuitive

Cons:

User XP Limited

Spam

Cost to user

Good Use Cases:

mCommerce Apps

Loyalty Apps

Utility Apps

Bad Use Cases:

Complex process driven

SMS

Page 25: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 30

SAP Mobile Platform Master brand for unified platform

In 2013, the SAP Mobile Platform will deliver multiple options for customers:

Deployment

B2E / B2C

App architectures

Agentry Mobiliser SUP

SAP Mobile Platform

Native

Hybrid

Metadata driven

SMS-based

Cloud version

On-premise version

Enterprise edition

Consumer edition Consumer Enterprise

SAP Mobile Platform

iOS Android BlackBerry Windows 8

Page 26: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 31

Mobile Platform Development Tools / SDK

B2E apps

SAP’s end-to-end solution strategy A comprehensive enterprise mobile portfolio

SAP/Sybase build Ecosystem

B2C apps

Partner

Banking Retail

Travel &

hospitality

Media &

entertainment

Telco

Automotive

SAP Mobile Platform

Industry LoB Analytics Partner Custom

Mobile application platform with development tools/SDK and framework

Mobile Enterprise

Application Platform (MEAP)

Mobile Consumer

Application Platform (MCAP)

On-premise SAP HANA Cloud

Sencha

Appcelerator

PhoneGap

Page 27: SAP CodeJam Mobile - Poland 2013

SMP 2.3 Architecture

Page 28: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 33

SMP Architecture Agenda

High Level Software Architecture

Deployment Options

High Availability

Infrastructure Architecture & Security

Page 29: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 34

SMP 2.3 Software Architecture

AGENTRY EDITOR(ECLIPSE

WITH AGENTRY SDK PLUGIN)

SAP SOLUTION MANAGER /SAP CHANGE AND TRANSPORT SYSTEM

(CTS)HP LOAD RUNNER

SERVER

SAP MOBILE WORKSPACE(ECLIPSE

WITH SAP MOBILE SDK PLUGIN)

MANAGEMENT CONSOLE(SYBASE CONTROL CENTER)

SAP MOBILE PLATFORM 2.3

MOBILEBUSINESSOBJECTS(MBO)

HYBRID WEB CONTAINER

NATIVEAPPLICATIONS

ANDROID

BLACKBERRY

iPHONE / iPAD

WINDOWS /WINDOWS MOBILE

ODataInterface

OTHER DEVELOPMENT ENVIRONMENTS

SUCH AS SENCHA, CORDOVA, APPCELERATOR

REST

AGENTRY(SQL/JAVA/

WebServices/File APIs)

AGENTRYAPPLICATIONS

DATABASES

SOFTWARE APPLICATIONS

WEBSERVICES

SAP NETWEAVERGATEWAY

SAP NETWEAVERWITH AGENTRY

PLUGIN

Page 30: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 35

SMP High Level Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

SMS

SMP Platform Components

Page 31: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 36

SMP SDKs and Development Tools

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

Platform Services Mobile SDK’s

Page 32: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 37

SMP Player Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

Platform Services Mobile SDK’s

Page 33: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 38

SMP Player Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native Meta Data

Repository

JCO

JDBC

Agentry Editor

SCC

Java

Integration

Code

Agentry

Runtime

Agentry

Addon

Triggers, Stored Proc

Page 34: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 39

SMP HWC Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

Platform Services Mobile SDK’s

Page 35: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 40

SMP HWC Open Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

SCC

NWGW

Any JavaScript UI

Framework

Page 36: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 41

SMP HWC MBO Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

SCC

SAP Mobile SDK +

Any UI Framework

Cache

DB

JS API

MBO

Operations

Queries

Load

Page 37: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 42

SMP Native Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

Platform Services Mobile SDK’s

Page 38: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 43

SMP Native Open Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

SCC

NWGW

Any Native

Framework

Page 39: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 44

SMP Native ODP Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

SCC

SAP Mobile SDK +

Native

ODP API

OData Proxy

NWGW

Page 40: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 45

SMP Native MBO Application Software Architecture

DB

ERP

RFC

SOAP

WS

RESTful

WS

OData

WS

Player

Hybrid Web

Container

Native

SCC

SAP Mobile SDK +

Native Framework

Cache

DB

Object API

MBO

Operations

Queries

Load

Sync

Page 41: SAP CodeJam Mobile - Poland 2013

SMP 2.3 Deployment Options

Page 42: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 47

Common Deployment Questions

Can you deploy SMP servers on VM infrastructure?

Windows or Linux?

How Many Machines?

What should the Spec Be?

How do we scale?

How do we deal with the DMZ?

What about SSL?

Page 43: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 48

Deployment on a Developer Machine

Laptop Spec:

Mid to High End

Recommended:

Quad Core (64 bit)

8GB Ram

Windows 7 Pro 64bit

40Gb Free

Page 44: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 49

Deployment of a Single Node Development Server

Server Spec:

Mid to High End

Recommended:

Quad Core (64 bit)

8GB Ram

Windows 2008 R2 64bit

40Gb Free

Development Server

Page 45: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 50

Deployment of a Multi Node QA Environment

Quad Core (64 bit)

8GB Ram

Windows 2008 R2

64bit

40Gb Free

Cluster Node 1

Data Tier

Cluster Node 1

Reverse Proxy

Quad Core (64 bit)

8GB Ram

Windows 2008 R2

64bit

100 Gb Free

Page 46: SAP CodeJam Mobile - Poland 2013

© 2011 SAP AG. All rights reserved. 51

MS Cluster in Active Active

Deployment of a Multi Tier Production Environment

Quad Core (64 bit)

8GB Ram

Windows 2008 R2

64bit

40Gb Free Cluster

Node 1

RP1

NON VM MS

CLUSTER AA

Quad Core (64 bit)

8GB Ram

Windows 2008 R2

64bit

100 Gb Free

Cluster

Node 2

Cluster

Node 3

RP2

Load Balancer

Page 47: SAP CodeJam Mobile - Poland 2013

© 2012 SAP AG. All rights reserved. 52

© 2012 SAP AG. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any purpose

without the express permission of SAP AG. The information contained herein may be

changed without prior notice.

Some software products marketed by SAP AG and its distributors contain proprietary

software components of other software vendors.

Microsoft, Windows, Excel, Outlook, PowerPoint, Silverlight, and Visual Studio are

registered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x,

System z, System z10, z10, z/VM, z/OS, OS/390, zEnterprise, PowerVM, Power

Architecture, Power Systems, POWER7, POWER6+, POWER6, POWER, PowerHA,

pureScale, PowerPC, BladeCenter, System Storage, Storwize, XIV, GPFS, HACMP,

RETAIN, DB2 Connect, RACF, Redbooks, OS/2, AIX, Intelligent Miner, WebSphere, Tivoli,

Informix, and Smarter Planet are trademarks or registered trademarks of IBM Corporation.

Linux is the registered trademark of Linus Torvalds in the United States and other countries.

Adobe, the Adobe logo, Acrobat, PostScript, and Reader are trademarks or registered

trademarks of Adobe Systems Incorporated in the United States and other countries.

Oracle and Java are registered trademarks of Oracle and its affiliates.

UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin

are trademarks or registered trademarks of Citrix Systems Inc.

HTML, XML, XHTML, and W3C are trademarks or registered trademarks of W3C®,

World Wide Web Consortium, Massachusetts Institute of Technology.

Apple, App Store, iBooks, iPad, iPhone, iPhoto, iPod, iTunes, Multi-Touch, Objective-C,

Retina, Safari, Siri, and Xcode are trademarks or registered trademarks of Apple Inc.

IOS is a registered trademark of Cisco Systems Inc.

RIM, BlackBerry, BBM, BlackBerry Curve, BlackBerry Bold, BlackBerry Pearl, BlackBerry

Torch, BlackBerry Storm, BlackBerry Storm2, BlackBerry PlayBook, and BlackBerry App

World are trademarks or registered trademarks of Research in Motion Limited.

Google App Engine, Google Apps, Google Checkout, Google Data API, Google Maps,

Google Mobile Ads, Google Mobile Updater, Google Mobile, Google Store, Google Sync,

Google Updater, Google Voice, Google Mail, Gmail, YouTube, Dalvik and Android are

trademarks or registered trademarks of Google Inc.

INTERMEC is a registered trademark of Intermec Technologies Corporation.

Wi-Fi is a registered trademark of Wi-Fi Alliance.

Bluetooth is a registered trademark of Bluetooth SIG Inc.

Motorola is a registered trademark of Motorola Trademark Holdings LLC.

Computop is a registered trademark of Computop Wirtschaftsinformatik GmbH.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer,

StreamWork, SAP HANA, and other SAP products and services mentioned herein as well

as their respective logos are trademarks or registered trademarks of SAP AG in Germany

and other countries.

Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal

Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services

mentioned herein as well as their respective logos are trademarks or registered trademarks

of Business Objects Software Ltd. Business Objects is an SAP company.

Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase

products and services mentioned herein as well as their respective logos are trademarks or

registered trademarks of Sybase Inc. Sybase is an SAP company.

Crossgate, m@gic EDDY, B2B 360°, and B2B 360° Services are registered trademarks

of Crossgate AG in Germany and other countries. Crossgate is an SAP company.

All other product and service names mentioned are the trademarks of their respective

companies. Data contained in this document serves informational purposes only. National

product specifications may vary.

The information in this document is proprietary to SAP. No part of this document may be

reproduced, copied, or transmitted in any form or for any purpose without the express prior

written permission of SAP AG.