Current location - Education and Training Encyclopedia - Graduation thesis - Software technology model
Software technology model
Software technology is a rapidly changing industry, and the training direction of software talents should be determined according to the needs of enterprises and fields. The following is a model essay on software technology compiled by me. Thank you for reading.

Discussion on software project evaluation technology

Abstract: Due to the particularity of software products, it is difficult to evaluate software projects, and the accuracy of evaluation results is poor. In order to solve this problem, many different software project evaluation techniques have been produced. This paper briefly expounds the main ideas, advantages and disadvantages of various estimation techniques. In particular, the function point estimation technology is introduced in detail, and its application method is illustrated with examples.

Keywords: scale estimation; Cost estimation; Sample application

China Library Classification Number: TP3 1 1.5.

The evaluation of software projects is always a complicated matter. Due to the complexity of the software itself, the lack of historical experience, the lack of estimation tools and some human errors, the estimation of software projects is often far from the actual situation. Therefore, estimation error is listed as one of the four major reasons for software project failure. Therefore, it also proves how important it is to evaluate software projects correctly.

In software project management, estimation is the prediction of project duration or cost. Therefore, estimation is a kind of prediction for the future. We can see from here that the key point of estimation is? Workload estimation? Or? Cost estimation? And in the process of estimating the two, they are both indispensable in most cases? Software scale? This condition, so this paper divides software estimation into two types, the first is the estimation of software project scale, and the second is to convert the estimated scale into workload estimation or cost estimation. At present, scale estimation technology is widely used, such as code line estimation technology and function point estimation technology; And widely used cost estimation technology, such as COCOMO algorithm model estimation technology.

In addition to the above techniques, there are several estimation techniques that can be used to estimate the scale, and can also be directly applied to estimate the workload or cost, such as Delphi estimation method, analogy estimation method and PERT estimation method. Different from the techniques listed above, these estimation techniques are more specific to lines and have specific calculation processes and formulas. These techniques are just an idea and are estimated according to the selected subjects. The following article will briefly introduce several estimation techniques mentioned above, and focus on function point estimation techniques through specific examples.

1 Introduction to estimation technology

1. 1 code line estimation technique. LOC refers to all executable source code lines, including deliverable job control language (JCL) statements, data definitions, data type declarations, equivalence declarations, input/output format declarations, etc. [1]. Code line estimation technology is mainly to estimate the scale of software, that is, to estimate how many lines of code there are in the software project to be developed through this technology. Generally, for the convenience of expression, the scale of software project to be developed is expressed by the large unit thousand code lines (KLOC). This method is more suitable for companies with accumulated experience and stable development model. If it is a newly established company, there will be great errors in using this estimation technique, which will increase the risk of project failure.

1.2 function point estimation technology. Function point method is a proven method, but its application cost is very high and the workload of estimation is also very large. The final result of function point estimation technology is scale, or we need to know the productivity data of the project to get the actual workload. Function point estimation technology divides system functions into five types: input, output, query, external file and internal file. Among them, input is a basic data processing process in which data crosses system boundaries from outside to inside. The source of data can be a man-machine input interface/interface or another application system; Output is a basic data processing process, in which the exported data crosses the system boundary, from inside to outside. These output data can be generated into reports or output files sent to other external systems; Query is a basic data processing process, excluding derived data and data maintenance, including input and output; The internal file exists within the system boundary, which is a set of logically related data and can be recognized by users. External files exist outside the system boundary and are a set of logically related data that users can identify. The approximate steps of estimation using function point estimation technology are as follows:

(1) Through requirement analysis, the system functions are classified according to the above five types.

(2) Analyzing the complexity of each function item can be roughly divided into three types: general, simple and complex, and each type corresponds to a weight value, as shown in table 1.

(3) According to the weight values of each function item, find the weighted sum of each function item, which is the unadjusted function point (UFC).

(4) Analyzing the technical complexity of the system, the function point estimation divides the technical influencing factors related to the system into 14 groups (represented by Ai), and each group is divided into 6 levels, with weights ranging from 0 to 5. According to the analysis results and formulas, the technical complexity coefficient (TCF) is calculated, that is, TCF=0.65+0.0 1(SUM(Ai)).

(The multiplication of UFC and TCF is a function point.

1.3 COCOMO algorithm model. Cocomo model is a series of hierarchical software cost estimation models, including three sub-models: basic model, intermediate model and detailed model. The three models use the same calculation formula, that is, E=asb? Electric arc furnace [2], in which e is the monthly labor; S is the program scale in KLOC; EAF is a workload adjustment factor, which is 1 in the basic model and is determined according to the cost drivers in the intermediate model and detailed model. A and B are factors that change with the development mode, among which the development mode can be divided into three types: organic, semi-separated and embedded.

Cocomo algorithm model is an accurate and easy-to-use estimation method. If the project does not have enough historical data, it will be difficult to determine the adjustment factors and coefficients, thus increasing the difficulty of estimation. But once this model is established, the project workload and project cycle obtained through Cocomo model will have higher accuracy.

1.4 Delphi estimation technique. Delphi estimation technology, also known as expert estimation technology, is estimated by a person who is considered to be an expert in this task, and a large part of the estimation process is based on unclear and unrepeatable reasoning process, that is, intuition. So an expert in this technology? Major? The degree of knowledge and understanding of the project is the key and difficult point of this technology, and its quality directly affects the accuracy of the estimation results.

The estimation process of Delphi estimation technology does not have a clear calculation method or formula like the function point estimation technology or COCOMO algorithm model. It sends the relevant information of the project to be estimated to the experts, and then the experts are responsible for collecting it and sending it to the experts for estimation. After repeated several times, an estimation result is obtained, which shows that it is only an idea, so it can be used to estimate costs, risks, etc. In addition to estimating the scale, it is to estimate a selected object.

1.5 simulation estimation technology. ? Analogical estimation? As the name implies, the estimated results are obtained by comparing with similar projects in the past (such as application field, environment, complexity, etc.). ). Analogy estimation technology is a rough estimation method, and the accuracy of its estimation results depends on the integrity and accuracy of historical project data. Analogy estimation technology is similar to Delphi estimation technology, and its application is not only used for scale estimation, but also for cost and workload estimation. 1.6 PERT estimation technique. PERT estimation technology, also known as plan evaluation estimation technology, estimates all subjects (such as scale, cost, construction period, etc.). There are three different situations: optimistic estimation result, most likely estimation result and pessimistic estimation result. Then the expected scale and standard deviation are obtained by calculating these three results. This estimation technique can be used to estimate the scale and the construction period. Comparatively speaking, the estimation result of PERT technology is more accurate than that of analog estimation technology.

2 Application example of function point estimation technology

Suppose an employee management system, after the demand analysis, know that the system includes the following functions:

(1) Employee information maintenance: add employees, modify employee information and query employee information;

(2) Department information maintenance: adding departments and modifying department information;

(3) Wage statistics: Statistics of employees' annual salary and printout.

Among them, adding employee files in the system will use the basic information of employees: employee ID (label control), name, gender, age, marriage and department ID; Education: school name, major and educational background. Department information will be used for department maintenance: department ID (label control) and department name. Employee salary information is provided by another financial system, and the total salary information includes basic information of employees: employee ID (label control), name and department name; Salary information: salary level and salary amount.

According to the estimation steps of function point estimation technology, the unadjusted function points, that is, the weighted sum of various function items, are calculated first, and the types and weighted values of the six function items of the analysis system are shown in Table 2:

What are the 14 technical complications of this project? Have a certain impact? , that is, the weight values are all 2, then the function point of this project is: FP=45? (0.65+0.0 1? 14? 2)=4 1.85。 If you know what language the project uses, you can convert the number of function points into lines of code.

3 Conclusion

This paper briefly introduces several popular software project evaluation technologies. This paper mainly introduces the function point estimation technology, and demonstrates the application method of function point estimation technology through examples. Through the description of this paper, we can see that each project estimation technology has its own advantages and disadvantages. In order to get more accurate estimation results, we should not rely on only one estimation technique, but comprehensively use various estimation techniques to get more comprehensive information and more accurate results. At present, there are some automatic estimation tools based on these estimation techniques. I believe that through continuous development, the problem of difficult cost estimation of software projects will be solved.

References:

Kerry Zhu. Software project management [M]. Beijing: Tsinghua University Publishing House, 2009- 1 1.

[2] Qin Zheng et al. Software Project Management [M]. Beijing: Tsinghua University Publishing House, 2004.

Li, He Mei, Shu Bagdi, Wang Qing. Software cost estimation method and its application [J]. Journal of Software, 18, No.4, April 2007, 775-795.

[4] David Consulting Group, Functional Point Counting Practice Manual Version 4.2. 1, 2005 1 month,

[5] Liu Qian. Practice of software project evaluation method in agile development. China Management Network, 20 10-06- 18.

About the author: Wang Ying, female, graduate student, majoring in software engineering; Jiang, male, graduate student, majoring in software engineering.

Click the next page to learn more >>& gt software technology model.