27
DocDokuPLM: Domain Specific PaaS and Business Oriented API Morgan Guimard - 21 sept 2016 - OW2 con' 2016

Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Embed Size (px)

Citation preview

Page 1: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

DocDokuPLM: Domain Specific PaaS and Business Oriented API

Morgan Guimard - 21 sept 2016 - OW2 con' 2016

Page 2: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

We are DocDoku

2

We help industrial organizations digitize their business

Based in France● Toulouse● Paris

Committed to the Open Source, we make DocDokuPLM:

● https://github.com/docdoku/docdoku-plm● Twitter: @docdoku

#PLM #HTML5 #Java #BigData#WebGL #IoT #Industry

Page 3: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

About me

3

Tech experience● 10 years in Web Technologies● JavaScript developer● Java EE developer

Morgan Guimard● DocDokuPLM dev leader● Technical trainer

Page 4: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Agenda

4

1 – What is DocDokuPLM ?2 – DocDokuPLM meets PaaS3 – Technical aspects4 – Who is using it ?

Page 5: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

1 – What is DocDokuPLM ?

Page 6: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

What is DocDokuPLM ?

6

Product Lifecycle Management

Manage the entire lifecycle of a product

Create and manage your product structures

Define part variants

Visualize the 3D model of your products

Page 7: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

What is DocDokuPLM ?

7

Document management system

Version control

Add tags and custom attributes

Create document models

Define links between documents

Organize, browse, share, search documents

Page 8: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

What is DocDokuPLM ?

8

Web and desktop applications

Run in all modern browsers

3D visualization of products

Real time audio/video conversations

Synchronize files with user’s file system

Page 9: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

2 – DocDokuPLM meets PaaS

Page 10: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

DocDokuPLM meets PaaS

10

Why did we need an API ?

Building quickly new applications

Developing new GUIs

Offering new business perspectives

Bringing the API makes DocDokuPLM

PaaS ready

Page 11: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

DocDokuPLM meets PaaS

11

Resolving specific use cases

Creating new APIs and applications around our services

{ api }Specific use case

DocDokuPLMAPI

{ api }Specific use case

Page 12: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

DocDokuPLM meets PaaS

12

At multiple industry level

For specific industry sectors and domains

Page 13: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

DocDokuPLM meets PaaS

13

Benefits for every actors

Innovate faster

Focus on use case / needs

Ease deployment and scale

Save money

Support

Page 14: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

3 – Technical aspects

Page 15: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Technical aspects

15

Good bye SOAP, welcome REST

Maintaining both is a pain

Not the same endpoints

Not the same codebase

One layer to rule them all!

Page 16: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Technical aspects

16

Annotations in the REST layer

Specific annotations (not standard yet), we use Swagger

Describes inputs, outputs, names, HTTP codes

@Api("documents")public class DocumentResource ...

@ApiOperation(value = "Create a document", response = Document.class)public Document createDocument (

@ApiParam(value = "Document to create") Document document...

@Api("documents")public class DocumentResource ...

@ApiOperation(value = "Create a document", response = Document.class)public Document createDocument (

@ApiParam(value = "Document to create") Document document...

Page 17: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Technical aspects

17

Parsing these annotations

Annotations reader, Java based program

Parse the entire REST layer

Produces a JSON file

Describes all services

Page 18: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Technical aspects

18

Generating the SDK

Swagger codegen – Apache License, Version 2.0https://github.com/swagger-api/swagger-codegen

Generates our Java API from JSON description

Packaged as a jar

« Mavenized »

Will be published on next release

Page 19: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Technical aspects

19

JavaScript SDK

Swagger-clienthttps://www.npmjs.com/package/swagger-client

Used to generate our JavaScript SDK

Runs in a browser, or simply as a NodeJS module

Can be used in a SPA, or in a NodeJS application

Page 20: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Technical aspects

20

Language support

Not using or don’t want to use Java or JavaScript?

We can bring our API to other languages

Page 21: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

4 – Who is using it?

Page 22: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Who is using it?

22

We do, in DPLM

The DPLM: a web based desktop application

Mostly designed for CAD designers

Also fits for simple files management

Now DPLM relies on our JavaScript SDK

More flexible

More reliable

Much faster

Page 23: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Who is using it?

23

We do, in DPLM

Page 24: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Who is using it?

24

FarmStar

Jee & web application

Reporting system, modulation and advice

for agricultural industry

Page 25: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Who is using it?

25

You, tomorrow?

Need some kind of …

document management system

within your information system?

Manufacturing or tracking facilities?

Social and notification features?

Next release coming soon, stay tuned!

Page 26: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Questions ?

Contact

Tel : +331 85 09 69 44Tel : +335 61 72 24 09

Email : [email protected]

Page 27: Domain specific-paa s-and-business-oriented-api-docdoku-ow2con-2016

Thank you !

Contact

Tel : +331 85 09 69 44Tel : +335 61 72 24 09

Email : [email protected]