UML (2)

Source: Internet
Author: User
UML (2)
Author: gigix

2. Content of the standard modeling language UML

First, UML integrates the basic concepts in booch, OMT, and OOSE methods, and these basic concepts are mostly the same as those in other object-oriented technologies, UML must be a simple and consistent modeling language that users of these and other methods are willing to use. Secondly, UML is not only a simple convergence of the above methods, however, on the basis of these methods, we have extensively solicited opinions. After several modifications, UML expands the application scope of existing methods. Third, UML is a standard modeling language, rather than the standard development process. Although the application of UML must be based on the development process of the system, different development processes must be adopted because of different organizations and application fields.

As a modeling language, the definition of UML consists of UML Semantics and UML notation.

(1) UML semantic description precise metadata model definition based on UML. The meta-model provides simple, consistent, and general definitions for all UML elements in terms of syntax and semantics, enabling developers to achieve semantic consistency, eliminate the impact of the best expressions that vary from person to person. In addition, UML also supports the extension definition of the metadata model.

(2) UML notation defines the notation of UML symbols, which provides a standard for System Modeling by developers or development tools using these graphical symbols and text syntax. These graphical symbols and texts express application-level models. In terms of semantics, they are examples of UML meta-models.

The important content of the standard modeling language UML can be defined by the following five types of diagrams (9 in total:

· The first type is the use case diagram, which describes the system functions from the user's perspective and points out the operators of each function.

· The second category is static digraphs, including class graphs, object graphs, and packet graphs. The class diagram describes the static structure of the class in the system. It defines not only the classes in the system, but also the relationships between classes, such as association, dependency, and aggregation. It also includes the internal structure of the class (attributes and operations of the class ). A class chart describes a static relationship that is valid throughout the lifecycle of the system. An object graph is an instance of a class graph. It uses almost the same ID as a class graph. Their difference is that the object graph shows multiple object instances of the class, rather than the actual class. An object graph is an instance of a class graph. Because the object has a lifecycle, the object graph can only exist in a certain period of time in the system. A package consists of packages or classes, indicating the relationship between the package and the package. A package chart is used to describe the layered structure of the system.

· The third type is the behavior diagram, which describes the dynamic model of the system and the interaction between the components. The status chart describes all possible states of the class object and the transfer conditions of the State when an event occurs. Generally, a status chart is a supplement to a class chart. In practice, you do not need to draw a state chart for all classes. You only need to draw a state chart for classes that have multiple states and their behaviors are affected by the external environment and change. The activity diagram describes the activities that meet the requirements of the use case and the constraints between the activities, which is conducive to identifying parallel activities.

· Interactive digraphs describes the interaction between objects. A sequence diagram shows the dynamic cooperative relationship between objects. It emphasizes the order in which messages are sent between objects and displays interactions between objects. A Sequence diagram describes the cooperative relationship between objects, the cooperation diagram is similar to the sequence diagram, indicating the dynamic cooperation relationship between objects. In addition to information exchange, the cooperation diagram also displays objects and their relationships. If time and order are emphasized, the sequence chart is used. If the relationship between upper and lower levels is emphasized, the cooperation chart is selected. These two types of graphs are called interaction graphs.

· The fifth type is the implementation graph (Implementation divisor ). The component diagram describes the physical structure of the Code component and its dependencies. A component may be a resource code component, a binary component, or an executable component. It contains information about logical or implementation classes. A widget graph helps you analyze and understand the degree of interaction between widgets.

The configuration diagram defines the physical architecture of the software and hardware in the system. It can display the actual computers and devices (expressed by nodes) as well as the connection relationships between them, as well as the connection type and dependency between components. Place executable parts and objects inside the node to display the correspondence between the node and the executable software unit.

From the perspective of applications, when using object-oriented technology to design a system, the first is to describe the requirements; the second is to establish a static model of the system based on the requirements to construct the system structure; the third step is to describe the behavior of the system. The models created in step 1 and Step 2 are static, including the use case diagram, class diagram (including package), object diagram, component diagram, and configuration diagram, it is a static modeling mechanism of the standard modeling language UML. The model created in step 3 can be executed, or indicates the time sequence status or Interaction relationship during execution. It consists of four diagrams, including status chart, activity chart, sequence chart, and ing. It is a dynamic modeling mechanism of the standard Modeling Language (UML. Therefore, the main content of the standard modeling language UML can also be summarized into two categories: Static Modeling Mechanism and dynamic modeling mechanism.

 3. Main features of the standard modeling language UML

The main features of the standard Modeling Language (UML) are as follows:

(1) UML unifies the basic concepts in methods such as booch, OMT, and OOSE.

(2) UML also draws on the strengths of other schools in the field of object-oriented technology, including the influence of non-oo methods. UML notation considers graphical representations of various methods, removes a large number of confusing, redundant, and rarely used symbols, and adds some new symbols. Therefore, many people's ideas in the Object-Oriented field are integrated into UML. These ideas were not invented by developers of UML, but developed by developers based on the best oo methods and rich experience in computer science.

(3) some new concepts are proposed in the evolution of UML. Added a new template (stereotyp es), responsibilities, extensibility Mechanic (MS), thread (s), process (processes), distributed (distribution) to the UML standard) concurrency, patterns, collaborations, activity digraphs, and other new concepts, as well as clear areas, types, and classes) and instance, refinement, interfaces, and COM ponents.

 4. application fields of the standard modeling language UML

The purpose of UML is to describe any type of system in the form of object-oriented graphs, with a wide range of application fields. The most common model is to build a software system, but it can also be used to describe systems in non-software fields, such as mechanical systems, enterprise organizations, or business processes, and information systems that process complex data, industrial systems that have real-time requirements, or industrial processes. In short, UML is a general standard modeling language that can model any system with static structures and dynamic behaviors. In addition, UML is applicable to different stages from Requirement Specification descriptions to testing after the system is completed during system development. In the demand analysis stage, use cases can be used to capture user requirements. Use Case modeling to describe the external roles interested in the system and their functional requirements for the system (Use Case. In the analysis phase, the main concepts (such as abstraction, classes, and objects) and mechanisms in the problem domain need to be identified and their relationships need to be described using UML class diagrams.

To implement use cases, classes need to collaborate, which can be described using the UML dynamic model. In the analysis phase, only the objects in the problem domain (concepts in the real world) are modeled, classes that define technical details in software systems (such as those that handle user interfaces, databases, communication, and concurrency) are not considered ). These technical details will be introduced in the design phase, so the design phase provides more detailed specifications for the construction phase. Programming (constructor) is an independent stage. Its task is to convert classes from the design stage into actual code using object-oriented programming language. When using UML to build analysis and design models, we should avoid converting models into a specific programming language. In the early stage, the model was just a tool for understanding and analyzing the system structure. It was difficult to establish a simple and correct model to consider the coding problem too early.

The UML model can also be used as a basis for testing. Systems usually need to undergo unit testing, integration testing, system testing, and acceptance testing. Different test teams use different UML diagrams as the basis for testing: class diagrams and class specification descriptions for unit testing; component diagrams and contract diagrams for integration testing; the system test uses an example diagram to verify system behavior. the acceptance test is performed by the user to verify that the results of the system test meet the requirements identified during the analysis phase.

In short, the standard Modeling Language (UML) is applicable to describing any type of system with object-oriented technology. It is also suitable for testing and maintenance at different stages of system development, from Requirement Specification Description to system completion.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.