大多数人开篇就会问这个问题,本周已有3个人咨询该问题。
咨询过程大致是:
“您好,请问开发一个APP软件需要多少钱?”
这个取决于您的需求!我需要知道你的具体需求,这样我就可以给你一个准确的报价。
“没有,我也不是很懂,就想做个像XXX一样的APP”
是的,那是一个很成熟的APP,但我们仍然需要根据贵公司具体需求来解决这个问题和软件将提供什么功能。
“所有需要做的是<功能1 >和<功能2 >。我希望短时间能够看到成品,所以需要一个价格评估。”
在这一点上,没有深入钻研系统功能要求,立刻出报价,我表示很为难,方便的话可以到公司详谈········
APP开发报个价真有这么难?举个例子,应该就一目了然了。
你去找建筑商问:“建造一座房子要花多少钱?”
大多数人都认为合理的回答是:“这取决于你想要什么类型的房子?“。
卧室、浴室、广场的长度、安装设备和配件的质量都会对房子的总成本产生巨大的影响.。
你有土地,建筑规划,规划许可吗?地基牢固吗?是否容易挖掘(没有岩石)?是否容易进入(没有起重机)?是否有需要移除的有害物质?其他成本考虑因素包括劳动力的专业知识,以及每个阶段有多少人作业…列表几乎是无止境的(相信我,我住过一个新的房子建设!)。
类比软件开发,除非你有具体的要求,否则几乎是不可能提供准确的报价。
为什么那么难报价?
人们可以理解为什么一个建筑商在不知道房子需要什么的情况下报价是很困难的,因为房子是有形的东西.。他们知道建造一所房子需要很多材料很多工序,每一件材料和工序质量不一样价格当然不一样,所以他们会自动开始列清单。
软件开发涉及的方面更难以评估。大多数人从来没有真正的编码,更不用说建立一个完整的软件系统,因此要了解涉及的是非常困难的,我们在日常工作生活中使用的软件,我们认为他们是理所当然的。当我们按下一个键或点击鼠标,我们想做的事情就发生了。复杂的事件处理隐藏在我们面前。正因如此,非技术人员认为这种隐藏的复杂性是很容易实现的,无非就是复制粘贴而已。
简单按钮的例子
我承认,这个例子不是我的。它是由我们非常有才华的创意总监(艾玛)设计的,我认为这很有助于解释软件开发过程中的一些复杂性(因果成本)。
仔细观察您使用过的任何一款应用程序,任何一个按钮,它是什么颜色的?Size是多大?圆角还是直角?有边界吗?它是什么文本?什么字体?文本是什么颜色的?文字周围有多少填充物?有图标吗?按钮之间的间距是多少?点击按钮时,它会改变颜色/形状/位置吗?
以上每一个都必须设计和构思。你是不是开始思考需要多长时间才能算出和建立一个按钮(一个经验丰富的UI设计师需要大概10分钟的时间,设计一个按钮)。
那么我们花费了这么长的时间设计出来的一个按钮,它能做什么?怎么与事件相关联?所以,我们也必须设计和开发。
假设按钮保存某项数据(一个简单的形式)。当我们点击按钮,这里是一个典型的事件链:
检查所有数据是否存在(需要哪些字段?)
检查所有数据的正确格式(数字是数字,日期是日期,电子邮件是电子邮件等)
检查数据库是否可用?我们可以连接到它吗?它在网上吗?)
检查数据不重复吗?例如,我们已经得到了电子邮件传输的数据?)
创建数据库查询以保存数据(将所有数据转换成适当格式存储)
将数据写入数据库。
向用户显示成功消息
听起来很简单啊?建立这种简单的功能也需要很多的开发工作。此外,如果上述步骤中的任何一个环节出错,怎么办?
如果数据丢失/格式错误,你会希望看到提示消息,要求你解决相关问题。
如果数据库不可用会怎样?更糟糕的是,如果把数据写入数据库的中途出错了……我们不能遗漏任何一条记录,所以我们是再试一次还是回滚所有的东西?
综上所述只是一个小小的按钮,我们还没有开始研究整个系统,用什么样的编程语言开发、不同用户使用权限设置等等(更不用说如何测试和部署的软件使用)。
结论
您应该对软件开发的复杂性有一个更好的理解了。一个软件应用程序从无到有,直到每一个功能的设计,开发,测试,以及持续运行。每一个数据的检索、保存和显示都必须经过考虑.。每一个公式和计算都必须计算出来,程序和结果加倍检查。向您显示的每个消息都必须键入。每个字体,颜色,图像,背景和图标都必须设置。
用于解决问题的技术必须被选择,设置和应用。要求进行调查和制定,用户界面需要设计,测试用例必须被写入。最后,得到的软件系统必须部署和维护。
所以,下次你听到有人问:“开发一个APP软件需要多少钱?”,给开发商一个小小的拥抱吧(上帝知道他们需要一个)。
不太满意?
没有想到,你仍然想知道开发一个APP软件要花多少钱,对吧?好的,我屈服了。经验之谈,给你个价位段,仅供参考。
低范围:5万- 10万
这真的是最低的成本。模板或者简单的计算,没有花里胡哨的应用。
中等范围:10万- 20万
因此,你可能会得到一个应用程序,做一些冷静的事情(可能记录和跟踪的东西)。
平均范围:100000元- 250000元
是的,前两个范围只是为了让你感觉更好。很有可能,你的好主意可能会落入这个价格区间。这就是你开始简单的报告简单的功能。
高范围:250000元- 800000元
您开始进入全企业软件应用程序。在这个价格点你会得到一个很好的功能集和报告,但仍然没有什么前沿的功能。
独特的范围:800000元- $无限
软件应用在这个范围通常是独特的,需求深入的需求分析,了解和发展必要的功能。他们可能有一个非常丰富的功能集和/或复杂的计算。
我一直在刻意的谨慎与描述,你会得到你的钱,和谨慎。你可能会发现你的钱或多或少的功能,你猜对了,一切都取决于你!
还有一件事
在软件开发的讨论中经常遗漏的一个领域是正在进行的维护.。总拥有成本(TCO)比最初的开发成本更高。作为一个经验法则,我经常说,你可能会花费大约一半的初始费用的第一个2年的应用程序被释放。这可能是新的功能,错误修复,优化和一般更新(例如,安全,新技术)。
甚至还有更多…
这篇文章比较短,我没有涉及诸如用户持续的支持成本,基础设施需要交付的软件,发展的时间尺度(有被支付的溢价如果你需要的东西做得非常快,等等),,如果你在任何这些东西感兴趣,欢迎探讨评论。
咨询过程大致是:
“您好,请问开发一个APP软件需要多少钱?”
这个取决于您的需求!我需要知道你的具体需求,这样我就可以给你一个准确的报价。
“没有,我也不是很懂,就想做个像XXX一样的APP”
是的,那是一个很成熟的APP,但我们仍然需要根据贵公司具体需求来解决这个问题和软件将提供什么功能。
“所有需要做的是<功能1 >和<功能2 >。我希望短时间能够看到成品,所以需要一个价格评估。”
在这一点上,没有深入钻研系统功能要求,立刻出报价,我表示很为难,方便的话可以到公司详谈········
APP开发报个价真有这么难?举个例子,应该就一目了然了。
你去找建筑商问:“建造一座房子要花多少钱?”
大多数人都认为合理的回答是:“这取决于你想要什么类型的房子?“。
卧室、浴室、广场的长度、安装设备和配件的质量都会对房子的总成本产生巨大的影响.。
你有土地,建筑规划,规划许可吗?地基牢固吗?是否容易挖掘(没有岩石)?是否容易进入(没有起重机)?是否有需要移除的有害物质?其他成本考虑因素包括劳动力的专业知识,以及每个阶段有多少人作业…列表几乎是无止境的(相信我,我住过一个新的房子建设!)。
类比软件开发,除非你有具体的要求,否则几乎是不可能提供准确的报价。
为什么那么难报价?
人们可以理解为什么一个建筑商在不知道房子需要什么的情况下报价是很困难的,因为房子是有形的东西.。他们知道建造一所房子需要很多材料很多工序,每一件材料和工序质量不一样价格当然不一样,所以他们会自动开始列清单。
软件开发涉及的方面更难以评估。大多数人从来没有真正的编码,更不用说建立一个完整的软件系统,因此要了解涉及的是非常困难的,我们在日常工作生活中使用的软件,我们认为他们是理所当然的。当我们按下一个键或点击鼠标,我们想做的事情就发生了。复杂的事件处理隐藏在我们面前。正因如此,非技术人员认为这种隐藏的复杂性是很容易实现的,无非就是复制粘贴而已。
简单按钮的例子
我承认,这个例子不是我的。它是由我们非常有才华的创意总监(艾玛)设计的,我认为这很有助于解释软件开发过程中的一些复杂性(因果成本)。
仔细观察您使用过的任何一款应用程序,任何一个按钮,它是什么颜色的?Size是多大?圆角还是直角?有边界吗?它是什么文本?什么字体?文本是什么颜色的?文字周围有多少填充物?有图标吗?按钮之间的间距是多少?点击按钮时,它会改变颜色/形状/位置吗?
以上每一个都必须设计和构思。你是不是开始思考需要多长时间才能算出和建立一个按钮(一个经验丰富的UI设计师需要大概10分钟的时间,设计一个按钮)。
那么我们花费了这么长的时间设计出来的一个按钮,它能做什么?怎么与事件相关联?所以,我们也必须设计和开发。
假设按钮保存某项数据(一个简单的形式)。当我们点击按钮,这里是一个典型的事件链:
检查所有数据是否存在(需要哪些字段?)
检查所有数据的正确格式(数字是数字,日期是日期,电子邮件是电子邮件等)
检查数据库是否可用?我们可以连接到它吗?它在网上吗?)
检查数据不重复吗?例如,我们已经得到了电子邮件传输的数据?)
创建数据库查询以保存数据(将所有数据转换成适当格式存储)
将数据写入数据库。
向用户显示成功消息
听起来很简单啊?建立这种简单的功能也需要很多的开发工作。此外,如果上述步骤中的任何一个环节出错,怎么办?
如果数据丢失/格式错误,你会希望看到提示消息,要求你解决相关问题。
如果数据库不可用会怎样?更糟糕的是,如果把数据写入数据库的中途出错了……我们不能遗漏任何一条记录,所以我们是再试一次还是回滚所有的东西?
综上所述只是一个小小的按钮,我们还没有开始研究整个系统,用什么样的编程语言开发、不同用户使用权限设置等等(更不用说如何测试和部署的软件使用)。
结论
您应该对软件开发的复杂性有一个更好的理解了。一个软件应用程序从无到有,直到每一个功能的设计,开发,测试,以及持续运行。每一个数据的检索、保存和显示都必须经过考虑.。每一个公式和计算都必须计算出来,程序和结果加倍检查。向您显示的每个消息都必须键入。每个字体,颜色,图像,背景和图标都必须设置。
用于解决问题的技术必须被选择,设置和应用。要求进行调查和制定,用户界面需要设计,测试用例必须被写入。最后,得到的软件系统必须部署和维护。
所以,下次你听到有人问:“开发一个APP软件需要多少钱?”,给开发商一个小小的拥抱吧(上帝知道他们需要一个)。
不太满意?
没有想到,你仍然想知道开发一个APP软件要花多少钱,对吧?好的,我屈服了。经验之谈,给你个价位段,仅供参考。
低范围:5万- 10万
这真的是最低的成本。模板或者简单的计算,没有花里胡哨的应用。
中等范围:10万- 20万
因此,你可能会得到一个应用程序,做一些冷静的事情(可能记录和跟踪的东西)。
平均范围:100000元- 250000元
是的,前两个范围只是为了让你感觉更好。很有可能,你的好主意可能会落入这个价格区间。这就是你开始简单的报告简单的功能。
高范围:250000元- 800000元
您开始进入全企业软件应用程序。在这个价格点你会得到一个很好的功能集和报告,但仍然没有什么前沿的功能。
独特的范围:800000元- $无限
软件应用在这个范围通常是独特的,需求深入的需求分析,了解和发展必要的功能。他们可能有一个非常丰富的功能集和/或复杂的计算。
我一直在刻意的谨慎与描述,你会得到你的钱,和谨慎。你可能会发现你的钱或多或少的功能,你猜对了,一切都取决于你!
还有一件事
在软件开发的讨论中经常遗漏的一个领域是正在进行的维护.。总拥有成本(TCO)比最初的开发成本更高。作为一个经验法则,我经常说,你可能会花费大约一半的初始费用的第一个2年的应用程序被释放。这可能是新的功能,错误修复,优化和一般更新(例如,安全,新技术)。
甚至还有更多…
这篇文章比较短,我没有涉及诸如用户持续的支持成本,基础设施需要交付的软件,发展的时间尺度(有被支付的溢价如果你需要的东西做得非常快,等等),,如果你在任何这些东西感兴趣,欢迎探讨评论。