SlideShare ist ein Scribd-Unternehmen logo
1 von 61
Downloaden Sie, um offline zu lesen
GraphQL
Lessons Learned
Bernd Schönbach, Patrick Surrey
LeanIX GmbH
Agenda
2
Introduction
• About	us
• About	LeanIX
• About	GraphQL
Why	GraphQL?
GraphiQL
API	Design
GraphQL Client	Design
Apollo
Mutations
N	+	1	Select	Issue
Exception	Handling
About Us
3
Patrick	Surrey Bernd	Schönbach
About LeanIX
4
5
• Shorter	time	to	market
• Real-time	big	data	insights
• Efficient	scalability
• Exceptional	user	experience
• Consistent	channels
• Integrated	workflows
• …
More
• APIs
• Devices
• Sensors
IT	Architectures	are	more	important	than	ever	before
LeanIX	is	the	most	comfortable	solution	– as	SaaS
6
Available	Integrations
7
Industrials	&
Manufacturing
Financial	&
Insurance Consumer
Energy	&
Materials Pharma
Travel
Logistics
Media
Telecoms
INTERNATIONAL
EXPANSION
Well-known	brands	of	all	industries	trust	in	LeanIX
LeanIX	is	based	on	a	modern	Microservices Stack
8
Pathfinder
Postgres
Elasticsearch
ArangoDB
Pathfinder	UI
Single	Page	App
•Angular	(2)
•Typescript
Backend	Services
•GraphQL or	REST	API
•oAuth2	/w	JWT
•Swagger	API	Docs
•Event-Bus	(Webhooks)
Resources
•No	sharing	across
services
•Deployment	with
Docker
Web-
hooks
MTM Export
Image
s
Survey Metric
Postgres
Kafka
Postgres
Shibboleth
PhantomJS
Postgres
Elasticsearch
InfluxDB
“Platform	Services”
GraphQL
About GraphQL
9
10
“A query language for your API”
http://graphql.org/
11
History
• 2012	native	mobile	client	for	News	Feed
• Early	2015	announced	publicly	
(https://www.youtube.com/watch?v=9sc8Pyc51uU)
• Sep.	2015	officially	open	sourced
• Nov.	2016:	Many	more	users
12
Basic	idea
Server
WHAT	is	
available
Client
WHICH	data	
is	needed
1.	Schema
2.	Data	requirements
Java,	Node,	Ruby,	
PHP,	Go,	Scala,	
.NET	…
Simple	HTTP-Client
http://graphql.org/code/
Why GraphQL?
13
Why GraphQL?
14
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
15
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
16
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
17
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why GraphQL?
18
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name type release
alias description
...on Application {
lifecycles {}
relToSuccessor {}
relToPredecessor {}
relToBusinessCapability {}
relToUserGroups {}
[...]
}
}
Why GraphQL?
19
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name type release
alias description
}
Why GraphQL?
20
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name
}
query {
id name alias
}
query {
id name description
}
Why GraphQL?
21
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
query {
id name
...on Application {
lifecycles {}
relToBusinessCapabilities {}
relToUserGroups {}
}
}
GRAPHIQL
GraphiQL –Interactive in-browser	GraphQL IDE
23
Run	queries
Integrated Explore	API
See	result
GraphiQL
24
• Available here:	https://github.com/graphql/graphiql
• Great	way to document and explore the API
• Very helpfull during devolpment,	e.g.	for quickly testing the API
à Get it up and running from day one!
API	DESIGN
Connections	– Inspired	by	Relay	Framework
26
{
"id": "factsheet-123”,
"tags": [
{ "id": "tag-1", "label": "Tag 1" },
{ "id": "tag-2", "label": "Tag 2" },
{ "id": "tag-3", "label": "Tag 3" }
]
}
{
id
tags { id label }
}
Fact	
Sheet
Tag
Tag
Tag
Connections
27
{
"id": "factsheet-123”,
"tags": {
"edges": [
{ "node": { "id": "tag-1", "label": "Tag 1" } },
{ "node": { "id": "tag-2", "label": "Tag 2" } },
{ "node": { "id": "tag-3", "label": "Tag 3" } }
]
}
}
{
id
tags {
edges {
node { id label }
}
}
}
Fact	
Sheet
Tag
Tag
Tag
Connections	- Advantages
28
{
id
tags {
totalCount
pageInfo { startCursor endCursor hasNextPage }
edges {
node { id label }
}
}
}
Connections	- Advantages
29
{
id
tags {
permissions { create read update delete }
edges {
node { id label }
}
}
}
Connections	– Lessons	learned
30
• Makes	the	API	more	graph	like
• Use	the	connection	pattern	right	from	the	start
• Prevents	breaking	changes	in	API
• Use	the	same	pattern	throughout	the	API
• Clients	can	handle	connections	in	the	same	way
API	Design	– No	“dead	ends”
31
{
id
tagId
}
{
id
tag { id label }
}
API	Design	– General	lessons	learned
32
• API	design	should	be	not	too	use	case	specific
• YAGNI	(„You	aren‘t	gonna need	it“)	is	usually	a	good	advice,	but	should	
not	be	applied	here
• GraphQL is	advertised	as	„...	gives	clients	the	power	to	ask	for	exactly	
what	they	need“	so	do	not	artificially	restrict	the	API
GRAPHQL CLIENT	DESIGN
Doomed to fail ...
34
Lots	of	parameters
Nobody	dares	to	touch	this
Even	more	
generic
GraphQL client – Query	building
35
No	parameters	
Simple!	:-)
Helper	to	make	requests
APOLLO
What about the Apollo	Client?
37
• Apollo	Client	available	here:	
https://github.com/apollographql/apollo-client
• “A	fully-featured,	production	ready	caching	GraphQL client	for	every	
server	or	UI	framework”
• Deep	integration	possible	with	React,	Angular,	iOS,	Android,	…
What about the Apollo	Client?
38
So,	what about it then?
39
• Did	you	use	it?
• No,	it	was	not	available	when	we	started	…
• Would	you	use	it?
• Perhaps	- it	offers	some	nice	abstractions	(queries	can	be	restarted	
for	instance),	but	our	own	very	simplistic	approach	works	very	well	
at	the	moment
Mutations
40
Mutations
41
Mutation createApplication(name: “Application A“,
alias: „APP-A“) {
name
alias
}
GraphQL Suggests:
Mutations
42
Mutation createFactSheet(input: {
name: “Application A“, type: Application
}, patches: $patches) {
name
alias
}
Query:
{ patches: [
{op:“add“, path:“/alias“, value:“APP-A“}
]}
Variables:
N	+	1	Select	Issue
43
What is the N	+	1	Select	Issue?
44
Application application =	appDAO.getApplication();
for(Successor successor:	application.getSucessors())	{
System.out.println(“Successor:“	+	successor.getName());
}	
Application application =	appDAO.getApplication();
for(Successor successor:	application.getSucessors())	{
System.out.println(“Successor:“	+	successor.getName());
}	
SELECT	*	FROM	application WHERE	...SELECT	*	FROM	application WHERE	...
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
...
#	Selects
1
N
+
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
SELECT	*	FROM	successor WHERE	id =	successor.id;
...
Why do	we have this issue with GraphQL?
45
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
Why do	we have this issue with GraphQL?
46
• Java	Library	uses Datafetcher
• Is a	function to connect GraphQL to underlying DB
• Knows only his level
Why do	we have this issue with GraphQL?
47
Application {
id
name
type
release
alias
description
Lifecycles {...}
Relations {
Successors
Predecessors
Business Capabilities
User Groups
[...]
}
[...]
}
id
name
type
release
alias
description
Lifecycles
Relations
id
name
type
release
alias
description
Lifecycles
Relations
Why do	we have this issue with GraphQL?
48
• No context awareness
• No easy	implementation due	to „everything is a	graph“
• Needs	manual implementation to fix.
How To Solve This
49
• Prediction Library	(enable context awareness)
• Batching
• Caching
• Facebooks solution is called relay
Exception Handling
50
Exception Handling
51
• Exceptions of Java	GraphQL Library	are useless
• “An	error occurred“
• You need context information to show usefull exceptions
• We implemented our own handler for that
Conclusion
52
Conclusion
53
• Stop thinking in	REST
• No dead ends
• GrahpiQL first
• GraphQL is not	the solution for erverything
Breaking News
54
Breaking News
55
Breaking News
56
https://medium.com/@dwalsh.sdlr/using-graphql-why-facebook-now-owns-you-3182751028c9
Breaking News
57
https://code.facebook.com/posts/121714468491809/relicensing-the-graphql-specification/
Thank You
Questions?
Slides are available at:
https://de.slideshare.net/leanIX_net
Sources
• http://williamdurand.fr/2014/02/14/please-do-not-patch-like-an-idiot/
• http://graphql.org/
• https://github.com/graphql/graphiql
• https://www.leanix.net/de
• https://www.apollodata.com
• https://github.com/graphql-java/graphql-java
• https://angular.io/
• https://facebook.github.io/relay/

Weitere ähnliche Inhalte

Was ist angesagt?

Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Noa Harel
 
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...luisw19
 
Microservices Architecture for e-Commerce
Microservices Architecture for e-CommerceMicroservices Architecture for e-Commerce
Microservices Architecture for e-CommerceDivante
 
How to build Sdk? Best practices
How to build Sdk? Best practicesHow to build Sdk? Best practices
How to build Sdk? Best practicesVitali Pekelis
 
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Rafael Wilber Kerr
 
Introduction to git and github
Introduction to git and githubIntroduction to git and github
Introduction to git and githubAderemi Dadepo
 
What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020Noa Harel
 
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)Hafiz Ismail
 
Git Lab Introduction
Git Lab IntroductionGit Lab Introduction
Git Lab IntroductionKrunal Doshi
 
Mirage For Beginners
Mirage For BeginnersMirage For Beginners
Mirage For BeginnersWilson Su
 
Introduction to GitHub
Introduction to GitHubIntroduction to GitHub
Introduction to GitHubNishan Bose
 
How to GraphQL: React Apollo
How to GraphQL: React ApolloHow to GraphQL: React Apollo
How to GraphQL: React ApolloTomasz Bak
 
An intro to GraphQL
An intro to GraphQLAn intro to GraphQL
An intro to GraphQLvaluebound
 
Graphql presentation
Graphql presentationGraphql presentation
Graphql presentationVibhor Grover
 
Introduction to Apache Airflow - Data Day Seattle 2016
Introduction to Apache Airflow - Data Day Seattle 2016Introduction to Apache Airflow - Data Day Seattle 2016
Introduction to Apache Airflow - Data Day Seattle 2016Sid Anand
 
Microservice API Gateways with NGINX
Microservice API Gateways with NGINXMicroservice API Gateways with NGINX
Microservice API Gateways with NGINXGeoffrey Filippi
 

Was ist angesagt? (20)

Mono Repo
Mono RepoMono Repo
Mono Repo
 
Git
GitGit
Git
 
Introducing GitLab (June 2018)
Introducing GitLab (June 2018)Introducing GitLab (June 2018)
Introducing GitLab (June 2018)
 
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
 
Microservices Architecture for e-Commerce
Microservices Architecture for e-CommerceMicroservices Architecture for e-Commerce
Microservices Architecture for e-Commerce
 
Introduction to GraphQL
Introduction to GraphQLIntroduction to GraphQL
Introduction to GraphQL
 
How to build Sdk? Best practices
How to build Sdk? Best practicesHow to build Sdk? Best practices
How to build Sdk? Best practices
 
Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)Graphql Intro (Tutorial and Example)
Graphql Intro (Tutorial and Example)
 
Introduction to git and github
Introduction to git and githubIntroduction to git and github
Introduction to git and github
 
What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020What's New for GitLab CI/CD February 2020
What's New for GitLab CI/CD February 2020
 
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
Introduction to GraphQL (or How I Learned to Stop Worrying about REST APIs)
 
Git Lab Introduction
Git Lab IntroductionGit Lab Introduction
Git Lab Introduction
 
Mirage For Beginners
Mirage For BeginnersMirage For Beginners
Mirage For Beginners
 
Intro GraphQL
Intro GraphQLIntro GraphQL
Intro GraphQL
 
Introduction to GitHub
Introduction to GitHubIntroduction to GitHub
Introduction to GitHub
 
How to GraphQL: React Apollo
How to GraphQL: React ApolloHow to GraphQL: React Apollo
How to GraphQL: React Apollo
 
An intro to GraphQL
An intro to GraphQLAn intro to GraphQL
An intro to GraphQL
 
Graphql presentation
Graphql presentationGraphql presentation
Graphql presentation
 
Introduction to Apache Airflow - Data Day Seattle 2016
Introduction to Apache Airflow - Data Day Seattle 2016Introduction to Apache Airflow - Data Day Seattle 2016
Introduction to Apache Airflow - Data Day Seattle 2016
 
Microservice API Gateways with NGINX
Microservice API Gateways with NGINXMicroservice API Gateways with NGINX
Microservice API Gateways with NGINX
 

Ähnlich wie LeanIX GraphQL Lessons Learned - CodeTalks 2017

APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBMAPIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBMapidays
 
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...apidays
 
TigerGraph UI Toolkits Financial Crimes
TigerGraph UI Toolkits Financial CrimesTigerGraph UI Toolkits Financial Crimes
TigerGraph UI Toolkits Financial CrimesTigerGraph
 
API Management for GraphQL
API Management for GraphQLAPI Management for GraphQL
API Management for GraphQLWSO2
 
Building Fullstack Serverless GraphQL APIs In The Cloud
Building Fullstack Serverless GraphQL APIs In The CloudBuilding Fullstack Serverless GraphQL APIs In The Cloud
Building Fullstack Serverless GraphQL APIs In The CloudNordic APIs
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019Bill Doerrfeld
 
Google Cloud Platform - Introduction & Certification Path 2018
Google Cloud Platform - Introduction & Certification Path 2018Google Cloud Platform - Introduction & Certification Path 2018
Google Cloud Platform - Introduction & Certification Path 2018Pavan Dikondkar
 
Security Modelling in ArchiMate
Security Modelling in ArchiMateSecurity Modelling in ArchiMate
Security Modelling in ArchiMatePECB
 
Single Source of Truth for Network Automation
Single Source of Truth for Network AutomationSingle Source of Truth for Network Automation
Single Source of Truth for Network AutomationAndy Davidson
 
Documenting serverless architectures could we do it better - o'reily sa con...
Documenting serverless architectures  could we do it better  - o'reily sa con...Documenting serverless architectures  could we do it better  - o'reily sa con...
Documenting serverless architectures could we do it better - o'reily sa con...Asher Sterkin
 
AppliFire Blue Print Design Guidelines
AppliFire Blue Print Design GuidelinesAppliFire Blue Print Design Guidelines
AppliFire Blue Print Design GuidelinesAppliFire Platform
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy Neo4j
 
Anypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetupAnypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetupMergeStack
 
Device Independent API design
Device Independent API designDevice Independent API design
Device Independent API designAmrita jain
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyYour Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyNeo4j
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyYour Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyNeo4j
 
Roadmap for Enterprise Graph Strategy
Roadmap for Enterprise Graph StrategyRoadmap for Enterprise Graph Strategy
Roadmap for Enterprise Graph StrategyNeo4j
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyYour Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyNeo4j
 
Power Apps Deep Dive - Munchen 2019
Power Apps Deep Dive - Munchen 2019Power Apps Deep Dive - Munchen 2019
Power Apps Deep Dive - Munchen 2019Timo Pertilä
 
Api design best practice
Api design best practiceApi design best practice
Api design best practiceRed Hat
 

Ähnlich wie LeanIX GraphQL Lessons Learned - CodeTalks 2017 (20)

APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBMAPIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
APIdays Helsinki 2019 - GraphQL API Management with Amit P. Acharya, IBM
 
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
APIdays Helsinki 2019 - Beyond REST: GraphQL API Management with Amit Acharya...
 
TigerGraph UI Toolkits Financial Crimes
TigerGraph UI Toolkits Financial CrimesTigerGraph UI Toolkits Financial Crimes
TigerGraph UI Toolkits Financial Crimes
 
API Management for GraphQL
API Management for GraphQLAPI Management for GraphQL
API Management for GraphQL
 
Building Fullstack Serverless GraphQL APIs In The Cloud
Building Fullstack Serverless GraphQL APIs In The CloudBuilding Fullstack Serverless GraphQL APIs In The Cloud
Building Fullstack Serverless GraphQL APIs In The Cloud
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019
 
Google Cloud Platform - Introduction & Certification Path 2018
Google Cloud Platform - Introduction & Certification Path 2018Google Cloud Platform - Introduction & Certification Path 2018
Google Cloud Platform - Introduction & Certification Path 2018
 
Security Modelling in ArchiMate
Security Modelling in ArchiMateSecurity Modelling in ArchiMate
Security Modelling in ArchiMate
 
Single Source of Truth for Network Automation
Single Source of Truth for Network AutomationSingle Source of Truth for Network Automation
Single Source of Truth for Network Automation
 
Documenting serverless architectures could we do it better - o'reily sa con...
Documenting serverless architectures  could we do it better  - o'reily sa con...Documenting serverless architectures  could we do it better  - o'reily sa con...
Documenting serverless architectures could we do it better - o'reily sa con...
 
AppliFire Blue Print Design Guidelines
AppliFire Blue Print Design GuidelinesAppliFire Blue Print Design Guidelines
AppliFire Blue Print Design Guidelines
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy
 
Anypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetupAnypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetup
 
Device Independent API design
Device Independent API designDevice Independent API design
Device Independent API design
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyYour Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyYour Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy
 
Roadmap for Enterprise Graph Strategy
Roadmap for Enterprise Graph StrategyRoadmap for Enterprise Graph Strategy
Roadmap for Enterprise Graph Strategy
 
Your Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph StrategyYour Roadmap for An Enterprise Graph Strategy
Your Roadmap for An Enterprise Graph Strategy
 
Power Apps Deep Dive - Munchen 2019
Power Apps Deep Dive - Munchen 2019Power Apps Deep Dive - Munchen 2019
Power Apps Deep Dive - Munchen 2019
 
Api design best practice
Api design best practiceApi design best practice
Api design best practice
 

Mehr von LeanIX GmbH

LeanIX Virtual Workspaces
LeanIX Virtual WorkspacesLeanIX Virtual Workspaces
LeanIX Virtual WorkspacesLeanIX GmbH
 
How to reduce complexity by segregating your data with Virtual Workspaces
How to reduce complexity by segregating your data with Virtual WorkspacesHow to reduce complexity by segregating your data with Virtual Workspaces
How to reduce complexity by segregating your data with Virtual WorkspacesLeanIX GmbH
 
Gartner EA: The Rise of Data-driven Architectures
Gartner EA: The Rise of Data-driven ArchitecturesGartner EA: The Rise of Data-driven Architectures
Gartner EA: The Rise of Data-driven ArchitecturesLeanIX GmbH
 
Application Harmonisation using Design Principles in LeanIX
Application Harmonisation using Design Principles in LeanIXApplication Harmonisation using Design Principles in LeanIX
Application Harmonisation using Design Principles in LeanIXLeanIX GmbH
 
Effective EAM: whet your appetite & deliver solutions
Effective EAM: whet your appetite & deliver solutionsEffective EAM: whet your appetite & deliver solutions
Effective EAM: whet your appetite & deliver solutionsLeanIX GmbH
 
Lean EAM with the Microservices Add-on and the Signavio Integration
Lean EAM with the Microservices Add-on and the Signavio IntegrationLean EAM with the Microservices Add-on and the Signavio Integration
Lean EAM with the Microservices Add-on and the Signavio IntegrationLeanIX GmbH
 
Integration Architecture with the Data Flow
Integration Architecture with the Data FlowIntegration Architecture with the Data Flow
Integration Architecture with the Data FlowLeanIX GmbH
 
LeanIX-ServiceNow Integration
LeanIX-ServiceNow IntegrationLeanIX-ServiceNow Integration
LeanIX-ServiceNow IntegrationLeanIX GmbH
 
Application Rationalization with LeanIX
Application Rationalization with LeanIXApplication Rationalization with LeanIX
Application Rationalization with LeanIXLeanIX GmbH
 
Custom Reports & Integrations with GraphQL
Custom Reports & Integrations with GraphQLCustom Reports & Integrations with GraphQL
Custom Reports & Integrations with GraphQLLeanIX GmbH
 
LeanIX Inventory: Import & Export
LeanIX Inventory: Import & ExportLeanIX Inventory: Import & Export
LeanIX Inventory: Import & ExportLeanIX GmbH
 
Survey Add-on Showcase: Cloud Transformation
Survey Add-on Showcase: Cloud TransformationSurvey Add-on Showcase: Cloud Transformation
Survey Add-on Showcase: Cloud TransformationLeanIX GmbH
 
Ensure GDPR Compliance with LeanIX
Ensure GDPR Compliance with LeanIXEnsure GDPR Compliance with LeanIX
Ensure GDPR Compliance with LeanIXLeanIX GmbH
 
LeanIX-Signavio Integration
LeanIX-Signavio IntegrationLeanIX-Signavio Integration
LeanIX-Signavio IntegrationLeanIX GmbH
 
How to set up a Lean Standards Governance
How to set up a Lean Standards GovernanceHow to set up a Lean Standards Governance
How to set up a Lean Standards GovernanceLeanIX GmbH
 
Innovative API-Based LeanIX Enhancements
Innovative API-Based LeanIX EnhancementsInnovative API-Based LeanIX Enhancements
Innovative API-Based LeanIX EnhancementsLeanIX GmbH
 
Moving EA - from where we are to where we should be
Moving EA - from where we are to where we should beMoving EA - from where we are to where we should be
Moving EA - from where we are to where we should beLeanIX GmbH
 
Is next generation EAM more than just agile IT planning?
Is next generation EAM more than just agile IT planning?Is next generation EAM more than just agile IT planning?
Is next generation EAM more than just agile IT planning?LeanIX GmbH
 
Beyond CIO - Will there still be Architecture Management in 2025
Beyond CIO - Will there still be Architecture Management in 2025Beyond CIO - Will there still be Architecture Management in 2025
Beyond CIO - Will there still be Architecture Management in 2025LeanIX GmbH
 
The Day After Tomorrow
The Day After TomorrowThe Day After Tomorrow
The Day After TomorrowLeanIX GmbH
 

Mehr von LeanIX GmbH (20)

LeanIX Virtual Workspaces
LeanIX Virtual WorkspacesLeanIX Virtual Workspaces
LeanIX Virtual Workspaces
 
How to reduce complexity by segregating your data with Virtual Workspaces
How to reduce complexity by segregating your data with Virtual WorkspacesHow to reduce complexity by segregating your data with Virtual Workspaces
How to reduce complexity by segregating your data with Virtual Workspaces
 
Gartner EA: The Rise of Data-driven Architectures
Gartner EA: The Rise of Data-driven ArchitecturesGartner EA: The Rise of Data-driven Architectures
Gartner EA: The Rise of Data-driven Architectures
 
Application Harmonisation using Design Principles in LeanIX
Application Harmonisation using Design Principles in LeanIXApplication Harmonisation using Design Principles in LeanIX
Application Harmonisation using Design Principles in LeanIX
 
Effective EAM: whet your appetite & deliver solutions
Effective EAM: whet your appetite & deliver solutionsEffective EAM: whet your appetite & deliver solutions
Effective EAM: whet your appetite & deliver solutions
 
Lean EAM with the Microservices Add-on and the Signavio Integration
Lean EAM with the Microservices Add-on and the Signavio IntegrationLean EAM with the Microservices Add-on and the Signavio Integration
Lean EAM with the Microservices Add-on and the Signavio Integration
 
Integration Architecture with the Data Flow
Integration Architecture with the Data FlowIntegration Architecture with the Data Flow
Integration Architecture with the Data Flow
 
LeanIX-ServiceNow Integration
LeanIX-ServiceNow IntegrationLeanIX-ServiceNow Integration
LeanIX-ServiceNow Integration
 
Application Rationalization with LeanIX
Application Rationalization with LeanIXApplication Rationalization with LeanIX
Application Rationalization with LeanIX
 
Custom Reports & Integrations with GraphQL
Custom Reports & Integrations with GraphQLCustom Reports & Integrations with GraphQL
Custom Reports & Integrations with GraphQL
 
LeanIX Inventory: Import & Export
LeanIX Inventory: Import & ExportLeanIX Inventory: Import & Export
LeanIX Inventory: Import & Export
 
Survey Add-on Showcase: Cloud Transformation
Survey Add-on Showcase: Cloud TransformationSurvey Add-on Showcase: Cloud Transformation
Survey Add-on Showcase: Cloud Transformation
 
Ensure GDPR Compliance with LeanIX
Ensure GDPR Compliance with LeanIXEnsure GDPR Compliance with LeanIX
Ensure GDPR Compliance with LeanIX
 
LeanIX-Signavio Integration
LeanIX-Signavio IntegrationLeanIX-Signavio Integration
LeanIX-Signavio Integration
 
How to set up a Lean Standards Governance
How to set up a Lean Standards GovernanceHow to set up a Lean Standards Governance
How to set up a Lean Standards Governance
 
Innovative API-Based LeanIX Enhancements
Innovative API-Based LeanIX EnhancementsInnovative API-Based LeanIX Enhancements
Innovative API-Based LeanIX Enhancements
 
Moving EA - from where we are to where we should be
Moving EA - from where we are to where we should beMoving EA - from where we are to where we should be
Moving EA - from where we are to where we should be
 
Is next generation EAM more than just agile IT planning?
Is next generation EAM more than just agile IT planning?Is next generation EAM more than just agile IT planning?
Is next generation EAM more than just agile IT planning?
 
Beyond CIO - Will there still be Architecture Management in 2025
Beyond CIO - Will there still be Architecture Management in 2025Beyond CIO - Will there still be Architecture Management in 2025
Beyond CIO - Will there still be Architecture Management in 2025
 
The Day After Tomorrow
The Day After TomorrowThe Day After Tomorrow
The Day After Tomorrow
 

Kürzlich hochgeladen

%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...masabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationShrmpro
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 

Kürzlich hochgeladen (20)

%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 

LeanIX GraphQL Lessons Learned - CodeTalks 2017