软件开发?你真的懂吗!
第一种情
在软件开发行业干的久了,所以对软件制作开发还是有一定的了解的,下边我就从以下几个方面来说说自己的一些理解吧,希望能给打算开发软件的同仁和希望了解APP开发的朋友一些帮助。 第一种情况:也是我见过的最常见的例子,就是很多客户上来就问做一个APP需要多少钱?或者问做一个简单的APP多少钱?或者说我要做个类似支付宝、微信、京东、滴滴打车等一样的APP需要多少钱? 针对(上来就问做一个APP需要多少钱?)这个问题我的看法是和你去4S店问销售顾问我买一辆车要多少钱是一个道理。根据价格有5万的车也有1000万的车。根据品牌、用途、配置,引擎,变速箱、底盘和装置不一样,价格和成本也是天差地别。同样的道理,你去找开发公司去问做一款APP的时候,必须表达清楚自己要的是什么样的APP,用于什么场景,用于解决什么问题,怎么解决(具体需要哪些功能),以及你想达到什么目的,否则你上来就问价格,不亚于你去问汽车4S店,我就是要一辆车,你告诉我价格就行了。别人肯定会拿你当傻子。因为你的问题没法回答你。遇到想和你聊聊的销售人员他会模糊的告诉你做一个APP从几千块到几个亿,这个答案对于你来说我看是没有任何意义,还不如不问。你说是吗。 针对(问做一个简单的APP多少钱?)这个问题我的看法是每个人对简单的定义是不一样的,因为每一个人对某一件事情或者一个物体的认知是不一样的,所掌握的知识面也是不一样的,所以对简单的理解也是不一样,这就需要明确你说的简单具体是简单到什么程度,具体是什么想法可以先说出来,只有把需求量化以后才能知道他的工作量,所需要的开发费用和工期也就好评估了。因为很多人觉得微信和支付宝也挺简单的.........这里就不多说了。建议想做APP的朋友做好是向开发公司说清楚具体功能。 针对(我要做个类似支付宝、微信、京东、滴滴打车等一样的APP需要多少钱?)这个问题我的看法是觉得一般这么问的创业者有个特点,很多人说不清楚自己要的是什么。可能只是看中了比如滴滴打车的地图功能,但是描述的时候说的是跟滴滴打车类似。而滴滴打车的地图功能本身实际只占了滴滴整个软件系统功能的百分之一都不到。同理,有的客户是看到了微信的发朋友圈或者聊天,就说我要做一个微信这样的APP,这样问的客户往往是对软件看法基本的逻辑还没有理解,不知道怎么向开发公司表达自己的想法,遇到经验丰富一些的销售人员可能会引导客户你要的是不是某个软件的那个功能,因为销售人员心里清楚,客户不可能会有这么高的预算去开发这样的软件。而没有经验的销售人员会直接问客户你是不是想模仿或者完全和这个做的一样,这样沟通后会出现一个问题,谈到最后报费用时客户觉得太贵,你这个公司不靠谱,简直是漫天要价,其实不愿客户,客户没有这个概念,这就造成了这个项目无法成交。下边我们说说为什么不能是完全仿做?你看到的貌似简单的微信/支付宝/京东/滴滴打车/.....这样的APP,每个的软件研发成本都是过千万,乃至几亿的(特别是复杂的后台)。因为这些大公司APP的细节的复杂程度和后台的复杂程度超乎你的想象。现在所谓的很多软件仿京东,微信之类的,网上说能给你开发微信京东之类的公司,可以说真正能做的功能不到微信京东的百分之一。举几个具体的例子。比如就说最基本的注册登录,可能就分为邮箱注册登录,微信授权登录,QQ授权登录,微博授权登录,短信验证码注册登录,密码找回又分为邮箱找回和短信找回。这里就罗列了7种情况,你做一种还是做7种开发成本可能就差了7倍或者更高。 又比如搜索功能,最简单的搜索功能可能开发一下就是几个小时的事情,但是这种搜索可能在几千个,几万个商品数据的时候还能正常运行。但是如果商品数据有几百万条,这时候肯定会崩溃。而不仅仅是商品数据会起到影响,比如你搜索功能是支持模糊搜索(即输入的关键词可以有偏差)还是精准搜索。模糊搜索能模糊到什么程度,讲究都是很大的。天猫淘宝这样的大平台的搜索功能,光一个搜索功能就是需要十几个人的开发小组常年去进行开发和优化,养这些人的成本一年就是几百万上千万。你现在就可以打开淘宝的搜索功能仔细看看它有多少细节(高级搜索,地域,价位筛选,搜索结果排序等)。感兴趣的可以自己去查查这些上市公司的财报。每个季度在软件开发上的成本都是几千万到几个亿不等。大公司一定是招自己有需要的人,如果不需要肯定不会招这么多人。由于篇幅有限,更详细的原因和要注意的地方不做详述。 有些人可能会觉得,这是大公司所以才需要。我创业初期需要考虑的这么细吗?做的这么细不是额外增加费用吗?在这里我要告诉你的是,如果前期有一定的预算还是很有必要的,因为一个好的APP软件不仅仅是界面设计的好看这么简单,后台逻辑数据处理才是重中之重,主要差别其实是在处理用户的并发量,并发量就是同一时间访问服务器的人数的多少,或者说项目的额承载力,能容纳多少用户使用,能容纳多少用户”同时“使用,用户数量和数据多了以后的计算处理速度,如果你对你的项目有足够的信心,未来一定会有成百上千万甚至上亿的用户,那后台这里就需要话费很多成本了。如果前期资金确实有限,也有一种折中做法,初期先实现功能,真的大量用户进来了,再一步步的迭代甚至重构部分代码。) 所以说以上这些问题如果你自己都不上心的话,你还指望谁替你上心呢?不要寄希望于你在网上找的这些软件公司,他们只会告诉你这件事很简单,你快来吧,来了就能发大财,一些不靠谱的开发公司可能就是为了赚你的项目款,才不会替你想这么多。所以你不说清楚自己的APP具体需要的是哪些功能,不把这些在开发之前就明确清楚,而是盲目的去开发,到头来吃亏的还是你自己。因为你在不清楚自己要做的东西具体是什么样子的时候,你想想你找的软件公司他就会知道吗?他如果什么都知道了,他就不用辛苦的开发软件了,可以直接去买彩票不就行了。 还有一点你不想操心只是寄希望于他们给你去思考细节,他们只会给你偷换概念,偷工减料,因为这样做有一个好处,你满意他满意大家都满意,你觉得费用低很便宜,他们也很好开发,但是最后软件的实际使用和体验感都达不到预期效果,那么这就是一个失败的项目。 之前有个真实的例子,一个客户跟个不负责任的开发商只说了后台有权限管理功能,而是没有说我可以把不用的角色账号删除,结果项目做好以后就是没有删除,开发商也没有提醒他。最后客户在使用时发现需要这个功能,才想到联系开发公司,因为项目过去很久了,当然是不愿意给他加。如果你不想自己也遇到这样的情况而被坑,就请想清楚自己App尽量多的细节。 比如一个购物车功能包括,加入购物车,从购物车移除,添加/减少购物车内某个商品的数量,直接输入数字修改商品的数量,批量付款。这些功能里面你说了一个很多开发商就只会做一个,大部分开发商不会考虑其他的。而一般创业者会觉得,淘宝有啊,一般都有啊你为什么没做?(创业者看到的一般都是那种大公司很成熟的产品),你要知道,淘宝的开发成本是亿级别的。而且经过了很多年的迭代和更新。 阿里巴巴集团2015年Q3季度财报显示,2015年第三季度产品开发开支为人民币32.25亿元(约合5.07亿美元),占营收的15%。你没看错,一个季度32亿的开发成本。一年就是一百多亿。 大部分情况下细节方面你不和开发商提,一般就没有。如果别人会替你考虑的越全面,那么开发成本一定会很高。 下边我再说说软件开发常见的“坑”,目的是为了打算入行的你少掉坑。 常见坑一:偷换概念 客户问开发公司有什么知名案例吗? 开发公司说出一些知名的项目是我们做的/是我们的案例。 这种情况下90%是偷换概念或者纯骗。不管你找的这家公司是真有几百个人的大公司还是只有几个人的小公司。 实际情况是,任何你听说过小有名气的App,基本都是项目方自己招人做的 不太可能是找外包。 还有些外包公司在这个很出名的App公司团队初创的时候,在这个项目做过一段时间。 还有一种情况就是, 比如很大的互联网公司,比如携程或者大众点评或者一号店,他们平时开发的时候也会有忙不过来的时候 ,偶尔会找些外包公司进行一部分的人员外包,要几个技术员过来帮忙干几个月临时的杂活。一般都是打杂接触点边缘化的没有技术含量的东西,根本接触不到核心部分业务代码。 但是这时候外包公司又会说,大众点评是我们做的。都是偷换概念,显得自己牛逼。 还有的就是一点关系也扯不上, 强行欺骗来增强客户信任,揭穿了就算了。 常见坑二:签合同 外包公司给你的合同一定要仔细看,很多时候被骗的客户自己公司是有法务的但是也一样被骗。因为你的法务和律师根本看不懂那些看似专业的技术词语。所以并不知道他是在扯淡还是合理的。由其是在验收标准和开发要求的这几大块上。基本如果甲方公司没有懂技术的,哪怕有专业的法务也太容易被骗。 一般体现在合同里对需求描述的不详细或者压根合同里就没有提到需求,只说要做个某某app,多少钱什么时候交付。 你们之间商量的做个某某app只有你们自己口头讨论了需求,但是如果没非常详细的落实在合同里,最后外包公司随便给你个东西也能交付。甚至压根就不是最早你们商量的,因为合同里并没有证据能证明你们要做的到底是什么。所以再签定合同时还要一块附上开放功能表。 同样的还有开发方式(原生还是混编,H5还是加壳),验收的标准这些都要说清楚。 一般负责任的公司在合同里都会非常详细的给到一个很长的需求文档,根据项目的大小起码有几页-几十页。项目开发方式、费用、工期等都会写清楚。 这个文档是合同非常重要的附件,里面详细的描述了你们这次项目具体是要做成什么样子。如果没有这个,及时签完合同,后期也会扯皮。要做什么根本没个界定,到时候胡乱拿个东西交差也是不违反合同的。 这个看似常识的东西其实大部分外行都不知道。 下边再说一下市场上常见的乙方,如果你是甲方,你可能会有以下选择。 如果甲方想开发一个APP,那么你会有三种途径实现自己的想法。 第一:自己组建团队 第二:找众包服务平台 第三:找外包公司 我们先说说自己组建团队的一些优点和缺点。 优点:自己的人,想怎么用就怎么用,我说了算。 缺点:自己组建技术团队成本过高,一个技术团队包括安卓程序员、苹果程序员、后台程序员(java或者PHP主流目前)、UI设计、产品经理、测试人员。按照这些岗位市场平均薪资范围我们来计算一下。 · 安卓 = 1-3万 · 苹果 = 1-3万 · 后台 = 1万月薪-年薪百万以上 · UI设计 = 8K-20K · 产品经理 = 7K-15k起步 · 测试 = 5K-12K左右 如果你想自己组建团队开发项目可以根据这个标准来评估你的项目所需要的费用,其次还会遇到招人困难,不好管理,技术人员闲置,项目规划周期过长等一系列问题,所以如果不是资金特别宽裕,还是建议不要在项目开发前期组建开发队伍。 另外互联网创业者有几个真的懂技术的?就算懂技术又能懂各个方向的技术?后台、苹果、安卓全都懂?所以这些问题你都需要考虑到。 我们再说下找众包平台的一些优点缺点 众包平台的模式是这样的,众包平台出面来整合技术和市场需求,然后在中间做对接,赚一些手续费、管理费....其实人工成本还是和我上面说的一样,该多少钱就是多少钱,但是这里会多出来一笔,本该给技术的钱之外还要多给平台一部分佣金。 优点: 平台会做相应的把控:一般技术平台中间会做一些资金的托管来保证甲方的利益,就是说只有当甲方完全验收没问题了,乙方才能收到款项,如果后期或者中途出现了扯皮的状况,平台方也会出面协调。平台会帮你找技术,省心 缺点 时间不稳定:说明一下,一般会加入众包平台的技术有两种,自己本身是技术,但是没有渠道和业务能力,想赚外块。另一种是自身有技术团队的公司,但是业务能力不出众,渠道能力有限,所以加入平台。软件开发各个工种一般是需要配合调试的,这就出现问题了,因为技术都不在一个地方,时间也不一样,就会出现晚上后台有时间了安卓没有、苹果有时间了后台没有,怎么调试?质量和进度怎么保证? 灵活性差:做了这么多年软件开发了,从来没见过任何一个客户,前期需求定了就不改的,一个都没有。因为对于甲方来说,需求这个东西始终抽象,甲方觉得自己表达清楚了,乙方觉得自己懂了,甲方也认为乙方懂了,然后开始做。等到项目真的做出来,才发现和自己想的有点不一样,因为甲方不是技术出生,是不可能具备通过需求和设计来抽象整个成品效果的,只能是看到产品以后才能判断。另一种情况是在开发的过程中甲方有新的灵感出现了,想要添加的。这就会造成需求需要经常变动,甲方就会找众包平台,平台找技术,技术不同意,这样反反复复,谁能扛得住。 最后我们再说下外包公司 因为市场有需要才会出现外包公司。 相对比自己组建开发团队,外包公司可以更好的做到人员管理和成本控制和人员闲置问题。因为外包公司会有源源不断地新项目进来,技术人员也会是一直转起来的。但是自己养个团队呢?只能做你自己的项目。一旦开发完,就面临着技术人员空置浪费的情况。 再者对比众包平台:时间上是稳定的,因为都是专职人员在做,上班时间都是在一起的,比较好沟通协调软件开发经验,合作的灵活性也提高了很多,中国人做生意还是有一些个人情感的,说白了完全按照合同走的人不多,除非闹到脸红脖子粗,否则大家都彼此会有一些包容空间,甲乙双方沟通到位,互相理解,项目顺利交付还是完全可以做到的。至于找外包公司的缺点,我只说一点,那就是你没找对合适的外包公司。有的客户说需求把控不住、做的东西和自己想的不一样、公司突然联系不上了、对自己的项目不上心了、突然中途加价了......其实这些问题是存在的,依我看来还是甲方和乙方没有沟通好,甲方没有找一个靠谱的乙方,这个和行业没有关系,完全是个人问题。 综合以上情况,要想开发一个APP,找外包公司性价比还是大一些。由于时间关系,这里我就不多说了,希望可以帮到你。 (编辑:武汉站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |