Extreme modeling method
Wang Wei
(This article reprinted from the software engineering expert network www.21cmm.com) Extreme Programming, XP) Extreme Programming (Extreme Programming, XP) is simple to be a collection of interrelated guidelines and practices, some of which are basic activities, such as configuration management, but Most of these concerns are related issues related to communication between team members and corporate groups between team and application systems. XP recommends a loop iterative development method. Modeling is an important part of software development. One model describes a complete content of some aspects of software. Simplify the software and software process by modeling. Often a graphic can be arguing dozens of lines, or even a description of hundreds of lines. Through graphics this intermedia, you can quickly get feedback, and modify your model in time to meet the needs of users. Extreme Modeling (XM) is a lightweight modeling method established in existing and proven to be effective modeling methods. XM is the foundation of XP. In the process of developing an object-oriented software, the basic modeling tools and modeling processes that software developers may apply are shown in the figure below. For the sake of simplicity, the contents of project management are omitted, such as testing tools such as test cases, such as test cases. The blocks in the figure indicate a development tool such as a basic use case model and an active diagram, which may be used. The lines in the figure are described in the main relationships between the tools, such as: the information included in the analysis phase of the class model will affect the development of information in the design phase. These relationships reveal the interaction relationship between different tools during iterative development. For example: When you correct the use case model, it may affect the development of the sequence diagram, then it will affect your class model. The blue color squares in the figure indicate that these modeling tools are the modeling tools described in the Industrial Standard Unified Modeling Language (UML) developed and maintained by the Object Management Group (http://www.omg.org). Although many modeling tools are listed above, you don't have to use them in each project development. You should only use those modeling techniques that can better show the software you have developed. For example, the basic user interface interface prototype can better understand the interface needs of a user, but if your user interface interface needs is obvious, the technology does not necessarily have more uses to your team. value. Similarly, the activity map is very useful for insighting those complex transaction logic flow, but if the business stream is simple, it is not very valuable. But it is necessary to pay attention to: Although you don't need to master all modeling tools, if you are in the modeling technology you need in project development, you are not familiar, and you have no ability to work. In the process, you can master these necessary technologies immediately, you should consciously ask for quit from this project. Those yellow squares in the above figure indicate that in actual application development, it is not enough to develop projects only by applying UML. The modeling tools shown in some yellow blocks will be adopted in the later UML revisions. The above picture also shows that the software development process is continuous and it is iterated. Say it is continuous, because the above figure is from left to right throughout the development process, analysis, design, and implementation of the development process. Saying development is an iterative process because you can move back and forth in each modeling phase and modeling tool. In the process of analyzing user needs and satisfying and achieving user needs, it is a process that constantly repeat iteration. From the global modeling process is a continuous process, and from the top part, it is an iterative process. The basic principle of ultimate modeling is simple, that is, the most likely covered with as little and refined graphics and clearly and effectively describe the whole process of project development. The secret of extreme modeling is not in the modeling technology itself, but how to apply them to the development of software projects well. As an excellent software professional developer, he must master a variety of development tools and technologies that can cover the entire development process and have aware of which tool to use is the most efficient ability.