zoukankan      html  css  js  c++  java
  • 软件项目中的成本构成及估算方法【转】

    随着知识经济、信息时代的来临,计算机软件业迅猛发展。商品化、资本化、资产化的计算机软件的价值 评估的社会需求也日益增多,而且有越来越多的趋势。由于系统软件通常是一些规模大、复杂程度高的人一 机系统,因此,系统软件的开发、使用、维护、管理的过程,是一个非常复杂的系统工程,需要有巨大的人 力、物力、财力资源,需要各种计算机软、硬件的支持。这一特点是在系统软件评估中应予充分考虑的,也 是从成本途径评估系统软件价值时应予着重关注的。据统计,软件成本在软、硬件总成本中的份额,已从50 年代的百分之十几,上升到近期的百分之七八十,而且还在持续上升。软件成本中的开发成本和维护成本的 比例,也从50年代的接近1:1,达到了近期的1:2。系统软件开发成本和维护成本在整个生命周期中份额。  


        本文对上表的数字作了部分调整。主在维护阶段剔除了完善性维护成本。这一项成本不应列入委托评估系 统软件的本次价值评估。这样,开发、维护成本在整个生命周期中的份额也相应发生了变化。  
        一、系统软件的成本构成  
        系统软件的成本作为一个经济学范畴,应反映软件产品在其生产过程中所耗费的各项费用,为原材料、燃料、动力、折旧、人工费、管理费用、财务费用待项开支的总和。  
        从财务角度来看,列入系统软件的成本有如下的项目: 
        (1)硬件购置费如计算机及相关设备的购置,不 间断电源、空调器等的购置费。 
        (2)软件购置费,如操作系统软件、数据库系统软件和其它应用软件的购 置费。 
        (3)人工费,主要是开发人员、操作人员、管理人员、的工资福利费等。 
        (4)培训费。 
        (5)通讯费,如 购置计算机网络设备、通讯线路器材、租用公用通讯线路等的费用。 
        (6)基本建设费,如新建、扩建机房、购置计算机机台、机柜等的费用。 
        (7)财务费用。 
        (8)管理费用,如办公费、差旅费、会议费、交通费。 
        (9)材料费,如打印纸、包带、磁盘等的购置费。 
        (10)水、电、汽、气费。 
        (11)专有技术购置费。 
        (12)其它费用,如资料费、固定资产折旧费及咨询费。  
        从系统软件生命周期构成的两阶段即开发阶段和维护阶段看,系统软件的成本由开发成本和维护成本构成。其中开发成本由软件开发成本、硬件成本和其他成本组成,包括了系统软件的分析/设计费用(含系统调研、需求分析、系统分析)、实施费用(含编程/测试、硬件购买与安装、系统软件购置、数据收集、人员培训)及系统切换等方面的费用;维护成本由运行费用(含人工费、材料费、固定资产折旧费、专有技术及技术资料购置费)、管理费(含审计费、系统服务费、行政管理费)及维护费(含纠错性维护费用及适应性维护费用)。  
        二、系统软件的成本测算程序  
        1、根据待开发软件的特征、所选用硬件的特征、用户环境特征及以往同类或相近项目的基础数据,进行软件规模测算。  
        2、由系统软件的成本构成,结合成本影响因素、环境因素以及以往同类或相近项目数据分析,进行软件 成本测算。其中包括了安装、调试的人力和时间表、培训阶段的人力和时间表。  
        3、系统软件成本测算的风险分析。这是基于系统软件成本测算的不确定性、成本测算的理论和测算技术 的不成熟性而提出的工作程序。系统软件成本测算的风险因素应包括:  
        (1)对目标系统的功能需要、开 发队伍、开发环境等情况的了解的正确性;  
        (2)所运用历史数据及模型参数的可靠性;  
        (3)系统分析 中的逻辑模型的抽象程度、业务处理流程的复杂程度及软件的可度量程度;  
        (4)软件新技术、替代技术的出现和应用对成本测算方法的冲击的影响;(5)用户在系统软件开发中的参 与程度,开发队伍的素质及所采用开发模式对开发成本的影响;  
        (6)对系统软件开发队伍复杂因素认识程度;  
        (7)系统软件开发人员及其组成比便的稳定性; 
        (8)系统软件开发和维护经费,时间要求等方面的变更等非技术性因素所带来的风险等。  
        在系统软件价值评估中实施上述程序进行成本测算时,除了应坚持持资产评估操作程序中规定的各项原 则外,还应遵循真实性与预见性原则、透明性与适应性原则和可操作性与规定性原则。  
        三、系统软件成测算  
        综上所述,系统软件的成本由软件的开发和维护成本所构成,即: C=C1+C2 (1)  
        式中:C为系统软件的开发成本;C1为系统软件的开发成本所构成;C2为系统软件的维护成本。  
        1、系统软件的开发成本C1的测算。  
        我们认为系统软件的开发成本按其工作量及单位工作量成本来测算是可行的,具体测算方法为按系统软 件的软件规模(一般为软件源程序的指令行数,不包括注释行)、社会平均规模指数以及工作量修正因素来 进行。尤其是CAD系统软件的实际测算,结合国内外研究成果的综合分析和专家咨询,软件社会平均生产率 参数和软件社会平均规模指数可分别确定为3.5和1.3左右;软件工作量订由八个因子、五个等级组成。  
        2、系统软件维护成本C2的测算。  
        系统软件的维护为修正现有可运行软件并维护欺其主要功能不变的过程。系统软件在其交付使用后,其维护阶段在软件生命周期或生存期中占较大比重,有的可达软件生存周期的50-70%。因此,系统软件的维护成本是软件成本测算中不可忽略的一部分。  
        系统软件的维护包括三类:A、改正、纠正性维护;B、适应性维护;C、完美性维护。其中C类是为扩充 功能、提高性能而进行的维护,在软件资产价值评估中一般不计入该系统软件成本,而A、B两类,则与软 件的开发过程有着紧密的联系,应计入软件成本。  
        在系统软件维护阶段,对软件工作量的影响因素与开发阶段的影响因素基本相同,是开发阶段影响因素 的后的影响。因此,系统维护的可靠性越大,规模越复杂,隐错越难发现,纠错越难。系统软件越复杂, 要使其适应软、硬环境变化,进行适应性维护也越困难。当然,可靠性大、复杂度高的系统软件,其可维 护性要求也越高,软件在运行中出错的可能性也会少些。基于上述分析,系统软件维护成本的测算,可按 系统软件开发成本乘以一个该系统软件的维护参数来求取。这一维护参数,可按系统软件的复杂度从简单 到一般、到复杂的顺序,分别取0.15、0.20、0.25及0.30、0.35、0.40等。  
        计算机系统软件作为计算机系统的组成部分,是信息社会的重要商品,也是知识经济社会中的重要资产。 系统软件同其他计算机软件一样,具有如下的特点:  
        1、系统软件是由许多人共同完成的高强度智力劳动的结晶,是建立在知识、经验和智慧基础上的具有独 创性的产物。系统软件的开发可以工程化,软件生产可以工厂化,因此,系统软件具有价值和使用价值。 同时,系统软件具有独创性(即原始性),所以软件著作权人对系统软件产品依法享有发表权、开发者身份权、使用权、许可权、获取报酬权及转让权。  
        2、系统软件产品是无形的,存在于磁盘等介质的有形载体中,通过载体进行交易。因此,带有系统 软件的磁盘交换价值,是磁盘自声价值与系统软件之和,而且主要是系统软件的价值。  
        3、系统软件产品的复制(批量生产)相应简单,其复制成本同其开发成本比较,几乎可以忽略不 计。因此,系统软件产品易被复制乃至剽窃。为保护系统软件产品的著作权,必须依法登记。  
        4、系统软件产品一般没有有形损耗,仅有无形损耗。系统软件产品的维护,一是由于系统软件自身 的复杂性,特别是为了对运行中新发现的隐错进行改正性维护;二是由于系统软件对其硬、软件环境有依赖性。硬、软环境改变时,系统软件要进行适应性维护;三是由于需求的变化,要求增强系统软件功能和提高系统软件性能,系统软件要进行完美性维护。因此,系统软件的维护在其生命周期中占有重要地位。同时,系统软件的维护过程是一个软件价值的增值过程。由上述测算方法可知,系统软件的维护费用,即使不计入完善性维护费用也已相当昂贵。不断的升级的新版本代替旧版本软件也是系统软件价值评估中应予考虑的一个特点。
  • 相关阅读:
    java的构造方法 java程序员
    No result defined for action cxd.action.QueryAction and result success java程序员
    大学毕业后拉开差距的真正原因 java程序员
    hibernate的回滚 java程序员
    验证码 getOutputStream() has already been called for this response异常的原因和解决方法 java程序员
    浅谈ssh(struts,spring,hibernate三大框架)整合的意义及其精髓 java程序员
    你平静的生活或许会在某个不可预见的时刻被彻底打碎 java程序员
    Spring配置文件中使用ref local与ref bean的区别. 在ApplicationResources.properties文件中,使用<ref bean>与<ref local>方法如下 java程序员
    poj1416Shredding Company
    poj1905Expanding Rods
  • 原文地址:https://www.cnblogs.com/mazhenyu/p/7614385.html
Copyright © 2011-2022 走看看