Tools to visualize

  • Communication
    • BPMN Collaboration Diagram
  • Process description
    • BPMN Process Diagram
    • UML: Sequence Diagram
  • Data model
    • Class diagram
    • ERM diagram

Communication 

BPMN Collaboration Diagram

A Collaboration represents the interactions between two or more business entities. A Collaboration diagram depicts a global point of view. It shows the interactions between participants in general.



Process description

BPMN Process Diagram


UML: Sequence Diagram

A sequence diagram is a type of interaction diagram because it describes how—and in what order—a group of objects works together.
  • Object symbol: Represents a class or object in UML. The object symbol demonstrates how an object will behave in the context of the system. Class attributes should not be listed in this shape.
  • Activation box: Represents the time needed for an object to complete a task. The longer the task will take, the longer the activation box becomes.
  • Actor symbol: Shows entities that interact with or are external to the system.
  • Option loop symbol: Used to model if/then scenarios, i.e., a circumstance that will only occur under certain conditions.
  • Alternative symbol: Symbolizes a choice (that is usually mutually exclusive) between two or more message sequences. To represent alternatives, use the labeled rectangle shape with a dashed line inside.
  • Lifeline symbol. Represents the passage of time as it extends downward. This dashed vertical line shows the sequential events that occur to an object during the charted process. Lifelines may begin with a labeled rectangle shape or an actor symbol.
  • Synchronous message symbol. Represented by a solid line with a solid arrowhead.
  • Asynchronous message symbol. Represented by a solid line with a lined arrowhead. 
  • Asynchronous return message symbol. Represented by a dashed line with a lined arrowhead.
  • Delete message symbol. Represented by a solid line with a solid arrowhead, followed by an X.





Data model

Class diagram

Комментарии
  • Использование объектов классов другими объектами может быть описано через использование компонентов. 


The class diagram shows the building blocks of any object-orientated system. Class diagrams depict a static view of the model, or part of the model, describing what attributes and behavior it has rather than detailing the methods for achieving operations.

A class is an element that defines the attributes and behaviors that an object is able to generate.

Class Notation

The notation that precedes the attribute, or operation name, indicates the visibility of the element: if the + symbol is used, the attribute, or operation, has a public level of visibility; if a - symbol is used, the attribute, or operation, is private. In addition the # symbol allows an operation, or attribute, to be defined as protected, while the ~ symbol indicates package visibility. 

Static (underlined)


Interfaces

An interface is a specification of behavior that implementers agree to meet; it is a contract.





Associations

In UML models, an association is a relationship between two classifiers, such as classes or use cases, that describes the reasons for the relationship and the rules that govern the relationship. When you model a system, certain objects will be related to each other, and these relationships themselves need to be modeled for clarity.

An association is a linkage between two classes. Associations are always assumed to be bi-directional; this means that both classes are aware of each other and their relationship, unless you qualify the association as some other type.


Association class

In modeling an association, there are times when you need to include another class because it includes valuable information about the relationship.

Inheritance


It refers to the ability of one class (child class) to inherit the identical functionality of another class (super class), and then add new functionality of its own.







Aggregations ( consists of )

An association with an aggregation relationship indicates that one class is a part of another class. In an aggregation relationship, the child class instance can outlive its parent class.



The composition aggregation relationship is just another form of the aggregation relationship, but the child class’s instance lifecycle is dependent on the parent class’s instance lifecycle.

Nestings

A nesting is connector that shows the source element is nested within the target element.



ERM diagram (crow's foot)

An Entity Relationship (ER) Diagram is a type of flowchart that illustrates how “entities” such as people, objects or concepts relate to each other within a system.

ER models and data models are typically drawn at up to three levels of detail

  1. Conceptual data model: The highest-level view containing the least detail. Its value is showing overall scope of the model and portraying the system architecture. For a system of smaller scope, it may not be necessary to draw. Instead, start with the logical model.
  2. Logical data model: Contains more detail than a conceptual model. More detailed operational and transactional entities are now defined. The logical model is independent of the technology in which it will be implemented.
  3. Physical data model: One or more physical model may be developed from each logical model. The physical models must show enough

How to create

  1. Purpose and scope: Define the purpose and scope of what you’re analyzing or modeling.
  2. Entities: Identify the entities that are involved. When you’re ready, start drawing them in rectangles (or your system’s choice of shape) and labeling them as nouns.
  3. Relationships: Determine how the entities are all related. Draw lines between them to signify the relationships and label them. Some entities may not be related, and that’s fine. In different notation systems, the relationship could be labeled in a diamond, another rectangle or directly on top of the connecting line.
  4. Attributes: Layer in more detail by adding key attributes of entities. Attributes are often shown as ovals.
  5. Cardinality: Show whether the relationship is 1-1, 1-many or many-to-many.

Examples







Comments