What Is Unified Modeling Language?
Unified Modeling Language (UML) is a standard language for describing, visualizing, and documenting products for object-oriented systems. It is a non-patented third-generation modeling and protocol language. UML uses object-oriented design modeling tools, but is independent of any specific programming language. [1]
- UML has a wide range of modeling capabilities as a unified software modeling language. UML is a software building that digests, absorbs, and refines all existing software.
- In summary, UML has the following functions: [2]
- There are three main models in UML system development: [3]
- UML consists of model elements, diagrams, views, and general mechanisms.
- It is very important to distinguish UML models from UML diagrams. UML diagrams, including use case diagrams, collaboration diagrams, activity diagrams, sequence diagrams, deployment diagrams, component diagrams, class diagrams, and state diagrams, are graphical representations of the information in the model, but UML The model exists independently of the UML diagram. The current version of UML only provides the exchange of model information, not the exchange of graph information. [3]
- UML uses a set of graphical notations that are equivalent to the Java language or other object-oriented languages and are also ontological equivalents. [3]
- UML is not a methodology and does not require a methodology, but UML is essential for the Rational Unified Process. [3]
- Here is a brief introduction to the functions of the main legends in UML: [3]
- 1) Use case diagram should
- Describe roles and the connections between roles and use cases. Explain who is using the system and what they can do with it. A use case diagram contains multiple model elements, such as systems, actors, and use cases, and shows the various relationships between these elements, such as generalization, association, and dependencies. [3]
- 2) Class diagram
- A class diagram is a static view that describes the classes in the system and the relationships between each class. Allows us to have a
- 3) The object circle is very similar to the class diagram. It is an instance of a class diagram. The object diagram shows multiple object instances of a class, not the actual class. It does not describe the relationship between classes, but the relationship between objects. [3]
- 4) Activity diagram
- Describe the activities required by the use case, as well as the constraints between the activities, to help identify parallel activities. It can demonstrate where functions exist in the system, and how these functions and the functions of other components in the system can jointly meet the business needs of the previous use case diagram modeling. [3]
- 5) status
- Describes all possible states of an object of a class, as well as the transition conditions of states when an event occurs, which captures the life cycle of objects, subsystems, and systems. It can tell the state that an object can have, and how events (such as the receipt of a message, the passage of time, errors, conditions become true, etc.) affect these states over time. A state diagram should be connected to all classes with clearly identifiable states and complex behaviors; the diagram can determine the behavior of the class and how the behavior changes based on the current state, and can also show which events will change the state of the objects of the class . State diagrams complement class diagrams. [3]
- 6) Sequence diagram (sequence diagram)
- Sequence diagrams are models used to show how participants interact with objects of the system in a series of sequential steps. Sequence diagrams can be used to show how objects interact with each other. The sequence diagram focuses the display on the message sequence, which emphasizes how messages are sent and received between objects. [3]
- 7) collaboration
- Similar to sequence diagrams, showing the dynamic cooperative relationship between objects. It can be seen as the intersection of a class diagram and a sequence diagram, the collaboration diagram models objects or roles, and how they communicate with each other. If time and order are emphasized, sequence diagrams are used; if subordinate relationships are emphasized, collaboration diagrams are selected; these two diagrams are collectively called interaction diagrams. [3]
- 8) Component diagram (rental diagram)
- Describe the physical structure of code components and the dependencies between various builds. These diagrams are used to model the software components and their relationships.
- 9) deployment (configuration diagram)
- Used to model the physical deployment of the system. For example, computers and devices, and how they are connected. The users of the deployment diagram are developers, system integrators, and testers. The deployment diagram is used to represent a set of physical nodes and the interrelationships among the nodes, thereby establishing a physical model of the system. [3]