The text is talking about a language
UML is used for a long time, and the nice project that is really used during the period may not. I always feel unsatisfactory, the next time I will do better. But it also finally had some practices. Write out everyone to discuss it.
Why don't use UML to say more, the title "Sharing a language" is why, customer, demand, system analysis, programmer, testing, and all project-related people must have an agreed standard, making everyone exchange There is no barrier in the process.
As soon as I see, the UML modeling system and the 7-story structure of the network's OSI have very similar. (Very strange ideas? I don't think that my mind is like this, I will think of project management when learning multi-threads. I know that the 7-story structure of OSI is the standard of the network, all network-based software, hardware is Take it. The advantage of doing this is to achieve mutual communication with the transition between heterogeneous hardware and hardware. Like UML, use UML tool ROSE to build various models in software development, suitable for different levels, and each level is connected to each other. However, the level here needs to be understood as a customer, designer, realization person, etc., different language habits, different understandings, different understandings, therefore must be communicated with UML this symbol, because UML provides the entire system The description method suitable for the various levels of communication required during the development process.
Below is my little experience, it may be understood, but still record it, after all, I have entered a step from "blind touching" (a small text written by beginner UML). If you learn a thing, you will be smooth, unless you are a heart, otherwise you will defire. The fun of learning is also often derived from the feeling of the kind of filling of the window paper.
Let's take a look, usually a project will need a customer and project administrator to get the system's advanced view to determine the boundary of the system. At this point, only the roles and use cases of the system are required, and the particle size of the use case can be compared. Just need to reach a consensus with the customer's main functionality.
Project managers use the USE case block diagram and document (Note: The real use case is the document, not which egg or duck egg-like circle J), decomposes the project into manageable small pieces. Project managers can assign tasks based on these members of the project team.
System Analysis Personnel and Customer Using Example Document Understanding the functionality provided, the use case at this time is refined, even if it will fall into excessive design, this requires the experience of system analysts to grasp. In fact, the demand phase of the system is already completed. You can use these use case documents to write user manuals.
The above content is usually stored in the USE CASE VIEW in ROSE. This part is called the first phase in the RUP.
System analysts and developers use sequence and collaboration block diagrams to understand the system's logic flow, information in the system and between the objects. At this time, the development of the system has been from abstract to the stage of specific analysis objects. Test staff will also participate, because testers need to understand the logic flow of the system to design the test scheme and test case design.
Developers further design the Class and State Transition block diagrams to obtain details of each part of the system and their interrelated information. In fact, this is already the beginning of the system.
The above content belongs to the analysis and design phase, and it is placed in the Logical View. This part is called a refining phase in RUP.
Below the RUP's component phase, a number of roles, architects, package designers, etc. I have defined in RUP, I think there is no more detailed division of labor in our actual work, these work is ordered to be systematic analysts, or Favorites designer. The role called the different cores of different cores should be consistent. That is to display the execution file, DLL file, and other components you want to generate with the Component and Deployment block diagrams, and generate the deployment position on the network of these components, and distribute system features between physical nodes. These contents are stored in the Component View and Deployment View in Rose. Finally, enter the productual phase, we can see that throughout the project, the entire team will work around this model. In fact, there is a need for constant repeated iterations at each stage.
The TCP / IP protocol has 4 levels. RUP divides software development into 4 phases. UML also provides different views in four phases. The TCP / IP upper and lower layers are converted and coordinated. The same UML's different views will also be close, for example, can find classes through the object of the SEQUENCE block diagram, can find the method of the class through the object.
Of course, what is said is very simple, and the status is more complicated in actual application. For example, an Interaction block diagram may also be required in the USE CASE VIEW to display objects or classes involved in the case process. Therefore, we must know that there is no program design and developer, only intervene when logical view (refining phase), in fact, usually the program developers are involved in the whole process. This depends entirely on the special requirements of the project. Our goal is to complete the project.
Finally, I want to express my opinion for a few interesting questions:
1. Is there any need to be used in all items?
Of course, this article's view is to use UML. Because I think the tool Rose with UML is really a wise choice for the system.
2, since there is a UML, demand document, design document, etc. Is there any necessary documents?
Of course, graphics sometimes don't fully express your original intention. But if you really don't want to write a document, you can take the Documents feature provided by ROSE, write directly to it.
3, I decided to use UML in the next project, but many people in the group don't understand this thing. What should I do?
Learning, UML does not study. Just as the grammar of C is not difficult. You can't use the time you can't use it in a week (for the UML is a language), the province is experience and skill, which is from people. But at least you can understand these graphics.
Write here first, welcome everyone to give advice.