Share
Embed
Transcript
39 slides
-
PLATFORM OF TRUST APPLICATION DEVELOPER WORKSHOP 26th March 2019, Tampere,
CrazyTown Platformoftrust.net #dataflows #dataliikkuu @PlatformOfTrust -
Hello! I am Jarkko Moilanen I am here because I’m
the Developer Program Lead at Platform of Trust. 2 @Jarkko_moilanen, Phone: +358 40 535 9066, Email: [email protected] -
Hello! I am Nazia Hasan UX/DX engineer. UI - UX
Designer Interest: DX design - API Management & Usage 3 @NazarahTheCat -
Platform of Trust Slack 4 Get invitation to Slack from
platformoftrust.net/set-subscription -
Future Platform of Trust developer events • 26.3.2019 Tampere -
App developer workshop (now) • 9.5.2019 Helsinki - Data Product Canvas workshop • 9/2019 Tampere • 11/2019 Helsinki All events can be found from platformoftrust.net/events Developer Portal release 10th April developers.oftrust.net 5 -
Platform of Trust is a data linking platform with marketplace
to create better living environment -
FUNDAMENTAL BENEFITS OF PLATFORM OF TRUST Thanks to Platform Decrease
IT-integration costs Integrate into the platform only once Get rid of vendor locks Utilize all parties connected to the platform Develop applications faster Shared harmonized data models and application components Your data is yours Manage your data and parties connected to that thru digital twin frameworks -
ULTIMATE BENEFITS OF PLATFORM OF TRUST Thanks to data More
consumers More parties, more data users, more value in the whole value network More data for AI, ML, VR, AR, etc Benefit from new technology enablers Convert data to revenue Data has value in modern economy Conquer new markets Thru global platform and market place to create better living environment -
For Application developers 10 The Platform of Trust brings you
• Business community of biggest real-estate owners (Senaatti, Kojamo…). Expanding to global 2019-2020 • Hundreds of thousands of end-users • One API to all data - API driven developer experience • End-user identity and access management in platform • Market place to promote and sell your apps • Easy access to harmonized data….what data? -
What data? Lightning, doors, windows, floors, heating, water, tenants, people,
temperature, maintenance, construction phase, contracts, statistics, reports, sensors... Digital Twin of the building -
ROADMAP idea commu nity funding try & learn JUNE’19 do
busines s market place scale cross-industry global 2017 2018 2019 2020 -
Frictionless End-to-End Developer eXperience Developer eXperience is built together to
maximise ease of use of platform capabilities 14 Almost Harmonised data out Data in -
Developer Experience Why you should care? Developers change the world
- ease of use is crucial 1 -
100 000 customers, handles 100 billion worth transactions, creates 1,5
billion revenue with 1 API Stripe allows individuals and businesses to receive payments over the Internet. Stripe provides the technical, fraud prevention, and banking infrastructure required to operate on-line payment systems Est. 2010 -
40 000+ customers create 400 million revenue with 5+ APIs
Why did they succeed? Twilio allows software developers to programmatically make and receive phone calls, send and receive text messages, and perform other communication functions using its web service APIs. Est. 2008 -
Building a “developer-first” product that makes it easy for companies
and developers to accept payments immediately. “We’ve all seen how APIs and developers have transformed entire industries” 1,5 billion revenue with 1 API 713 million revenue -
“ Product and customer-centric approach will take you to success,
but developer-centric will make you the industry leader 19 Jarkko Moilanen -
Built with Developer centric approach Platform of Trust offers excellent
Developer eXperience ….so you don’t need to worry about that. -
Data product End-to-end DX 21 Integrate and harmonise data Publish
to market place Discover data products Connect app to data Test Sandbox, translator Production Test Sandbox App product Publish to market place Market place -
API-first - GUI & libraries next 22 Data Product CLI
support App building CLI support API Product CLI support Code Libraries (python, JS) + additional CLI tools Data Product GUI support App building GUI support API Product GUI support Q1 / 2019 Q2 / 2019 Q3 / 2019 Q4 / 2019 Additional GUI tools -
Developer tools 24 Sandbox with data Getting started guides API
Console (coming Q2) API Documentation With code examples Use case descriptions Data Integration skeleton Data models With webapp ... developer.oftrust.net -
Sandbox 25 The Platform of Trust Sandbox environment is intended
to be used by developers to test their applications and data product integrations, prior to production, in a safe and isolated manner. • Contains all platform APIs - https:/ /api-sandbox.oftrust.net/ • All API Documentation examples against sandbox • Sample data - all data products must provide sample data • Periodic environment reset • No SLA -
API Docs (WIP) 26 All APIs with code examples in
one address docs.oftrust.net Looking for JS, Java and Python code example contributions https:/ /github.com/platformoftrust/docs/issues -
Guides - 101 (WIP) 27 We provide multiple simple 101
type step by step guides with code examples to get you started: • Data Product Guide • Setup Translator • Manage Digital Twins • Use standard data models • Build Apps • …. -
App development process 29 Decide what the end-user wants and
needs? Find suitable data products, get access, learn, build logic and test Register and configure app Publish app to the market place 1 2 3 4 Business Technology 58% - > 20% 30% of your time 1% 1% Canvas User stories Sandbox Market place Product API Broker API Platform of Trust Product API Platform of Trust Product API -
Data query App requests data with standard endpoints and params.
Details found from Data Product Translator Original source data App Data Broker API Translator converts original source data to standard format Ontologies defined by Platform of Trust Based on the ontologies expanding set of schemas are defined 1 2 3 Data is passed to application -
{ "@context": "https://schema.org/", "@type": "collection", "ItemList": [ { "@context": "https://platformoftrust.github.io/standards/contexts/product.jsonld",
"@type": "Product", "@id": "https://api-sandbox.oftrust.net/product/v1/products/prh-business-identity-data-product", "productCode": "business-identity-test", "dataContext": null, "parameterContext": "https://platformoftrust.github.io/standards/contexts/product-parameters.jsonld", "translatorUrl": "http://translator-test-backend-app/business-identity", "name": "PRH Business Identity", "organizationPublicKeys": null, "description": "Returns business information from the PRH Open Data API", "imageUrl": null } ] } curl https://api-sandbox.oftrust.net/product/v1/products PRODUCTS API -
{ "@context": "https://platformoftrust.github.io/standards/contexts/product.jsonld", "@type": "Product", "@id": "https://api-sandbox.oftrust.net/product/v1/products/business-identity-test", "productCode": "business-identity-test", "dataContext":
"https://platformoftrust.github.io/standards/contexts/product-data.jsonld", "parameterContext": "https://platformoftrust.github.io/standards/contexts/product-parameters.jsonld", "translatorUrl": "https://translator-test-backend-app/business-identity", "name": "Business identity", "organizationPublicKeys": [ { "url": "https://example.com/example.pub", "type": "RsaSignature2018" } ], "description": "Test translator business information", "imageUrl": null } curl https://api-sandbox.oftrust.net/product/v1/products/business-identity-test Available parameters PRODUCTS API -
curl -X POST https://api-sandbox.oftrust.net/broker/v0.1/fetch-data-product \ -H "Content-Type: application/json" \ -H
"X-Pot-Signature: Ioma1gqOVFUBrXiziWSCLqBG4vFozG3YgzPzillNip0=" \ -H "X-Pot-App: 379780e4-b511-4fa9-aef8-bda9bd58ab89" \ -H "X-Pot-Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJ...DVs5aaf" \ -d '{ "timestamp": "2019-02-27T14:38:00+02:00", "productCode": "business-identity-test", "parameters": { "businessId": "1234567-8" } }' Live coding example coming next time we meet... From the “parameterContext” BROKER API -
App development process 36 Decide what the end-user wants and
needs? Find suitable data products, get access, learn, build logic and test Register and configure app Publish app to the market place 1 2 3 4 Business Technology 58% - > 20% 30% of your time 1% 1% Canvas User stories Sandbox Market place Product API Broker API Platform of Trust Product API Platform of Trust Product API -
Task 37 5-7 person groups, time until 14:45 - show
and tell 1. Describe your app development process step by step a. Use some realistic example b. How the app is designed, developed, distributed? 2. Identify capabilities you expect from platform a. Is the capability API or GUI driven? 3. Identify open questions in the process docs.oftrust.net