Service as-a-software

Post on 15-Jul-2015

2.650 views 0 download

Tags:

Transcript of Service as-a-software

Service-as-a-Software, (the other SaaS)Jean-Jacques Dubray, Ph.D. Founder, Convergence Modeling LLC @metapgmr jean-jacques.dubray@convergencemodeling.com

Joshua Robin, Mass DOT

• In 2010, Joshua Robin, from the Massachusetts Department of Transportation delivered a seminal talk at eGov 2.0 2010 detailing what happened when the DOT started sharing its data (schedules and real time data) as APIs • Within hours developers

started to build apps • Lots of apps, for different

groups of people and usage patterns

A Profound Transformation is Happening …

Operating System

Operating System

Files

Users[Roles]

Onboard

Apps

The role of an operating System it to govern a (small) number of outcomes: add user, apps, files, login user, start app, …

AirBnB

Actions

(Physical) Service

Users[Roles]

Onboard

Rooms

Search Book Pay …

A set of machine-readable instructions

Software

An orchestration of resources and skills that governs a consistent outcome of activities

Service

AirBnB

Rooms

ActionsUsers

Service-as-a-Software

Onboard

Apps

Search Book Pay …

Service-as-a-Software

is about enabling the consumption of a (physical) service from a set of machine-readable instructions

Why is Service-as-a-Software so important today?

Context, the contexts in which services are consumed is nearly endlessWe never consume a service without a purpose…

and today, end users expect that they will be able to consume services in the context of the activities they want to accomplish

Search is no longer “cool”, in fact it is highly inefficient

actor

Compare how we consume services today…

search

purchase

travel

Activity: I want to visit Sydney

do

1

2

34

Commerce is being Integrated with the Activities People do

actor

search

travel

Activity: I want to visit Sydney for a week in December

do

A

B

4

purchase

3

1

select QoS

2pay

C

reserveD

book

Getty Images Connect APIs

Pictures

ActionsUsers

Onboard

Search Buy Download …

Photographers Media Advertising Agencies

Source: Connect by Getty Images

News Writers can Consume Getty Images’ Service Directly from the Activity they Perform

actor

search

Activity: As a journalist, I want to spend my time writing news articles

publish

AB

3

purchase

1

write article

2select picture

Source: Connect by Getty Images

S D K

Service-as-a-Software

This Transformation has Profound Economic Implications

Sales

dimensions

Sales of single product across all dimensions

Product variants adapted forall dimensions

Sales of variants perdimension

APIs are as important as Business Processes (once were)

Goeffrey Moore: Core vs Context

Core Context

Mission Critical

Enabling

Innovation

Differentiation Standard

Commoditized

How did we get here ?

• Libraries Black boxes

• Limited Data Communications Good Enough

• Business Integration APIs + Apps

• Monolithic Architecture Composite (OAuth)

• Difficult to Scale Cloud

• Business Model Monetization

What just happened? 2007-2010

Anyone Remembers Numerical Recipes?

If there is a single dominant theme in this book, it is that practical methods of numerical computation can be simultaneously efficient, clever, and — important — clear. !The alternative viewpoint, that efficient computational methods must necessarily be so arcane and complex as to be useful only in "black box" form, we firmly reject

Source: Wikipedia

Black Boxes or Libraries?

• As it turned out, the 1980s were fertile years for the "black box" side, yielding important integrated environments like MATLAB and Mathematica

!

!

• Eventually the authors of Numerical Recipe recognized that the book was increasingly valued for their explanatory text than their code examples

Source: Wikipedia

The Web vs The Fallacies of Distributed Computing

1. The network is reliable

2. Latency is zero

3. Bandwidth is infinite

4. Network is Secure

5. Topology doesn’t change

6. There is one administrator

7. Transport Cost is zero

8. The Network is homogeneous

Source: Tim Bray, 2009

Web connections are brief

Web connections are good enough with notable exceptions (e.g. HFT)

Web is good enough

Topology issues are hidden by HTTP

Web may no longer be good enough

Web is (mostly ;-) decentralized

Web is good enough

Finally, yes, the network is!

From Business Integration … to APIs

• EDIFACT (1987) • Convergence between UN and US/ANSI (UN/EDIFACT) • syntax rules to structure data • interactive exchange protocol (I-EDI) • standard messages (multi-country, multi-industry)

Source: David Webber & Anthony Dutton

Computation of the status of a Business Transaction Activity

Source: ebXML BP 2.0.4

… APIs

Software Architecture has Undergone a Tectonic Shift towards Composite Applications

App1

App2

App3

Service Interface

Service Interface

App4

App6

App5

Mon

olith

ic

App

ServiceA

ServiceC

ServiceB

Com

posit

e20

13

20

07

Monetization is the “invisible hand” … … it is not just about distributed computing

search

Activity: As a journalist, I want to spend my time writing news articles

A

B

purchase

S D K

Service-as-a-Software

Are we there yet?

There is still lots of Technical Problems to Solve Mike Amundsen: How to Create Reusable APIs?

• Stop mapping semantics to protocols • Stop hiding update & query rules in human-readable

documentation • Stop requiring devs to be protocol gurus • Stop making everyone use the same object model • Stop describing services as single instances • Stop baking workflow into client code • Stop breaking others people's code • Stop making client devs re-code & re-deploy at random • Stop adding single points of failure • Stop pretending the Web defies the laws of probability and physics

Semantics

Protocols

Object Model

Message

Workflow

Network

Architecture

Where are the hot spots?

Composition / Orchestration

Management Apps

Security Reliable Messaging Transactions

Messaging

Description

ProtocolHTTP

Swagger, WADL, RAML …

JSON, JSON-Schema

ad hoc ad hoc

Hypermedia

API Gateways SDKs

Monetization

Four Principles to Succeed at SOA -> APIs

1.  Service Interface shall be decoupled from Service Implementation

2.  All Business Logic shall be normalized

3.  Changing a service shall be easy

•  Changes shall be hidden to service consumers until they are ready

•  Changes shall be easy to consume when the consumer is ready

4.  Service Versioning shall be based on Compatibility

1

2

3

4

End user

3rd Party Developer

PlatformOperator

Service Owner

Resource Owner(e.g. Digital Asset Producer,...)

trusts

trusts

trusts

trusts

buys assets

buys apps, goods

stores, shares data

utilizes end-user data

utilizes end user data(e.g music lists, eBooks, pictures…)

utilizes end-user data

The “Platform” will come into Play

Actions

Apps

Search Book Pay …

Rooms

Conclusion

!

We Need to Revisit the Way we Think about Services

• Think Service-as-a-Software • Operating System • Services govern Outcomes • On boarding

• Think about services in the broader context of the “Platform” • Platform Oriented Architecture • Activities vs search

• Think Topology • Technology enablers like APIs, Mobile Computing, and Cloud are redefining our societies

• Education: MOOCs • Commerce: Zulily • Presence (Social Media) • …

• We are at the onset of a massive Economic Transformation • Accessible to every human, in the most remote villages • With the potential to optimize and enrich everything we do