Import Microsoft Visio diagrams into IBM Rational Software Architect: Part 3. Transferring and converting network diagrams to topology diagrams

Ritesh Prasad describes how to import network diagrams created in Microsoft Visio 2010 into IBM Rational Software Architect Version 8.5 and later. He also describes what to expect from the import.

Ritesh Prasad (riprasad@in.ibm.com), Engineering Manager, IBM

Photo of Ritesh PrasadRitesh Prasad is the Engineering Manager of the Rational Software Architect development team in Bangalore, India. He has a Master of Technology degree in industrial engineering and management from the Indian Institute of Technology and has been a Java and Java 2 Enterprise Edition (J2EE) programmer on several Web application development projects. Ritesh worked on J2EE-based customer relationship management (CRM) frameworks, such as Chordiant and Eiphany, and he has the honor of being the first person in IBM India to work on Epiphany. Outside of the office, Ritesh enjoys spending time with his family and listening to music.



19 February 2013

Prerequisites

  • 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

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
diagram of a simple network

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
flowchart diagram against grid background

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
more complex diagram of a network

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
Project dialog window in the 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
Creating the target in the New Folder window

Open the Import wizard

  1. There are multiple ways to open the Import wizard. In this case, select the target folder, and in the context menu, click Import.
  2. Select Modeling > Visio Diagram on the first wizard page.
  3. Click Next.
Figure 6. Start the Visio Import
Options in Select view of the Import window
  1. In the next wizard window, titled Import Visio (Figure 7), select the source Visio file (in .vdx format).
Figure 7. Visio import input page
Import Visio dialog window

Specify inputs

  1. Click Browse to open the file selection window.
  2. Locate the Visio file on your file system, and select it.
  3. 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.
  4. 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.
  5. Make sure that the appropriate folder is selected in the Destination area.
  6. 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
Import parameters input verification

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
Progress bar with hour-glass timer

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
Import completed - review the created elements and topology diagrams

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
content from Real network page of source file

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
elements under Real network

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
general information, relationships, capabilities, attributes

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
elements annotated with source Visio shape type

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
Summary of time, information and error messages

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
Preferences page with selections as described

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 stencilVisio shapeTopology elementUnit ID, capability ID
Network and peripherals Firewall Firewall Unit: net.NetworkDeviceUnit
Capability: net.Firewall
User UML actor Unit: uml.UMLActorUnit
Capability: uml.UMLActor
Actor UML actor Unit: uml.UMLActorUnit
Capability: uml.UMLActor
Network symbols Router Router Unit: net.NetworkDeviceUnit
Capability: net.Router
Gateway Gateway Unit: net.NetworkDeviceUnit
Capability: net.Gateway
Rack-mounted servers Database server Database Unit: database.DatabaseUnit
Capability: database.Database
Directory server LDAP server Unit: ldap.LdapServerUnit
Capability: ldap.LdapServer
Server Server Unit: server.ServerUnit
Capability: server.Server
Management server Server Unit: server.ServerUnit
Capability: server.Server
Mobile information server Server Unit: server.ServerUnit
Capability: server.Server
FTP server Server Unit: server.ServerUnit
Capability: server.Server
Print server Server Unit: server.ServerUnit
Capability: server.Server
Proxy server Server Unit: server.ServerUnit
Capability: server.Server
Real-time communication server Server Unit: server.ServerUnit
Capability: server.Server
Streaming media server Server Unit: server.ServerUnit
Capability: server.Server
File server Server Unit: server.ServerUnit
Capability: server.Server
Web server HTTP server Unit: http.HttpServerUnit
Capability: http.HttpServer
UML deployment Node Node Unit: analysis.NodeUnit
  Component Software component Unit: core.SoftwareComponent
Detailed network diagram Data Database Unit: database.DatabaseUnit
Capability: database.Database

Visio shapes that are not mapped are imported into the topology diagrams and represented as the most appropriate sketcher elements.


Summary

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.

Resources

Learn

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Rational software on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Rational, DevOps
ArticleID=857765
ArticleTitle=Import Microsoft Visio diagrams into IBM Rational Software Architect: Part 3. Transferring and converting network diagrams to topology diagrams
publish-date=02192013