The first step in focusing on UML practice

Source: Internet
Author: User
Tags abstract

Introduction

Some time ago and a friend on MSN Chat to UML, he sighed: "Know that UML is a good thing but not use it." Have tried, the results of leadership requirements in the document to fully use UML, everything is UML, the results of a simple design document added a bunch of diagrams. At the time of the review, the team had New that the diamond here in the UML diagram should be solid, with half an arrow ... The result is that most of the time the meeting is in the picture. Leaders feel that this has not brought any benefits, colleagues are happy to get rid of, and then nothing.

And then, by the way, complained to me: "The UML distilled you recommended to me is not very good ..."

This complaint annoyed me, and concluded that he read the Chinese version, sure enough! I decided to make a copy of the "UML distilled" for him in the form of cod. The problem has to be solved, so there is this article.

Why to use UML

Positioning: How to use UML

UML Specification = Binding?

UML First Step

Why do you use UML?

Prior to 1970, software developers compared software development to adventure, but as the system became increasingly complex, the era of personal heroism ended in the burst of software crises. The crisis led to an engineering approach, and spawned a variety of graphical symbol tools. After the appearance of object-oriented theory, the related design methods are endless, there are many design formats.

Many design formats bring communication inconvenience, communication barriers, a unified modeling language needs are already imminent. Thus, the meaning of UML lies not in the content it provides but in its normative and uniformity. In order to get a better design we need better communication, better communication needs to be based on a common language, easy to communicate this is the original purpose of creating UML, and should be the best reason to use UML. In the following discussion I hope you will not forget the reason why we started out in the first place.

UML also inherits the fine tradition of the graphical Modeling language (Graphical Modeling language): The farsighted abstraction ability. The common programming language lacks the ability to describe the design idea: "The fundamental driver behind them all are" programming languages are not at a high enough Lev El of abstraction to facilitate discussions about design. " Abstraction is mainly to reduce complexity in order to get a simpler concept in the domain so that people can control the process or understand many specific situations in a comprehensive way. Abstract process must contain the minutiae of discarding, is a cutting process. Abstract results are determined by the perspective of abstraction, and the abstract angle depends on the purpose of analyzing the problem.

On the angle of view, "UML distilled" has a wonderful three-layer perspective of the exposition, this paragraph by countless design patterns, domain modeling books lead to, for example, "Designing Patterns explained". I have discussed the following three questions in the context of the power of perspective-and the principles of OO design: 1. Why are we too early to dwell on the details? What is the nature of the problem? 2. The three-layer perspective theory of--martin Fowler 3. Three layer perspective--back to the end of OO design principles I quote the author's three-layer perspective, which I have seen as a beacon of thought. No more details, please check: source document

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.