Iterative development mode (5) Evaluation of the priority of function points (transfer)

We mentioned earlier that the two most important pre-analyses for iterative development are workload assessment and priority assessment. Workload assessment can not only determine the development cycle and cost budget of the entire project, but also determine the development cycle of each work, providing a basis for the time allocation of work.

However, with so many jobs, who will do them first, and how to arrange them in sequence, is determined by the priority of the jobs.

The characteristic of iterative development is continuous integration, that is, the most important and basic functions are developed first, and the branched and secondary functions are temporarily ignored. Because of this, iterative development demands that the highest-priority features come first, followed by the next-highest, and so on. In summary, priority evaluation determines the work schedule for iterative development.

So, how to decide the priority of each feature, each work? The decision is therefore many, but generally speaking, two factors are the most basic: whether it is close to the main business, and whether the user uses it frequently.

An organization wants to launch a management system, we must first analyze its main business. The main business of a hospital is the outpatient system, and the main business of an ERP is invoicing. The closer to these main business the function priority is higher.

At the same time, we should also examine the frequency of users' use of various functions in the process of demand analysis. Generally speaking, in a transaction processing system, the function of completing various business operations must be used most frequently, followed by inquiries about various business operations, and those various statistical analysis reports are the least frequently. Functions with high frequency have high priority, and functions with low frequency have low priority.

Of course, there are many other factors that determine priorities, such as the cost and benefit of each feature, urgency, strategic significance, and so on. We can draw a priority table, list all the influencing factors, list all the functions, analyze one by one, and finally comprehensively evaluate the priority of each function.

The most important role of priority evaluation is to prioritize the development of various features. As we mentioned earlier, the biggest characteristic of iterative development is iteration. The entire software development process is divided into several iterations, and at the end of each iteration, a program that can run independently should be submitted for demonstration to users. According to this line of thinking, when the first iteration of software development ends, we submit a complete set of programs, but they are not robust enough, inconvenient to operate, and have no auxiliary and secondary functions. We will gradually complete these remaining functions in subsequent iterations.

According to this line of thinking, we understand why we need to carry out priority evaluation. The main business, frequently used functions are first developed. When developing, the main process is also mainly considered and the branch process is ignored. After the first iteration, a working software prototype with all the main functions came out. After that, continue to enrich and improve on this basis until the completion of the entire project.

Reprinted from http://fangang.iteye.com/blog/1185461

Guess you like

Origin http://10.200.1.11:23101/article/api/json?id=326802260&siteId=291194637