- A basic understanding of working with network diagrams in Microsoft Visio 2010, as well as deployment topology diagrams in IBM® Rational® Software Architect 8.5
- Familiarity with sketcher diagram elements in Rational Software Architect.
Key products and terms in this article
Microsoft Visio is a 2D-object drawing application that is part of the Microsoft Office suite. This article is based on the version that was current when this article was published (2013). Visio 2010. Due to its proprietary file format, very few other programs can read Visio files. However, Visio can read and write files as VDX files. VDX is based on an XML schema (DatadiagramML) and a well-documented file format. With VDX, it is possible to work with an XML-based file format without the need to use the previous VSD binary file format. VDX is not compressed.
Network diagrams in Microsoft Visio
A network is an interconnected group or system, or a structure of elements attached to each other at regular intervals. A network diagram can represent any cluster or group of something, usually related to computing. Typical applications in Visio include:
- An active directory
- A rack diagram
- A conceptual website map
IBM Rational Software Architect
IBM Rational Software Architect is a modeling and development environment that uses the Unified Modeling Language (UML) for designing architecture for C++ and Java 2 Enterprise Edition (J2EE) applications and web services. It is built on the Eclipse open source software framework and includes capabilities focused on architectural code analysis, C++, and model-driven development (MDD) with the UML for creating applications and web services.
You can use Rational Software Architect to visually design a software application by using UML models. You can then transform your design into code and continue to develop your application or web service. Throughout the development lifecycle, your team completes the activities of requirements gathering, use case analysis, and domain analysis, followed by detailed architectural design, implementation, and deployment in the recommended development phases.
Modeling deployment topologies in Rational Software Architect
With the deployment planning tools, you can create topologies, a type of model that shows the relationships between information technology resources. You can also plan and validate deployment scenarios.
Planning for deployment and deploying applications can be complicated and error-prone. The deployment planning tools in Rational Software Architect simplify the deployment process.
How to import a network diagram
There are three pages (diagrams) included in the sample Visio file for this article.
The first page, named "basic network," contains the very basic network diagram shown in Figure 1.
Figure 1. Basic network diagram page
The second page, named "flowchart" (see Figure 2), shows an example of a typical flowchart that contain non-standard network diagram shapes. This helps you understand the fallback capability of the Visio Import feature.
Figure 2. The flowchart page
The third page, named "real network" (Figure 3), is a more realistic network diagram created in Visio. The elements and information from this page would be imported as the most appropriate elements in the deployment topology domain in Rational Software Architect.
Figure 3. Diagram of a real network, as an example
Create a target project
Open the New Project wizard in the Rational Software Architect workbench.
There are multiple ways to reach this dialog window, but a model project with a topology diagram is the most appropriate for this exercise. However, you can create a simple resource project to store the imported diagrams. After successful import of Visio diagrams, the system automatically configures the project to indicate that it contains a topology model and diagrams.
Figure 4. New Project wizard
Create a target folder
Topologies are stored in a non-project root folder. Therefore, it is necessary to create an appropriately named folder to store imported models in the newly created project.
Figure 5. Create a folder in the project to store the output
Open the Import wizard
- There are multiple ways to open the Import wizard. In this case, select the target folder, and in the context menu, click Import.
- Select Modeling > Visio Diagram on the first wizard page.
- Click Next.
Figure 6. Start the Visio Import
- In the next wizard window, titled Import Visio (Figure 7), select the source Visio file (in .vdx format).
Figure 7. Visio import input page
- Click Browse to open the file selection window.
- Locate the Visio file on your file system, and select it.
- Make sure that the "Source file" text field contains the full path of the selected Visio file. You can also verify the selection by reviewing the Preview.
- In the Diagram Type field, use the drop-down menu to select Network. "Network" indicates the target domain for the deployment topology in Rational Software Architect.
- Make sure that the appropriate folder is selected in the Destination area.
- After you have provided all input, the Finish button will become active, so click that button.
Figure 8. Make sure inputs are correct and sufficient
Review the results
As soon as you click the Finish button, the import process begins.
Watch the progress monitor
The progress monitor keeps reporting the current state of import (Figure 9), which page of the source diagram file is being processed, and the percentage of import activities completed so far.
Figure 9. Import in progress, status monitor active
Review the import output
The wizard disappears after the import is finished. The icon of the target folder changes to indicate that it now contains topology models and diagrams. You might occasionally need to refresh the project or target folder to see that effect.
Figure 10. Import output
By default, you should see a topology model file created that has the same name as the source Visio file, with .topology as the file extension. When you expand the topology model node, you can also see one or more topology diagram nodes, one for each page in the source Visio diagram. You can double-click each of the diagram nodes to view the layout of imported nodes.
Figure 11. Imported real network diagram example
The Visio shapes imported as topology elements are also listed under that topology model node with the diagram nodes.
Figure 12. Topology model elements created during the import
You can double-click an element node to bring up an editor, where you can also verify the imported attributes, if any.
Figure 13. View the details of the imported element
The Visio shapes that could not be mapped to a known topology element are represented as the most appropriate sketcher shape in the corresponding diagram. In this case, the attributes imported from corresponding Visio shape are shown as embedded key-value pairs within the boundary of the diagram. If the Visio shape's dimensions do not match a standard sketcher shape, a defaultsketcher element is created and annotated with the name of the corresponding Visio shape. This follows the usual convention of stereotype visual notation. These sketcher elements are called fallback visual elements.
Figure 14. Fallback sketcher elements
Review the report
An HTML report is created at the end of each import of a Visio diagram. Each one is stored in the Reports folder within the target folder that you selected in the Import wizard. The report file follows this naming convention:
Visio source file name [plus] long format date and time.html
You can open the HTML report in a browser to view the details. The report contains multiple sections. It begins with an overall summary mentioning total time taken in import and number of errors, plus information or warnings reported by the execution logic, as Figure 15 shows.
Figure 15. Import report
That is followed by tabular details containing messages at various levels, such as overall, document node, each page node, and each shape node. You can get complete information on background processing steps, any problem encountered, and any user action required on the output model and diagram.
Review the Tasks view
One or more user tasks can be created for some Visio shapes that could not be mapped to a known topology element. Usually, such shapes would be represented as sketcher elements. User action is expected on those sketcher elements to convert them into the most appropriate topology elements for further use.
Topology domain preferences
The Preferences page is where you specify settings for importing network diagrams into Rational Software Architect. To set topology preferences, in the folder directory at the left, select Modeling > Visio Import > Topology.
Figure 16. Topology domain preferences
Target model cardinality
You can use the Target Model Cardinality preference to specify one of these two options:
- You want one combined topology model for each source Visio file, irrespective of the number of diagram pages that it contains.
- You want to create a separate model for each page in the source file.
When you select the first option, One model for whole Visio file, only one model (.topology file) is created, but the visual layout is maintained by creating separate diagram (.topology file) that represents each page in the source file. The model name matches the source file name, and diagram names match the page names. This is the default setting, assuming that all diagram pages in a source file can practically be related to each other.
However, when you select the second option, One model for each page in Visio file, a separate model is created for each of the pages contained in the source Visio file. Each model also links to a matching diagram to maintain the visual representation of shapes imported from the corresponding page in the source file. The name of the model and diagram match the name of the page.
Only one HTML report is generated, regardless of the preference. Thus, the HTML report matches the source Visio file name in either scenario.
What to expect
The network diagrams created in Visio focus mostly on hardware. Deployment topologies in Rational Software Architect focus more on software deployed on hardware. Therefore, there is a slight difference in the orientation of network planning and modeling between the products. However, we have found plenty of shapes from Visio network stencils that can be mapped to Rational Software Architect topology elements. Table 1 lists the built-in mapping of Visio shapes to topology elements.
Table 1. Mapping Visio stencils and shapes to topology elements
|Visio stencil||Visio shape||Topology element||Unit ID, capability ID|
|Network and peripherals||Firewall||Firewall|| Unit: net.NetworkDeviceUnit|
|User||UML actor|| Unit: uml.UMLActorUnit|
|Actor||UML actor|| Unit: uml.UMLActorUnit|
|Network symbols||Router||Router|| Unit: net.NetworkDeviceUnit|
|Gateway||Gateway|| Unit: net.NetworkDeviceUnit|
|Rack-mounted servers||Database server||Database|| Unit: database.DatabaseUnit|
|Directory server||LDAP server|| Unit: ldap.LdapServerUnit|
|Server||Server|| Unit: server.ServerUnit|
|Management server||Server|| Unit: server.ServerUnit|
|Mobile information server||Server|| Unit: server.ServerUnit|
|FTP server||Server|| Unit: server.ServerUnit|
|Print server||Server|| Unit: server.ServerUnit|
|Proxy server||Server|| Unit: server.ServerUnit|
|Real-time communication server||Server|| Unit: server.ServerUnit|
|Streaming media server||Server|| Unit: server.ServerUnit|
|File server||Server|| Unit: server.ServerUnit|
|Web server||HTTP server|| Unit: http.HttpServerUnit|
|UML deployment||Node||Node||Unit: analysis.NodeUnit|
|Component||Software component||Unit: core.SoftwareComponent|
|Detailed network diagram||Data||Database|| Unit: database.DatabaseUnit|
Visio shapes that are not mapped are imported into the topology diagrams and represented as the most appropriate sketcher elements.
The Visio Import feature is very flexible, yet powerful. You can quickly import your diagrams created in Microsoft Visio product to the appropriate target domain in Rational Software Architect and instantly begin reaping the benefits. You can also easily add to the built-in capabilities.
- For additional information related to this article, check these resources:
- Importing Microsoft Visio diagrams to Rational Software Architect in the information center.
- Essentials of modeling with Rational Software Architect, self-paced training.
- Get more information about Rational Software Architect:
- Start at Introduction to Rational Software Architect and the developerWorks page, and then explore the Rational Software Architect family of products page.
- Find out What's new in Rational Software Architect 8.5, and see the Rational Software Architect 8.5 Information Center for detailed installation and use instructions.
- For additional resources, check Rational Software Architect 8.5 page and the Rational Software Architect wiki.
- Learn more about Deployment Planning and Automation in this presentation from the Rational Innovate conference in 2011 (PDF format).
- Learn more about Visio:
Get products and technologies
- Download any of these for a trial at no charge:
- Evaluate IBM software in the way that suits you best: Download it for a trial, try it online, use it in a cloud environment, or spend a few hours in the SOA Sandbox learning how to implement service-oriented architecture efficiently.
- Join the discussion in the Rational Development Tools forum on developerWorks.
- Get connected with your peers and keep up on the latest information in the Rational community.
- Rate or review Rational software. It's quick and easy.
- Share your knowledge and help others who use Rational software by writing a developerWorks article. Find out what makes a good developerWorks article and how to proceed.
- Follow Rational software on Facebook, Twitter (@ibmrational), and YouTube, and add your comments and requests.
- Ask and answer questions and increase your expertise when you get involved in the Rational forums, cafés, and wikis.
Dig deeper into Rational software on developerWorks
Get samples, articles, product docs, and community resources to help build, deploy, and manage your cloud apps.
Experiment with new directions in software development.
Software development in the cloud. Register today to create a project.
Evaluate IBM software and solutions, and transform challenges into opportunities.