Monday, October 11, 2010

Modeling with UML to note problems



Modeling with UML, software development process is required, must be use case driven, architecture-centric, iterative and incremental development, if the software development organization's software development process can not meet these three requirements, then the UML- use is compromised, the following detail:

First, use-case driven

Use-case driven means that the definition of use cases for the system is the basis for the entire development process.

Use case in a number of core work processes have played a role.

1, the concept of use cases can be used to represent business processes, we call this variant of use cases as "business use cases."

2, use case model is a demand for the output of the workflow. Early in the process, through use cases to create the user wants the system to complete the task model. This use case constitutes an important basic concept, customers and system developers have to endorse the concept.

3, in the analysis and design, the use case is implemented in the design model. You need to generate a realization of use cases to illustrate how the model in the design of interactive objects to perform the use cases. This model is designed to illustrate the implementation of the object components of the system, and how these components interact to perform the use case.

4, in the implementation stage, the design model is to implement the statute. Use case model as the basis for the design, so the use cases need to be implemented through the design class.

5, during testing, use case is to determine the basis of test cases and test process. In other words, through the implementation of each use case to verify the system.

6, in the project management process, use cases are used as the basis for iterative development plan.

7, in the deployment process, they form the basis of the contents of the user manual explained. Use cases can also be used to determine how combinations of product components. For example, customers can conduct by some combination of use cases to configure a system.

Second, the structure of the center

Framework is important for several reasons:

1, which allows you to maintain a sense of the project and the control of the situation to cope with complex projects, while maintaining system integrity.

A complex system is not just the sum of its various components, not just the relationship between a series of unrelated, small decision skills. It must rely on a coherent unified structure to a structured organization of those parts, and provide precise rules, the system development process, its complexity will not expand beyond human comprehension.

Design issues for discussion through the establishment of a set of public information materials and a common vocabulary, the framework provides a means to enhance communication and understanding.

2, it is a valid basis for large-scale reuse.

Articulated between them through the main components and key interfaces, the framework for your decision to provide the basis for re-use, including the internal multiplexing (identify common parts), and external multiplexing (into the ready-made components). It also allows larger scale reuse: reuse of the framework itself, to handle different functions in the same field.

3, architecture can also serve as the basis for project management.

Project planning and staffing are the main components according to the type of organization to carry out. The basic structure of decision-making is composed of a relatively fixed framework of the Panel made, they are not scattered. The development activities were assigned to several groups, each group responsible for developing the system one or more parts.

Third, iterative and incremental development

Iterative methods are generally superior to linear or waterfall approach, for many reasons.

1, allows to change the demand. Requirements sometimes change, which often cause trouble for the project, which will lead to late delivery, schedule delays, customer dissatisfaction, developers frustrated.

2, gradually integrating elements. In the iterative method, the integration can be said to be continuous. End of the project in the past to account for a longer period of the project workload, uncertain and difficult times, and now dispersed to 6-9 integrated part, each part of the integration of the elements to be much less than in the past .

3, early risk reduction. Because the risks are generally only in the integration phase can be identified or addressed. In the initial iteration, the check all the core work processes, project tools, commercial software, and personnel skills, and many other aspects of running. The risks identified in the past is no longer a risk may be proved, but may be a number of new risks has not been doubted.

4, contribute to organizational learning and improvement. Team members have the opportunity throughout the life cycle of learning by doing, display their talents. Testers can begin testing earlier, technical documentation writers can start writing early, others too. If the non-iterative development, these people only in the early planning or training skills, and air waiting to start their work. Training requirements, etc. can also be made as early as possible in the assessment review.

5, to improve reusability. Design or implementation of the sub-section of all common than pre-defined to better identify the common parts. The identification and development of reusable parts is not easy. Early iterations of the design review framework allows designers to identify potential reuse is no doubt part of the next iteration in the development and improvement of the common code.

6, generate stronger performance of the product. Because the number of iterations that you always try to correct the error. Kai from the first stage in the product after the initial iteration of defects can still be found. Performance bottlenecks can be early detection and treatment, rather than in the eve of the delivery, this time too late to deal with.

7, allowing the product to change tactics. For example, competition with existing similar products. May decide to pre-empt competitors by-step approach, early release of a simplified product features, or adopt existing technologies from other vendors.

8, iterative process itself can be improved during the process and refining. Assessment at the end of the first iteration of products and progress not only from the perspective of the case study projects, but also of what their own organizations and processes to be improved, so that the next iteration better finish the job.

Usually in the software development process, iterative in number, duration and objectives are carried out according to plan. Roles and responsibilities of participants are well established. Progress of the objectives of the evaluation will be recorded for future reference. From one iteration to the next iteration of the phenomenon does exist rework, but rework is carried out in strict accordance with the regulations.

4, using the wrong question

Many employees in the process of using UML, modeling is carried out in the field, no use case modeling, it can not play the greatest possible advantage of UML, since the organization's software development process is not driven by use cases.

If the software development organization's software development process can not meet these three requirements, then the use of UML is compromised. Will have some problems, some organizations 浣跨敤 UML, the Fa Xian early design of the model took Hen time to the Xiang Mu's in Houqi and 鐪熸 far from the results of development, so all shelved, and if they arise, they should be carefully study the organization of the software development process, whether to meet the three requirements mentioned above, if the software does not meet the iterative development process, the model did not improve with the progress of this issue is very vulnerable.

UML2.0 and MDA (Model Driven Architecture) proposed some preliminary and follow-up the development cycle model of inconsistency problem is the conversion to complete by the model automatically changes the model, not all of the various levels of abstraction of the model be modified But the MDA for the most people need some time to accept.

V. Summary

In summary, UML software modeling though a useful weapon, but also to follow certain rules to use, otherwise it can not play good value, will be duplication of efforts.

Understand the premise of using UML, and seriously implemented in accordance with these methods, I believe there will be the desired results.







相关链接:



3G2 to MPEG



DVR-MS to MP4



Quot faulting module ole32 dll quot error



ASF converter



No comments:

Post a Comment