"Programmer" high exhibition column - Musl three "hard injury" (No. 5, 2002)

zhaozj2021-02-08  554

UML three "hard injury" editor: This article is published in the "programmer", which triggered the fierce discussion of UML supporters to discuss articles: UML Who http://www.cbs.net/develop/Article/ 13 / 13680.SHTM This kind of warming is actually better, but a very important point of discussion needs "independent thinking and bravely throwing the argument." Writing / High Exhibition Existing Problems from UML modeling Taking management software development as an example, three aspects of UML modeling is analyzed for the upstream, downstream and model internal relationships with UML models, and the three major bars that use UML modeling are analyzed, and they hope to discuss with many modeling enthusiasts. In the public reports in China, almost all the ports are fully filled with awards in unified modeling language UML (Unified Modeling Language), even if they have public complaints, they just blame themselves unable to understand the deepness of the three UML founders, blame themselves The level is not enough, and there is no problem in UML itself. The author of this article only discovered the validity of UML on UML only at the peers of the Beijing University Computer System. With the public report, the industry's private popular view image indicates that the problem of UML has problems for software development settings. That is, "there is no day, no land, one plate of shackles": (1) "Don't return the sky" This kind of isolation The mode results cannot communicate with the user to confirm the so-called demand, buried the root of the software crisis; (2) "Do not reach" This partition makes the hard-working modeling result unable to direct programmer code, final software The result of the user's expectations is far, rework, misunderstanding, troubles; (3) "a plate of shared sand" This kind of relationship between the construction of the model is messy, the modeling process is hard, the modeling result is difficult to say. The modeling hard injury caused by this three major segments made UML to people's ardent expectations. The principle of unified is not implemented, and Figure 1 is a visual expression of the problem of UML. Figure 1 Taking the modeling result of UML "Implion" is true, mastering UML is easy to seek a good system analyst work, but it is difficult to do a good job in system analysts, using UML affirmation 100% blindfolded users, because users only have the best in the modeling chart, there is no understanding of the power of refuting, using UML can also be 100% bloundage software company boss, because the boss is not a system analyst, I don't know how to use UML is modeled, and system analysts cannot reflect the problem of UML in the boss, because this is easy to enhance the horizontal disappointment. I. UML is not in the sky - the real demand that cannot be communicated with the user / field expert is the so-called "not in the sky" means that it is difficult to communicate with enterprise users in software development after using UML modeling, because UML's expression is The industry knowledge of the upstream users is far away, and the user seeing the software engineering term and symbols will be issued. It is impossible to understand the business processes described using UML, and it is difficult to really understand the needs of UML, and communicate with business experts. The work is returned, causing the Software Building to build on the sand, the demand is not clear, the endless beard project has dropped the root of the sick, this situation caused the first part of the software, is the first of UML Great injury. For corporate users, they care about how to locate the needs of the company's macro management level in their organization structure, business processes, business information, and the needs of micro management operations.

1 UML is difficult to completely describe the division of labor structure of the enterprise, which is a system division of corporate division of labor, which uses a full-time modeling method. It is in an intuitive, thoroughly, and a natural way to show a company as a department, post, responsibilities. , Step, until the atomic steps, such as "check the number, check specifications, sign, fill in the library date", etc. Figure 2 The division of labor components described in the modeling method can be refined to atomic working steps Figure 3 is a UML's use case diagram to describe the organizational structure. It can only describe the job responsibility, and cannot work in the job responsibilities. description. For the business's description, the rough branches, the demand is also a rough branch, but users often do not know that they need to pay special attention to this, and I don't know if this rough branch will bring disasters to the project. This is one of the entangled unclear engineering issues. Figure 3 The division of labor composed of UML can only describe the full and accurate configuration of the responsibility 2 UML difficult to remove the operation of the business process from the macro-controlled business process is the service collaboration process described in the multi-process mode sequence diagram. " It combines business event sequences to organically integrate in a graphic, and users can intuitively determine if the business process described in software developers is correct and complete. Figure 4 is a sequential diagram of a full range method describing the service collaboration flow diagram 5 and FIG. 6 separately using the UML sequence diagram and the activity diagram, the problem, the first is that the user needs to left, right, In the upper eye, the next eye control two pictures, time-freight, check two pictures, will have omissions, inconsistent; the second is that the UML sequence diagram lacks the expression method of conditional branches, the expression is incomplete; problem The third is that the UML sequence diagram and activity map are not equivalent to the content on the form. It is difficult to use UML to describe business processes. This is the second part of the incomplete bearded project. 3 UML Unable to the operation of microscopic business information Figure 7 Describe the dictation process of the duties in the micro-journey - how to "get warehousing", not only describe the specific duties The logic step also describes how to operate business information, such as the "actual number of reservoirs, the library date", etc. of the "Intrinsic Library", "Product Specifications, Purchasing" The number "of the" Product Specifications, Scheduled Purchase Quantity "and other columns in the" procurement plan "are read. Figure 7 The duting process UML described in the PAD diagram of the entire model mode is not allowed to describe the operation of business information from the microscopic business information, and can only wait until the programming, the programmer with experience and responsibility, this is undoubtedly When I considering where the window is covered, I have the final problem of various problems, and I have a scoop. Software companies practiced a lot of fire fighters, but it could not be denied is full of firefighters, often means that the disaster of the top. This is the third of the entangled mustache project. 4 UML unable to completely describe the user's demand Figure 8 is a functional definition of a full-time modeling method that makes a detailed work step, such as "signing warehouse", still needs manual. Figure 8 is a functional definition of a full-time modeling method for functional definition to use UML unable to position this functional demand. As a result, the developer has a good intention to achieve electronic signatures, but customers do not comply, should not believe in Chinese users. The signature of the computer, it is also a trouble. In addition, the situation often happens that the development software has missed a large number of users needed. If the user needs the computer automatic core to the "planned procurement quantity" in the "Procurement Plan" and "Inventory Order", if the demand is positioned Without meticulous to this extent, the programmer will naturally forget this if there is no experience or sense of responsibility, then the user will definitely find the requirements to be revised after the test phase or the system is running, and the trouble change will be very much. Anti-repeated modification has greatly increased the development cost of software companies. This is the third of the entangled mustache project.

5 UML is a "hero" that is asymmetrical, can say that UML provides "powerful means" as the information of users (Party A) and the developer (Party B), and both parties are "cheap" because of this information. Asymmetry is not only in the knowledge of information products and information technology, it also manifests in Party B's business understanding of Party A. Since Party B is not necessarily comprehensive and accurate to Party B's business terms, it is possible to make a lot of work in Party B. It is very simple in Party B's classic work or national standards. In this case in the case of using UML, Party B signed an agreement with Party A in accordance with its understanding, but it must be implemented according to the national standard of Party A, which exists in a large number of project implementation. It is difficult to say that Party B must be in the contract in the countermeasure model of the information project. Due to the influence of informationization, many companies have entered the IT project construction market. There are many companies that have a mixed beads that belong to fish, they can desperately press the price to win the bidding in the quotation, but in the actual construction The means deceived users, and users have suffered huge losses. There are also some very famous institutions and companies to undertake the IT project construction business. Due to the large amount of traffic, it is not enough for some of the small and medium-sized projects, and hires some newbie projects. Did not clear, or if the user is too low. Even with Party B is diligent, it is very advanced, perfect, fully considering the settings of each module, pay attention to information security, in the case of UML, because UML exists, it is still possible because of Party B The understanding of the business information is not enough, but the plan and the product of Party B deviate from the true needs of Party A. Second, UML does not rise - unable to provide the material directly in place, the so-called "unrestrained" means that after the use of UML modeling, it is difficult to let the programmer under software development directly to program. Since the expression of UML does not directly support detailed design, the programmer has to spend the transition of how to convert the modeling result into a program code, which causes the second part of the software, which is the second of UML. Great injury. Docking with modern compilers, structural programming, such as codes, PAD (problem analysis map), formerly 80% of US companies, after using 80% of Japanese companies. The advantage of pseudo code is very close from the syntax structure and the usual high-level language. PAD is very easy to understand due to visualization, in Figure 9, the whole modeling method has established these two detailed design connections, which can be easily Convert PAD into pseudo code. Figure 9 is a modular stage process with a full-time modeling method PAD diagram. In addition, UML does not consider the system level, module level interface, which focuses on unimanding in large complex system development, Figure 10 is used in full modeling methods The data aggregation map automatically describes the interface between the system. Fig. 10 is a three-dimensional connection between the system between the systems described in the system aggregation method. UML is not established in the subtle place to establish the internal contact between the contacts between the modeling graphics is very loose. It has caused the third larger injury of UML. Due to the relationship of the space, the potential hazard caused by this hard injury no longer discusses. This article is only the "belonging" "Row" as follows: 1 State transfer map, events and external Actor, class, package, etc. are unrelated; 2 cannot establish a status transfer map and sequential transformation in the syntax; 3 Unable to active graphs from syntax should be in process description relationship; 4 collaborative drawings and sequence diagrams are accompanied by Message The parameters are independent of the class diagram.

转载请注明原文地址:https://www.9cbs.com/read-251.html

New Post(0)