CALCULATION OF THE COST OF SOFTWARE PRODUCT DEVELOPMENT

The calculation for the development of a software product includes the following items:

– basic salary of developers;

– additional salary of developers;

– deductions for social needs;

– Expenses for the acquisition of additional means of technical equipment and software;

– expenses for debugging programs;

– counterparty expenses;

– overhead costs.

The main salary of developers is calculated based on the labor intensity of work performed by an i-qualification specialist in the development of a software product (t i ) and the current salary system at the enterprise (З i ):

C main = å3 i t i .

The additional salary of developers is determined in shares of the basic salary (for calculations in the graduation project, it can be taken in the amount of 12-14%). Deductions for social needs are taken into account in accordance with applicable law from all payments on the salaries of developers.

The cost of purchasing additional hardware and software includes those hardware and software that need to be additionally purchased only for this particular development and which will not be used in the future.

Debugging costs are determined based on the planned costs of computer time required for the development and design of a software product (t m.v. ) and the cost of one machine hour of the computing facilities on which development is carried out (C m-h , rub. / h):

C exc u003d C m-h t m.v. .

The calculation of the cost of one hour of operation of the computing complex is made for each enterprise separately in relation to a specific circuit of the VT and the mode of use of the equipment. The cost of one machine-hour is determined by the formula:

C m-h u003d C e / F VT K s ,

where C e – annual costs that ensure the functioning of the computer complex, rub./year; Ф VT – annual planned fund of the computing complex operating time, hours; K z – load factor (no more than 0.9 – 0.95).

The annual planned fund of the computing complex operating time is determined by the formula:

F VT u003d F nom – F prof ,

where Ф nom – nominal fund of the computing complex operating time, hours; Ф prof – annual time spent on preventive work (15% of Ф nom are accepted).

The annual expenses that ensure the functioning of the computing complex are determined by the formula:

C e u003d C main.z / n + C add.c n + C otch + C am + C rem + C m + C el + C pr ,

where С osn.z / n , С add.z n , С otch – basic, additional wages and deductions for social needs of the employee performing preventive work on the computer (assuming that preventive work is carried out 2 times a month), rub. ; С am – the sum of annual depreciation deductions for a complex of technical means and a standard software package, rub.; C rem – the cost of current and preventive maintenance of hardware and software (accepted 2.5 – 5% of the cost of the complex), rub.; C m – the cost of consumables, amount to 1% of the cost of the computer, rub.; C el – the cost of power electricity consumed by the complex, rub.; C pr – other costs. Taken into account in case of machine time lease.

Depreciation charges for a set of technical means and a standard software package are determined taking into account the useful life and the chosen depreciation method. The classification groups of fixed assets are presented in Decree of the Government of the Russian Federation No. 1 dated January 1, 2002 “On the classification of fixed assets included in depreciation groups”.

Contractor costs are included in the cost estimate in cases where part of the work is performed by third parties, and are determined by the cost estimate for these works (under an agreement with co-executors).

Overhead costs are calculated as a share of the developers’ basic salary. The amount of overhead costs is taken according to the organization where the development is carried out.

The calculation results should be summarized in a table (Table 4).

Table 4

The cost of developing a software product

Expenditures Amount of expenses (rub.)
1. Basic salary of developers
2. Additional salary for developers
3. Deductions for social needs
4. Purchasing additional hardware and software
5. Expenses for debugging programs
6. Contracting costs
7. Overhead

Appendix 1

Stages of development of program documentation,

stages and content of work (according to GOST 19.102-77).

I. Terms of Reference

1. Introduction.

The name, a brief description of the scope of the software product is indicated.

2. Basis for development.

The documents on the basis of which the development is being carried out, the organizations that approved this document, the date of its approval are indicated.

3. Purpose of development.

The functional and operational purpose of the software product is indicated.

4. Requirements for the software product:

– performance requirements;

– requirements for reliability (the control of input and output information, a description of the consequences of possible failures of software functions, ensuring stable operation, recovery time after failures, ensuring the protection of programs and data should be indicated);

– terms of Use;

– requirements for the composition and parameters of technical means;

– requirements for information and software compatibility;

– requirements for labeling and packaging;

– special requirements.

5. Requirements for software documentation.

6. Technical and economic indicators.

7. Stages and stages of development

8. Order of control and acceptance.

9. Applications.

II. Preliminary design.

1. Development of a preliminary design.

Preliminary development of the structure of input and output data. Refinement of methods for solving the problem. Development of a general description of the algorithm for solving the problem. Development of a feasibility study.

2. Approval of the draft design.

The full scope of work on preliminary design depends on the complexity of the software product being developed. The result of the design is a complete description of the system architecture.

III. Technical project.

1. Development of a technical project.

Refinement of the structure of input and output data. Development of an algorithm for solving the problem. Determination of the form of presentation of input and output data. Definition of semantics and syntax of the language. Development of program structure. Final definition of hardware configuration.

2. Approval of the technical project.

Development of an action plan for the development and implementation of a software product. Development of an explanatory note. Coordination and approval of the technical project.

IV. Working project.

1. Development of a working draft.

Description of programs in the selected domain-specific language, debugging. Development of software documentation.

2. Software product testing.

Development, coordination and approval of the order and methodology of testing, adjustment of programs and program documentation.

This stage completes the development of the software product, which can be presented in one of the following forms:

– in the form of software documentation for the software product;

– in the form of a software product.

V. Introduction.

Preparation and transfer of programs and program documentation for maintenance and (or) production, execution and approval of the act of transferring programs for maintenance, transfer of the software product to the customer.

Appendix 2

Distribution of labor intensity by development stages

software product, %

Development stages Software product size :
up to 2 t.i.k. up to 8 t.i.k. up to 32 t.i.k.
Planning and Requirements Analysis
programming, including
including:
detailed design
debugging
Integration and testing
Total

Appendix 3

Characteristics of algorithm complexity groups (according to OST 4.071.032-80)

Characteristics of algorithms Difficulty group
Algorithms for optimization problems, multivariate analysis, forecasting, database management, system-wide procedures.
Algorithms for the formation and maintenance of local arrays of regulatory and reference information, the calculation of calendar and planning standards, teleprocessing, unbundling, processing networks and graphs.
Algorithms for the formation and maintenance of local arrays of reference information (using standard methods), solving simple functional problems.
Algorithms for parallel processing of several arrays (joining, merging), statistical calculations.

Appendix 4

Recommended composition of performers when developing a software product

Stage name Degree of novelty Performer qualification
Technical task A B C D Lead engineer Software engineer 1st cat. Lead engineer Software engineer 1st cat. Lead engineer Lead engineer
Preliminary design A B C D Lead engineer Software engineer 1 cat Software engineer 1 cat Lead engineer Software engineer 2 cat.
Technical project A B C D Lead engineer Software engineer 1 cat Software engineer 2 cat Lead engineer Software engineer 1 cat Software engineer 2 cat Software engineer 3 cat Lead engineer Software engineer 2 cat Software engineer 3 cat
working draft A B C D Leading Engineer Software Engineer 1st Category Software Engineer 2nd Category Software Engineer 3rd Category Operator Leading Engineer Software Engineer 2nd Category Software Engineer 3rd Category Operator
Implementation A-G Leading engineer Software engineer 1st category Software engineer 2nd category

Annex 5

Characteristics of program complexity groups (according to OST 4.071.032-80)

Program characteristics Difficulty group
Complex logical programs combined into a system, programs of the “Dispatcher” type, programs that work in real time. I
Programs with more than 5 input and output arrays are multimode. II
Programs of a simple logical structure that do not require adaptation. III
Calculation programs, programs for accessing standard programs. IV

Appendix 6

Characteristics of the degrees of novelty of design solutions

(according to OST 4.071.032-80)

Developed part of the program, % Applied technological method Degree of novelty
up to 100 original development
up to 45 Refinement
up to 40 Binding

Be First to Comment

Leave a Reply

Your email address will not be published.