Fourth, standard modeling language UML support environment

xiaoxiao2021-03-06  70

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.

1. UML flexible software development process

The size of the software system is getting bigger and larger, and the 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, the new software development mode is now attributed to the iterative development and the flexible software development model shown in FIG. 5 shown in FIG. 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. UML integrated support environment

The UML integrated support environment is a system development environment that supports construction of a flexible information system under demand traction. Its composition should include UML visualization modeling systems, analog systems, code generation systems, reverse conversion systems, quality control systems, and their support software. These environments should be based on the syntax rules and semantic definitions of UML, as shown in Figure 1. It can be seen that this support environment is an integrated support environment that supports "closed-loop development" generated by system modeling, system simulation, and system generated.

(1) UML Visual Modeling System Frame UML Visual Modeling System Supports the entire modeling process of system design, system analysis to system design, providing editing and beautifying tools for UML graphics, ensuring that the syntax is correct, the semantic complete UML graphics Model and provide assistance support including document management and graphic printing. The modeling mechanism for supporting the environment Since UML not only supports the model model of the system, it also supports the modeling of demand and system architecture, which not only supports the establishment of a static model of the system, but also supports the dynamic model of the system, therefore, the model construction system The following models should be supported: The demand model includes a static model and a dynamic model. The static model is a functional model, and the relationship between the system functions and the potential users of each function are described in UML. The dynamic model supports a description of the business process or transaction process through the active diagram. The system object model includes a static model and a dynamic model. Define a static relationship between system objects and objects by a package diagram, class diagram, and object diagram; through sequential diagrams, cooperation diagrams describing the interaction between objects, the live cycle of the object, and the state of the object may exist in the lifecycle. Conversion constraints. The system architecture model supports software architectural and hardware architectural structures and definitions of communication mechanisms by component diagrams and configuration graphs. At the same time, it should further support the visual representation of the cooperative relationship between the hardware and software system.

The detection mechanism of the modeling system UML syntax correctness detection mechanism is to ensure that the obtained UML graphics model is in line with its syntax definition, and the syntax correctness detection mechanism should be provided. A preferred method is to provide the syntax-guided UML visual modeling tool, providing dynamic grammar guidance and grammar detection function during the construction of the model. In this way, it is convenient for users to learn and use, and it is also possible to ensure the correctness of the built model in the grammatical structure. UML model consistency inspection mechanism Since UML supports from demand analysis to the system design of the entire modeling process, support users from different perspective description systems, and the collaboration and constraint between large software projects are intricate, it should not be Alone bear the management and maintenance of them. As a modeling support system, a consistent inspection mechanism between the model should be provided. First, the mechanism should be based on the above discussion based on the UML software development model, and the time to introduce the model is determined on the time axis of the software development phase; secondly, it is clear that the refined hierarchy mechanism of the same model, and how to describe the main model with other models Detail; third, on the software development phase time axis, a model exists in the hierarchy of the top-down decomposition, in the hierarchy generated in each time phase, various UML models are constrained, and cooperative and complex mesh Relationship, the same model of different stages, the same model of different functions, and the mathematical model of different model constraints; Finally, on the basis of this mathematical model, research will be the same as the model of the constraint and collaborative relationships. Sexual inspection mechanism. Further, since the same model is allowed from different angles, such as the interaction map includes a sequence diagram and a cooperation diagram, there is redundant information between the two, but therefore, not only the consistency between the two information is not only, but also support Consistency conversion between the model.

The complete check mechanism complete check mechanism of the UML model must first define a complete guidelines for the UML graphics model to ensure the completeness of the UML graphics model on the basis of the UML semantic definition. The completeness of the UML graphics model can be considered in three hierarchies: the completeness of each graphic; the completeness of each sub-model, that is, the combination of related graphics; the overall completeness of the system model. Significance of these three completeness is that semantic completeness and semantic correctness check can be performed at different stages. Document Generation and Management Tool Documentation Generation Tool refers to a document automatic generation mechanism. As a modeling support system, it should be supported automatic generation of document data such as demand, object-oriented analysis and design, system architecture, and other document data. Document Management Tools are auxiliary management of version management of documentation.

(2) UML simulation system

System simulation mechanism supports functional simulation and performance simulation of UML models, including the following three parts:

Simulation of dynamic models mainly includes simulation of active model, interaction model (sequential diagram and cooperation), and state diagram. Depending on the predefined semantics, the simulation of each model has truly reflects objective reality and user needs on the description of the system in time characteristics, and should provide the corresponding tracking debug mechanism. System function (demand) and user interface simulation uses to automatically generate tools for code automatic generation tools and user interfaces, generate system prototypes, and provide users to ensure effectiveness of modeling. System performance simulation as a good modeling and development support tool to support the modeling of system architecture, that is, in the case of different system configuration and function assignment, simulate system performance in order to obtain an optimized system design And a reasonable system configuration.

(3) UML code generation system

The UML integrated support environment should support code generation of visual objects and behavior. The UML code generation system is also called a forward transform system for the UML support environment. It is well known that the ultimate goal of software development is to generate executable code. In most software development environments, modeling and encoding processes lack organic unity, this is there is historical reasons. The most important reason is the lack of powerful, simple and clear, standard unified modeling languages. The emergence of UML and is accommodated by OMG, providing a good starting point for eliminating this obstacle.

In terms of UML language code generation mechanism, some major companies have made beneficial research and development work, which is relatively represented by Rational Company and Advanced Software Technologies Inc. However, these research and implementation are limited to class diagrams in the UML static model, and other research materials related to model code automatic generation mechanism are very rare.

The code automatic generation mechanism should dynamically collaborate dynamically according to the UML language, the complex feature, first defining the semantics of the UML and the semantic programming language (first is Java), research a dedicated semantic mechanism description of object-oriented models and languages Static mechanism, establish a semantic model of both. Then, the mapping model of the two is then established, and the code automatically generates the special mechanism for implementing technology and programming languages ​​independent of the UML language itself. The code automatic generation mechanism should also consider the demand for the back reverse conversion mechanism.

(4) UML software quality control

The quality of the software system is often the key to the success or failure of large and complex systems. The main reason for software system is difficult to guarantee first is the intrinsic complexity in software systems. But people often have enough understandings for this, and the complexity of the software system is too low. Another reason is due to the intrinsic invisibility of software systems and their management work. Using quantitative software projects is conducive to improving visibility, but it is not entirely transparent. Therefore, under the premise of contemporary software technology, the construction of software quality control is imperative. The view of the software quality project is mainly divided into two geography, a good-enough, another is called "error-free" (ERROR-Free). In the construction of a software quality control environment, in addition to building a general software process management environment (including software project management, software configuration management, software quality management), software process support environment (to support software development unit maturity model CMM, individual software process PSP And supporting the implementation of the group software process TSP, it should also contain three sub-environments that are related to each other, independently: Integrated Software Test Environment should include software requirements overlay test tools, source program overwriting test tools, software regression Test tool, software test management tool and memory load detection tool, etc. Integrated Software Quality Measurement Environment Metrics About the original data of software quality, and calculates the management metrics required in ISO software metrics. Software Product Quality Comprehensive Evaluation System For comprehensive consideration of the quality of software products from the above factors, the resulting data is weighted. Only software that meets the overall requirements is considered a qualified software product.

(5) UML Reverse Transform System When the user modifies the generated code, the reverse conversion mechanism converts the user's modification to the model. Otherwise, it will cause the model and code to make the system's expansion, increasing deletion, and maintenance. If a support environment is both a forward transformation mechanism, a retrograde transformation mechanism can maintain the consistency of the model and code. The reverse conversion mechanism of the dynamic model is a difficult point of research, which is generally composed of modeling, precipitation and abstraction.

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

New Post(0)