CN112053049A - Neural network model-based software project required resource balancing method - Google Patents

Neural network model-based software project required resource balancing method Download PDF

Info

Publication number
CN112053049A
CN112053049A CN202010873342.XA CN202010873342A CN112053049A CN 112053049 A CN112053049 A CN 112053049A CN 202010873342 A CN202010873342 A CN 202010873342A CN 112053049 A CN112053049 A CN 112053049A
Authority
CN
China
Prior art keywords
software project
software
neural network
network model
predicted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010873342.XA
Other languages
Chinese (zh)
Inventor
许若镛
胡杨博
栾森
李晓娟
方进涛
任江涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Shenzhou Aerospace Software Technology Co ltd
Original Assignee
Beijing Shenzhou Aerospace Software Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Shenzhou Aerospace Software Technology Co ltd filed Critical Beijing Shenzhou Aerospace Software Technology Co ltd
Priority to CN202010873342.XA priority Critical patent/CN112053049A/en
Publication of CN112053049A publication Critical patent/CN112053049A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06315Needs-based resource requirements planning or analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a method for balancing resources required by a software project based on a neural network model, which relates to the field of software engineering.

Description

Neural network model-based software project required resource balancing method
Technical Field
The invention relates to the field of software engineering, in particular to a method for balancing resources required by a software project based on a neural network model.
Background
With the development of electronic information technology, large software projects become more complex, the management difficulty of the software projects is increased, and problems such as project delay, cost rise and the like are easy to occur. Therefore, the management effect of the software project is improved, the internal resources of an enterprise are effectively utilized, and the efficiency of the software project is an important way for improving the competitiveness of the enterprise. Therefore, to develop such a software project, in many cases, users do not give explicit ideas from the beginning and do not put exact requirements. For such intangible software projects with definite practical purposes, the quantity of resources and time cost required to be invested in the software projects are difficult to calculate by definite formula algorithms, most of the software projects can be judged only by experience, and whether the judgment is accurate or not is completely dependent on people, so that the inaccurate prediction result caused by incomplete artificial consideration can be caused, the resources required by the software projects can not be effectively balanced, and enterprises can not effectively utilize the internal resources.
Disclosure of Invention
In order to solve the defects of the prior art, the embodiment of the invention provides a method for balancing resources required by a software project based on a neural network model, which comprises the following steps:
inputting expected effect data of a software project into a trained neural network model to obtain the quantity of resources and time cost required by the software project;
analyzing the resources required by the software project according to the quantity of the resources required by the software project and the time cost and combining the existing conditions, and judging whether resource balance is required or not;
and if so, balancing the resources required by the software project by using a time optimal balancing method or a resource optimal balancing method.
Preferably, analyzing the resources required by the software project according to the amount of the resources required by the software project and the time cost, and determining whether resource balancing is required includes:
and judging whether the time cost and the resource quantity which can be invested into the software project are both larger than or equal to the time cost and the resource quantity required by the software project, if so, determining that the software project does not need to be subjected to resource balance, and if not, determining that the software project needs to be subjected to resource balance.
Preferably, the creation process of the trained neural network model includes:
acquiring historical effect data and historical demand data of a plurality of software projects, and generating an experience data set;
and inputting the empirical data set serving as training data into a neural network model to obtain the trained neural network model.
Preferably, the method further comprises:
after the software project is completed, calculating an actual value of resource data required by the software project;
and comparing the actual values of the resource data required by the software project and the resource data required by the software project, which are obtained by calculating the neural network model, one by one, respectively judging whether the error between each piece of resource data required by the software project and each piece of actual resource data required by the software project is smaller than a preset numerical value, if not, taking each piece of actual resource data required by the software project as training data, and training the model neural network model again.
Preferably, the effect data of the item of software comprises:
the software project cost is calculated according to the software project cost, the software project difficulty requirement quantity, the software project general requirement quantity, the requirement fuzzy degree, the software project predicted user quantity, whether the software project is a substitute of an existing product or a new product, the software project predicted service life, the software project confidentiality grade requirement, the integrated system quantity and the software product predicted single-day average data volume.
Preferably, the requirement data of the software project comprises:
the resource data required by the software project comprises the predicted profit of the software project, the predicted technical expert investment of the software project, the predicted high-level development engineer investment of the software project, the predicted intermediate-level development engineer investment of the software project, the predicted planner investment of the software project, the predicted implementation engineer investment of the software project, the predicted test engineer investment of the software project and the predicted other personnel investment of the software project.
Preferably, the neural network model is a BP neural network model.
The method for balancing resources required by the software project based on the neural network model, provided by the embodiment of the invention, has the following beneficial effects:
the trained neural network model is used for predicting the quantity of resources and time cost required by the software project, and the resources required by the software project are effectively balanced according to the prediction result, so that the prediction accuracy is improved, and enterprises can effectively utilize the internal resources.
Drawings
FIG. 1 is a schematic flow chart of a method for balancing resources required by a software project based on a neural network model according to an embodiment of the present invention;
fig. 2 is a schematic diagram of an internal structure of a neural network model according to an embodiment of the present invention.
Detailed Description
The invention is described in detail below with reference to the figures and the embodiments.
As shown in fig. 1, the method for balancing resources required by a software project based on a neural network model provided by the embodiment of the present invention includes the following steps:
and S101, inputting expected effect data of the software project into the trained neural network model to obtain the quantity of resources required by the software project and the time cost.
S102, analyzing the resources required by the software project according to the quantity of the resources required by the software project and the time cost by combining the existing conditions, and judging whether resource balance is required or not;
and S103, if so, balancing the resources required by the software project by using a time optimal balancing method or a resource optimal balancing method.
Optionally, analyzing the resources required by the software project according to the amount of the resources required by the software project and the time cost, and determining whether resource balancing is required includes:
and judging whether the time cost and the resource quantity which can be input into the software project are both larger than or equal to the time cost and the resource quantity required by the software project, if so, determining that the software project does not need to be subjected to resource balance, and if not, determining that the software project needs to be subjected to resource balance.
Optionally, the creating process of the trained neural network model includes:
acquiring historical effect data and historical demand data of a plurality of software projects, and generating an experience data set;
and inputting the empirical data set serving as training data into the neural network model to obtain the trained neural network model.
As a specific example, as shown in fig. 2, the BP neural network model is a supervised machine learning model, and its learning rule is an error correction algorithm, i.e. it is modified according to the neural network output error and the neuron connection strength, and its weight adjustment uses a back propagation algorithm. Wherein, the BP neural network model comprises three parts of an input layer, a hidden layer and an output layer, x1、x2…xmFor software project historical effects data, y1、y2…ynAnd historical demand data corresponding to the software project. The total price of the software project, the quantity of the hard points of the software project, the quantity of the general requirements of the software project and the softwareThe fuzzy degree of project requirements, the predicted number of users of the software project, whether the software project is a substitute of an existing product or a new product, the predicted service life of the software project, the product confidentiality level requirement, the number of integrated systems and the predicted single-day average data volume of the software project are used as input layers; and taking the actual net profit of the software project, the actual technical expert investment time of the software project, the actual high-level development engineer investment time of the software project, the actual medium-level development engineer investment time of the software project, the actual planner investment time of the software project, the actual implementation engineer investment time of the software project, the actual test engineer investment time of the software project and the actual other personnel investment time of the software project as output layers. All input layers are set to be forward-related, an empirical data set is used, and the BP neural network model processing process after input signals are given is as follows: the input signal enters from the input layer and is transmitted to the hidden layer, after the input signal is processed by the hidden layer unit, the signal obtains an output layer signal through an activation function, if the output layer node cannot obtain expected output, namely the error is greater than a set error, the error is propagated reversely, the output error is returned to the hidden layer and the input layer in sequence by the output layer according to a certain form, and the weight is modified according to the error signal. And continuously carrying out the forward propagation process and the reverse propagation process of the error of the signal until the error of the neural network model is reduced to be within a set error, and obtaining the trained neural network model, wherein the weight is a value on two node paths of the BP neural network model, and the value represents the cost, such as the length of a path from one node to the other node, the time spent, the cost paid by the node and the like.
Optionally, the method further comprises:
after the software project is finished, calculating an actual value of resource data required by the software project;
and comparing the actual values of the resource data required by the software project and the resource data required by the software project, which are obtained by calculating the neural network model, one by one, respectively judging whether the error between each piece of resource data required by the software project and each piece of actual resource data required by the software project is smaller than a preset numerical value, if not, taking each piece of actual resource data required by the software project as training data, and training the model neural network model again.
Optionally, the effect data of the software project comprises:
the software project cost is calculated according to the software project cost, the software project difficulty requirement quantity, the software project general requirement quantity, the requirement fuzzy degree, the software project predicted user quantity, whether the software project is a substitute of an existing product or a new product, the software project predicted service life, the software project confidentiality grade requirement, the integrated system quantity and the software product predicted single-day average data volume.
The required fuzzy degrees are divided into four types, namely definite, relatively definite, fuzzy and very fuzzy. The purpose and the implementation mode are clearly explained, namely the requirement of the user is clearly stated; the use is clearly explained according to the requirements provided by the user, and the implementation mode is visual; the application is clearly explained by the requirements of the user, the implementation mode is not intuitive, and repeated modification is possible; the fuzzy meaning that the requirement of the user only explains the general purpose, the realization mode is not clear, and the repeated modification is possible.
Optionally, the requirement data of the software project includes:
the resource data required by the software project comprises the predicted profit of the software project, the predicted technical expert investment of the software project, the predicted high-level development engineer investment of the software project, the predicted intermediate-level development engineer investment of the software project, the predicted planner investment of the software project, the predicted implementation engineer investment of the software project, the predicted test engineer investment of the software project and the predicted other personnel investment of the software project.
Optionally, the neural network model is a BP neural network model.
According to the method for balancing the resources required by the software project based on the neural network model, the quantity of the resources and the time cost required by the software project are obtained by inputting the expected effect data of the software project into the trained neural network model, the resources required by the software project are analyzed according to the quantity of the resources and the time cost required by the software project and by combining the existing conditions, whether resource balancing is required is judged, if yes, the resources required by the software project are balanced by using a time optimal balancing method or a resource optimal balancing method, the resources required by the software project are effectively balanced, the prediction accuracy is improved, and enterprises can effectively utilize the internal resources.
In the foregoing embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
It will be appreciated that the relevant features of the method and apparatus described above are referred to one another.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
The algorithms and displays presented herein are not inherently related to any particular computer, virtual machine, or other apparatus. Various general purpose systems may also be used with the teachings herein. The required structure for constructing such a system will be apparent from the description above. Moreover, the present invention is not directed to any particular programming language. It is appreciated that a variety of programming languages may be used to implement the teachings of the present invention as described herein, and any descriptions of specific languages are provided above to disclose the best mode of the invention.
In addition, the memory may include volatile memory in a computer readable medium, Random Access Memory (RAM) and/or nonvolatile memory such as Read Only Memory (ROM) or flash memory (flash RAM), and the memory includes at least one memory chip.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
In a typical configuration, a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
The memory may include forms of volatile memory in a computer readable medium, Random Access Memory (RAM) and/or non-volatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM). The memory is an example of a computer-readable medium.
Computer-readable media, including both non-transitory and non-transitory, removable and non-removable media, may implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), Digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium that can be used to store information that can be accessed by a computing device. As defined herein, a computer readable medium does not include a transitory computer readable medium such as a modulated data signal and a carrier wave.
It should also be noted that the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in the process, method, article, or apparatus that comprises the element.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
The above are merely examples of the present application and are not intended to limit the present application. Various modifications and changes may occur to those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.

Claims (7)

1. A method for balancing resources required by a software project based on a neural network model is characterized by comprising the following steps:
inputting expected effect data of a software project into a trained neural network model to obtain the quantity of resources and time cost required by the software project;
analyzing the resources required by the software project according to the quantity of the resources required by the software project and the time cost and combining the existing conditions, and judging whether resource balance is required or not;
and if so, balancing the resources required by the software project by using a time optimal balancing method or a resource optimal balancing method.
2. The method of claim 1, wherein analyzing the resources required by the software project according to the amount of resources required by the software project and the time cost, in combination with existing conditions, and determining whether resource balancing is required comprises:
and judging whether the time cost and the resource quantity which can be invested into the software project are both larger than or equal to the time cost and the resource quantity required by the software project, if so, determining that the software project does not need to be subjected to resource balance, and if not, determining that the software project needs to be subjected to resource balance.
3. The method of claim 1, wherein the creation of the trained neural network model comprises:
acquiring historical effect data and historical demand data of a plurality of software projects, and generating an experience data set;
and inputting the empirical data set serving as training data into a neural network model to obtain the trained neural network model.
4. The method of claim 1, wherein the method further comprises:
after the software project is completed, calculating an actual value of resource data required by the software project;
and comparing the actual values of the resource data required by the software project and the resource data required by the software project, which are obtained by calculating the neural network model, one by one, respectively judging whether the error between each piece of resource data required by the software project and each piece of actual resource data required by the software project is smaller than a preset numerical value, if not, taking each piece of actual resource data required by the software project as training data, and training the model neural network model again.
5. The method of claim 1, wherein the effect data of the software project comprises:
the software project cost is calculated according to the software project cost, the software project difficulty requirement quantity, the software project general requirement quantity, the requirement fuzzy degree, the software project predicted user quantity, whether the software project is a substitute of an existing product or a new product, the software project predicted service life, the software project confidentiality grade requirement, the integrated system quantity and the software product predicted single-day average data volume.
6. The method of claim 1, wherein the demand data of the software project comprises:
the resource data required by the software project comprises the predicted profit of the software project, the predicted technical expert investment of the software project, the predicted high-level development engineer investment of the software project, the predicted intermediate-level development engineer investment of the software project, the predicted planner investment of the software project, the predicted implementation engineer investment of the software project, the predicted test engineer investment of the software project and the predicted other personnel investment of the software project.
7. The method of claim 1, wherein the neural network model is a BP neural network model.
CN202010873342.XA 2020-08-26 2020-08-26 Neural network model-based software project required resource balancing method Pending CN112053049A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010873342.XA CN112053049A (en) 2020-08-26 2020-08-26 Neural network model-based software project required resource balancing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010873342.XA CN112053049A (en) 2020-08-26 2020-08-26 Neural network model-based software project required resource balancing method

Publications (1)

Publication Number Publication Date
CN112053049A true CN112053049A (en) 2020-12-08

Family

ID=73600639

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010873342.XA Pending CN112053049A (en) 2020-08-26 2020-08-26 Neural network model-based software project required resource balancing method

Country Status (1)

Country Link
CN (1) CN112053049A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101561904A (en) * 2009-05-12 2009-10-21 中国科学院软件研究所 Process data-based method and system for determining cost of software project
CN111191871A (en) * 2019-11-21 2020-05-22 深圳壹账通智能科技有限公司 Project baseline data generation method and device, computer equipment and storage medium

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101561904A (en) * 2009-05-12 2009-10-21 中国科学院软件研究所 Process data-based method and system for determining cost of software project
CN111191871A (en) * 2019-11-21 2020-05-22 深圳壹账通智能科技有限公司 Project baseline data generation method and device, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
Dev et al. Multi-criteria evaluation of real-time key performance indicators of supply chain with consideration of big data architecture
Mercure et al. Modelling innovation and the macroeconomics of low-carbon transitions: theory, perspectives and practical use
Nguyen et al. A hybrid approach for fuzzy multi-attribute decision making in machine tool selection with consideration of the interactions of attributes
Etemadinia et al. Using a hybrid system dynamics and interpretive structural modeling for risk analysis of design phase of the construction projects
Hein et al. Predicting requirement change propagation through investigation of physical and functional domains
Tsadiras et al. An artificial neural network based decision support system for solving the buffer allocation problem in reliable production lines
Micán et al. Project portfolio risk management: a structured literature review with future directions for research
US20140025411A1 (en) Automatic configuration of process definition metrics
Siraj et al. Hybrid fuzzy system dynamics model for analyzing the impacts of interrelated risk and opportunity events on project contingency
Ching et al. Assessment of the quality and sustainability implications of FIFO and LIFO inventory policies through system dynamics
KR20220115357A (en) A method and apparatus for generating future demand forecast data based on attention mechanism
CN113302644B (en) Transaction plan management system
Göttlich et al. Uncertainty quantification with risk measures in production planning
CN117010541A (en) Time sequence prediction method, device and storage medium
Guo [Retracted] Enterprise Management Decision and Financial Management Based on Dynamic Cost Volume Profit Model
Bobar et al. Bidder selection in public procurement using a fuzzy decision support system
CN112053049A (en) Neural network model-based software project required resource balancing method
CN110858355A (en) Project budget balance prediction method and device
Kimita et al. A method for remanufacturing process planning and control using loosely coupled systems
Bounif et al. Decision support technique for supply chain management
CN115081495A (en) Management method and device of data service components
Kuzmina et al. Risk Analysis of the Company's Activities by Means of Simulation.
Hübner et al. Solving the nuclear dismantling project scheduling problem by combining mixed-integer and constraint programming techniques and metaheuristics
Kozyk et al. Econometric pricing model for R&D products in transfer agreements
CN117421462B (en) Data processing method and device and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20201208