你需要这样给自己的软件开发定价了!
2018-03-29 00:00
295 查看
“兄弟,你看做这样一个软件需要多少钱?” 这估计是所有软件从业人员被问的最多也是最无奈的一个问题。这个问题等同于,“你看装修一个100平米的房子需要多少钱?”。软件开发你不懂,装修你总懂吧,100平米的房子装修从10万到100万均有可能,取决于你找什么级别的设计公司,买什么样的材料,请什么样的施工队……所以,我真的没有办法回答你“做这样一个软件需要多少钱?”的问题。
评估一个软件开发的费用,你首先需要理清楚一些基本概念。
1. 招聘一个开发者的成本
如今(2015年) IT 行业蓬勃发展,对软件开发工程师的需求很大,导致工程师的工资一路水涨船高,以一线城市为例,一个能实际干活的应届开发者的月薪在10000元左右,3年以上工作经验的基本能达到20000元。我们姑且把三年工作经验定义为靠谱的开发者,再加上其他福利和管理成本,一个靠谱全职开发者的成本在30000元左右。这还没有算上你招聘的成本,想想是不是很肉疼?没办法,行情就是这样,就跟这房价一样。
2. 外包项目费用的计算方式
外包分为两种,人力外包和项目外包。人力外包是指外包公司派一个人去你公司工作,你按天支付这个人的费用给外包公司。目前这种外派的基本要价是1000元每天,好一点的人员在2000元以上。项目外包是指做完一个项目多少钱,不管外包公司投入多少人。有点类似于装修队的点工和包工。项目外包的价格虽然是打包价,但也是通过估算工时算出来的。例如一个项目预计需要两个人开发20天,那就是40人天的工作量,按照1500元/人天算(这已经是良心价了),这个项目就是60000元。
看到这里你一定会觉得,外包好贵,怎么比招一个人的成本贵那么多!君不见,用人除了硬性成本还有很多软性成本的。例如招聘的时间成本,招来不合适开人的成本。而通过外包,你可以做到召之即来,挥之即去,这些软性成本都是外包公司承担了,你要算单价,自然会贵一些。
好了,下面我们回到正题,“开发这样一个软件需要多少钱?”。这里的核心问题是如何定义“这样”。你需要准确的估价,那就需要把需求定义清楚,否则估价就是耍流氓,最后一定导致纠纷。需求定义包含以下几个方面:
1. 设计要求
一个好的设计是很贵的,因为涉及到创意,而且不好评估,见仁见智。就跟你请大师画一幅画,还是请普通画师画一幅画一样,看你想要什么了。在我看来,绝大部分软件项目设计中规中矩就好了,请一个有经验的设计师,按照最新流行的设计风格设计一套 UI 都不会差到哪里去。而且价格都比较便宜的,一个 APP 的 UI 设计,一般在10000 - 20000之间,应该能有不错的效果。当然,你对设计没有要求的话,你找一个应届生做一套 UI,几千块就搞定了,也不会太丑的。
2. 功能要求
我不止一次被问到,“我想做一个类似于微信的 APP……”,然后我就呵呵了。其实你不是真的想做一个微信,我相信你想要的只是微信的部分功能,例如聊天部分。所以你应该更加准确的描述你对功能的要求,例如:类似于微信的聊天功能,可以发文字,图片,语音还有视频,可以多人拉群对话。有新消息会弹出通知,聊天记录保存在服务器端……。在这一点上不能懒,你需要强迫自己去描述这些功能,你不要以为你自己不懂就不去仔细思考,其实你可以的。有些功能看起来差不多,其实有很大的区别,比如聊天是否需要支持表情,表情是否支持动画这些其实工作量都是很不一样的。
3. 性能要求
性能问题其实不是特别需要关注,因为在目前的技术发展水平上,性能都不会有太大的问题,特别是在项目初期,但也还是要说一说。同样的功能,但是性能要求不一样,工作量是完全不一样的。还拿聊天来举例子,这个功能是比较常见的,但是你说要像微信一样支持几亿用户同时聊天,那就是两码事了。同样是个车,QQ和奔驰还是很不一样的。
在明确了以上信息以后,你找一个有经验的开发者或者项目监理就能给你一个明确的估价了。值得注意的是,软件开发是一件非常不标准的事情,跟装修很像,要留有余地,你把费用卡的太死,最后别人只能偷工减料了。
当然还有一种估价方式,你先确定预算,然后再来定细节功能。例如你打算花50000来做一个 APP,具有类似微信的聊天功能,还有相互关注晒照片功能。你把详细的功能需求给到开发者或者项目监理,他会去判断你的预算能否实现你的要求,如果不能的话,你们再商量哪些功能可以先不做,例如聊天发表情功能不是很重要就先不做了,可以节约一些成本。
无论何种方式,都需要你明确需求,明确需求,明确需求!重要的事情说三遍。所以你找别人报价的时候,千万不要只扔过去“开发一个类似于 xxxx 这样的 APP 需要多少钱?”,你不会得到你想要的答案的,回答这样的问题是不负责任的。不过,这倒不失为一种过滤服务方的一种方法!
评估一个软件开发的费用,你首先需要理清楚一些基本概念。
1. 招聘一个开发者的成本
如今(2015年) IT 行业蓬勃发展,对软件开发工程师的需求很大,导致工程师的工资一路水涨船高,以一线城市为例,一个能实际干活的应届开发者的月薪在10000元左右,3年以上工作经验的基本能达到20000元。我们姑且把三年工作经验定义为靠谱的开发者,再加上其他福利和管理成本,一个靠谱全职开发者的成本在30000元左右。这还没有算上你招聘的成本,想想是不是很肉疼?没办法,行情就是这样,就跟这房价一样。
2. 外包项目费用的计算方式
外包分为两种,人力外包和项目外包。人力外包是指外包公司派一个人去你公司工作,你按天支付这个人的费用给外包公司。目前这种外派的基本要价是1000元每天,好一点的人员在2000元以上。项目外包是指做完一个项目多少钱,不管外包公司投入多少人。有点类似于装修队的点工和包工。项目外包的价格虽然是打包价,但也是通过估算工时算出来的。例如一个项目预计需要两个人开发20天,那就是40人天的工作量,按照1500元/人天算(这已经是良心价了),这个项目就是60000元。
看到这里你一定会觉得,外包好贵,怎么比招一个人的成本贵那么多!君不见,用人除了硬性成本还有很多软性成本的。例如招聘的时间成本,招来不合适开人的成本。而通过外包,你可以做到召之即来,挥之即去,这些软性成本都是外包公司承担了,你要算单价,自然会贵一些。
好了,下面我们回到正题,“开发这样一个软件需要多少钱?”。这里的核心问题是如何定义“这样”。你需要准确的估价,那就需要把需求定义清楚,否则估价就是耍流氓,最后一定导致纠纷。需求定义包含以下几个方面:
1. 设计要求
一个好的设计是很贵的,因为涉及到创意,而且不好评估,见仁见智。就跟你请大师画一幅画,还是请普通画师画一幅画一样,看你想要什么了。在我看来,绝大部分软件项目设计中规中矩就好了,请一个有经验的设计师,按照最新流行的设计风格设计一套 UI 都不会差到哪里去。而且价格都比较便宜的,一个 APP 的 UI 设计,一般在10000 - 20000之间,应该能有不错的效果。当然,你对设计没有要求的话,你找一个应届生做一套 UI,几千块就搞定了,也不会太丑的。
2. 功能要求
我不止一次被问到,“我想做一个类似于微信的 APP……”,然后我就呵呵了。其实你不是真的想做一个微信,我相信你想要的只是微信的部分功能,例如聊天部分。所以你应该更加准确的描述你对功能的要求,例如:类似于微信的聊天功能,可以发文字,图片,语音还有视频,可以多人拉群对话。有新消息会弹出通知,聊天记录保存在服务器端……。在这一点上不能懒,你需要强迫自己去描述这些功能,你不要以为你自己不懂就不去仔细思考,其实你可以的。有些功能看起来差不多,其实有很大的区别,比如聊天是否需要支持表情,表情是否支持动画这些其实工作量都是很不一样的。
3. 性能要求
性能问题其实不是特别需要关注,因为在目前的技术发展水平上,性能都不会有太大的问题,特别是在项目初期,但也还是要说一说。同样的功能,但是性能要求不一样,工作量是完全不一样的。还拿聊天来举例子,这个功能是比较常见的,但是你说要像微信一样支持几亿用户同时聊天,那就是两码事了。同样是个车,QQ和奔驰还是很不一样的。
在明确了以上信息以后,你找一个有经验的开发者或者项目监理就能给你一个明确的估价了。值得注意的是,软件开发是一件非常不标准的事情,跟装修很像,要留有余地,你把费用卡的太死,最后别人只能偷工减料了。
当然还有一种估价方式,你先确定预算,然后再来定细节功能。例如你打算花50000来做一个 APP,具有类似微信的聊天功能,还有相互关注晒照片功能。你把详细的功能需求给到开发者或者项目监理,他会去判断你的预算能否实现你的要求,如果不能的话,你们再商量哪些功能可以先不做,例如聊天发表情功能不是很重要就先不做了,可以节约一些成本。
无论何种方式,都需要你明确需求,明确需求,明确需求!重要的事情说三遍。所以你找别人报价的时候,千万不要只扔过去“开发一个类似于 xxxx 这样的 APP 需要多少钱?”,你不会得到你想要的答案的,回答这样的问题是不负责任的。不过,这倒不失为一种过滤服务方的一种方法!
相关文章推荐
- 软件开发与业务中最需要工作流
- 根据自己的需要,把别人开发好的东西搬过来,优化and重构,在优化的过程中,甚至也会弄出一套全新的东西(转)
- 需要大量设计的软件如何进行敏捷开发
- 个人开发软件也需要版本控制,谁有没有轻量级的版本控制推荐?
- 学嵌入式Linux软件开发需要的知识
- Ubuntu中没用自带C/C++开发环境,需要用户自己配置。在UBUNTU中文论坛中的一些帖子集合。
- 软件企业也需要做好自己的定位
- 软件开发的各步骤以及需要的工具
- 开始软件开发生涯时你需要知道的几件事
- 葵花宝典:软件开发高手是这样炼成的!
- Modbus软件开发实战指南 之 开发自己的Modbus Poll工具 - 4
- Modbus软件开发实战指南 之 开发自己的Modbus Poll工具 - 3
- 什么是IIS,一个完整的.NET运行环境(针对web;不是开发环境)需要哪些软件或配置
- 应聘BAT软件测试工程师你可能需要这样准备
- 【软件开发相关技巧、流程 || 编辑环境快捷键 || 需要掌握的基本技能 】
- 做一个运动控制软件开发人员需要具备的条件!
- 在程序员的眼里,用户是这样使用他们开发的软件的
- 请问用java(ssh)开发一个这样的OA系统需要多长时间?
- 杀毒软件需要改变开发模式
- 想带几个徒弟,C#.NET开发技术方面的,把自己积累的软件技术传授给高徒[非网络带人]