the layers above

8
The Layers Above Dr. Vishal Sikka Chief Technology Officer SAP Next programming models for enterprise softw

Upload: posy

Post on 12-Jan-2016

32 views

Category:

Documents


0 download

DESCRIPTION

The Layers Above. Next programming models for enterprise software. Dr. Vishal Sikka Chief Technology Officer SAP. The primary business we are in. ~$75bn. Business User Solutions SME Solutions Business Process Platform. ~$32bn. Industry Solutions SAP Business Suite. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The Layers Above

The Layers Above

Dr. Vishal Sikka

Chief Technology Officer

SAP

Next programming models for enterprise software

Page 2: The Layers Above

SAP AG 2007, Vishal Sikka / 2

The primary business we are in

2005

Industry SolutionsCRM, SRMSCM, PLM

Industry SolutionsCRM, SRMSCM, PLM

#1 ERP

~$32bn

2010E

~$75bn

Business UserSolutions

SME Solutions

Business ProcessPlatform

Industry Solutions

SAP Business Suite

Industry Solutions

SAP Business Suite

30 Industries, 120 Countries, 44k Customers: VL, L, M, S, VS

Page 3: The Layers Above

SAP AG 2007, Vishal Sikka / 3

Frontend Characteristics Highly Distributed, anywhere

anytime usage User-centric, Collaborative Implicit, Unstructured Exception Driven, Ad hoc,

Dynamic

Services

Events

Broad coverage means serving many different app characteristics

HIGHLY SCALABLE RELIABLE BACK ENDS

Business Users

Wireless Mobile End Points

Line of BusinessServers

eCommerce

eBilling

Shop floor systems Warehouse systems

HIGHLY AGILE AND INTELLIGENT FRONT ENDS

Devices/SensorsRFID

Sales, Distribution,Order Mgmt

Service/Call Center

EnterpriseCRM, SRM

EnterpriseCore ERPSCM, PLM

Manufacturing

Master Data

Financials

Office users

Backend Characteristics Structured, well-defined flows Process-driven, Transactional Reliable, Efficient, Scalable Mature, slower rate of change Centralized Core, ERP based

Page 4: The Layers Above

SAP AG 2007, Vishal Sikka / 4

The Web and Business Software

A new architecture for business software is once again emerging SOA seemed like APIs revisited; SaaS covers many more aspects

– Ubiquity of access and flattening

– Pervasive Read & Write on the public web; only early signs in the private web

– New deployment and economic dynamics

New Hardware dynamics– Multi-core, power, Network latency/throughput, Memory latency/throughput

– Petascale data centers, power, highly optimized operations and distribution

But how does this impact the fundamental underlying issues? Building for a wide range of business activities

Ability to change, extend and integrate software systems

Better automation and intelligence

Partitioning for optimal execution

– Local ↔ Global access; Change ↔ Share

– 1000 users on an ec2 blade vs. large multi-tenant databases

What are the governing dynamics of how we program next?

Page 5: The Layers Above

SAP AG 2007, Vishal Sikka / 5

The Web’s influence on Programming Models

The way we program is largely unchanged from the past

Applications still lag hardware by 7 years or so (Patterson)

Programming languages evolve routinely– Roughly a major language every 10 years (Kay)

– Several minor ones in the interim

Programming models evolve a little faster– As domain-specific libraries, APIs, or language extensions

UI technologies evolve frequently

And Applications often outlive all this– Legacy and change management become islands of (expensive) expertise

Only early signs of nextgen models

Page 6: The Layers Above

SAP AG 2007, Vishal Sikka / 6

The Current Situation: Layers and Islands

Many different languages/models, Many different run times– Disparate languages and models that are not designed to work together

– Each language/model and run-time is a silo e.g., SQL, Flex, …

– Each layer brings benefits of isolation/separation of concerns, but

– Also often costs in performance

“Design Time” Inefficiency– Different tools and models for different parts of the application suite

– Developers often serve as the glue between these languages and models

– Much code and effort spent on translating between layers/models- E.g., read SQL into BO, build Business Process, construct UI from BO, write report

“Run-time” Lack of Optimization– Different containers to run different models and languages

- SQL databases to execute SQL, Process integration servers for bpm, etc.

– Each container optimized for specialized language/model; missing run-time interoperability

– Missing cross-level optimization leads to landscape complexity

How do we get over this false divide? i.e. design for both flexibility and optimization?

Page 7: The Layers Above

SAP AG 2007, Vishal Sikka / 7

Desiderata for the next enterprise programming model

Design Time– As simple as possible; wide variety of developer types

– Match highest level of abstraction for audience and each layer

– A family of integrated (specialized) domain-specific languages and tooling conveniences

– A powerful GLUE that binds these languages together

Run-Time– Specialized run-times that work in concert (based on GLUE)

– Run in specialized containers or consolidated containers, as needed

– As optimized as possible

– Match lowest level of delivery available in the stack

Integration with Legacy– Ensure NGPM subsumes existing legacy models and languages

– Build legacy programming models natively into the GLUE

– Build legacy programming languages, e.g. Java, ABAP into the GLUE

Page 8: The Layers Above

SAP AG 2007, Vishal Sikka / 8

So…

Who will build this?