Understanding UML tools

Source: Internet
Author: User
Tags staruml

Summary: This article does not introduce how to operate a specific UML tool. It summarizes some experiences of using the UML tool and hopes to help you!

Author: Zhang chuanbo
Software Knowledge field base

Body:

Common tools for drawing UML include rose, xde, Visio, enterprise terraeture, Jude, and staruml. Jude and staruml are free of charge, and license is required for other tools.
Me and anyUML toolsVendors do not have any interest (at least currently). To avoid advertising suspicion, this section does not detail one or more UML tools, which of the following is the most used?Software. Besides, there is no need to introduce how a specific UML software is operated. This will only waste the length of the book and increase the price of the book. I believe that as long as you study it a little, you can get started quickly.

I have used many UML software. I will briefly introduce some of my experiences. I hope these experiences can help you get started faster and find software suitable for you or your company.

1. start wizard
many UML software like to show a start wizard as soon as it is started. It seems that this design can help you get started quickly, but such a wizard will often confuse new users, this is the first question of these wizard! The second problem is that the wizard displays various templates and uses these templates to create a series of content frameworks that will make you dizzy. The third problem is: in actual work, these templates are basically useless. I don't like the content frameworks created by these templates. I will basically delete all or even most of the content created by these templates.
for the start wizard, my suggestion is: it's okay to look at it roughly. Don't worry about it. The content frameworks of those templates are basically designed based on some theories, most are not applicable. I usually create a project from the blank space. Some software does not allow you to start from the blank space. You can select a template and delete the unreadable content after the creation.

2. Drawing and modeling
if you think that UML software is a drawing tool, you can set a drawing and then select some UML elements to draw on it. If you use the UML Software Based on this understanding, you may not get used to it at first, or even get confused. Most of the ideas of UML software are modeling while drawing. We will explain them in detail below.
the layout of most UML software interfaces is as follows: a bunch of UML elements are displayed on the left, a drawing area is in the middle, and a project view and attribute view are displayed on the right. If you create a project from a blank space, you may find that the Left area is empty and you do not know where to create a new graph.
the project view is actually used to display the model. There is nothing in it at first. You usually need to right-click the node of the project, right-click a node and choose to create a node (the software of these nodes varies ), after a "Node" is created, right-click the node and select the UML diagram to be created. Then, the drawing area appears in the middle area, and available UML elements appear in the left area.
when you start to add UML elements to the drawing area, the project view will also add corresponding elements. This is actually the drawing and modeling. Note that if you delete the UML elements in the drawing, the corresponding UML elements in the project view are not deleted. That is to say, the image has changed, but the model has not changed. To delete a UML element from a model, you must delete it explicitly.
we can understand UML modeling is the most intuitive method to establish a model by drawing, but the model is a logical relationship, the model can be displayed in a variety of forms. For example, we have created a business conceptual model through a certain graph, and we can create another blank graph to pull some classes from the project view and put them in this blank graph, after these classes are placed in the graph, the relationships between them are automatically displayed, without re-drawing them. When we model a system, there is actually only one system for the model, but we can use multiple UML diagrams to display the model from different perspectives based on different needs.

3. Replication Problems
Someone once asked me how to copy UML using XX tool. You may not really want to copy it, but want to use the same UML element in different diagrams. If so, you can "pull" the UML element from the project view to the graph. Of course, you may also want to copy the UML at the model level. Many UML software do not allow you to do this, because the model must be unique and cannot be named again. Of course, it depends on the specific software to explain this problem.
When you want to copy some UML elements, please first think clearly that you just want to show the same content in multiple diagrams, or really want to copy some UML elements at the model level.

4. forward and reverse engineering
This problem is generated by UML.CodeOr the problem of UML generated by the Code. If you use UML for requirement analysis, you do not need to pay attention to this issue. If you are doingSoftware DesignWork, do you need to pay attention to this problem? My answer is: No need to pay attention! In practice, I rarely use forward and reverse engineering, but I tried to reverse the code to UML. I hope to help me understand the structure of the Code. The requirement for generating code from UML is very low for the following reasons:
1) You need to specify a lot of additional content to generate code for the architecture design, which is difficult and unnecessary.
2) For detailed design to generate code, you needClass DiagramDesign to a very fine level, and all code must first ensure that there is a corresponding class diagram. This is unnecessary. In actual work, it is not necessary for all codes to have a detailed design in advance. If it is so complicated, it is better to code it directly.
Some paid software may include or does not include the forward and reverse engineering functions. If they are included, you need to pay extra money. You don't have to spend the money. This is a waste of money.

5. For software design rather than demand analysis
The Application of UML in requirement analysis does not require deep or fine syntax in UML. For example, when we use a class chart to describe the business conceptual model, the expected effect is to directly represent the attribute name in Chinese. You do not need to specify it as public or the attribute type. However, most UML software is designed for Software Design and code generation. The class attribute must be set to public, and the attribute type must be set to string, Int, or other. For example, if you do not specify detailed information, the software will prompt an error message, so that you cannot proceed. In such a situation, you have to endure it.

6. Is UML 2.xsupported?
Most paid software supports UML 2.x. some of them are not supported for free, but I have not found any free software that fully supports UML 2.x. Although the content introduced in this book is based on UML 2. X shall prevail. In fact, most of the work practices require the use of UML 1.x, part of UML 2. the content of X is not required either. You can use UML 1. x. Therefore, for the sake of money, you do not need to worry too much about whether UML 2. x is fully supported.

7. Differences between paid and non-paid Software
In fact, there is little difference between the two. If you use them for free, it will be okay. If you don't have any bad money or the company pays for them, it will be good to use the paid software. The paid software still has its own uniqueness.

8. Try more
Each tool has advantages and disadvantages. You may wish to try a variety of software and choose the software that suits you. Your choice is not necessarily a software, and you can use multiple software at the same time!

9. Does the company need to unify UML tools?
As a company, employees may think that using the same UML software is conducive to communication. In my past, I didn't force everyone to use UML tools. Instead, I encouraged everyone to use their favorite tools. After everyone's "natural choice, survival of the fittest", we finally found that everyone basically concentrated on using one or two UML software.

Author: Zhang chuanbo
Www.umlonline.org/school/

----- Full text -----

the content of this article comes from the use of UML - demand analysis Expert Book, in addition, the content of Chapter 1 and Chapter 2 of this book has been published in the blog. For details, see
UML Article ! Http://www.cnblogs.com/umlonline/archive/2011/07/12/2104626.html
demand analysis work http://www.cnblogs.com/umlonline/archive/2011/07/13/2105407.html for people to exhaust their brains

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.