当前位置: 首页 > 专利查询>李伟专利>正文

一种基于动态规划的软件研制成本智能控制方法及系统技术方案

技术编号:20797984 阅读:62 留言:0更新日期:2019-04-06 11:36
本发明专利技术提供一种基于动态规划的软件研制成本智能控制方法及系统。本发明专利技术方法,包括:将软件研制周期的过程划分为n个状态和n‑1个阶段,构筑每个状态所有可选方案的状态变量集合,确定每阶段的允许决策集合与决策变量,基于预设指标确定所述决策集合中每个决策的指标函数,进而判断出同一状态下的最优指标函数,完成软件研制所需的最小成本的估算。本发明专利技术从软件研制的整个周期着眼,较好地反映了不同技术路线所对应的研制成本,且具有阶段优选功能,可为决策机关或项目承制方智能化地在满足软件功能的前提下对经济成本或时间成本进行优化布局,提高资源使用的效率。

An Intelligent Control Method and System for Software Development Cost Based on Dynamic Programming

The invention provides an intelligent cost control method and system for software development based on dynamic programming. The method of the invention includes: dividing the process of software development cycle into N states and n_1 stages, constructing the set of state variables of all alternatives in each state, determining the allowable decision sets and decision variables in each stage, determining the index function of each decision in the said decision set based on the preset index, and then judging the optimal index function in the same state, and completing the soft operation. Estimation of the minimum cost required for component development. The invention can intelligently optimize the layout of economic cost or time cost for decision-making organs or project contractors on the premise of meeting the software function, and improve the efficiency of resource utilization.

【技术实现步骤摘要】
一种基于动态规划的软件研制成本智能控制方法及系统
本专利技术涉及软件工程
,具体而言,尤其涉及一种基于动态规划的软件研制成本智能控制方法及系统。
技术介绍
软件项目的成本可以是时间成本,也可以是经济成本,总之,不管在何种情况下,人们都希望以最小的成本完成既定的工作。在软件质量评价体系中,项目开发成本是一个重要的评价指标。软件开发是知识密集型的智力活动,同时也是自动化程度较低的劳动密集型活动。现有的成本估算方式基本可分为两大类:一是事后估算,二是事前估算。事后估算一般用于总结和后续计划指导等方面,虽能做到精确但实际意义有限;事前估算是根据软件所要实现的功能和所需耗费的必要资源对软件整个生命周期所需成本进行的初步测算,测算内容包括所用人力、物力、耗费的资源、软件实现的技术难度等。从估算所用的技术方案来看主要有两大类,其特点和弊端分别为:(1)以相对简单的分解技术对软件生成产品和所需资源进行测算。主要思路是运用化整为零、分别研究的方法,把整个软件工程分解为零散的功能点和技术模块,分别细化研究工作量和相应的必要成本。弊端:软件工程是前后关联的有机整体,软件生命首期中任一环节的工作要求和本文档来自技高网...

【技术保护点】
1.一种基于动态规划的软件研制成本智能控制方法,其特征在于,包括如下步骤:将软件研制周期的过程划分为n个状态和n‑1个阶段,构筑每个状态所有可选方案的状态变量集合;确定每阶段的允许决策集合与决策变量,所述允许决策集合表示任一状态向下一状态推进时可以选择的方案种数,所述决策变量表示在此状态下的最优方案选择,其同时也作为下一阶段的初始状态;基于预设指标确定所述决策集合中每个决策的指标函数,进而判断出同一状态下的最优选择,完成软件研制所需的阶段或全程最低成本测算。

【技术特征摘要】
1.一种基于动态规划的软件研制成本智能控制方法,其特征在于,包括如下步骤:将软件研制周期的过程划分为n个状态和n-1个阶段,构筑每个状态所有可选方案的状态变量集合;确定每阶段的允许决策集合与决策变量,所述允许决策集合表示任一状态向下一状态推进时可以选择的方案种数,所述决策变量表示在此状态下的最优方案选择,其同时也作为下一阶段的初始状态;基于预设指标确定所述决策集合中每个决策的指标函数,进而判断出同一状态下的最优选择,完成软件研制所需的阶段或全程最低成本测算。2.根据权利要求1所述的基于动态规划的软件研制成本智能控制方法,其特征在于,当软件成本是以经济成本作为各状态之间的评判标准时,最小成本估算以货币为单位进行算数的加和作为最终的成本;当软件成本是以时间或人力资源成本作为各状态之间的评判标准时,最小成本估算以月/人为单位进行算数的加和/加权作为最终完成时间/工作效率的成本。3.根据权利要求1所述的基于动态规划的软件研制成本智能控制方法,其特征在于,所述状态变量是离散的且是确定性的,其状态转移方程满足如下表达式:sk+1=xk(sk)其中,sk为状态变量,其具体为:第k个阶段开始时所处的位置,k(k=n-1,n-2,…1),决策变量xk(sk)表示在sk位置上时做出的最佳选择,同时也成为下一阶段的初始状态。4.根据权利要求1所述的基于动态规划的软件研制成本智能控制方法,其特征在于,所述预设指标包括:每个决策中涉及的代码行数、关键点个数和技术难度系数。5.根据权利要求1~4任一项所述的基于动态规划的软件研制成本智能控制方法,其特征在于,所述指标函数具体为:其中,dj(sj,sj+1)为从sj到sj+1的成本估算值,其满足,dj(sj,sj+1)=f(l,p,d)其中,l具体为代码行数函数、p具体为关键点个数函数、d具体为技术难度系数函数。6.根据权利要求5所述的基于动态规划的软件研制成本智能控制方法,其特征在于,所述最优指标函数fk(sk)表式在第k阶段处于sk位置上,采用最优策略完成软...

【专利技术属性】
技术研发人员:李伟龙飞徐轩彬唐君
申请(专利权)人:李伟徐轩彬唐君
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1