What is the difference between an abstract class and an interface? This tutorial shows you similarities and differences between these two object-oriented programming concepts.
You can model your C# software in UML. The classes can be modeled using UML class diagrams. It is possible to depict abstract, static, generic classes and their members.
A BPMN diagram offers a graphical representation for process modeling and describing. The processes are presented as flows of tasks, events, and process branches (realized by gateways), organized in swimlanes.
An enum allows you to define an entity with a list of literals in the UML class diagram. UML Enumeration values can be used by class attributes.
UML class diagram and ER diagram share the ability to define a domain model. Software Ideas Modeler allows you to convert the classes to entities, associations to relationships and the class attributes to ERD attributes.
UML diagrams use different types of arrows. Each arrow type represents another relationship. Sometimes the relationships are depicted in the same way, but they have a slightly different meaning. In that case, they can be annotated with a stereotype.
You can draw a tree diagram box by box or you can generate it from the text list. Software Ideas Modeler offers a handy solution which allows you to create a tree diagram very easily within seconds.
The diagram editor offers useful features that can help you during the diagram creation, save you mouse clicks and allows you to create the diagrams faster.
An event tree analysis is a powerful analytical tool that allows you to analyze an event within a system with its possible consequences and probabilities of various outcomes.
FTA (Fault Tree Analysis) diagram is used to analyze and understand possible risks, especially in high-hazard industries. It is a top-down diagram that organized the events and lower-level events using Boolean logic operators.
An aggregation and a composition are both a type of association in UML diagrams. They are more specific versions of an association. An association connects two classes that need to communicate somehow. Both association and composition are kind of "has-a" relationships. Despite these similarities, there is a difference between aggregations and compositions.
Chen's notation of the entity-relationship diagram depicts data and domain models using entities, attributes, and relationships. Unlike other ER diagram notations, it shows attributes as standalone boxes, not as a part of entities.
The UML reverse engineering tool allows you to transform JSON to a UML diagram. You can get UML from JSON very easily on just a few clicks.
The entity-relationship diagram can be turned into a SQL script. The ERD tool can generate create scripts for each entity and relationship in the diagram or only for the selected part. You can transform ERD entities to database tables very easily.
The ERD tool allows you to generate an ER diagram from a SQL database. It is also possible to create an ERD from a SQL DDL script. You can turn the whole schema into a diagram or you can select only some tables that you want to be imported.
Use the roadmap tool to create a good-looking roadmap that depicts a plan of a project, the planned stages for new features and modules. Roadmaps are used to present what a team or a company wants to release or develop in the upcoming period or later in the future.
A use case analysis allows you to understand the functional user requirements on the modeled system. During the analysis, you will identify the actors and specify their interactions with the system using use cases. Use cases are detailed using a flow of events.
Transform UML to code. Our code generator allows you to convert your diagrams to source code in various programming languages. Mostly, you will need to build codes and scripts for UML class diagrams or entity-relationship diagrams. However, you can also generate code from a UML state machine diagram or any other diagram type with custom-defined templates.
The long names of diagram elements may be broken into multiple lines. If the name is too long to be displayed within specified bounds, it is broken automatically.
Organize your model in diagrams. There are dozens of diagram types you can use. Each diagram type is good for specific purposes. You can create multiple diagrams in a project. A diagram should be named properly and placed in the project hierarchy.
A flowchart is a common type of diagram. It is easy to draw and even easier to read. Let's look at how to make a flowchart using Software Ideas Modeler.
The type set is set to UML by default. When creating data models using E-R diagrams you may want to use another type set - e.g. database-specific.
A primary key uniquely identifies a tuple/row of entity (data set, table). It may be an attribute or a set of attributes. Primary key attributes are marked with + symbol, alternatively with PK acronym or a key icon.
A user stories diagram is the easiest way how to capture and define user requirements. The user stories may be organized within hierarchies and periods (called sprints). The epics represent the top level of the user story hierarchy. The requirements are organized in the form of statements - As ... I can ... so that ...
A decision matrix (or decision table) is the right choice, if you want to resolve possible outcomes of many combinations of conditions. It allows you to define conditions and possible actions. Then you define the rules which show what conditions lead to what actions.
Each connector tool has defined a default direction in which it is inserted into the diagram. You may change this setting using the context menu for the tool.
You may design a wireframe of your web application in a diagram and reference it in another diagram using the Web Browser element. The Web Browser container will emphasize the target environment - it will be clear that your wireframe represents a web application or a web page.
A constructor is a procedure called to create a class. This tutorial shows you how to add a constructor to a class in your UML diagram easily.
Infographic element Progress Bar shows a visual representation of progress. This tutorial shows you how to harness all its capabilities.
If you want to create a new diagram from a part of an existing diagram, you may copy the desired elements, add a new diagram and paste the elements into it. Or you may do it in just a click. This tutorial shows you how.
The models and diagrams are organized in projects. A project contains all elements, relationships, documentation, diagrams, other specific parts, and their associated data, fields and styling settings.
Drag and drop is a very useful and intuitive technique. Software Ideas Modeler supports drag&drop actions wherever it is possible.
The ERD tool provides many useful features to help you work with diagrams. One of them is the highlighting of the context parts in the diagram.
Each element is defined by its properties - id, name, style, owner, repository, associated diagrams, tagged values, documentation. and other element-specific properties. You may edit all of them using the Properties dialog and a lot of them in the Properties sidebar.
Containers are elements which may contain other elements. By default, if you delete a container its nested elements will be deleted together with it. However, Software Ideas Modeler offers an option how to delete a container without its nested content.
Elements are usually connected with other elements in diagram using relationships. If you know that you will not need an element nor its connectors to other elements, you may delete them together.
Style Set Editor allows you to edit a style set, its styles, styling rules, and color palette. This tutorial shows you how to use the Style Set Editor to create a new style set or edit an existing one.
Software Ideas Modeler offers plenty of styling options and settings. You may choose your colors and fonts, adjust the border width, the fill style, turn on shadows or gloss effects. An emulated handwriting style is also supported. It is possible to adjust the styles of individual elements. You may also extract these styles and reuse them.
A good layout makes a good diagram. Software Ideas Modeler provides a lot of tools that help you to create beautiful diagrams with a perfect layout.
The diagrams and models you created may be presented to the outside world in standard format files. You may print the diagrams, send projects via email or create the whole documentations.
Software Ideas Modeler is a diagramming software which supports plenty of diagram types and standards. However, what diagram should be used in the given scenario? What diagram would be most useful for the specific task?
If you want to create models and diagrams, you need to handle the basic diagramming operation - selecting elements, renaming them, mastering the work with the clipboard to copy and paste the elements. It is also good to know how to delete the diagram elements properly.
The key activity in Software Ideas Modeler you would like to master is diagramming. This tutorial shows how to grasp basic concepts and how easy it is to create diagrams.
This tutorial will show you how to start with Software Ideas Modeler, how to create a new project, save it and open the existing ones. It describes the main user interface layout and its components.
Elements may be used multiple times on diagrams. Multiple instances are also allowed on a single diagram. You may navigate the element references with a few clicks.
Some elements have additional details which are not represented visually in diagrams. However, there is an element which allows you to display the hidden information. It is called Element Details.
You may copy the style of an element to another element very easily.
The fill of an element does not have to be solid. You may use a gradient fill. Fill with two colors is used by default. However, you can add other colors to the gradient fill if you want. Software Ideas Modeler supports gradients with up to 10 colors.
If you want to make your diagrams aligned and sleek, you may try diagramming with the grid turned on.
Software Ideas Modeler offers several options how to work with the selection effectively.
Infographic diagrams can contain various data charts. They allow you to visualize your data sets. The individual charts have a lot of configuration options.
You may place a new element on a relationship. It will cause splitting the relationship into two parts which will be connected to the original start and end element on one side and to the new element on the other side.
Apart from literal values, you can set an instance as a default value of an attribute.
Enumeration items can be set as default values of attributes. After setting an enumeration item as a default value, it will be referenced - so if the item will be renamed, the changed name will be used for all references of the item.
You do not need to change visibility of the class attributes (or operations) one by one. You may select multiple attributes (or operations) and then perform the desired action.
Using Smart Parser sidebar, you may easily convert SQL scripts to entity relationship diagrams.
If you have two classes connected by association you may want to add attributes representing the association roles. This tutorial shows how to do it in just a click.
There are many options how to set attribute type. You may type it, set it in the Properties dialog or drag another element from your project and set it as the type. The last option is described in this tutorial.
Software Ideas Server Management is a tool for managing and setting the Software Ideas Server. Software Ideas Server provides online corporation features. The Management application allows you to set user accounts, browse and edit the repository, view logs, locks and messages.
The displayed element parts can be customized. You can show or hide various parts without changing the underlying model.
You can add several elements to your diagram very easily on single click.
Flow layout arranges the nested elements into rows from left to right, the rows are placed from top to bottom.
If it is uncertain which label belongs to which relationship you can utilize the label connectors in your diagram.
Server provides support for user cooperation, global repository and tasks.
A selected element can be resized automatically by double clicking on one of its grips. There is also a lot of auto-sizing options.
When editing an element with fields (e.g. class) in a diagram you do not need to use mouse - the navigation between fields (e.g. attributes and operations) can be managed only using keys.
Each field (attribute, operation, etc.) can be styled to its own style - you can change its text color, background, border and other style attributes. However what to do if you want remove all these styles and restore the default unstyled appearance.
There is several types of container layout which provides layout rules for nested element in a container.
The escape key can be used in many ways in Software Ideas Modeler.
Some elements can be snapped automatically to borders of other elements. It is useful if you want to add a toolbar, scrollbar or menu to a window.
Each element has its model which defines its properties and all its relationships with other elements in the project. If you reuse an element in another diagram you may want to add also other related elements. The easiest way is to use 'Add Related Elements' feature.
Labels of labeled elements can be freely moved around the element box. Relationships points to the main shape of element. If you want to change this default behaviour and include the label into the main bounds you can use the feature "Include Label to Main Bounds".
Quick Action Box helps with many things - it searches elements, diagrams, performs actions and opens files.
It is possible to move the label of a labeled element (element with a separate label) to any position you want but you can also choose from one of 4 predefined positions.
You can name several elements in your project with the same name but sometimes it may not be what you want. Software Ideas Modeler warns you if you use one name twice.
The shapes (without model) can be combined together in various ways.
Diagram Description is a tabular element type which provides basic information about the diagram which it is placed in.
Do you prefer the ribbon interface or the classic menu? Software Ideas Modeler offers both. And moreover, there's nothing easier than switching between them.
Smart connector makes adding relationships between diagram elements quick and easy.
Auto Set Types feature helps to set types to attributes in E-R diagrams. If you have entities with untyped attributes you can try to use this automated feature and let the program figure out what could be the appropriate types.
There is several ways how to add a new diagram to a project.
An abstract class in UML is a class that cannot be instantiated. It contains abstract operations (operations without body) whose behavior is defined in subclasses. This tutorial shows you how to set abstract modifiers to classes, attributes and operations.
Using Glossary, you can define important terms which are used in the project. It can also contain abbreviations with their descriptions.
It is often needed to edit an existing database, extend its design, add new tables, or edit the existing ones. Software Ideas Modeler offers a tool for importing a data model from the database.
Software Ideas Modeler offers several options how to adjust the current view on a diagram.
If you need a special diagram type, which is not present in Software Ideas Modeler, you can create it using Custom Diagram feature.
Software Ideas Modeler offers many options how to work with tabs.
UML Profile Diagram describes and defines extensions to UML language. The extension mechanism allows you to adjust the language to a specific domain or platform. The extensions are defined via stereotypes.
UML timing diagram is focused mainly on time, it shows the changes of classifiers in time depicted on a timeline. The timelines are stacked vertically, the time increases from left to right.
UML Interaction Overview Diagram provides a high-level view on interactions in a system or a subsystem. It depicts the flow in similar way as an activity diagram, but instead of action nodes it uses other interaction diagrams and interaction references.
A composite structure diagram shows the internal structure of a classifier, its parts and ports via which it communicates with the environment. It models collaborations where each element has its defined role.
UML Deployment Diagram depicts deployment of artifacts on nodes. It is used for showing the placements of artifacts (software, system, module, etc.) on physical nodes (hardware, server, database, etc.) and the relationships between particular parts of the solution.
A component diagram offers a view on a complex system. It depicts the interfaces provided and/or required by the parts of the system and the relationships between the parts. The parts are represented by components and other artifacts.
A UML package diagram shows dependencies between the packages in the model. It depicts the structure and organization of project in the large scale.
An object diagram is a structural UML diagram. It describes a system or its part at a specific time. It models instances, their values and relationships. It may be used to show examples of data structures.
A state machine diagram describes states of en entity (device, process, program, software, module, etc.) and transitions between the states. Conditions specifies when a transition from a state to another state may be used.
A UML communication diagram shows interactions in the form of messages between objects and parts, which are represented by lifelines. Communication Diagram is a modified form of UML Sequence Diagram, but unlike it, its elements do not have to be ordered horizontally and may have any position in the diagram.
An activity diagram is a behavior diagram that shows a scenario using a flow of actions. It models a sequence of actions, decisions based on conditions, concurrent branches and various cycles.
A sequence diagram models communication among objects in sequential order. It shows objects, classes, and actors involved in the scenario and exact order of messages. It consists of vertical lines which belong to lifelines and horizontal lines of messages.
A use case diagram consists of use cases, actors and relationships among them. It presents a user interaction with the system, and defines the specifications of use cases.
A class diagram is a static diagram that describes the structure of a system by showing its classes with their attributes and operations and the relationships among objects. This tutorial explains how you can draw UML class diagrams and what usage they have.
Sometimes you may want to focus only on some parts of your diagram and suppress everything else. Filters allows you to fulfill this task.
This tutorial shows how to use one element in multiple diagrams.
Source Code Template Editor is a tool, which allows you to easily create your own source code templates. Software Ideas Modeler can generate a source code based on diagrams and models by these templates.
Element Browser shows the list of all elements present in the project. It shows also the elements which are not used on any diagram.
There are several options how to change the style of elements in a diagram.
Software Ideas Modeler offers rich styling options. You can adjust the appearance of the background, borders and fonts. Also some effects are available which can made your diagrams more shiny. Each element in the diagram can be styled with a custom style.
How to set diagram size and its background. Difference between diagram editor setting and diagram style.
If you want choose element, you want to work with, you have to select them. You can select one or more elements using Selection tool.
Relationships between elements can be depict using paths. Software Ideas Modeler offers many options how to draw paths and connect elements.
There are multiple ways how to draw a new shape (element), so you can choose your favorite one.
Alt is very a frequently used operator of fragment. It divides the fragment into partitions and for each one defines a condition (guard) which must be true for the executed partition.
Asynchronous messages allow the caller to continue processing. It doesn’t have to wait for a response. Asynchronous calls are used in multithreaded applications and in message-oriented middleware.
The elements can be organized in layers that can be moved, hidden or otherwise restricted.
This tutorial shows how to create associate diagrams and define the relationship between two elements, which are defined in two different diagrams.
The Batch Export helps you save many diagrams effectively. You just set how the output should look like once as well as the output directory. You may leave the rest to the software. This tutorial will show you how to set the batch export and utilize all its options.
This tutorial shows how to access and use reverse engineering.
This tutorial shows how to apply the same style to multiple elements.