Object-Oriented Analysis and Design (OOA & D) method of development in the late 80s to 90s there was a climax in, UML is the product of the climax. It not only unified Booch, Rumbaugh and Jacobson's representation, and its further development were made, and the ultimate reunification of the commonly accepted standard modeling language.
1. The emergence of standard modeling language UML
Recognized object-oriented modeling language appeared in the mid 70s. From 1989 to 1994, their numbers increased from less than 10 kinds of more than 50 kinds. Among the many modeling languages, the creator of the language to praise their own products, and continuously improved. However, OO method users do not understand the advantages and disadvantages of different modeling language and the differences between each other, making it difficult to choose the right features depending on the application modeling language, so the outbreak of a "method wars." 90 years, the number of new methods have emerged, most notably the Booch 1993, OOSE, and OMT-2 and so on.
Booch object-oriented approach is one of the earliest advocates, he proposed the concept of object-oriented software engineering. In 1991, he previously work for the Ada extended to the whole object-oriented design. Booch 1993 more suitable for the design and construction. Rumbaugh et al proposed an object-oriented modeling technique (OMT) method, using object-oriented concepts, and introduces a variety of language-independent representation of character. This way the object model, dynamic model, functional model and use case model, the whole system together to complete the modeling, the concept to define and symbols can be used for software development, analysis, design and implementation of the 鍏?process, software developers do not have to different stages of the development process concepts and signs. OMT-2 particularly suitable for analysis and description of data-centric information system.
Jacobson made in 1994 OOSE method, its biggest feature is for the use case (Use-Case), and the description of use case introduced the concept of the external role. The concept of use cases is important to accurately describe the demand for weapons, but the use cases throughout the entire development process, including system testing and validation. OOSE more appropriate to support business engineering and requirements analysis. In addition, Coad / Yourdon method, known OOA / OOD, it is the first object-oriented analysis and design methods. The method is simple, easy, object-oriented technology suitable for beginners to use, but because of the method in dealing with capacity constraints, is now rarely used.
To sum up, first of all, the face of numerous modeling language, the user can not afford to distinguish the differences between different languages, making it difficult to find a more suitable language features of their application; Second, the modeling language is actually a great deal of diversity of many; Third, although most of the different modeling language similar to, but there are some subtle differences, greatly hampered communication between users. Therefore, objectively speaking, is very necessary to carefully compare the advantages and disadvantages of different modeling language and concluded that the practice of object-oriented technology based on the organization of joint design team, according to application requirements, its essence, to its dregs, seek common ground, unity modeling language.
October 1994, Grady Booch and Jim Rumbaugh to begin work towards this work. They first Booch9 3 and OMT-2 unified, and in October 1995 released the first public version, called the Unified Method UM 0.8 (Un itied Method). In autumn 1995, OOSE founder Ivar Jacobson joined to this work. After Booch, Rumbaugh and Jacobson's efforts three, in June 1996 and October were released two new versions, that is UML 0.9 and UML 0.91, and UM renamed UML (Unified Modeling Language). In 1996, some agencies will UML as its business strategy has become increasingly obvious. UML developers received a positive response from the public, and proposing the establishment of a UML member associations to improve, enhance and promote the work of the definition of UML. At that time the members of the DEC, HP, I-Logix, Itellicorp, IBM, ICON Computing, MCI Systemhouse, Micr osoft, Oracle, Rational Software, TI, and Unisys. The body of the UML 1.0 (1997 骞?1 month) and UML 1.1 (1997 骞?11 17) of the definition and release play an important role in promoting.
UML is a well-defined, easily expressed, powerful and universal modeling language. It is dissolved in the field of software engineering of new ideas, new methods and new technologies. Its scope is limited support for object-oriented analysis and design, also supported the demand of the beginning of the whole process of software development.
Object-oriented technology and UML development process on the diagram can be expressed as a standard modeling language, there is an important achievement. In the United States, ended in October 1996, UML was the industrial sector, technology and application of wide support, there are more than 700 companies that support the use of UML as the modeling language. The end of 1996, UML object-oriented technology has been able to play 85% of the market has become the de facto visual modeling language industry standard. November 17, 1997, OMG adopted UML 1.1 object-oriented technology as the standard modeling language. UML represents the object-oriented method of software development technology development direction of the market with great prospects, but also of great economic value and defense value.
2. The content of the standard modeling language UML
First, UML combines the Booch, OMT, and OOSE methods of the basic concepts, and basic concepts of object-oriented technology and other basic concepts of most of the same, and therefore, UML is bound to become of these methods and other methods of users to use a the same kind of simple modeling language; Second, UML is not just a simple convergence of the above methods, but these methods are based on the widely soliciting opinions, the collection of many long, after several changes were completed, UML extends the existing methods scope of application; Third, UML is a standard modeling language, rather than the standard development process. Although the application of UML to systems development process necessary for the background, but because of different organizations and different applications, need to take a different development process.
As a modeling language, UML is defined to include UML and UML notation semantics of two parts.
(1) UML semantic element model based on the precise definition of UML. Element model of all the elements for the UML syntax and semantics in providing a simple, consistent and common definition of notes, so that developers can get the same semantics, eliminating the best expressions vary the impact. In addition, the meta model of UML also supports the expansion of the definition.
(2) UML notation UML notation representation of the definition, development tools for the development or use of these graphical symbols and text syntax provides a standard model for the system. These graphical symbols and text are expressed in application-level model, the semantics is an instance of UML metamodel.
Unified Modeling Language UML's important to plan the following five categories (a total of nine kinds of graphics) to define:
* The first is use case diagram, description of system functions from a user point of view, and pointed out that the function of the operator.
鈥?The second type is a static map (Static diagram), including class diagrams, object diagrams and package diagrams. Class diagram describing the system in which the static structure of classes. The definition of the class system, not only that the link between class, such as association, dependency, aggregation, etc., but also the internal structure of classes (class attributes and operations). Class diagram describes a static relationship between the system's entire life cycle are valid. Object diagram is an instance of class diagrams, class diagrams using almost exactly the same logo. Their difference is the object diagram shows the class of multiple object instances, rather than the actual class. An object diagram is an instance of class diagram. Because there is an object life cycle, so the object graph can only exist in the system a certain time period. Package from the package or class composition, said package and the package relationship. Package diagram is used to describe the system hierarchy.
* The third type of behavior diagram (Behavior diagram), describe the system dynamic model and the composition of the interactions between objects. One type of object state diagrams of all possible states and state transfer time of the incident conditions. Typically, the state diagram is the class diagram of the supplement. Their utility does not need to draw a state diagram of all classes, only those who have more than one state of its actions by the external environment and change the class draw a state diagram. The activity diagram describes the use case requirements to meet the activities to be undertaken and the constraint relationship between the activities, help identify parallel activities.
* The fourth category is the interactive map (Interactive diagram), describe the interactions between objects. One sequence diagram shows the dynamic relationship between objects, which emphasizes the message is sent between objects in the order, also shows the interaction between objects; collaboration diagram to describe the collaborative relationships between objects, similar to co-map with the sequence diagram to show an object between dynamic partnership. Apart from showing the exchange of information, the cooperation graph also shows the objects and their relationships. If the stress of time and sequence, then use the sequence diagram; if the emphasis on the superior-subordinate relationship, select the collaboration diagram. The two plans together is called interaction diagram.
* The fifth type is the implementation plan (Implementation diagram). One component diagram describes the physical structure and the code component dependencies between components. A component may be a source code component, a component or an executable binary components. It contains the logic class or implementation class of relevant information. Parts diagram help analyze and understand the extent of interaction between the components.
Define the system configuration diagram of physical hardware and software architecture. It can display the actual computer and equipment (by Node that) and their connection relations between, also displays the connection type and dependencies between the components. Internal nodes, place the executable components and objects to display the node with the corresponding relationship between the executable software unit.
From the application point of view, when designing systems using object-oriented technology, the first is to describe the demand; followed by the establishment of the system under the static demand model to construct the system's structure; third step is to describe the behavior of the system. Which in the first step in the establishment and the models are static, including the use case diagram, class diagram (including package), object diagram, component diagram and layout plan of five graphics, is a standard modeling language UML- Static Model. The third step in the model, or can do, or that the timing of implementation status or interactions. It includes state diagram, activity diagram, sequence diagrams and collaboration diagrams of four graphics, is a standard modeling language UML dynamic modeling mechanism. Therefore, the standard modeling language UML to the main content could be summarized as static and dynamic modeling mechanism modeling mechanism two categories.
3. Unified Modeling Language UML's main features
Unified Modeling Language UML's main features can be summarized into three points:
(1) UML unified Booch, OMT, and OOSE methods such as the basic concept.
(2) UML object-oriented technology also draws on the area of the strengths of other schools, including the impact of non-OO approach. UML notation to consider the various methods of graphic representation, to delete a large number of easily lead to confusion, unnecessary and rarely used symbols, but also added some new symbols. Therefore, UML, object-oriented field of importing a lot of people thought. These ideas are not invented UML developers, but developers of the OO based on the best methods and rich practical experience in computer science integrated refining formed.
(3) UML in evolution also put forward some new concepts. Added in the UML standard template (Stereotyp es), responsibilities (Responsibilities), extension mechanism (Extensibility mechanisms), thread (Thread s), process (Processes), distributed (Distribution), concurrent (Concurrency), model (Patterns ), cooperation (Collaborations), activity diagram (Activity diagram) and other new concepts and a clear area classification type (Ty pe), class (Class) and instance (Instance), refinement (Refinement), interfaces (Interfaces) and components (Com ponents) and so on.
4. Unified Modeling Language UML for applications
UML's goal is to map object-oriented way to describe any type of system, with wide applications. The most common model is to build software systems, but it can also be used to describe the non-software systems, such as mechanical systems, business organizations or business process and information systems to handle complex data, real-time requirements of industrial systems or industrial processes. In short, UML is a general standard modeling language, can anyone with a static structure and dynamic behavior of the system modeling. In addition, UML for system development process from requirements specification describes the system after the completion of various stages of testing. In the requirements analysis phase, you can use use cases to capture user requirements. Through use case modeling, describe the system of interest to the external role of the system (use cases) of the functional requirements. Analysis phase, concerns in the domain of the key concepts (such as abstraction, classes and objects) and mechanisms need to identify these classes and their mutual relations, and use UML class diagrams to describe. For the realization of use cases, class collaboration between the needs of this dynamic model can be used to describe UML. In the analysis stage, the only problem domain object (the concept of the real world) model, regardless of the definition of software system in the technical details (such as processing user interface, database, communication and parallelism issues of class). These technical details will be introduced at the design stage, so the design phase for the construction phase to provide more detailed specifications. Programming (structure) is an independent stage, its mission is to use object-oriented programming language, the class will come from the design stage into actual code. Established in the analysis and design using UML models, to avoid considering the model into a particular programming language. Because in the early stages, the model is only the understanding and analysis of system architecture tools, the question is premature to consider coding is not conducive to the establishment of a simple model of the right.
UML model can also serve as the basis for the testing phase. Systems often need to go through unit testing, integration testing, system testing and acceptance testing. Different test groups using different UML diagram as a test based on: Unit testing using class diagrams and class specifications; integration testing using the parts diagram and cooperation plans; system testing using the use case diagram to verify the behavior of the system, acceptance testing by the user to verification system tests whether the results meet the needs identified in the analysis phase.
In short, the Unified Modeling Language UML for object-oriented technology in order to describe any type of system, but also for different stages of system development, from requirements specification describes the system until after the completion of testing and maintenance.
相关链接:
DVR-MS To MPGFlash to MPEGspecifications that make erp software a NecessitySWF To MP4