36
Service-as-a-Software, (the other SaaS) Jean-Jacques Dubray, Ph.D. Founder, Convergence Modeling LLC @metapgmr [email protected]

Service as-a-software

Embed Size (px)

Citation preview

Page 1: Service as-a-software

Service-as-a-Software, (the other SaaS)Jean-Jacques Dubray, Ph.D. Founder, Convergence Modeling LLC @metapgmr [email protected]

Page 2: Service as-a-software

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

Page 3: Service as-a-software

A Profound Transformation is Happening …

Page 4: Service as-a-software

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, …

Page 5: Service as-a-software

AirBnB

Actions

(Physical) Service

Users[Roles]

Onboard

Rooms

Search Book Pay …

Page 6: Service as-a-software

A set of machine-readable instructions

Software

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

Service

Page 7: Service as-a-software

AirBnB

Rooms

ActionsUsers

Service-as-a-Software

Onboard

Apps

Search Book Pay …

Page 8: Service as-a-software

Service-as-a-Software

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

Page 9: Service as-a-software

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

Page 10: Service as-a-software

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

Page 11: Service as-a-software

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

Page 12: Service as-a-software

Getty Images Connect APIs

Pictures

ActionsUsers

Onboard

Search Buy Download …

Photographers Media Advertising Agencies

Source: Connect by Getty Images

Page 13: Service as-a-software

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

Page 14: 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

Page 15: Service as-a-software

APIs are as important as Business Processes (once were)

Goeffrey Moore: Core vs Context

Core Context

Mission Critical

Enabling

Innovation

Differentiation Standard

Commoditized

Page 16: Service as-a-software

How did we get here ?

Page 17: Service as-a-software

• 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

Page 18: Service as-a-software

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

Page 19: Service as-a-software

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

Page 20: Service as-a-software

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!

Page 21: Service as-a-software

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)

Page 22: Service as-a-software

Source: David Webber & Anthony Dutton

Page 24: Service as-a-software

Computation of the status of a Business Transaction Activity

Source: ebXML BP 2.0.4

Page 25: Service as-a-software
Page 26: Service as-a-software

… APIs

Page 27: Service as-a-software

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

Page 28: Service as-a-software

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

Page 29: Service as-a-software

Are we there yet?

Page 30: Service as-a-software

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

Page 31: Service as-a-software

Semantics

Protocols

Object Model

Message

Workflow

Network

Architecture

Page 32: Service as-a-software

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

Page 33: Service as-a-software

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

Page 34: Service as-a-software

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

Page 35: Service as-a-software

Conclusion

Page 36: Service as-a-software

!

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