First, ROSE's core - unified modeling language UML
(1) UML development history
Ø The recognized object-oriented modeling language appeared in the mid-1970s.
Ø Available in a variety of modeling languages: Booch 1993, OOSE, OMT _2, OOA / OOD.
Ø UML modeling language formation is the standard of the industry (1996).
Its development process can be expressed by the image below:
(2) Details of UML (Unified Modeling Language)
The objective world is a complex giant system that needs to be examined from different angles to truly understand this system. In order to support the system from different angles, the standard modeling language UML defines the following 5 categories, a total of 9 model diagrams, the following graphs are basic description:
Types of
image name
description
Use the example diagram to describe the functionality of the system from the user angle, and point out the operator of each function. Static diagrams are used to define the class of the system, including the connection between the description class (such as association, dependency, polymerization, etc.) and the internal structure of the class, that is, the class properties, and operations. Therefore, the class diagram is a static structure that describes the system in the system, that is, it describes a static relationship, which is valid for the entire life cycle of the system. The package drawing or class is composed, mainly indicates the relationship between the package and the package, or the package and the class. The package diagram is used to describe the hierarchical structure of the system. The behavioral map state diagram describes all possible states of a class of objects and a transfer condition when the event occurs. Typical state diagrams are supplemented to class diagrams. The active diagram describes the activities of the activities to meet the requirements of the use case and the constraint relationship between the activity. Using the activity map can easily represent parallel activities. The interaction sequence diagram is used to display dynamic cooperative relationships between objects. It emphasizes the order of messaging between objects, and also displays the interaction process between objects. Collaborative graphs are equivalent, but focusing on collaborative relationships between objects. Implementing the map components describe 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.
1, use case
The usage model portion of the order management system will be described as an example.
Since they have a slight distinct feature, it is very useful to separate ordinary customers from Internet customers. However, because Internet customers have indeed all of the features of a customer, you can say that Internet customers are a special example of the customer and can be indicated by the protagonist generalization.
In this figure, the specific use cases are "telephone order" (issued by the client protracor) and "Internet Order", respectively. These use cases are deformed by more common "order" use cases. In this example, "Order" use case is an abstract case. The "Request Directory" uses an example represents an optional behavior section, which is not a component of the "Order". It has been separated to form an abstract case for simplifying "ordering" use case. "Providing customer data" use case is a segment that has been separated. It is separated because it is an independent function, only its result can affect the "order" use case. "Supply customer data" usage can also be multiplexed in other use cases. "Request Directory" and "Supply Customer Data" use cases belong to the abstract case in this presentation.
The behavior of the use case is inserted into a base in the basic use.
Example instances of execution sub-cases will follow the event stream of the parent case, while inserting additional behavior or modifying the behavior defined in the sub-event stream.
Ubizon emphasizes the similarity of parent and child behavior.
When performing a basic use case instance reaches the position of the extension point to define the extension point in the basic use, the condition of the corresponding extension relationship is evaluated. If the conditions are true, or if there is no condition, the use case instance will follow the extension case (or insertion segment corresponding to the extension point in the extended point). If the conditions for the extended relationship are not true, the extension is not performed. Expansion represents an optional behavior
Use case example
2, class diagram
3, package diagram
4, sequence diagram
There can be an object and protagonist instance in the sequence diagram, and how they interact. The sequence diagram depicts an event (description from the active angle) that occurs in an object participating in the interaction, and how these objects communicate with each other. You can make a sequence diagram for a variety of different forms of use event streams.
5, collaborative map
There are objects and protagonist instances in the collaboration map, as well as connectivity and messages that are related to their relationships and interactions. By explaining how communication between the objects is implemented by mutually transmitting messages, the collaboration diagram describes the case where the participation object occurs. You can make a collaboration map for each of the variations of the use case event.
6, status map
The state machine is used to model the dynamic behavior of the model element, and more specifically, the model is modeled in terms of event driven in system behavior. The state machine is specifically used to define a state-dependent behavior (ie, behavior varies depending on the state of the model element). Its behavior does not describe its behavior as a model element that changes in its element state does not require a state machine (these elements are typically passive class).
The state machine consists of a state, and each state is linked by the transfer. The status is the condition that the object performs a certain activity or waiting for an event. Transfer is the relationship between two states, which is triggered by an event and then performs a specific operation or evaluation and causes a specific end state. Figure 1 depicts various elements of the state machine.
7, activity map
A event map may include the following elements:
• The active status indicates that a certain event or step is performed in the workflow.
· Transfer is indicated in the order of various active status. This transfer can be referred to as completion of the transfer. It is different from general transfer because it does not require a significant trigger event, but is triggered by completing the activity (represented by active status).
· Decision, define a set of warning conditions. These alert conditions determine which transfer in a set of alternative transfer after the activity is completed. You can also use the determination icon to indicate the location of the thread to reconfigure. Decision and alert conditions allow you to display alternative threads in the workflow of business use.
• Synchronous schematic is used to show parallel branch. Synchronous schematic allows you to display parallel threads in the workflow of business use.
8, component map
You can see the source code and running components of the system by the following figure.
With this figure, those who are responsible for compiling and deploying systems know which code library, which executable files generates when compiling code; developers know what code library, what is related to each other; the component's dependence makes the compiler know the correct compilation order
9, deployment diagram
Deployment diagram Consider the actual deployment of the application, including network deployment, and components on the network. One system has only one deployment diagram. The deployment diagram contains the connection between the processor, the device, the process, and the processor and the device.
Deploy the diagram displays all nodes on the network, and the process between the nodes and the process running on each node.
Figure
Scope of application
Interaction (Sequence Diagram / Collaboration Map) Suitable for describing a single-use case behavior map suitable for describing a single object across multiple use cases to display multiple objects and multiple use cases The order component diagram is suitable for representing the dependency relationship between the various functional components in the system.