《软件项目成本组成分析.docx》由会员分享,可在线阅读,更多相关《软件项目成本组成分析.docx(7页珍藏版)》请在三一文库上搜索。
1、软件项目成本组成分析软件开发属于高智商的脑力劳动过程,软件产品一旦开发完成,即可进行软件“生产线”的建设, 虽然软件产品的制作过程需要几乎可以忽略不计的成本就可以实现产品的批量生产(复制),但不同软件种类其生产线的“流程”和成本是不同的,真正能实现产品化软件销售绝不是简单的事情。 但是,软件行业却无形中给人造成这样一种印象,软件开发只需要有一个开发队伍坐在计算机前就可以了, 既然不像传统产业需要建工厂, 不需要固定的厂房、 设备和看得见的生产线, 所以软件行业是“一本万利”的高回报产业。 但是软件产业的高投入、 高风险是一个不争的事实, 甚至在软件已经开发完成, 在给客户实施过程中动辄几十万、
2、 几百万甚至上千万的项目打了“水漂”。 那么一个新软件产品研制过程究竟会发生哪些成本支出呢?如果您对上述问题感兴趣,请来一起探讨吧。一个新软件产品或新软件项目, 从提出到具备销售条件, 需要经历策划与环境建设、 产品研制与孵化、软件产品生产线建立等阶段,其成本主要源自这几个阶段的过程之中。一、策划与环境建设同传统项目一样, 软件产品开发也需要经历立项过程, 也就是经过调研论证决定项目“上马”后,才能开始策划软件的开发、建设开发环境。软件产品虽不像传统产品那样需要建工厂、盖厂房而“大兴土木”,但软件产品开发和研制同样需要建设适合软件技术人员工作的“生产环境”和“生产车间”, 只不过软件开发的“生
3、产车间”比较特殊罢了。软件产品的策划与环境建设阶段需要展开必要的调研、建设软件开发环境、购买必须的工具,当然也就需要有相应的成本支出。1 、调研费用调研是软件产品立项前必须开展的工作,是软件立项和软件产品策划的依据。调研内容有客户调研和市场调查, 客户调研目的是确定产品需求和产品功能, 并进一步分析市场规模。市场调查主要用来分析当前同类型软件产品面世情况,对面世的产品调研其市场分布如何,软件产品的功能特点、差异、优劣及发展趋势;如果没有同类产品面世,则通过调研需要重点分析市场需求和市场规模。调研规模和调研方式存在很大差异,一旦明确了调研方式、规模、范围和参与的人员组成,则调研费用就可以基本确定
4、下来。2 、环境建设费用经过调研分析一旦确定新软件产品立项,就需要落实开发队伍,进行产品开发的环境建设和前期准备。 环境建设内容由工作场地建设和网络环境建设组成。 场地建设是软件开发环境的基础, 是软件人员开展开发工作的基本场所。 需要提供工作场所租赁和工作环境建设等费用。二、开发环境建设与系统集成软件公司最主要的环境就是要有适合软件开发需要的开发环境,建设软件开发所必须的网络系统。有以下建设内容:网络工程建设:服务器、交换机、防火墙、 UPS 电源、工作站等硬件设备采购与安装调试,网络布线工程。系统集成:网络操作系统、工作站和终端操作系统、数据库系统、软件防火墙和病毒防护软件采购与集成。辅助
5、工程:根据企业规模和需要,进行多媒体会议室、企业网站、企业办公系统建设。3 、工具购置费“工欲善其事,必先利其器”,在软件产品开发前也必须采购所需要的各类工具。软件开发所需要的工具有很大差别, 工具的选择和确定由项目组根据产品特点和要求确定, 不同工具的价格可从提供商获取。 工具的选择依据是由所要开发的软件决定的, 不仅要考虑工具功能, 也需要从工具的性能价格比和客户承受能力考虑。 一个典型软件产品所需要的工具有以下几种:开发工具: 就是用来开发软件的工具, 是软件开发不可缺少的部分, 发工具都有自身优势也有其不足,采用不同的开发工具会影响软件的开发成本和维护成本,例如用 Java 是用Del
6、phi 开发成本数倍以上。操作系统:这里说的操作系统是将来的软件产品或客户所要求的操作系统,所以,如果软件项目要求的环境不具备时,须另行采购所需的操作系统并建设一个专用的开发环境。数据库操作系统:这里指软件产品所需要的数据库系统,数据库系统的价格因版本和允许同时进行数据操作终端的不同而异。测试工具:测试工具是对软件产品进行针对性能测试的软件,是软件质量控制的检测工具,测试工具可以在一定程度上实现测试的自动化、替代部分人工测试、提高测试效率。不是所有的软件产品都能找到合适的测试工具, 即使有可用的测试工具, 测试环境的建立和规范的应用需要软件企业投入比较大的精力才行, 不能完全取代人工测试。 软
7、件测试是必须的,不是非要借助测试工具才能完成,不一定都要购买测试工具。管理工具:软件产品开发具有自身特点,其开发过程的管理又属于项目管理的范畴。借助实用的管理工具不仅可以提高软件开发的规范程度, 而且可以提高产品开发效率、 有助于项目管理和质量控制。 软件开发过程中需要参与管理的内容有各类文档、 开发过程中所产生的结果,不同管理工具具有不同的管理目的和作用。常见的管理工具有: 1 、进行软件版本控制和管理的版本控制工具; 2 、进行数据库定义的数据库建模工具; 3 、用于可视化需求分析和系统设计的系统建模工具; 4 、以文件形式对产品结果进行管理的文件管理工具; 5 、产品开发过程需要的其他应
8、用工具, 如文档编写工具、网络计划工具、 图形绘制工具等。管理工具也是计算机软件, 具有适用的环境和对象, 所以就一个具体软件开发过程来说需要哪些管理工具存在很大差异。安装程序制作工具:当软件尤其产品化软件的开发完成,需要通过安装工具将一个完整的软件产品打包压缩制作成安装程序, 这样当软件发布客户购买后即可运行安装程序, 引导客户一步一步的完成软件的安装和配置。第三方软件:几乎所有的软件都需要有其它软件的支持才能运行,除了系统本身提供的软件外, 一些软件需要从第三方购买的具有特定功能的软件“半成品”。 这些“半成品”犹如建筑屋“积木”或“预制构件”, 他们具有独立功能可接口, 利用这些“半成品
9、”可以方便的迁入到自己的软件成品中,从而降低开发成本、提高开发效率和产品质量。硬件工具及配套设备:软件运行所用到的硬件工具和配套硬件设备也是必须的。硬件工具是通用性质的硬件,例如票据打印机、 手写板, 这类硬件购买过来即可安装使用;而配套设备是需要针对不同的设备进行二次编程、 开发接口才能发挥硬件的作用, 例如用于安全的加密狗、 用于称重的电子磅、 用于图像采集的视频采集卡, 这需要供应商提供设备二次开发接口和标准。配套设备购买的多少与软件适用范围有关, 例如,开发一个手机游戏软件,则需要购买多种款式的手机。三、软件产品生产线建设软件项目经过一定阶段的研制、孵化和培育逐渐成熟,甚至在局部范围内
10、实现了销售。这时软件产品具备“批量”生产以便规模化销售的条件, 软件企业可针对成熟产品建立对应的生产线,实现软件产品的销售、实施、服务。1 、硬件、软件费用软件产品有两种销售形式,批量发行和项目服务。批量发行就是将软件产品制作包装成可以由客户选购的商品, 投放市场, 这类软件的功能、价格基本统一, 安装配置过程由客户根据手册说明自行完成。 项目服务就是不能批量销售的软件, 由销售人员与客户沟通、 签署项目合同, 以软件企业为主在客户的参与下完成产品的安装、 实施, 必要时根据客户需要进行定制开发, 并负责必要的操作培训和技术培训。 无论是哪种销售方式, 均需要提供软件正常运行所配套的硬件或软件
11、。2 、产品制作费用软件产品的载体以及相关的附件是有形的,客户购买到的或提交给客户的软件产品需要经过制作和包装。 所以软件制作费用是不能节省的, 这项费用用来制作软件产品的技术说明、用户手册,软件安装程序的光盘刻录或软盘复制。3 、实施费用批量销售的软件一般不需要实施费用,由客户购买后自行安装成功后即可使用。大型的软件项目, 例如企业各类管理信息系统或企业资源计划、 呼叫中心等, 需要依据客户实际进行个性化的功能定制或配置,需要由软件企业专业技术人员实施完成。软件项目的实施,首先由软件技术人员对客户开展调研和需求分析,针对客户实际业务和管理需要确定客户功能需要, 规划设计出一个能快速适应客户的
12、软件项目方案, 并经客户确认。客户确认后, 技术人员即可根据软件项目方案在现有软件基础上, 定制开发客户个性化的功能,开发出客户需要的软件系统。最后,由技术人员在客户现场进行软件的安装、配置,协助客户完成软件初始化工作,必要时从旧系统数据导入新系统。 经培训后软件进入运行, 稳定运行一段时间后即可进行软件项目的交付。培训方面涉及的范围比较大, 从前期的高级培训到后期的操作培训跨度大, 培训对象和培训内容差别较大。 此外, 对一些大客户需要提供系统管理培训, 软件企业一般采用自助培训或委托专门的培训机构(例如 Oracle 认证的数据库工程师)来完成。综上所述可以看出,软件项目的实施费用由需求调
13、研、方案设计、安装调试与配置、培训、资料和验收等费用组成,必要时包括项目鉴定费用和第三方检测费用。4、售后服务费用不同于传统的工业产品,软件产品尤其是软件项目更多的体现在服务,所以软件产业重在服务。尤其大型的企业信息化项目,其要求的技术支持和服务更高, 只有提供周到、 及时的服务才能保证信息化项目的顺利运行。 有条件的甚至需要在软件企业的协助下建立客户自身的维护团队,以负责软件的维护、功能扩充和升级。售后服务主要由技术支持、产品维护和产品升级组成。技术支持一般由客户服务技术员负责解答客户在使用软件过程中遇到的问题并记录。产品维护由客户服务技术工程师承担,主要负责解决软件运行过程中暴露出的错误、故障和缺陷, 甚至负责软件适应性的调整, 例如打印票据格式的调整、 身份证号码位数的扩充等。 有的软件企业将产品升级归属到维护的范围, 但软件产品升级一般伴随软件版本的升级, 是软件产品产业化、 系列化必然,产品的升级由独立的开发团队完成, 也有的作为新软件项目对待。 升级后的软件可以作为独立的软件销售,但一般情况下会对老客户进行优惠升级。总之, 软件的售后服务费用由技术支持费用、 维护费用和升级开发费用组成, 软件产品维护、升级费用的支出往往远大于产品研制与孵化期的投入,除非软件产品没有客户而不需要维护! 精选资料