The main contents of the first 4 period include:
First, standard modeling language UML overview
Second, the standard modeling language UML static modeling mechanism
Third, standard modeling language UML dynamic modeling mechanism
Message
2. Status diagram
3. Sequence diagram
4. Cooperation map
(Connected to the previous period)
5. Activity Diagram
The application of the activity map is very wide, which can be used to describe the behavior of the operation (class method), or the work procedure within the use case and the object. The activity map is changed by the state diagram, which are each used for different purposes. The active map captures the results of the action (the work or activity of the action) and the action of the active map according to the change of the object state. An active map will immediately enter the next activity (the change in the status in the state map may require the trigger of the event). Figure 1 shows an example of a activity diagram.
Events and metastasis
A operation can be described as a series of related activities. There is only one starting point, but there can be multiple end points. The transfer between the event allows the same for Guard-Condition, Send-Clause, and Action-Expression, which is the same as that defined in the status diagram. An activity can be sequentially followed by another activity, which is a simple order relationship. If a rhombus is used in the active diagram, the conditional relationship can be expressed (see Figure 1), and the determination flag can have multiple input and output transfer, but only one output transfer is triggered in the active operation.
The activity map is also useful to represent and distribute it. In the active diagram, use a horizontal thick line called the synchronous bar to divide a transition into a plurality of concurrent execution, or a plurality of transitions into a transfer. At this time, only the input transfer is valid, the synchronization bar triggers the transfer, and then performs the following activities, as shown in Figure 2.
The lane activity map tells you what happened, but did not tell you who the activity will be done. In programming, this means that the activity diagram does not describe which class is completed. The lane solves this problem. It combines the logical description of the activity map and the sequential diagram and cooperation graphs. As shown in FIG. 2, the lane is represented by a rectangular frame, and the activity belonging to a lane is placed in the rectangle, and the object name is placed on the top of the rectangular frame, indicating the activity in the lane, is responsible for the object. Objects can appear in the active diagram. Objects can be used as an input or output of the activity, and the input / output relationship between the object and the activity is represented by a dotted arrow. If only objects are affected by a certain activity, you can connect objects and activities with dotted lines without arrows, as shown in Figure 2. As shown in FIG. 3, the transmission and reception of the signal can be represented in the active diagram, respectively, respectively, respectively, respectively. The sending and receiving flag can also be connected to an object, and the sender and the receiver used to represent the message.
6. The use of four diagrams is simply introduced to the four charts (state diagrams, sequential diagrams, collaboration diagrams) of the system dynamic behavior in UML. These four figures can be used for dynamic modeling of the system, but their respective side focus is different for different purposes, respectively. The following is a simple summary of how to use these pictures correctly, and these recommendations should be used flexibly according to the specific situation during the actual modeling process.
First, do not draw a state diagram for each class in the system. Although this is perfect, it is too wasteful, in fact, you may only care about some kinds of behavior. The correct approach is to draw a status map for help understand the class. The status diagram describes the behavior of a single object across multiple use cases, not suitable for the behavior cooperation between multiple objects. To this end, a state diagram is often used in combination with other techniques (such as sequential diagrams, cooperation graphs, and activity graphs).
The sequence diagram and cooperation graphs are suitable for describing the behavior of several objects in a single use case. Where sequential map protrude the order of inter-object interaction, the layout method of the cooperation map can more clearly represent the static connection relationship between the objects. The sequence diagram and cooperation diagram are the best choice when behavior is simpler. However, when behavior is complicated, the two figures will lose their clarity. Therefore, if you want to display complex behavior across multiple use cases or multi-threaded, you can consider using the active diagram. In addition, the sequence diagrams and cooperation diagrams are only suitable for describing the cooperative relationship between objects, and not suitable for accurate definitions of behavior. If you want to describe the behavior of a single object across multiple use cases, a state diagram should be used.
Fourth, standard modeling language UML support environment
The standard modeling language UML is well defined, easy to express, powerful, not only supports object-oriented analysis and design, but also supports the entire process of software development starting from demand analysis. However, how to properly use this visual graphic modeling technology to solve the problem facing software development, how to develop and develop the modeling process of UML and its support environment, is still a hot problem in this field.
Currently, some research and actual development work has been conducted internationally based on UML development methods and environment. Rational is working on the research of the Objectory process, and attempts to further expand its originally supported tools to support UML modeling. The development and development work of the UML support environment in China is still in its infancy.
From the current demand and its movement of the software development process, the concept of the UML flexible software development process is proposed, and the corresponding UML integrated support environment is designed. 1. Basic Points of Process Engineering Any language support environment is to better develop computer application systems, and any computer application system is a target service for certain enterprises. Therefore, the development and development of computer application systems and their support environments must be carried out under the guidance of enterprise process engineering theory. Based on our research and the actual experience in process engineering theory and the actual experience in process engineering in the past ten years, the basic main points of the theory and process engineering environment are introduced. (1) Any enterprise should also be described in five aspects from processes, resources, institutions, behaviors, and information. The process refers to the relationship between the activities and its activities of the enterprises, which have a life cycle including a spiral characteristic of four stages of planning, design, construction, and application. Scheduling a business model, first must study the quantitative description of these five models and the constraints of their interrelationships, and study their evolution of techniques and constraints in four different stages, establish system kinetic models In order to solve the comprehensive integration and overall optimization of the above five models to lay the theoretical basis. (2) The process in any enterprise can be divided into two categories of longitudinal processes and horizontal processes. The longitudinal process is a hard-working hard-working hard-working hard-working hard-working hard-working, and the transverse process is a soft-tech group that serves the longitudinal process of the product and the management technology of the product and process. Therefore, it is necessary to scraighten a business process, and must also study the qualitative model and quantitative metrics of the longitudinal process and the horizontal process, study the interrelationship between these two types of processes, to establish a combination of product development and management processes, The quantitative relationship between the mutual quantitative relationship between hard-techniques and soft technology groups was used to study the simulation technology. (3) In the changing information society, due to the objective environment (external parameters of the system) and subjective entities (internal structures and states of the system), the structure, state, and its computer support environment of the system model should also be Change it. To this end, it is necessary to study the application technology for object-oriented technology in process engineering, combining software engineering, process engineering and enterprises, and lay the theoretical basis for the establishment of an adaptive process engineering support environment. We may wish to combine software engineering, process engineering, and enterprises. The engineering technology of comprehensive investigation is called the aggregation project, and the adaptive computer supports the environment is called the flexible information system. (4) The scale of the process can be large, and the duration of the process can be short. Therefore, it is necessary to study the horizontal blocking blocks that can support the process (dividing a system-wide system into several smaller subsystems), and support the longitudinal segment of the process (the process of longer duration is divided into a few Segmentation and integrated techniques of a short period of duration and comprehensive technology, the dynamic scheduling technology of resources and the local instantiation and local simulation technology of the model, in order to use the simulation technology to study a wide range, the long-term complex kinetics system lay lays a technical foundation . It is known from the above theory that any language support environment must meet these basic technical facilities, which is the basic starting point for our development and development standard modeling language UML support environment. In these basic points, especially paying attention is the top three, namely the concept of aggregation engineering and flexible information systems.
2. UML flexible software development process and its support environment (1) UML flexible software development process software systems are growing, and complexity is constantly increasing. Traditional software development model is increasingly difficult to meet demand. The new product development cycle is no longer a disposable process of demand definition, software design, implementation, and delivery, iterative incremental development methods have been widely adopted. In addition to the traditional concept, quality and three main requirements, the "flexibility" of the product support system has become a more important core requirement. Therefore, we attribute the new software development model to the iterative development shown in Figure 4 and the flexible software development model shown in Figure 5.
The so-called flexible software development means that the software development process should first establish a top-level model of the system under the traction of the demand engineering, and simulate, analyze and adjust it. Second, the top-level model is broken downward, and the model of each subsystem of the system is established, and these sub-models are simulated, analyzed and adjusted. The simulation result of the child model is then subjected to the upper layer, and then further simulates, analyzes, and adjusts the upper layer model. If it is not suitable, modification is made. Therefore, the entire modeling process is a "self-top molding, and modified by the bottom upward". Briefly, the flexible software development process is a demand traction, which is refined from the top downwardly, and then according to the "T-type technology", through the virtual execution of the model, the bottom is upward Modify until the simulation results of the layers meet demand.
The generation of code is based on the correctness of the model, considering the "closed loop development" that can feedback modification at the same time considering the flexibility and fast response capability of demand modification. That is, it can not only support automatic generation from the model to code, convert the new model to code, but also support the reverse transformation from the code to the model, transform the original code into model, re-analyze, modify and adjust, and new one The development is supported for increasing development. This can not only be submitted in phases, but also improve the response speed and strain ability to change user demand, to meet the new demand for users. (2) The basic demand for the UML support environment is based on the above theory and our five-year experience in developing and developing integrated software engineering environments. A perfect integrated process engineering environment should meet the following basic needs: · It should be able to support the development of a complete process model (ie five sides such as process, resources, institutions, behaviors, and information) and system models (that is, from process, behavior, information, and structures) Side to describe a system). • The model established under this environment should be an executable process (system) model, which should support the virtual execution (simulation) and actual operation of the model, so that the model can be analyzed and optimized at different levels. · Process (system) model should adopt a visualized icon and a body description, and the structure of its visual model map should be objectively, naturally reflecting communication and synchronization relationship between enterprises and institutions. • It should be able to support modeling people or managers to flexibly control the implementation of the model in accordance with the constraint conditions inside and outside the enterprise (system), thereby achieving crossover crossings and management processes. · It should be supported from the model automatic generation to run on the Internet and support multi-platform sharing and multi-project inventory to achieve strong support for the automation of the third generation process engineering. · It should also support the flexible management of various component libraries, support component-based programming methods, implement process components, demand description, multiplexing and assembly of software components.
UML Integrated Support Environment Countermeasures Supply Project Construction Environment and Integrated System Engineering Environment provides strong technical support. On the one hand, three of the functions and interfaces must be seamlessly connected, and the three in the style must be coordinated. At the division, the goal of the process engineering environment is to optimize the process. The goal of the system engineering environment is to automatically generate an optimized computer application system, and the UML support environment is to provide technical support to complement flexible computer application. (Endlessly)