Intro – Four Most Important EA Modeling Component
In this post, we will learn about the main elements of model construction using Enterprise Architect (EA). We will focus on the elements mainly used in modeling using EA and their relationships. I will mainly explain modeling using SysML as an example.
First, let’s explain the four most important elements in modeling.
A package can be understood as a concept similar to a folder in the Windows file system. A package acts as a container containing various types of elements and diagrams. For example, a package called ‘Modeling’ contains a Block Definition Diagram called ‘Elements of Modeling’ and several blocks included in that diagram.
Packages can have nested structures that can contain other packages. This is similar to how we create different folders under a folder to organize our files nicely. Using packages in this way allows you to systematically organize and manage the various components of the system you are modeling. Package structures manage the complexity of your model and provide a way to group related elements and present them effectively.
Elements are important elements that contain information needed for modeling. When designing with SysML, elements represent objects to be specified, and these objects have various properties. This includes Attribute, Operation, Constraint, Requirement, etc. Elements are the core components of SysML that can be displayed in nine different diagrams. Among the elements that can be displayed on a diagram, everything except connectors (relationships) can be considered elements.
Elements express the characteristics, behavior, constraints, and requirements of an object during the modeling process, and through this, the components of a complex system can be designed and analyzed in detail. By integrating elements into various diagrams of SysML, you can build a more accurate and detailed system model.
Diagrams are used to visually represent how various elements are connected to each other. Packages generally form a name space. This means that each element can belong to only one package, and as a result, the element’s name is linked to the name of the package, making it unique.
Additionally, when elements within the same package are displayed in a specific diagram, the Name Space (i.e. the name of the package) is not displayed separately. However, when an element belonging to another package is included in the diagram, the Name Space to which the element belongs is also displayed. This is expressed in the form “NameSpace::ElementName”.
- Connectors are important components used to establish relationships between elements. It is a connection between two elements and can represent various relationship types defined in SysML. Each diagram type has specific connectors available.
As an example, let’s look at the two main connector types:
- Shared Association (Aggregation): This connector features a white diamond on one end and a solid line on the other end. This relationship includes the part with the diamond connected to the solid line, but it is not a parent-child relationship. In other words, even if the diamond part is deleted, the part connected to the solid line will not be deleted.
- Reference Association (Association): This is the case where both ends are solid lines. This relationship represents a situation where two elements have a relationship with each other, but are not possessive. If there are no arrows, the relationship is bidirectional. The number at the end of the connector (e.g. [0..*, 1]) indicates the number of objects involved in the relationship. For example, in the relationship between packages and elements, a package can contain from zero to infinite elements, but each element can belong to only one package. These connectors allow you to clearly express and understand complex relationships between elements within your model. This is a great help in visually representing the interactions and structures between elements during the modeling process.
Now let’s talk about other properties that elements can have. As mentioned above, an element holds various information about the element we want to model. Because of this, there are many factors related to elements. (Only a portion of the elements related to the element are expressed in the figure below.)
Now let’s look at the various properties an element can have. An element contains various information about the element to be modeled, and accordingly, various related elements exist. This includes Attribute, Operation Properties, Receptions Port, Constraint, Requirement, etc. The specifics of each of these items will be discussed further when we dive deeper into SysML in the future.
Various properties related to elements play an important role in expressing and defining detailed aspects of the system being modeled. This allows you to build more accurate and detailed system models.
It is also worth mentioning connectors, which represent relationships between elements. For example, Part Association (Composition), represented by a black diamond and solid line, represents a parent-child relationship where the diamond part owns the solid line part. This is the relationship that when the diamond part is deleted, the solid line part is also deleted. Association relationships include Reference Association (Association), Shared Association (Aggregation), and Part Association (Composition), which are distinguished by inclusion relationship and parent-child relationship. These association types play an important role in clarifying the structure and relationships of the system being modeled. Especially in embedded system design, Part Association is mainly used.
In this post, we learned about the main components used in system modeling. The packages, elements, diagrams, and connectors discussed here play a very important role in the modeling process and are essential for clearly expressing the structure and relationships of the system.
In the next post, we will cover the basic usage of EA.