Unified Modeling Language UML Overview

zhaozj2021-02-08  391

Unified Modeling Language UML Overview

(This article is reproduced from Software Engineering Expert Network www.21cmm.com)

Object-Oriented Analysis and Design (OOA & D) Method has appeared a climax in the late 1980s, UML is the product of this climax. It not only has a representation of Booch, Rumbaugh, and Jacobson, but also has further developments, and eventually unified the standard modeling language accepted by the public.

1. Standard modeling language UML appearance

The recognized object-oriented modeling language appeared in the mid-1970s. From 1989 to 1994, the number has never been ten kinds of increases to more than 50. In numerous modeling languages, language creators strive to promote their products and constantly improve in practice. However, the user of the OO method does not understand the advantages and disadvantages of different modeling languages ​​and the differences between mutual differences, so it is difficult to select a suitable modeling language according to the application characteristics, so a "method war" has been burst. In the 1990s, a group of new methods had, and the most striking is Booch 1993, OOSE and OMT-2.

Booch is one of the earliest advocates for an object-oriented method, which proposed the concept of object-oriented software engineering. In 1991, he will extend the work of the ADA to the entire object-oriented design. Booch 1993 is more suitable for the design and construct of the system. Rumbaugh et al. Proposed an object-oriented modeling technology (OMT) method, using object-oriented concepts and introduces various independent representations. This method uses object models, dynamic models, functional models, and use case models to complete the modeling of the entire system, the defined concepts and symbols can be used for software development analysis, design, and implementation, software developers do not have to be Different stages of the development process for conversion of concepts and symbols. OMT-2 is especially suitable for analyzing and describing information-centric information systems.

Jacobson proposed OOSE method in 1994, and its greatest features are use-case, and the concept of external roles is introduced in the description of the use case. The concept of use case is an important weapon for accurately describing the needs, but the use of example throughout the development process, including testing and verification of the system. OOSE is more suitable for supporting business engineering and demand analysis. In addition, there is a COAD / YOURDON method, namely the famous OOA / OOD, which is one of the earliest object-oriented analysis and design methods. This method is simple, easy to learn, is suitable for beginners for object-oriented technology, but because the method is constrained in handling capacity, it has been rarely used.

In summary, first, in the face of many modeling languages, users have no ability to distinguish between different languages, it is difficult to find a language that is more suitable for its application characteristics; secondly, many modeling languages ​​have actually have thousands of autumn; Third, although there are many different modeling languages, there is still some subtle differences, which greatly hinders the communication between users. Therefore, in the objective, it is necessary to organize the joint design team, according to the application needs, take the exquisite, to the application requirements, take the application, to the same, unified construction Memory.

In October 1994, Grady Booch and Jim Rumbaugh were committed to this work. They first unified Booch9 3 and OMT-2 and released the first public version in October 1995, called unified method um 0.8 (UNTHED). In the autumn of 1995, OOSE's founder Ivar Jacobson joined this. Two new versions were issued in June and October, 1996, namely, UML 0.9 and UML 0.91, namely UML 0.9 and UML 0.91, namely UML 0.9 and UML (Unified Modeling Language). In 1996, some institutions have become increasingly obvious as their business strategy. UML developers have got a positive response from the public and initiatives established the UML membership association to improve, strengthen and promote UML definition work. The members at the time were DEC, HP, I-Logix, Itellorp, IBM, Icon Computing, MCI Systemhouse, Micr Osoft, Oracle, Rational Software, Ti, and Unisys. This institution has an important role in promoting UML 1.0 (Jan 2007) and UML 1.1 (November 17, 1997).

UML is a modeling language that is defined, easy to express, powerful and universally applicable. It dissolves new ideas, new methods and new technologies in the field of software engineering. Its scope is not limited to supporting object-oriented analysis and design, but also supports the entire process of software development starting from demand analysis.

Object-oriented technology and UML development process can be expressed by the above figure, and the emergence of standard modeling languages ​​is an important result. In the United States, as of October 1996, UML has been widely supported by the industrial, scientific and technological circles and applications, and more than 700 companies have expressed support for UML as modeling languages. At the end of 1996, UML has stabilized 85% of the object-oriented technology market, making it a de facto industrial standard for visual modeling language. On November 17, 1997, OMG adopted UML 1.1 as a standard modeling language based on object-oriented technology. UML represents the development direction of software development technology for object-oriented methods, which has huge market prospects, which also has significant economic value and defense value. 2. Standard modeling language UML content

First, UML combines the basic concepts in the Booch, OMT and OOSE methods, and these basic concepts are mostly the same as the basic concepts in other object-oriented technologies, and thus, UML necessarily becomes one of these methods and other methods. Simple and consistent modeling language; Second, UML is more than just the simple convergence of the above method, but in the basis of these methods, it is widely requested. The length of the collectors, and the UML expands existing methods. Application range; third, UML is a standard modeling language rather than standard development processes. Although the UML app inevitably uses the system's development process, different development processes need to be taken due to different organizations and different applications.

As a modeling language, the definition of UML includes two parts of UML semantics and UML representations. (1) UML semantic description is defined based on the precise element model of UML. The element model provides simple, consistent, universal definition instructions in grammar and semantics, enabling developers to make a semantic, eliminating the impact of the best expression methods vary from person. In addition, UML also supports extended definitions of metallographic models. (2) UML representation defines the representation of the UML symbol, which provides a standard for the developer or development tool using these graphics symbols and text syntax for system modeling. These graphics symbols and text are expressed by the application level, in semantic it is an instance of the UML meta model.

The important content of the standard modeling language UML can be defined by the following five types (a total of 9 graphics): • The first class is the example of the example, from the user's perspective, and points out the operator of each function. • The second category is a static diagram, including class diagrams, object maps, and package diagrams. One of the class diagrams describe the static structure in the system. Not only define classes in the system, but also the connection between the classes such as association, dependence, polymerization, etc., but also include the internal structure of the class (class properties and operation). The class diagram describes a static relationship that is valid throughout the entire life cycle of the system. The object map is an instance of a class diagram, which is almost identical to the same identity as the class diagram. Their differences are that the object chart displays a plurality of object instances of the class, not the actual class. An object map is an instance of a class diagram. Since the object is there in life cycle, the object map can only exist at a certain period of time. The package is composed of a package or class, indicating the relationship between the package and the package. The package diagram is used to describe the hierarchical structure of the system. • Third category is a behavior map, describing the dynamic model of the system and interaction between the constitutive objects. Where a state diagram describes the objects of the class objects all possible states and the transfer condition of the event when the event occurs. Typically, the state diagram is supplemented to the class diagram. In practice, it is not necessary for all class pictures, only for those types of pictorial pictures that have multiple states of their behavior affected by the external environment and changes. The activity diagram describes the activities that meet the activities you have to do with the use of examples and the constraint relationship between the activity, which is conducive to identifying parallel activities. • The fourth class is an interactive relationship between interactive diagram and describes the interaction between objects. Where sequential diagram shows the dynamic partnership between objects, it emphasizes the order of messaging between objects, and simultaneously displays interactions between objects; cooperation diagram describes collaborative relationships between objects, cooperation graphs, similar, displayed Dynamic partnership. In addition to displaying information exchange, the cooperation map also displays the object and the relationship between them. If you emphasize the time and order, use sequence diagrams; if you emphasize the upper and lower level relationships, select a collaboration diagram. These two graphs are called interactive diagrams. · Fifth category is Implement Diagram. The component diagram describes the physical structure of the code component and the dependencies between the components. One component may be a resource code component, a binary component or an executable component. It contains information about logical classes or implements classes. The component diagram helps to analyze and understand the interaction between components.

Configure the physical architecture of the hardware and software in the system. It can display actual computers and devices (represented by node) and their connection relationships, or display the type of connection and dependence between components. Inside the node, place the executable part and objects to display the corresponding relationship between the node with the executable software unit.

From an application perspective, when using an object-oriented technology design system, first is a description; secondly according to the requirements of the system, the system's static model is used to construct the structure of the system; the third step is to describe the behavior of the system. Among them, the model established in the first step and the second step is static, including five graphics such as examples, class diagrams (including packages), object diagrams, components graphs, and configuration diagrams, are standard modeling languages ​​UML Static modeling mechanism. The model established in the third step or can be executed, or represent the timing state or interaction between the execution. It includes four graphics such as state diagrams, active diagrams, sequence diagrams, and collaborators, and the dynamic modeling mechanism of standard modeling language UML. Therefore, the main content of the standard modeling language UML can also be summarized as two major classes of static modeling mechanisms and dynamic modeling mechanisms. 3. Main features of standard modeling language UML

The main features of the standard modeling language UML can be attributed to three points: (1) UML unified the basic concepts in Booch, OMT, OOSE. (2) UML also absorbs the strengths of other genres in the object-oriented technical field, including the influence of non-OO methods. The UML symbol indicates a graphical representation of various methods, deleting a large number of susceptible, extra and very small use symbols, and add some new symbols. Therefore, in the UML, the idea of ​​many people in the object-oriented field is exchanged. These ideas are not invented by UML developers, but developers comprehensively refined according to the best OO methods and rich computer science practices. (3) UML also proposed some new concepts during the evolution. In the UML standard, the template, the STEREOTYP ES, the EXTENSIBILITY MECHANISMS, the Thread S, Processs, Distribution, CONCURRENCY, Mode (Patterns Collaborrow, Activity Diagram (Activity Diagram), Clear Regional Classification (Class), Refinement, Interfaces, and Components ( CoM ponents, etc.

4. Standard Modeling Language UML Application

The goal of UML is to describe any type of system with a wide range of systems with a wide range of applications. One of these most commonly used a model of a software system, but it can also be used to describe systems in non-software domains, such as mechanical systems, enterprise organizations, or business processes, and information systems that handle complex data, industrial systems or industries with real-time requirements. Process, etc. In short, UML is a general standard modeling language that models any system with static structures and dynamic behavior. In addition, UML is suitable for different phases of demand specifications to the system completion during system development. In the demand analysis phase, use cases can be used to capture user needs. The external role of the system and its functional requirements for the system (use case) are described by modeling. Analytical phases mainly care about the main concepts in the domain (such as abstraction, classes, and objects, etc.) and mechanisms, need to identify these classes and their relationships between them, and describe them with UML class. To implement use cases, collaboration between classes, which can be described by UML dynamic models. In the analysis phase, only models of the problem domain (the concept of the real world), regardless of the classes that define technical details in the software system (such as classes that handle user interfaces, databases, communications, and parallelism). These technical details will be introduced during the design phase, so the design phase provides a more detailed specification in the construction phase. Programming (constructed) is a separate phase that converts classes from the design phase into actual code with object-oriented programming languages. When establishing an analysis and design model with UML, try to avoid converting the model into a certain specific programming language. Because in the early stage, the model is just a tool for understanding and analyzing the system structure, and it is very disadvantageous to establish a simple and correct model.

The UML model can also be used as a basis for the test phase. The system typically requires unit testing, integration testing, system testing and acceptance testing. Different test teams use different UML maps as test basis: unit test use class diagrams and class specifications; integrated test use parts graphs and cooperation diagrams; system test use case diagram to verify the behavior of the system, the acceptance test is performed by the user, Verify that the results of the system test meet the needs determined in the analysis phase.

In summary, the standard modeling language UML is suitable for describing any type of system with object-oriented technologies, and is applicable to different stages of system development, from demand specifications to test and maintenance after the system is completed.

转载请注明原文地址:https://www.9cbs.com/read-542.html

New Post(0)