Joann O’Brien - Home | Digital Transformation World - Asia O’Brien VP, APIs & Ecosystems TM...
Transcript of Joann O’Brien - Home | Digital Transformation World - Asia O’Brien VP, APIs & Ecosystems TM...
© 2017 TM Forum | 1
Open API
Joann O’BrienVP, APIs & Ecosystems
TM Forum
Vincent SeetHead, Enterprise Architecture
Globe Telecom Inc.
© 2017 TM Forum | 2
TM Forum Open API’s enable…
Business agility and interoperability by supporting an architecture based on modularity and
reuse where capabilities are exposed through industry agreed Open APIs
Partnering for new services the Open APIs enable new products and services to be created
by providing services to, and consuming services from, other business units, subsidiaries and
external 3rd parties from telco and increasingly other verticals.
Simplification of the IT estate by enabling systems rationalisation
Reduced time to market by enabling the configuration and reconfiguration of systems and
capabilities through Open APIs to deliver new business solutions
Open API Manifesto signed by 28 major companies since May 2016 demonstrating strategic alignment with TM Forum Open APIs
© 2017 TM Forum | 3
Open APIs: Growth & Momentum
Signees of TM Forum’s Open API Manifesto
18 months Since Program Launch
50+ Open API specifications
28 Member Companies
Signed Open API Manifesto committing
to deploy TM Forum Open APIs
24 Service Provider Markets deployed &
27 by end of 2017
680+ Member Companies & 4600+
Professionals downloading & using the
TM Forum Open APIs
8 Open Hacks 400+ Hack Participants 70
Innovative solutions
Peer-to-peer Community of 24,000
Professionals
© 2017 TM Forum | 4
What are the TM Forum Open APIs ?
▪ A suite of APIs making it easier to
create
build
and operate
▪ complex, innovative services
▪ REST based
IoT
SmartCity
Smart Grid
NFV
Big Data
Next Gen OSS/BSS
TM Forum
Open APIs
© 2017 TM Forum | 5
End to End Management
EcosystemOnboarding
API
ProductCatalog
API
ProductOrdering
API
UsageManagement
API
BillingAPI
Partner/Service
Onboarding
Service Product
Offering
Product
Ordering/
Activation
Product Usage
and Mediation
Product Invoicing
Settlement
▪ From IoT device management to complex B2B value fabrics
▪ Managing partner arrangements across any business boundary
▪ Onboarding, SLA management, policy management and revenue sharing & settlement
© 2017 TM Forum | 6
Open APIs; Full Specification and Test Kits
http://projects.tmforum.org/wiki/display/API/Open+API+Tablehttp://www.tmforum.org/open-apis/
© 2017 TM Forum | 8
Open APIs Underpin TM Forum’s Digital Ecosystem
Agile
Business & IT(intra-
organization)
Customer
Centricity &
Analytics
✓ Internet of
Everything
Management &
Monetization
✓ Rapid Partnering &
Scaling
✓ Ecosystem Risk
Management
✓ Agile IT & Hybrid End-
to-End Management
✓ Zero-touch Operations
Orchestration &
Management (ZOOM)
✓ Future Mode of
Operations
✓ Digital Business
Transformation
✓ Analytics
✓ Metrics & SLAs
✓ Security & Privacy
✓ Customer Experience Management
✓ Omni-channel Retail, Care, Service
✓ Cognitive / AI Customer Care
Internet of
Everything(inter-
organization)
How do I create and manage
complex digital ecosystems?
How do I transform my business to
be fit for the digital world?
How do I gain and retain customers
in the digital world?
Frameworx &
Open APIs
Open APIs sit at the heart of TM Forum’s core Frameworx toolset and are applicable to a wide range of business issues.
© 2017 TM Forum | 9
Open APIs; Architecting for future business models
PlatformCapabilities
Open APIsIndustry standard data models
Cross-industry best-practice
‘Black-Box’ PlatformVendor/operator specific
InnovativeAgile & flexible
© 2017 TM Forum | 10
Elements of value exchange
CONSUMERSPRODUCERS
OPEN PLATFORM
2016 Parker & Van Alstyne, with Choudary – licensed under Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0).
Open Platforms Represent An Opportunity for CSPs
CSP Capabilities
▪ Multi-tenant capable
▪ Brand & trust
▪ Localization – work
force, knowledge
▪ E2E Security
▪ E2E Management
▪ …
Enabled by Open APIs
Digitalization of more complex B2B ecosystems are likely to follow a similar path to adoption
of cloud computing – cautious, with a focus on flexibility and avoidance of lock-in.
© 2017 TM Forum | 11
Open Platforms Are Dramatically More Profitable
CONSUMERSPRODUCERS
PLATFORM
Platform
Orchestrators
Many make,many sell
Technology
Creators
Make one,sell many
Service
Providers
Hire one,sell one
Asset Builders
Make one,sell one
Low marginal cost
High marginal cost
8x
5x
3x
2x
Based on the concepts and Data from ‘The Network Imperative’ – Libert, Beck & Wind
Multiplier (Price to Revenue Ratio)
© 2017 TM Forum | 12
Creating space for Innovation
Commoditization boundaries
shift & accelerator over time
Create space for innovative
new growth services
© 2017 TM Forum | 13
The Opportunity is Clear…
Digital Service Enabler
Traditional CSP Digital Service Provider
Digital Provider$1.2tn
Additional
PROFIT2016 – 2025*
* Based on World Economic Forum research
Dig
ita
l e
na
ble
me
nt
Digital efficiency
© 2017 TM Forum | 15
BT’s technical availability checker
Building and evolving a service over time
▪ Initially implemented by “wrapping” legacy mainframe middleware component to interrogate an IDMS database.
▪ Migrated over time to be a web services call into Siebel CRM system as we migrated customers to new component
▪ Enhanced to include checks for Broadband speed, digital TV coverage.
Service Mgt Platform
CSS(copper access)
BTW(fibre access)
Digital TV
coverage
Other technical
checks
Manage Product Availability
Customer DN (directory number)
Address id
Selected Options
Time & Date of request
Unique request Reference
Etc…..
checkAvailability(…)
Platform
Access
Layer
Functionality
1 2 3 4
1. Initially used to check copper pairs for availability of Broadband services
2. Added checks to include checks for fibre based services
3. Based on address, availability of digital TV services was returned
4. Could be enhanced to include mobile coverage (3G, 4G, 5G etc.)
© 2017 TM Forum | 16
Wrapping legacy and transforming as you go
Service Mgt Platform
NEO Flow Classic Other SM System
Manage Customer Order
Customer Reference
Product Reference
Selected Options
Time & Date of Order
Unique Order Reference
Etc…..
raiseFulfilmentOrder(…)
modifyFulfilmentOrder(…)
cancelFulfilmentOrder(…)
queryFulfilmentOrder(…)
Platform
Access
Layer
Functionality
With Platform Capabilities
we can perform systems
rationalisation “behind
the scenes” or
wrap/expose legacy
applications in a more
flexible manner
We direct our investments
towards the strategic
components of our
architecture
Over time we migrate
customers, products and
services away from the
legacy in a controlled
fashion, eventually
switching off the legacy
Build the capability, wrap the legacy, and transform the service
© 2017 TM Forum | 17
Manage Progress
M.
Billing Order
M.
Payment
M. Billing
Cust Account
M. Cust
Billing
M. Com’rcial
Compatibility
Manage
Contact Sell Service
Supply Service
Obtain
Payment
Customer
Master File
Logical
Inventory
Physical
Inventory
Customer
M.
Billing Order
M.
Payment
M.
Place
M. Technical
Availability
M. Product
Availability
Manage Order Placement
M. Billing
Cust Account
M. Cust
Billing
M. Customer
Order
M. Cust
Location
M. Com’rcial
Compatibility
M. Supplier
Order
Manage NT Order
M.
Authentication
M. Domain
Activation
M. Eng Task
M.
Appointment
M. App’nt
Routing
M. IT Order
M. Computing
ResourceM. Backhaul M. Access
M. CoreM. Storage
Resource
M. B2B
TxN
Dia
log
ue
M.
Customer
En
gin
ee
r
Vis
it
KC
I
KC
I
KC
I
Cu
st.
Pro
mis
e
Customer & Commercial Management
Resource Management & Infrastructure
Service Execution & Management
Dia
log
ue
Dia
log
ue
M.
PlaceM. Task
Commit Time
Transforming billing within BT
We “wrapped” our
legacy billing systems
with billing capabilities
We migrated customers
and products from the
legacy systems to the
strategic system.
We had a number of
legacy billing systems
which did not have the
flexibility that we
needed to allow us to
price, bundle, discount,
and report as we
required.
Legacy Billing SystemsStrategic Billing System
We replaced the legacy
billing systems with our
strategic billing system
© 2017 TM Forum | 18
• Innovate a Digital SME offer
• Use TMF Open APIs
• Developer Application
Onboarding
IoT Platform : Phase 2 Nice 2017Digital SME: Phase 1 Nice 2016
Catalyst Maturity : Building on previous work
Open IoTPlatform
• Platform Business Model
• TMF Open APIs + Horizontal
Extension
• Support Open Hack
SDN / NFV SDN / NFV / Wireless / IoT device
© 2017 TM Forum | 20
MEF
▪ https://inform.tmforum.org/catalyst/2017/11/catalyst-gets-hip-delivers-ethernet-services-end-end/
© 2017 TM Forum | 22
ONAP – End to End Service Management Platform
ESP
Model
Repository
Service
Catalog
API
Service
Inventory
API
Service
Qualification
API
Service Activation
and Configuration
API
Service
Ordering
API
Service Quality
Management
API
Service Problem
Management API
Usage Mgmt
API
Service Test
Mgmt API
SLA
Management
API
Address
Qualification
API
Onboarding
API
Alarm API
Party API
Party Role
API
© 2017 TM Forum | 23
Monetizing IoE Using APIs
Vincent SeetHead, Enterprise Architecture
Globe Telecom Inc.
© 2017 TM Forum | 24
The IoT Market is Heavily Fragmented
IoT platform providers have created their own little ecosystems working
directly with device manufacturers
Operator Groups have also created their own IoT ecosystems
Conclusion: Many small little fragments of IoT Ecosystems
OAsIS Catalyst Call to Action: Determine the IoT APIs standard that is
best suited for the Telco IoT Applications, IoT Platforms and IoT Devices
to harmonized the IoT Ecosystems
Industry Challenges
© 2017 TM Forum | 25
An Opportunity For TM Forum Community
Call to Action: TM Forum should take the leadership role in
standardizing the APIs for IoT industry. Thereby attracting IoT
manufacturers , service providers and end customers creating a
network effect leading to a vibrant IoT ecosystem
850+Member
Companies
US$2 TrillionRevenue Generated
By Members
5 BillionCustomers
Served
© 2017 TM Forum | 26
The OAsIS Catalyst Solution
Proposed Solution:
Demonstrate the feasibility of running mash-up applications on top of an IoT Platform
that manages Connected Things with different connection protocols from different
device manufacturers, where some can be potentially managed by other IoT
Platforms, through the use of standardized set of IoT APIs.
IoT Platform A
Applications
Connected Things
IoT Platform B
Connected Things
Legend:
OAsIS APIs*
Existing APIs
*OAsIS APIs are APIs defined that is intended
to be standardized as part of TMF Open APIs
© 2017 TM Forum | 27
Key Benefits
By the introduction of OAsIS
APIs you will be able to
• Increase the size as well as
offerings within the IoT
Ecosystem
• Increase the revenue
potential
• Increase the number of
revenue sharing
opportunities by extending
the partner ecosystem
MonetizationVibrant EcosystemBy the introduction of OAsIS
APIs you will be able to
• Increase the number of IoT
applications, platforms and
devices that interworks
• Lower the entry barrier
• Lower the integration time
Market AdoptionBy the introduction of the
OAsIS APIs you can
• Achieve a broader IoT
offering
• One Service
• Multiple IoT
Platforms
• Multiple brands of
Connected Things
• Increase customers choice
• Offer more competitive
pricing
© 2017 TM Forum | 28
The IoT Ecosystem – Message Flows
IoT Platform A
Applications
Connected Things
IoT Platform B
Connected Things
BSS/OSS
Marketplace
IoT Platform
Administrator
Registration
Authentication
Send Data
Send Heartbeat
Activate
Control Thing
Deactivate
Assign Thing
Usage Metering
Suspend Thing
Thing Notification
Data on Thing Control Thing
Service Resource Product
Offer
Manual Device
Onboarding
OSS
Administrators
Product
Managers
Configure
Service &
Resource
Control Thing
Send Data
Control Thing Send Data
Configure
Product
Configure
Offer
IoT Customer
Use Application Browse Offer
Buy Offer
Pay Bill
Send
Notification
IoT Customer Service Provider
Use Thing Request
Repair
Raise
Customer
Order
Prep Discover Buy Use Pay Service Resolve Retain Exit
© 2017 TM Forum | 29
OAsIS APIs
▪ OAsIS APIs and their corresponding Device Data Models (Based on FIWARE) should cover the communications between an “Actor” and a “Device”, and not a direct M2M.
▪ An “Actor” can be any system that needs to interact with a device, either to discover it, to read from it, or control it in any way.
▪ A “device” is anything thatallows a “Connect Thing” to be made available for interaction. Hence, it can be:
A physical or virtual Device
A Device Gateway
An IoT Platform
Any combination of the above
Any complexity (a laptop or a switch could be seen as a “device”!)
▪ In all cases, the same set of OAsIS APIs should be used
ActorDevice
GatewayDevice
IOT
Platform
ActorDevice
GatewayDevice
Actor Device
Actor DeviceIOT
Platform
Red:
Proposed APIs
© 2017 TM Forum | 30
OAsIS APIs Categorisation
▪ Device Creation, Discovery & Registration (Administrative API) Communications
Authentication and Authorization must be considered
▪ Device Description Retrieval (Platform / Device Related API) Retrieving the metadata for a device
Fixed Properties, Modifiable Properties, Changing States, Events, Actions and Communication
▪ Active Device Interaction (Technical API) (Requesting) Changing State
Modifiable Properties
Triggerable Actions
▪ Passive Device Interaction (Technical API) Events (Registration and Reception)
(Receiving) Changing State
Infrastructure APIs (mainly Administrative API)
▪ Administration, User Management, Security, Statistics, …
© 2017 TM Forum | 31
OAsIS APIs Calls (Extracted Examples)
API
Category
…
API Verb Target
Device
Goal Attributes
Discovery GET /api/v0/entities/
{entityId}
Any List of “visible” devices from a given user from
(under) a given device UID (or patternUID);
Optional parameters configure the answer
M: User; UID (or pattern UID)
O: Type; format; limit; coords…
Description
Information
Retrieval
GET /api/v0/entities/
{entityId}/attrs
Any List attributes data for given entity id (other data
suppressed). Optional parameters configure the
answer
M: User; UID
O: options;
Active
Device
Interaction
PUT /api/v0/entities/
{entityId}/attrs/{
attribute}/value
Any with
modify-
able
attribute
Set specific attribute of given entity id. M: User; UID; attribute; value
Passive
Device
Interaction
GET /api/v0/subscri
ptions
Any sub-
scribable
List all subscriptions currently known to the API
instance;
O: offset; limit
M: JSON Device Data Model in
request
Passive
Device
Interaction
POST /api/v0/subscri
ptions
Any sub-
scribable
Create new subscription. Subscription id is
handed back in the 'Location' header
No arguments but JSON
Device Data Model in request
…Legend: M= Mandatory; O= Optional; Answer= always a JSON Device Data Model + Status code 200 if OK)
© 2017 TM Forum | 32
Device Data Models Definition
▪ A “device” have specific features, that are illustrated here below:
▪ Note that Changing State could also be seen as “Properties” (as “changeable” but not modifiable)
▪ Another word for Triggerable Actions is “Commands”
Device
Fixed
Properties
Modifiable
Properties
Changing
State
Communication
Events
Covered in
FIWARE
Partly Covered
in FIWARE
Legend
Triggerable
Actions
© 2017 TM Forum | 33
OAsIS IoT Device Data Model - Described
▪ The Device Data Models is transferred in JSON format via the OAsIS APIs
human readable
allows mandatory and optional fields, hence allowing extensions as needed
easily leveraged by ReST APIs (OAsIS APIs / TM Forum Open APIs)
NOTE : Further OAsIS IoT Device Data Model details can be found in official submitted documentation to TM Forum
▪ Example of a Device Data Model for a Gantry Gate of a Parking
Lot leveraging the OAsIS APIs{
"id": "SmartCityParking",
"type": "parkingdevice",
"description": {
"type": "string",
"value": "Smart City Parking"
},
"entrygantry": {
"type": "String",
"value": "DOWN"
}
}
▪ Example of Device Data Model that is sent via the OAsIS APIs
from one IoT Platform to another IoT Platform for a lamp
managed by such{
"description": {
"type": "string",
"value": "Lablamp"
},
"id": "Lablamp",
"type": "ericssondevice",
"status": {
"type": "boolean",
"value": "off"
}
}
© 2017 TM Forum | 34
Device Data Models in the Catalyst Demos (Extract)
Smart
Context
Device Type Attributes Comments
Home Lightbulb ericssondevice Status On/Off Read; Modify to switch
Home Fan ericssondevice Status On/Off Read; Modify to switch
Home Door sensor ericssondevice Status Open/Closed Read; Register to get changing status
event
Parking Park House parking Name Just to group logically devices
Parking Entry & Exit Gantry gantry Position Open/Closed Modify to switch
Parking RFID Reader (In/Out) idreader Event: uID / Ø;Time Register to get RFID event
Parking LCD Display display Available; Text Availability test; Publish specific Text
Parking Distance Sensor(1/slot) sensor Distance Turned into busy/free parking space;
Register to get changing status event
Any* Motion Sensor sensor Event: 0 or 1;Time Register to get motion event
Any* Device with switch switch Status On/Off Read; Modify to switch
*In Italic gray, created for simulation but not used in Catalyst
© 2017 TM Forum | 35
FIWARE Functions: Verbs & Paths
List Entities --- GET /entities
Create Entity --- POST /entities
Retrieve entity --- GET /entities/{entityId}
Retrieve Entity Attributes --- GET /entities/{entityId}/attrs
Update or append entity attributes --- POST /entities/{entityId}/attrs
Update existing entity attributes --- PATCH /entities/{entityId}/attrs
Replace all entity attributes --- PUT /entities/{entityId}/attrs
Remove entity --- DELETE /entities/{entityId}
Attribute by Entity Id --- /entities/{entityId}/attrs/{attrName}
Update Attribute Data --- PUT /entities/{entityId}/attrs/{attrName}
Remove a single attribute --- DELETE /entities/{entityId}/attrs/{attrName}
Get Attribute value --- GET /entities/{entityId}/attrs/{attrName}/value
Update Attribute Value --- PUT /entities/{entityId}/attrs/{attrName}/value
Retrieve entity types --- GET /types
Retrieve entity type --- GET /types/{entityType}
Retrieve Subscriptions --- GET /subscriptions
Create Subscription --- POST /subscriptions
Retrieve Subscription --- POST subscriptions/{subscriptionId}
Update Subscription --- PATCH /subscriptions/{subscriptionId}
Remove Subscription --- DELETE /subscriptions/{subscriptionId}
15 Parameters
4 Parameters
1 Parameter
4 Parameters
2 Parameters
2 Parameters
2 Parameters
0 Parameters
2 Parameters
1 Parameters
1 Parameters
1 Parameters
1 Parameter
3 Parameters
0 Parameters
3 Parameters
0 Parameters
0 Parameters
0 Parameters
1 Parameters
© 2017 TM Forum | 36
Functions implemented in Catalyst
List Entities --- GET /entities
Create Entity --- POST /entities
Retrieve entity --- GET /entities/{entityId}
Retrieve Entity Attributes --- GET /entities/{entityId}/attrs
Update or append entity attributes --- POST /entities/{entityId}/attrs
Update existing entity attributes --- PATCH /entities/{entityId}/attrs
Replace all entity attributes --- PUT /entities/{entityId}/attrs
Remove entity --- DELETE /entities/{entityId}
Attribute by Entity Id --- GET /entities/{entityId}/attrs/{attrName}
Update Attribute Data --- PUT /entities/{entityId}/attrs/{attrName}
Remove a single Attribute --- DELETE /entities/{entityId}/attrs/{attrName}
Get Attribute Value --- GET /entities/{entityId}/attrs/{attrName}/value
Update Attribute Value --- PUT /entities/{entityId}/attrs/{attrName}/value
Retrieve entity types --- GET /types
Retrieve entity type --- GET /types/{entityType}
Retrieve Subscriptions --- GET /subscriptions
Create Subscription --- POST /subscriptions
Retrieve Subscription --- POST subscriptions/{subscriptionId}
Update Subscription --- PATCH /subscriptions/{subscriptionId}
Remove Subscription --- DELETE /subscriptions/{subscriptionId}
Remove Subscriptions --- DELETE /subscriptions/{subscriptionId}/really/all
Update entity attributes values --- PATCH /entities/{entityId}/attrsImplemented
Not implemented
Added
Path reused for added function (blue one)
7 of 15 Parameters
1 of 4 Parameters
1 Parameter
1 of 4 Parameters
2 Parameters
2 Parameters
2 Parameters
0 Parameters
2 Parameters
1 Parameters
1 Parameters
0 of 1 Parameters
0 of 1 Parameter
3 Parameters
0 Parameters
2 of 3 Parameters
0 Parameters
0 Parameters
0 Parameters
1 Parameters
Partly used in demo
Not used for demo
„All“ used in demo
© 2017 TM Forum | 37
Readiness For Commercial Launch & Next Steps
1
• Continue to work on the initial set of OAsIS APIs through the TM Forum Open API working group
• In collaboration with FIWARE for the various extension
2
• Continue to expand on the initial list of OAsIS IoT Device Data Models through the TM Forum Open API working group
3
• Complete the list and definition of the mapping between various Device Gateways in addition to MQTT example in this catalyst
© 2017 TM Forum | 38
Thank You
Joann O’Brien
VP, APIs & Ecosystems
TM Forum
Next Steps:
Read the Getting Started information at:
https://www.tmforum.org/open-apis/
• Download the Open API eBook
• Enabling Business Strategy through Open APIs
• Download the Open API Poster
• Join the API project team
• Take Open API Fundamentals Online Training
• Self Certify your APIs
Pierre Gauthier
Chief API Architect
TM Forum