Beijing Institute of Technology Graduate School
Engineering master thesis (design) opening report
Year 03
Telecommunications domain software engineering
Surrname Liu Qing
Guided teacher Cao Yuanda
Enterprise guidance teacher
July 7, 2004
Enterprise Guide Teacher Review Opinion: Signature: Year Month
School guidance teacher reviews: signature: Year of the year
Engineering Master Papers Opening Report Review Form
Master's name
tutor's name
Corporate tutor
major
The title title title title (√) Basic Theory Research (); Applied Research () Category (√) Enterprise Project (); Ministry (provincial) project (); national project (); self-proposed project () . Whether the weapon project () Review group member surname is the title of work unit and job sign
Review
(Including: topic meaning; experimental conditions; technical plan feasibility; research plan rationality, etc.)
Fulfillment
Judging team leader signature: Year month
Note: The results are "qualified" "unqualified"; the members of the evaluation team are senior titles.
UML
Application in Web Application
table of Contents
Directory ... 6
Introduction to UML ... 7
UML history ... 7
The current situation and future of UML ... 12
The connection between the dissertation and my work ... 14
Reference ... 15
Introduction to UML
UML: Unified Modeling Language (Unified Modeling Language), which is a method for developing documents-oriented development-oriented development, is proposed by Grady Booch, James Rumbaugh, and Ivar Jacobson, which has become an industry standard. It should be noted that UML is not a visual programming language, but a visual modeling language. Its proposed target is: 1. Visual modeling. 2. Non-related. UML and specific Real related, unrelated to specific processes, can be used in any language for any development process 3. Scalability. UML itself has extended mechanisms. 4. Reuse. UML emphasizes the development of architecture, framework, mode, and components in development.
The .uml architecture UML consists of a diagram and a meta model, where the graph is syntax, and the meta-model is semantic. UML semantics definition in a four-layer (four abstraction level) modeling concept framework, these four layers are respectively. Meta-meta model layer: Meta-meta model "Transaction", representing all things to be defined. Meta model layer: Composition UML basic elements, including object-oriented and components Concept, each concept of this layer is an example of "things" concept in the EMG model. Model (model) layer: Mode UML, each concept in this layer is one of the concept of the meta Example, this layer of model is typically called a Class Model or Type Model. User Model layer: All elements in this layer are examples of UML models, each concept of this layer Is an instance of the model layer (by classification), is also an instance of the meta-model layer (by versioning), this layer model is typically called the Object Model or an instance model UML history.
A standardization process is usually a lengthy process. At the end of the UML 1.3, the OMG UML revision task group and the OMG analysis design platform task group Joint Chair CRIS Kobryn published this article in "Communication of the ACM" in October 1999, summarizing the development history of UML And looking forward to its development trend. In a short period of time, UML has become a modeling language that is dominated in the software industry. It is now not only a factual modeling language standard, but also rapidly become legal standards. In 1997, OMG adopted it as a standard modeling language. Now, OMG is based on the ISO publicly available specification submitter, and the UML specification is applied as an international standard. However, a standardized process of standardization is usually formal and long because it meets a variety of technical specifications and business needs. From a business perspective, standardized time scale is usually conflict with the competitive demand for using the latest technology as soon as possible. From a technical point of view, in order to achieve consensus, this process of "designing" is designed by the committee. Previous history As early as 1995, Gray Booch and Janes Rumbaugh were unified to Unified Method V0.8 for Gray Booch and Janes Rumbaugh. After a year, Ivar Jacobson joined it together, unifying the method as less 0.9. At the same time, these three outstanding methodologists are called "Three Amigos". So far users also recognize the benefits that can be visualized, described, constructed, and documentized for software systems. They are full of passionate purposes to different fields in different areas. Driven by users, modeling tools manufacturers are also quickly added to UML support in their products. At the same time, UML has become an actual industrial standard. In 1996, a "UML Partner Organization", which was composed of modeling experts, started working with "three friends", plans to make UML proposes as an OMG standard modeling language. In January 1997, the partner organization submitted the initial proposal UML 1.0 to OMG. After nine months of tension, the final proposal UML 1.1 was raised in September 1997. This proposal was officially adopted as an object modeling standard in November 1997. It is necessary to point out that due to the comparison of the OMG submission process, although the grassroots structure and most of the above-layer structures are reasonable, UML still tolerate some negative factors: the semantics and representation of the activity map The method is incomplete; the standard element is bloated, some of which is to meet the needs of different, competing methods, and many standard elements are poor, and naming and organizational are not consistent; structural confusion, the specification of the submitted There is no subject to the subject's expected goal - use a strict meta-mode method to achieve a 4-layer element model structure. Instead, use a practical but inaccurate, loose meta-model method, which is not conducive to the combination of other OMG specifications. For example, the combination of MOF (Meta Object Facility). However, the submitter does not delay the standardization process of the UML, but solves some of the above problems in the next revision of the language.
Development process
The basic mechanism provided by OMG for the revision standard is a proposal requirement (RFP, Request for Proposals) and revised Task Force (RTF, Revision Task Forces).
The RFP process is the main mechanism of OMG adoption of new specifications and improvements. Task Force releases an RFP, one or more submission groups to respond to RFP as an initial proposal to specify the draft, and then the task group evaluates these initial proposals, and feeds back to the submitter, encouraging these submitters to cooperate with its competitors to form the final proposal. After the task group has completed the evaluation of the final proposal, it is recommended to recommend which one in many proposals. Proposal to obtain a lot of votes is sent to the organization committee and the technical committee who is the competent task force to approval. If a final proposal has been approved, it becomes the technology adopted by OMG. Otherwise, the task group has the right to re-issue a modified RFP. Shortly after a specification was adopted, a revision task group will be established to be responsible for the revision of the specification. In September 1997, shortly after OMG adopted the UML 1.1 specification, the first UML revision task group was set up, which was responsible for collecting the comments and proposed amendments. The first primary product submitted by the RTF is an editing version UML 1.2, which adapted the specification to make it more consistent with other OMG specification. Although this version corrects printing and syntax errors, and some significant logic inconsistenies, there is no improvement to important technologies. The second primary product of the RTF is its technical version UML 1.3, which corrects and improves the legacy problem of UML 1.1, and corrects many small errors found later. The RTF consistently recommended OMG to approve its UML 1.3 final draft and submitted a final report in June 1999. The recommended specification is submitted to the Organization Committee and the platform technical committee to obtain approval. The evolutionary architecture UML is described by the element model, and the element model is a layer in the 4-layer element model architecture mode. Other levels of this mode are: meta-metallic layers, model layers, and user object layers. The metamodial layer is derived from the metamm - metallic layer, the UML element-element model layer is defined in the metammgmg MOF of the MOF, and the category in the UML meta model is an example of the MOF metammat. The architecture pattern of the meta model has been proven to define the accurate semantics required by complex models, which typically need to be reliably saved, shared, operated, and exchange between tools. Its features are as follows: ● It is recursively defined a semantic structure in each layer, making semantic and more accurate. ● It can be used to define heavyweight and lightweight expansion mechanisms, such as defining new metaclass and constructors. ● It is united in the architecture to unify the UML metamodes with other standards based on 4-level model architecture (such as MOF and XMI facilities) for model exchange. In the meta-model layer, the UML meta model is broken down into three logical subpapers: foundation packets, behavioral elements packages and model management packages. The basic package is composed of three sub-packages by the core, extended mechanism, and data types. It is a language underlying structure that describes the static structure of the model, support class diagrams, object diagrams, components, deployment diagrams. Behavioral element pack is a language upper layer structure describing model dynamic behavior, supports different behavior charts, including use case, sequential diagrams, collaboration diagrams, state diagrams, and active diagrams. The model management package defines the semantics to group and manage model elements, which describes several packet structures, including packets, models, and subsystems. Behavioral elements packages and model management packs are dependent on the base package. The revision of UML 1.3 UML 1.3 is the first mature release of modeling language specification. It corrects or adjusts the legacy issues that inherited from UML 1.1, and fix most errors found in the year after the final submission. From the perspective of the model, there is no great change from UML 1.1 to UML 1.3. Most of the improvements to the language is the adjustment of the semantics of the UML meta model, only a small amount of change is the sub-branch of the representation. modify. Changes on the underlying structure are not seen to most users, but this makes UML more easily and extension in the future.
● Solve the remaining problem of the legacy problem of the UML 1.1, the semantics and representation of the active map increase the dynamic excitation semantics of the state, define the semantics and representation of the operating condition thread, and increase the object flow function. In order to do these amendments, the following modifications are required to be modified on the state machine depends on the activity map: add "synchronous status" to the active activities, refine the semantics of the signal, and define additional pseudo-states for the consolidation status. The standard element of the cleaning relationship is introduced into the relationship class to organize various types of relationships, and transform the dependence type as dependent and stream. In addition, precision is precise, no longer need many of the previous configurations (such as inheritance, private, subclasses, subtypes, etc.). The consistency of dependence and other relationship names has also been improved. The consistency of the architecture is defined by adding the physical element model and XML Metadata Interchange DTD, and the architecture of the UML 1.3 yuan model is consistent with MOF and XMI Facility. The physical element model exported from the UML semantic logic model contains some modifications to generate IDL and XMI DTDs (for example, transformation of associated classes to classes). Although this is made of strict meta-model method, it provides a bridge for future UML amendments to this goal. ● Other variations of static structural graphs are relaxed, allowing classes and interfaces to be associated, and signals can be declared in the class. The signal is defined as a class element, which can be operated. In addition, the template and strong type of semantic are also redefined. The relationship between the conditions of conditions is redefined as three main types: generalization, including, and extension. The interaction is relaxed, and the user can describe roles or instances. And collaboration can also be generalized. Model management diagram improves the semantics and representation of the model and subsystems, separating them from the package and makes it easier to use. Clarify the difference between the access and introduction of permissions. Although the core of the UML specification is grammar and semantic definition, it also includes definitions of model exchange, language extension, and constraints. UML 1.3 is incorrectly corrected for these relevant specifications and enables the improvement of the core language. Establishing a road sign for UML 2.0 This RTF is clear in the final report because various modifications cannot be done because it is not allowed to be exceeded. They suggest that the next RTF should pay special attention to scalability and document management. For the current extension mechanism, users and tool developers have discovered some important issues, and the proposals that flooded into the new UML may exacerbate these difficulties. In terms of document management, the addition of the physical element model and the XMI DTD specification increases the length of the UML specification and makes it clumsy (it has more than 800 pages now). The next UML revision will split the physical modeling specification as a separate document. The RTF further recommends drafting the drafting of the Working Group of UML 2.0 RFP Considering the following problems: The system structure uses a strict meta-model method to define a physical element model that is strictly consistent with the MOF metamm - meta model. Give an improved guideline to decide which portions should be defined in the core language, which portions should be defined in the peripheral or standard model library in the UML. The scalability provides an extension mechanism that is consistent with the four-level element model architecture. Improve the rigid level of peripheral norms to support users' demand for language customization capabilities. The component enhances the semantics and representation of components based software development. The relationship provides the basic semantics of "refining" and "tracking" dependencies. Define the semantics associated at multiple abstract hierarchies. Status diagrams and active diagrams define the semantics semantics independent of the status map semantic. Provide more casual concurrency in the activity map and status map. Detailed explanation of the generalization of the state machine. Model management redefines the representations and semantics of models and subsystems to enhance support for enterprise architectural views. The overall mechanism defines a mechanism for model version management. Detailed explanation mechanism. The crossroads of the architecture: Is it engraved or blocked? In the final report of UML 1.3, the architecture problem emphasized: UML is approaching the intersection of the OMG architecture.
OMG hopes to complete the technical superstructure specification (eg, an application frame or business component) by modifying the architecture, to supplement the CORBA underlying structure for interprocess communication and distributed operating system services. Although CORBA IDL is particularly effective for describing the distributed computing underlying structure, it can be used to portray the operation associated with the interface, but it cannot be used to define methods, information, collaboration, state machine, workflow, and usual business components. Various relationships. Because UML allows the user to define the lack of semantics of the IDL, you can use UML to supplement the IDL. (UML is completely replaced by CORBA IDL is too violent.) However, in this case, the UML will face the following challenges for those who want to use the relationship and behavior upgrade IDL structure. Learning to-bezel UML is a universal modeling language that allows full semantic expression. But although its basic language is easy to master, the deeper content needs enough time to learn. Semantic bloated as a general modeling language, UML complexity and huge are inevitable, but there is also a standard element of a large number of words, a variety of words. Lightweight scalability UML currently only provides lightweight extension mechanisms, such as architecture, constraints, and tags. (Compared to the meta-class extension mechanism.) These mechanisms will be subject to some simple extensions, such as the constructor of the CORBA IDL interface, will also be protected from higher demand for extended, such as applications. Frames and distributed business components. Metallic models are now considered to be a strong technique for managing complex distributed architecture, many modeling people are eager to use this new massive hammer to solve the hammer (such as constructive) Even the hammer of the nail head (such as a class in the standard model library) is enough to solve the problem. These challenges require OMG to refine and extend UML architectural structures with a method of engraving (less) instead of paste mud. In particular, OMG needs to take a valid three-layer structure to determine which language extensions can be handled as a revision of the UML core, which can be processed as a stand-alone peripheral, and which can be processed as a standard model library. If this three-layer structure runs normally, the core part will maintain or increase its integrity while allowing natural selection (with an OMG process) to select the most feature peripheral and standardized model library. The status quo and future of UML
UML is a modeling language developed based on a variety of object-oriented modeling methods, mainly for the modeling of software-intensive systems. Its evolution can be divided into the following stages according to its nature: the initial stage is the joint action of experts, and the three OO (object-oriented) methodologists combine their respective methods to form UML 0.9. The second stage is the company's joint action, "UML Partner Organization" composed of more than a dozen companies, adds their own opinions to UML, forming UML 1.0 and 1.1, and as a proposal to the OMG application to model language specification. The third stage is the revision and improvement under OMG control, and OMG officially adopted UML 1.1 as a modeling language specification in November 1997, and then established a constant revision and produced UML 1.2, 1.3 and 1.4 versions. UML 1.3 is a more important revision. At present, the major revision phase is being in UML, the goal is to introduce UML 2.0 as a standard proposal submitted to ISO. In a variety of object-oriented modeling genotes, the UML tree has a unified banner that enables system models developed by different vendors to use the same representation to present the same model style. . Moreover, it absorbs a large amount of useful (or may be useful to a portion of the user) from a variety of methods, making it more than the previous method in the scale, and provides the user to do language. Further expand mechanism. UML has also done a lot of work in terms of grammar and semantic definition. Previously, various types of object-oriented methods are usually defined in a relatively simple way to define their modeling concepts, while give process guidance in the main space, discuss how these concepts are developed. UML appears in a gesture of modeling languages, using some techniques in linguistics to define. Although there are many flaws from linguistic perspectives, it is impossible for various model modifications in this regard. Starting from the early versions of UML, they were attached importance to the computer industry. Omg's adoption and large company's support pushed it into actual industrial standards, making it more and more users. It is widely used in the application of fields and various types of system modeling, such as management information systems, communication and control systems, embedded real-time systems, distributed systems, system software, etc. In recent years, it is also used in software re-engineering, quality management, process management, configuration management, etc. And its application is not limited to computer software, but also in non-software systems, such as hardware design, business processing flow, enterprise or institutional structure and behavior modeling. However, UML is constantly criticized while making great success. The criticism from the industry is mainly, it is too large and complicated, the user is difficult to fully, master it, most users actually only use the concept of one less; its many concepts are unclear, the user is confused . Criticism from academic circles mainly target it in theoretical defects and errors, including language architecture, grammar, semantic, etc. At present, many software companies have learned and tried to use UML. Overall, my country's computer community is still quite preliminary on UML, but the degree of worship of it far exceeds Western developed countries. When learning and using UML, when they encounter the same difficulties and confusion as foreign users, they don't have any problems with UML. Therefore, there is almost no voices in China, occasionally, will be submerged immediately, even for some of the most obvious shortcomings and mistakes for UML. In contrast, the discussion and evaluation of UML internationally more objective. Whether it is an opinion exchange on the Internet, or once a year's UML seminar, or the article published by academic journals is both affirming their results, but also points out their shortcomings and errors, and put forward constructive advice at a positive attitude.
The discussion of UML is more active and enthusiastic in the last two years of the ISO standard proposal in the next major release and planning of UML. In order to make our computer world have a more objective understanding of the current situation of UML, we have selected three most authoritative articles from a large number of literature, introducing to my country's readers. From this group of articles, we can get important information about the current situation of UML and future development: ● UML has made important success, it has become a model language that dominated in software industry, and gets in many fields in many fields application. ● UML still has many problems, and has never left criticized from the date of it: users and teachers complain that it is huge, difficult to learn and too complicated; scholars believe that it lacks a refined core and definition Some semantics define it is not accurate enough and have an amphibian; modeling practitioners believe that it lacks mechanisms that support modeling requirements in their own areas; tool developers produce understanding because of the uncertainty of specifications itself, they are UML's own interpretation may mislead the user. ● The key issue of UML is too large and complex, and there is a theoretical defect in language architecture, semantics and the like. An important reason for the production of these issues is that in the formation of the specification, it has to take care of the views of various methods and the interests of many companies. ● For the next major release of UML, the host revised by UML 2.0 is widely collected from all aspects. All sectors have given high concerns, and the comments relate to the various aspects of UML. One of the key issues is whether UML needs to be simplified, and how to make it more refined, most of the opinions are to provide a refined core, and put uncommonly placed in a well-defined peripheral or expanded mechanism. In addition, UML 2.0 will also significantly improve the underlying structure, upper structure, and object constraint language (OCL) of the UML. Original UML 2.0 is released at a certain time this year, but at the end of this year UML International Symposium, there is no news about the latest version of the latest progress, it seems that it is going to be pushed by the expected schedule. The connection between the dissertation and my work
My current internship work is in the national power business network, mainly responsible for the generation of the web page. For UML and Web development, they have some experience. UML, OO, etc. are all advanced weapons developed. Applying these weapons can make our program conditions more clear, business logic is more clear, and the program is more modular. Make the robustness of the entire site better and easier to maintain.
B / S is now popular structure, software development to today, there is a clear trend, that is, we must gradually say goodbye to the stand-alone version, to go to the network version. There is still one in the C / S mode, the existence of the client end, can not deny that the client is more powerful, but the client can't get rid of the single version of the shadow. With the development of the Internet, HTML and browser have developed greatly, and each machine has naturally installed browsers (Browse), as long as he wants, you can access the server at any time to see what he needs.
With the popularity and deepening of the network, the Web is more than just a machine that only provides HTTP services. A variety of services, such as FTP, SMTP, etc., have grown together. On the basis of HTTP or other agreement, a new agreement SOAP is born. He has a cross-platform, servic, remotely called new service with WSDL.
The future Web is not a separate web, but a web based on the network, I have you, interconnected, interpreted, mutual call. One of the times with each other, the information is real-time, and the times quickly blended.
During the software development, the proprietary programmer of the seniors has accumulated a lot of documentation and experience. Among them, specific methods such as architecture, design patterns, etc. provide a good application at different application levels. Here we mention UML, Unified Modeling Language. In the field of engineering, a general specification is particularly important for modeling of demand analysis. The site I develop now is also software, I will mainly study the characteristics of UML in this area. For specific session, cookies in the Web, how to use UML to make them flexibly. For the Programming of the reception such as JavaScript, and how the background database is programmed, how to make it clear in the UML.
During this time, I will be in the practice process, and I am competing to UML and modeling, and the dissertation is complete.
references
UML Toolbox (with CD) Author: [US] Hans-Erik, Eriksson, Magnus Penker Translator: Yu Junping Yuan Ping Xu Min Publisher: Electronic Industry Press
Title: UML Collection Author: Gengguo Tong Shili Qi Ye Zhuo Ying Publisher: Electronic Industry Press
Title: UML style (Book) Author: Scott W. Amble Translator: Wang Shaofeng Press: Tsinghua University Press
Title: Using UML for object-oriented project management author: [US] Murray Cantor Translator: Xu Hui Xu Zhimin Li Hu Xie ultra Press: People's Posts and Telecommunications Press
Title: Object-oriented technology UML tutorial Author: Wang Shaofeng Press: Tsinghua University Press
Title: UML Business Modeling Author: Hans-Erik Eriksson, Magnus Penker Translator: Xia Xin HE Ke-qing Press: Machinery Industry Press
Title: UML Database Design Application of :( US) Eric J.Naiburg, Robert A.Maksimchuk Translator: Guo Xu Chen Lijun Press: People's Posts and Telecommunications Press