Tired of switching between your favourite IDE to modelling environment to get work done? Also feeling troublesome to sync between code and visual models in two separated development environments? Visual Paradigm seamlessly integrated with NetBeans, providing full support of round-trip code and database engineering. Developers can now perform full lifecycle development activities with NetBeans, such as analysis, design modelling, code engineering, agile teamwork development and much more!
Visual Paradigm is award-winding agile development platform that encompasses of widely-used agile toolset such as user story, use case, UML visual model, coding engineering, teamwork and project management capabilities. This one-stop-shop solution enables developers to carry out the entire agile development process within one place.
In order to follow and complete this tutorial, you must have Visual Paradigm installed. They can be downloaded from Visual Paradigm download page. Of course, you need the NetBeans IDE as well. We suppose you have already installed it but if you haven't, please download it from the NetBeans official site get it installed.
Note: We only support NetBeans 6.7 or upper versions. If you are using an earlier version, please consider upgrading your NetBeans.
Visual Paradigm targets software teams who want to develop software with professional design, reporting, code and database engineering supports. It supports all sorts of UML modeling features, plus SysML modeling, Business Process Modeling with OMG's Business Process Modeling Notation (BPMN), ERD (for database design), code generation, reverse engineering, database generation/reversal, Hibernate, report composer and report generation.
Integrate Visual Paradigm with NetBeans
Here we go. We need to install the integration from Visual Paradigm. So, turn off your NetBeans and start Visual Paradigm. Perform the steps below.
- In Visual Paradigm, select Window > Integration > IDE Integration... from the application toolbar.
- In the Visual Paradigm IDE Integration window, check NetBeans Integration. Click Next.
Specify the path of your NetBeans installation and click Next.
This begins files copying. If you see the error messages "java.io.IOException: Cannot make dirs for file...", please restart Visual Paradigm with the Run as Administrator option. When finished files copying, close Visual Paradigm and move on to the next section to see how to create a Java application in NetBeans along with UML model.
Creating a UML Model for your Java project
In this section, we are going to create a UML model from a Java project in NetBeans. In order not to mess up with your production work, we will create a new Java project for this tutorial.
- Start the NetBeans IDE.
- Click the New Project button at the toolbar to open the New Project window.
- In the New Project window, select Java category and choose Java Class Library as the project type. Click Next.
- Enter Online Shop in the Project Name field. Leave other settings as default and click Finish to create the project.
- Now, you have an empty Java project. Let's create a UML model from it. To create a UML model, right click on the project root node in the Projects pane and select Open Visual Paradigm from the popup menu.
- When you are prompted to enter the path of project file, keep Create in default path selected and click OK. This will create the .vpp project file in the Java project folder.
UML modeling in NetBeans
Let's draw a simple class diagram. We will generate Java code from it in the next section.
- Open the Diagram Navigator of Visual Paradigm.
- Right click on the Class Diagram node and select New Class Diagram from the popup menu. This creates an empty class diagram.
- The diagram will automatically grab focus on its package header (top left of diagram). This allows you to specify the parent package for your diagram. If the package you specified does not exist in your project, it will be created for you automatically. Once you have specified the package, the class diagram along with the classes to be created in the diagram will automatically be put in the package. Enter onlineshop as package name and press Enter.
- Now, the focus will be shift to the diagram name field. Enter Online Shop as the name of the diagram and then press Enter.
- Next, we are going to create a class. Select Class from the diagram toolbar and it onto the diagram to create a class.
- Enter Product as name and press Enter to confirm.
- A product has three attributes: name, partNo and price. Let's add them. Right click on the Product class and select Add > Attribute with Getter and Setter from the popup menu.
- Enter name : String to create the name attribute in String type. Then, press Enter to confirm. Right after your confirmation, the getter and setter operations for the name attribute will automatically be inserted to the class. Similarly, create two more attributes partNo : String and price : float.
- Press Esc to cancel the next attribute.
Generate Java code from class diagram
Let's generate Java source code from the UML class. There are several ways to achieve this. Here, let's try the one that generate code for the entire UML model. Click on the Update Code button at the top of Diagram Navigator.
In the Projects pane, expand the project node and check Source Packages. The package onlineshop and Product class are there. Open Product.java, you can see the Product class filled with attributes and its getter and setter.
Generate and update UML classes from Java code
You've learned how to create UML diagrams in NetBeans. If you want to know how to produce UML class model from your Java source code which is essential to keep the design conformed to your source code, you need to perform the steps below.
- Let's create a class in NetBeans. Right click on the package onlineshop and select New > Java Class... from the popup menu.
- In the New Java Class window, enter Vendor as class name and click Finish.
- Add two attributes to the Vendor class, a name in String type and a collection of Product.
- Next, we try to update the Product class which is just generated in the previous step. Let's try to add a constructor to it. Right click on the source file of Product class and select Insert Code.
- Select Constructor... from the popup pane.
- Select all three attributes and click Generate to generate the constructor.
- Now, go to the Diagram Navigator. Click on the Update UML Model Element button to have your changes reflected in the UML model.
- Open the class diagram. The constructor method is presented in the Product class.
- Switch to Model Explorer pane, you can find the Vendor class inside the onlineshop package. Drag out the Vendor class and drop it to class diagram, the Vendor class will be visualized with association with Product class.
Something more - Generate UML Sequence Diagram from Java code
The class diagram helps you to understand the static data structure of your system. However, what about its dynamic behavior? Sequence diagram is one of the popular diagrams in UML used to model the dynamic behavior of a system. You can reverse engineer Java source code into sequence diagram inside the NetBeans integration environment. Let's walk through the steps below to create a sequence diagram from source code. Before you start, please note that the classes drawn in the previous sections will be overwritten by the steps to be performed.
- Select Modeling > Instant Reverse Java to Sequence Diagram... from the menu.
- Click the Add Source Folder button in the Instant Reverse Java to Sequence Diagram window.
- Specify the source folder of the Java project in the Select Directories window. Click OK and then click Next.
- Now, expand the tree in the Select Operation step and choose the operation you would like to reverse to sequence diagram. Click Next to proceed.
- Select Create New Sequence Diagram in the Choose Diagram step and leave the diagram name as default. Click Finish.
Now the sequence diagram of your selected operation is being generated.
What this tutorial on YouTube
- Visual Paradigm User's Guide - NetBeans Integration
- Tutorials on Visual Paradigm IDE Integration
- Full set of UML tools and UML diagrams