Features Overview

UML diagrams

UML diagrams

UML (Unified Modeling Language) is a standardized general-purpose modeling language in the field of object-oriented software engineering. Software Ideas Modeler suppports all 14 kinds of UML diagrams. You can also use stereotypes, tagged values and documentation for each element of diagram. Here is the complete list of supported UML 2.x diagrams:

BPMN diagrams

BPMN (Business Process Model and Notation) is a graphical representation for specifying business processes in a business process model. Software Ideas Modeler implements BPMN 2.0 and supports all three kinds of BPMN diagrams:

  • Conversation diagram
  • Collaboration diagram
  • Choreography diagram

SysML diagrams

SysML (System Modeling Language) is a general-purpose modeling language for systems engineering applications. It supports the specification, analysis, design, verification and validation of a broad range of systems and systems-of-systems. You can use stereotypes, tagged values and documentation for each element of diagram. Here is the complete list of supported SysML 1.3 diagrams:

Other diagrams

Besides UML and BPMN diagrams are also supported many other diagrams:

  • ArchiMate
  • Flowchart
  • Entity relationship diagram (Crow's Foot / Chen notation)
  • Data flow diagram (Jourdon / Gane & Sarson notation)
  • CRC cards diagram
  • Entity life history
  • Hierarchical task analysis
  • Robustness diagram
  • User interface diagram
  • Requirements diagram
  • Concurrency diagram
  • Mind map
  • Venn diagram
  • JSD Entity structure diagram
  • JSD Network diagram
  • Mixed diagram

Matrices

A responsibility assignment matrix, also known as RACI matrix describes the participation by various roles in completing tasks or deliverables for a project or business process. Software Ideas Modeler supports many of this matrix:

  • RACI
  • RASCI
  • RACI-VS
  • RACIO
  • DACI

In computer programming, create, read, update and delete (CRUD) are the four basic functions of persistent storage. Software Ideas Modeler allows you to express this functions using CRUD matrix.

Custom Diagrams

There is a lot of built-in types of diagrams. It's not enough? So you can create your own type of diagram with custom elements. You can specify kind, shape and style of the elements. You can define restrictions for nesting and for relationships. It is possible to set custom icons for elements and shortcut keys.

Arrangement

In order to facilitate your work Software Ideas Modeler provides many arrangement options. They allow you easily to adjust the layout of your diagrams. You can arrange diagrams using these tools:

  • Auto layout
  • Auto size
  • Alignment
  • Make same
  • Order
  • Distribute
  • Move
  • Size
  • Rotate
  • Locking
  • Grouping

Shaping

Program allows you to apply clipping operations to elements from drawing group (rectangles, ellipses, etc.). These operations are supported

  • Combine (XOR)
  • Difference
  • Intersection
  • Union

Auto scrolling

When you move an element to the border of window, the canvas will scroll automatically.

Grid

Grid

You can turn on/off separately drawing of grid and snapping to grid.

Snap lines

Snap lines

Snap lines allow you to align the elements precisely to other existing elements and produce good looking diagrams.

Configurable canvas

Canvas has a lot of options and settings - you can customize it by your preferences. The bounds of diagram can be fixed (A0 - A5, Letter, Legal, Junior Legal, Ledger, Tabloid or any custom size) or flexible (Auto expand in all directions/Auto expand right down). It can be something in between (Multiple pages). The borders of diagram can be visible or not as well as the diagram background.

Layers

Diagrams can be separated in multiple layers. You can move layers, hide and show it.

Drag&drop

Drag and drop

You can drag&drop almost everything - elements in diagram, elements from project tree, from toolbox, attributes and opertions, images from your disk, etc.

Clipboard

Copy, cut or paste elements or whole diagrams.

Undo/redo

Undo and redo

Performed actions can be undone and redone.

Smart keys

If you prefer keyboard instead of mouse, you will like smart keys. It allows you to draw diagrams only using keys.

Element browser

Element browser offers a overview of all elements in a project.

Element grids

Element grids give you different views on elements. You get overview of stereotypes and tagged values used in elements. You can easily see which elements are used on which diagrams and what relationships are between elements.

  • Stereotypes grid
  • Tagged Values grid
  • Diagram-Element grid
  • Element Relationship grid

Element lists

Except for general Element Browser there are more specific element lists, which make work with use cases or requirements easier.

  • Use Cases
  • Requirements

Search and Replace

If you want to something find in your diagrams, Search feature will help you. It offers many options - you can specify where to search (current project, current diagram, etc.), how to search (match case/match whole word/use wildcards or regular expressions) and check parts (name/custom ID/tagged value etc.) which will be searched.

Diagram filtering

You can filter content of a diagram by defined rules. You can easily hide comments, relations, collaborations or define any custom filters.

Linking

A diagram can be linked to an element. When you double-click on it, the linked diagram will be open.

Element and its model

Software Ideas Modeler is not just a diagram drawing tool. It has a real model behind. Model entities and diagram elements are two separate things. The same element can have multiple instances placed in multiple diagrams (or even in the single diagram on different positions). E.g. there can be relationships between a class, its operations and a call action in sequence diagram.

Database

You can import your tables from MS SQL, MySQL and other databases using OLE DB

XMI

Import and export.

Source code parsing

You can generate class diagram from your code in C++, C#, Java, PHP, Ruby or VB.NET.

.NET assemblies reverse engineering

You can get classes for your diagrams directly from .NET assemblies (EXE/DLL files).

Source code generation

Your diagrams can be used as basis for further development. You can generate a skeleton of code for these languages:

  • C#
  • VB.NET
  • Java
  • C++
  • Action Script
  • Java Script
  • PHP
  • Ruby
  • Python
  • SQL DDL
  • VB6
  • XSD

Source code templates

You can create your own templates using the built-in template language. You can use the text editor or visual template editor. Software Ideas Modeler supports multiple templates per language.

Generated documentation

You can generate a documentation from your project and save in one of these formats: PDF, RTF, HTML, ODT, TXT.

Documentation templates

Documentation is not generated by unchangeable rules. Software Ideas Modeler uses templates, which can be edited using the special built-in tool.

Styling

Styling

Application offers rich styling options - custom backgrounds, borders, dash styles, shadows, glows, gloss effect, many adjustments and combinations.

  • Pre-defined styles
  • Custom styles
  • Import/export styles
  • Auto styles (by element type, stereotype, style-class)

Printing

Print feature allows you to transfer your diagrams from your screen to paper.

  • Batch printing
  • Multiple pages per diagram
  • Print preview

Diagram export

Diagrams can be exported to various image formats:

  • JPG
  • PNG
  • GIF
  • BMP
  • TIFF
  • SVG
  • WMF
  • EMF

Batch export

You don't need to export each diagram separately. If you use batch export, you can export all diagrams from a project on few clicks.

Project comparison

Project comparison tool allows to find and mark differences between two projects.

Cooperation

  • Filter diagrams by authors
  • Display author for each element
  • Comments
  • Glossary
  • Aliases

Custom graphics and shapes

Software Ideas Modeler offers an editor of custom graphics, which can be used for custom stereotypes or just inserted as custom shapes to diagrams.

Fast editor

Fast editor allows you to textually edit the content of the selected element

Custom lists

  • Custom stereotypes
  • Custom ID and name patterns
  • Custom types

Auto backup

Auto backup allows to save your work automatically in regular intervals, which can prevent loss of your work in unexpected scenarios.

Auto export

You can export your diagrams to a chosen image format automatically on each save of project.

Easy search

Almost all list boxes in application support searching in their items.

'Start with...' bar for fast start

Favorite diagrams

Start page contains a special box 'Start with...' from which you can easily create new project with a chosen initial diagram or open an existing project you edited recently.

Favorite diagrams

Favorite diagrams

The most used diagrams are displayed on the top of diagram menu and they are also easily accessible from toolbar in Project sidebar. So you don't need to search in many diagrams and your favorites are in sight.

Change Tracking

Program can store two versions of each element – the original one and the changed one. Each element can be in one of change tracking states – unchanged, changed, added, removed. There is an option which allows you to highlight the changes in a diagram. Changed elements are marked with yellow border, added elements uses green highlight and removed ones have red border.

Design patterns

Software Ideas Modeler allows you to use design patterns - you can insert generic pre-defined blocks of elements to your diagram. You can also create your own design patterns, which can be reused in other diagrams later.

Field patterns

Field pattern defines a group of fields - attributes and operations, which can be added to selected elements.