This document discusses DocDokuPLM, an open source product lifecycle management and document management system. It introduces DocDokuPLM and its features for managing product structures, documents, and 3D models. It then discusses how DocDokuPLM is being developed as a Platform as a Service (PaaS) through the introduction of a REST API and software development kits. Finally, it provides examples of companies that are using DocDokuPLM, including the company itself for its web application, and invites the reader to consider using it.
2. 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
3. About me
3
Tech experience
● 10 years in Web Technologies
● JavaScript developer
● Java EE developer
Morgan Guimard
● DocDokuPLM dev leader
● Technical trainer
4. Agenda
4
1 – What is DocDokuPLM ?
2 – DocDokuPLM meets PaaS
3 – Technical aspects
4 – Who is using it ?
6. 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
7. 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
8. 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
10. 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
11. DocDokuPLM meets PaaS
11
Resolving specific use cases
Creating new APIs and applications around our services
{ api }Specific
use case
DocDoku
PLM
API
{ api }Specific
use case
15. 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!
16. 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
...
17. Technical aspects
17
Parsing these annotations
Annotations reader, Java based program
Parse the entire REST layer
Produces a JSON file
Describes all services
18. Technical aspects
18
Generating the SDK
Swagger codegen – Apache License, Version 2.0
https://github.com/swagger-api/swagger-codegen
Generates our Java API from JSON description
Packaged as a jar
« Mavenized »
Will be published on next release
22. 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
24. Who is using it?
24
FarmStar
Jee & web application
Reporting system, modulation and advice
for agricultural industry
25. 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!