Documentation tool for Domain Driven Design - domain-driven-design

I am wondering if anyone knows of any tooling, commercial or open source, that provides facilities to document all the DDD artifacts like domain models, contexts, language and other metadata. Metadata are like owners, teams contact, etc2
My search on Google has not revealed much.

The contextmapper, which can be installed with Visual Code or Eclipse extensions. I use its plantuml generator with plantuml extension.
It is an open source project providing a Domain-specific Language and Tools for Strategic Domain-driven Design (DDD), Context Mapping, Bounded Context Modeling, and Service Decomposition.

Related

Use case and difference between JHipster UML and JDL

JHipster provides some great tools for generating JPA entities and related objects and classes. The site showcases and describes comparisons between a few of these options:
Using a simple questionnaire entity-subgenerator (via jhipster entity) for generating very basic entities
Creating a UML with the JHipster-UML tool, or a similar UML tool
Using a DSL tool called JHipster-JDL with some nice IDE plugins or JDL-Studio
The Entity Sub-Generator (for beginners)
I've found that the entity-subgenerator is lacking for advanced users and is very limited on what it can do. However, it's great for new JHipster or Java/Spring users to understand what an entity is or how JHipster works regarding code generation.
JHipster-UML or JHipster-JDL (for advanced users)
That being the case, I'd only be interested in using JHipster-UML or JHipster-JDL for entity generation. My questions pertain just to those two techniques and when I would use JHipster-UML vs. JHipster-JDL:
What features does one have that the other does not have?
JHipster-JDL seems to have been created specifically for JHipster while JHipster-UML seems to use existing UML DSLs. Should I only use a UML tool only if I have some tool or language-familiarity preference?
These items are not clear on the docs on the website, so I'd love some clarification. Would be happy to update the OS docs to clarify this question for others not coming in with a preference for the two and trying to decide what direction to go with them.
JDL is more powerful than JHipster-UML because it has more features that go beyond class modeling like generating all your microservices applications at once from one file and JHipster 6 will add more features to JDL.
I usually recommend newcomers to start with entity sub generator because you don't have to learn a new language, you create few entities and then you use jhipster export-jdl to export these entities as JDL. From there you can easily switch to JDL only.

Semantic web recommend-er system development

I'm beginning in semantic web. I want to develop a semantic web recommend-er system. The most important part of my project is moddeling. How can I start it? How long does it take? What soft-wares or tools can I use to develop that?
You can use Protege Ontology Editor to create your data models and create semantic rules with SWRL. Also you need a semantic rule engine too.

Open source framework to build Web based BPMN designer

We have already built a BPMN designer on eclipse framework.It was easy to build with great support from eclipse based frameworks like EMF, Graphitti etc.
Now we want to build a web based BPMN designer. Can you suggest which open source frameworks i can use to do this ? I would expect the framework to support me in defining the bpmn metamodel, a graphical editor ect etc
Please share your ideas.
Oryx / Signavio Core Components
The Signavio Core Components are the "sucessor" of Oryx. A github mirror is available there: https://github.com/IAAS/signavio-core-components/
The Signavio Core Components switched from MIT to GPL license. Furthermore, they are unmaintaned.
Forks
Wapama is a fork of Oryx. It seems that https://github.com/saifulomar/process-designer is the most recently updated fork with a tight JBPM integration.
Gemsbok is another fork of the Signavio Core Components.
process-designer seems to be actively maintained (as of 2013/06)
The dependency to ExtJS was removed in the context of the Flowable project. See https://github.com/flowable/flowable-engine/tree/master/modules/flowable-ui-modeler/flowable-ui-modeler-app/src/main/resources/static/editor-app/editor for the current source.
Eclipse Stardust / Lightdust
There is also recent by the Eclipse community. Within the Stardust project, there is a web-based BPMN Modeler, accessible via git: http://git.eclipse.org/c/stardust/org.eclipse.stardust.ui.web.git/tree/stardust-web-modeler-bpmn2. Some basic information is in the Stardust Wiki, but no step-by-step-guide for using the web-based BPMN modeler standalone.
Self-implemented
We made a comparison of all available web-based graph-libraries at https://ultimate-comparisons.github.io/ultimate-graphframework-comparison/.
Example code of the best ones is available at
https://winery.github.io/javascript-graph-library-comparison/. The idea is similar to TodoMVC, but here a minimal example for graph creation is made.
(Some old comments follow)
jsPlumb-based
There is the project https://github.com/Dzhyrma/BPMN_Modeler, which is based on jsPlumb. It includes raphael, which is a SVG-based graph-drawing library.
Direct canvas drawing
https://github.com/hallodom/BPMN-Modeller directly uses the 2d canvas to draw BPMN.
http://bpmn.io/
is the best answer if the license terms (include logo) work for you.
There is already one. Oryx. I believe some of the open source bpmn engines leverage the same.
For Stardust Web based BPMN modeller step-by-step usage, please refer to thsi link:
http://help.eclipse.org/kepler/topic/org.eclipse.stardust.docs.analyst/html/handbooks/modelling_analyst/models/model-preface.html?cp=52_7_3

entreprise intranet Liferay or Alfresco

I want to create an enterprise intranet , that provides authentication of employees and management profiles, messaging, calendar, document management...
I think I can use php or java CMS , for the moment after some research I decided to use Liferay or Alfresco. The problem is that I don't really know the difference between them , and what I have to choose .
They're quite different products, solving different business needs.
Liferay
It's a Java Portal. It focuses on creating web sites that are able to integrate data coming from different sources and applications in the same page. Using portlets, you compose a page to enrich it with such mini applications. It's mostly used to create web sites that aggregate information and contain interactive features such as online chat, blogs and the like. It also provides document management as part of its features, with the possibility of integrating Alfresco as a backend.
Alfresco
It's an Enterprise Content Management system. It revolves around documents, their lifecycle and collaboration capabilities over such documents. With the advent of Share, Alfresco now offers a lightweight portal-like application that lets you place "dashlets" in both an User Dashboard and a Site Dashboard (sites are shared workspaces).
While you can have non-document centric dashlets, blogs and wikis, they're not extremely sophisticated, and most of Alfresco features focus on document management and online collaboration.
I have not worked with portals for quite a while, but I guess the answer is : It really depends. :)
Seriously, in your requirements context I would compare Alfresco Share with Liferay. Both compose pages in a similiar fashion with Webscripts/Portlets components and have security baked in.
I think the most important factor to consider is your skill set.
If you feel at home with Java, the Portlet spec and server side logic : Lean towards Liferay. Alfresco Share/Spring Surf should serve you better if you prefer Javascript in the browser and JSON/REST style programming.
Besides, validate how strong your document management requirements are.
Do you really need super sophisticated search, workflow, versioning, security and the like ?
Sophistication increases complexity. That is also why I would be careful before introducing them both at the same time.
Another point to have in mind may be documentation - guess this point goes to Liferay.
Liferay's primary strength is as a portal where you use existing "applications" to fit your need, or create your own using the Portlet spec. Alfresco is a CMS, so it focuses on content management.
Why not use both?

web based document view solution?

Is anyone aware of a web based file view solution?
Specifically, I'm looking for a solution that i could view CAD、3D Model(most of them are made by intergraph/bently/aveva 3D model software) via Internet browser.
I found Oracle Autovue, and Aveva VNet.
Anyone have any recommendations?
thanks.
If plugins (flash, java, 3rd party) are not authorized in your definition of "web based", there is nothing that could allow you to view 3D CAD models on the web. Maybe with the rise of WebGL something will emerge.
Otherwise, if plugins are a possible solution, maybe have a look directly at products and technologies of CAD software editors. For example, Dassault Systemes is promoting the 3DVia plugin to view documents from the CATIA ecosystem, and Siemens PLM is promoting JT as a file format for CAD visualization.
Be warned that these solutions may have strong commercial limitations, and/or "locked" towards the respective ecosystem/PLM of their vendors.

Resources