How to Reverse C++ Source with Predefined Macros

Visual Paradigm for UML supports round-trip engineering on C++ source file. But when you reverse C++ source code into class model, you may receive some strange error message complain there are syntax problem in your source file. This probably caused by the predefined macros in your source code. This article will teach you what you should configure in order to reverse your source code into class model. Read more

Generate Class Diagram from Existing Classes

When creating a class diagram, sometimes we would draw it using the diagram toolbar and there are times we would reuse elements by drag & drop. However, when you start from scratch, sometimes it can be difficult to know which class goes with which because we may not necessarily know all relationships among them.

Read more

Setup VP Teamwork Server on Secure Connection with Self-Signed Certificate

SSL, short for Secure Sockets Layer, is a protocol for enforcing secure communication via the network.  For Visual Paradigm Teamwork Server users, it is possible to setup such a communication between the client and server to protect their works. In this article, we will go through the steps for preparing a certificate that is expected to be known by those users involved, configuration of VP Teamwork Server, and the setup of clients. Read more

How to Create Connectors with Turning Points using Open API

Visual Paradigm’s Open API allows you to create all kind of our supported connectors in diagram. They are not necessary to be in simple straight line form. You can create complex connectors with multiple turning points just like those you created in diagram with your mouse. This article will teach you how to create connectors with turning points using Open API. Read more

How to Show All Levels of Preview Shapes

When one shape is nested inside another, such as sub-process, its content (shapes) inside would show along with what’s outside in diagram at the same time. For example, if a sub-process is not composed of any other sub-processes, it will appear in business process diagram, with the shapes (e.g. tasks) that make it up inside itself. However, the viewing works up to one level of nesting only by default.

Read more

When Reversing Java Code to Sequence Diagram, Why Can’t I Select an Operation?

When reversing Java code to sequence diagram, sometimes you may not be able to specify a method for conversion. In the window, somehow the class (to which the method belongs) can’t seem to be expanded to list anything and therefore the method is nowhere to be selected. What happens?

Read more

How to Create Containment Relationship with API

Open API not only allows you access the model data within the project, but also creating new model elements and connector. This is not only for standard connectors such as association, but also relationships such as containment. This article will show you how to create containment relationship using Open API. Read more

Group Generalizations with Generalization Set

When working on a use case diagram, you may have a superactor with a few subactors underneath from generalization. For formatting purpose, you may want to group the lines of generalization together for a more organized presentation.  This can be done by creating a generalization set.

Read more

How to Deploy VP Server to Apache Tomcat as WAR

VP Server is a server package which combines Teamwork Server, Floating License Server, Update Server also ElaborView Server into a single server. The default installation package already bundled with Apache Tomcat. But if you want to deploy it your own Tomcat, you may take the following procedures: Read more

How to Manage Nickname with API

Most of the case, your model just needs to be share by your team, and they are in single language. But in some organizations, especially those with branches in multiple countries, you may need to share your model with different teams, and probably they are using different language. It is painful that you need to maintain multiple sets of models, each on one language. Every time when you need to make modification, you need apply the same modification on all the models you have. This is time very annoying and consuming. Read more